Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
newShopBack
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
newshop
newShopBack
Commits
08e53b3a
Commit
08e53b3a
authored
Dec 10, 2019
by
张晓林
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
管理员添加
parent
119cd9f8
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
148 additions
and
19 deletions
+148
-19
urlmanager.php
backend/config/urlmanager.php
+3
-0
ManageListController.php
backend/controllers/v1/authority/ManageListController.php
+124
-18
Func.php
backend/helpers/Func.php
+17
-0
ShopRbacUser.php
backend/models/v1/rbacuser/ShopRbacUser.php
+4
-1
No files found.
backend/config/urlmanager.php
View file @
08e53b3a
...
@@ -315,6 +315,9 @@ return [
...
@@ -315,6 +315,9 @@ return [
],
],
'extraPatterns'
=>
[
'extraPatterns'
=>
[
'GET,OPTIONS get-manage-list'
=>
'get-manage-list'
,
'GET,OPTIONS get-manage-list'
=>
'get-manage-list'
,
'GET,OPTIONS search-user'
=>
'search-user'
,
'GET,OPTIONS manage-group-list'
=>
'manage-group-list'
,
'POST,OPTIONS manage-add'
=>
'manage-add'
,
],
],
],
],
],
],
...
...
backend/controllers/v1/authority/ManageListController.php
View file @
08e53b3a
...
@@ -4,9 +4,11 @@ namespace backend\controllers\v1\authority;
...
@@ -4,9 +4,11 @@ namespace backend\controllers\v1\authority;
use
Yii
;
use
Yii
;
use
backend\controllers\v1\BaseController
;
use
backend\controllers\v1\BaseController
;
use
app\models\v1\rbacuser\ShopRbacUser
;
use
app\models\v1\rbacuser\ShopRbacUser
;
use
app\models\v1\rbacuser\ShopRbacRoleUser
;
use
yii\data\ActiveDataProvider
;
use
yii\data\ActiveDataProvider
;
use
backend\models\v1\shopuser\ShopUserList
;
use
app\models\v1\rbacuser\ShopRbacRole
;
use
backend\helpers\Func
;
use
backend\helpers\Func
;
class
ManageListController
extends
BaseController
class
ManageListController
extends
BaseController
{
{
public
$modelClass
=
'app\models\v1\rbacuser\ShopRbacUser'
;
public
$modelClass
=
'app\models\v1\rbacuser\ShopRbacUser'
;
...
@@ -44,23 +46,127 @@ class ManageListController extends BaseController
...
@@ -44,23 +46,127 @@ class ManageListController extends BaseController
]);
]);
}
}
/**
* @OA\GET(
* path="/backend/web/v1/authority/manage-lists/manage-group-list",
* tags={"权限管理"},
* summary="管理员列表->添加管理员->所有角色列表(张晓林)",
* description="管理员列表",
* @OA\Response(response="200",description="
* ID:角色GUID,
* NAME:角色名称
* "),
* security={{"Authorization": {}}}
* )
*/
public
function
actionManageGroupList
(){
$model
=
new
ShopRbacRole
();
$info
=
$model
::
find
()
->
select
([
'GUID'
,
'NAME'
])
->
where
([
'ORG_GUID'
=>
Yii
::
$app
->
user
->
identity
->
ORG_GUID
])
->
all
();
return
[
'code'
=>
200
,
'info'
=>
$info
];
}
/**
* @OA\GET(
* path="/backend/web/v1/authority/manage-lists/search-user",
* tags={"权限管理"},
* summary="管理员列表->添加管理员->搜索管理员信息(张晓林)",
* description="管理员列表",
* @OA\Parameter(name="MOBILE_PHONE", description="员工手机号/邮箱",in="query",@OA\Schema(type="string")),
* @OA\Response(response="200",description="
* GUID:员工GUID,
* CODE:员工邮箱/手机号
* NAME:员工姓名,
* MOBILE_PHONE:员工手机号,
* CONTACT_SEX:性别,
* AGET:年龄,
* BRANCH_GUID:员工所属门店GUID,
* BRANCH_NAME:员工所属门店名称
* "),
* security={{"Authorization": {}}}
* )
*/
public
function
actionSearchUser
(){
public
function
actionGetManageAdd
(){
$shopUserModel
=
new
ShopUserList
();
$param
=
Yii
::
$app
->
request
->
get
();
$column
=
array
(
'su.GUID'
,
'su.CODE'
,
'su.NAME'
,
'su.MOBILE_PHONE'
,
'su.CONTACT_SEX'
,
'su.AGE'
,
'sb.NAME'
);
$userInfo
=
$shopUserModel
::
find
()
->
select
(
$column
)
->
leftJoin
(
'shop_branch as sb'
,
'sb.GUID=su.BRANCH_GUID'
)
->
where
([
'like'
,
'su.CODE'
,
$param
[
'MOBILE_PHONE'
]])
->
andFilterWhere
([
'BELONG'
=>
1
])
->
from
(
'shop_user as su'
)
->
asArray
()
->
one
();
if
(
empty
(
$userInfo
)){
return
[
'code'
=>
200
,
'message'
=>
'没有此员工'
];
}
if
(
$userInfo
[
'CONTACT_SEX'
]
==
1
){
$userInfo
[
'CONTACT_SEX'
]
=
'男'
;
}
elseif
(
$userInfo
[
'CONTACT_SEX'
]
==
0
){
$userInfo
[
'CONTACT_SEX'
]
=
'女'
;
}
return
[
'code'
=>
200
,
'info'
=>
$userInfo
];
}
$model
=
new
ShopRbacUser
();
/**
$columnArr
=
array
(
'r.GUID'
,
'r.NAME'
,
'r.MOBILEPHONE'
,
'r.CREATE_DATE'
,
'rr.NAME AS ROLENAME'
);
* @OA\POST(
$query
=
$model
::
find
()
->
select
(
$columnArr
)
* path="/backend/web/v1/authority/manage-lists/manage-add",
->
leftJoin
(
'shop_rbac_role_user as ru'
,
'ru.USER_ID = r.GUID'
)
* tags={"权限管理"},
->
leftJoin
(
'shop_rbac_role as rr'
,
'rr.ID=ru.ROLE_ID'
)
* summary="添加管理员(张晓林)",
->
leftJoin
(
'shop_branch as sb'
,
'sb.GUID=r.BRANCH_GUID'
)
* description="添加管理员",
->
from
(
'shop_rbac_user as r'
)
* * @OA\RequestBody(
->
orderBy
(
'r.CREATE_DATE desc'
);
* required=true,
return
new
ActiveDataProvider
([
* @OA\MediaType(
'query'
=>
$query
->
asArray
(),
* mediaType="application/x-www-form-urlencoded",
'pagination'
=>
[
* @OA\Schema(
'pageSize'
=>
15
,
* type="object",
]
* @OA\Property(property="USER_GUID",description="用户GUID",type="string"),
]);
* @OA\Property(property="CODE",description="员工邮箱/手机号",type="string"),
* @OA\Property(property="NAME",description="用户姓名",type="string"),
* @OA\Property(property="BRANCH_GUID",description="用户所属门店GUID",type="string"),
* @OA\Property(property="MOBILEPHONE",description="用户手机号",type="string"),
* @OA\Property(property="ROLE_GUID",description="角色GUID",type="string")
* )
* )
* ),
* @OA\Response(response=200,description="success"),
* security={{"Authorization": {}}}
* )
*/
public
function
actionManageAdd
(){
$param
=
Yii
::
$app
->
request
->
post
();
$rbacUserModel
=
new
ShopRbacUser
();
$rbacUserModel
->
scenario
=
'insert'
;
$userInfoCount
=
$rbacUserModel
::
find
()
->
where
([
'USER_GUID'
=>
$param
[
'USER_GUID'
]])
->
count
();
if
(
!
$userInfoCount
){
$rbacUserModel
->
GUID
=
Func
::
create_guid
();
$rbacUserModel
->
ORG_GUID
=
Yii
::
$app
->
user
->
identity
->
ORG_GUID
;
$rbacUserModel
->
USER_GUID
=
$param
[
'USER_GUID'
];
$rbacUserModel
->
CODE
=
$param
[
'CODE'
];
$rbacUserModel
->
NAME
=
$param
[
'NAME'
];
$rbacUserModel
->
BRANCH_GUID
=
$param
[
'BRANCH_GUID'
];
$rbacUserModel
->
MOBILEPHONE
=
$param
[
'MOBILEPHONE'
];;
$rbacUserModel
->
CREATE_GUID
=
Yii
::
$app
->
user
->
identity
->
GUID
;
$rbacUserModel
->
CREATE_NAME
=
Yii
::
$app
->
user
->
identity
->
NAME
;
$rbacUserModel
->
SHARE_NO
=
Func
::
getDigitRandomStr
(
9
);
$rbacUserModel
->
CREATE_DATE
=
date
(
'Y-m-d H:i:s'
,
time
());
if
(
$rbacUserModel
->
save
()){
$rbacRoleUserModel
=
new
ShopRbacRoleUser
();
$rbacRoleUserModel
->
USER_ID
=
$param
[
'USER_GUID'
];
$rbacRoleUserModel
->
ROLE_ID
=
$param
[
'ROLE_GUID'
];
$rbacRoleUserModel
->
ORG_GUID
=
Yii
::
$app
->
user
->
identity
->
ORG_GUID
;
if
(
$rbacRoleUserModel
->
save
()){
return
[
'code'
=>
200
,
'message'
=>
'添加成功'
];
}
else
{
return
$rbacRoleUserModel
->
errors
;
}
}
else
{
return
$rbacUserModel
->
errors
;
}
}
else
{
return
[
'code'
=>
200
,
'message'
=>
'此用户已是管理员'
];
}
}
}
}
}
\ No newline at end of file
backend/helpers/Func.php
View file @
08e53b3a
...
@@ -23,4 +23,21 @@ class Func
...
@@ -23,4 +23,21 @@ class Func
}
}
return
$preFix
.
$key
;
return
$preFix
.
$key
;
}
}
/**
* 生成数字随机数
* @param unknown $len
* @return string
*/
public
static
function
getDigitRandomStr
(
$length
)
{
$str
=
'1234567890'
;
$len
=
strlen
(
$str
)
-
1
;
$randstr
=
''
;
for
(
$i
=
0
;
$i
<
$length
;
$i
++
)
{
$num
=
mt_rand
(
0
,
$len
);
$randstr
.=
$str
[
$num
];
}
return
$randstr
;
}
}
}
backend/models/v1/rbacuser/ShopRbacUser.php
View file @
08e53b3a
...
@@ -52,13 +52,16 @@ class ShopRbacUser extends BaseModel implements IdentityInterface
...
@@ -52,13 +52,16 @@ class ShopRbacUser extends BaseModel implements IdentityInterface
public
function
rules
()
public
function
rules
()
{
{
return
[
return
[
[[
'GUID'
,
'CODE'
],
'required'
],
[[
'GUID'
,
'CODE'
],
'required'
,
'message'
=>
'不能为空'
],
[[
'CREATE_DATE'
,
'UPDATE_DATE'
],
'safe'
],
[[
'CREATE_DATE'
,
'UPDATE_DATE'
],
'safe'
],
[[
'IS_FORBID'
,
'CONTACTSEX'
,
'IS_UPLOAD_HX'
,
'IS_BELONG'
,
'AGE'
],
'integer'
],
[[
'IS_FORBID'
,
'CONTACTSEX'
,
'IS_UPLOAD_HX'
,
'IS_BELONG'
,
'AGE'
],
'integer'
],
[[
'GUID'
,
'CODE'
,
'PASSWORD'
,
'ORG_GUID'
,
'BRANCH_GUID'
,
'CREATE_GUID'
,
'UPDATE_GUID'
,
'MOBILEPHONE'
,
'USER_GUID'
,
'REMARK'
,
'ALIPAY_UID'
,
'WX_UNIONID'
,
'WX_OPENID'
,
'SHARE_NO'
],
'string'
,
'max'
=>
50
],
[[
'GUID'
,
'CODE'
,
'PASSWORD'
,
'ORG_GUID'
,
'BRANCH_GUID'
,
'CREATE_GUID'
,
'UPDATE_GUID'
,
'MOBILEPHONE'
,
'USER_GUID'
,
'REMARK'
,
'ALIPAY_UID'
,
'WX_UNIONID'
,
'WX_OPENID'
,
'SHARE_NO'
],
'string'
,
'max'
=>
50
],
[[
'NAME'
,
'CREATE_NAME'
,
'UPDATE_NAME'
],
'string'
,
'max'
=>
100
],
[[
'NAME'
,
'CREATE_NAME'
,
'UPDATE_NAME'
],
'string'
,
'max'
=>
100
],
[[
'DESCRIPTION'
],
'string'
,
'max'
=>
255
],
[[
'DESCRIPTION'
],
'string'
,
'max'
=>
255
],
[[
'GUID'
],
'unique'
],
[[
'GUID'
],
'unique'
],
[[
'USER_GUID'
,
'CODE'
,
'NAME'
],
'required'
,
'on'
=>
'insert'
,
'message'
=>
'角色GUID不能为空'
],
[
'NAME'
,
'string'
,
'max'
=>
10
,
'on'
=>
'insert'
],
[
'BRANCH_GUID'
,
'safe'
,
'on'
=>
'insert'
]
];
];
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment