Commit 08e53b3a authored by 张晓林's avatar 张晓林

管理员添加

parent 119cd9f8
......@@ -315,6 +315,9 @@ return [
],
'extraPatterns' => [
'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',
],
],
],
......
......@@ -4,9 +4,11 @@ namespace backend\controllers\v1\authority;
use Yii;
use backend\controllers\v1\BaseController;
use app\models\v1\rbacuser\ShopRbacUser;
use app\models\v1\rbacuser\ShopRbacRoleUser;
use yii\data\ActiveDataProvider;
use backend\models\v1\shopuser\ShopUserList;
use app\models\v1\rbacuser\ShopRbacRole;
use backend\helpers\Func;
class ManageListController extends BaseController
{
public $modelClass = 'app\models\v1\rbacuser\ShopRbacUser';
......@@ -44,23 +46,127 @@ class ManageListController extends BaseController
]);
}
public function actionGetManageAdd(){
/**
* @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(){
$model = new ShopRbacUser();
$columnArr = array('r.GUID','r.NAME','r.MOBILEPHONE','r.CREATE_DATE','rr.NAME AS ROLENAME');
$query = $model::find()->select($columnArr)
->leftJoin('shop_rbac_role_user as ru','ru.USER_ID = r.GUID')
->leftJoin('shop_rbac_role as rr','rr.ID=ru.ROLE_ID')
->leftJoin('shop_branch as sb','sb.GUID=r.BRANCH_GUID')
->from('shop_rbac_user as r')
->orderBy('r.CREATE_DATE desc');
return new ActiveDataProvider([
'query'=>$query->asArray(),
'pagination' => [
'pageSize' => 15,
]
]);
$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];
}
/**
* @OA\POST(
* path="/backend/web/v1/authority/manage-lists/manage-add",
* tags={"权限管理"},
* summary="添加管理员(张晓林)",
* description="添加管理员",
* * @OA\RequestBody(
* required=true,
* @OA\MediaType(
* mediaType="application/x-www-form-urlencoded",
* @OA\Schema(
* 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
......@@ -23,4 +23,21 @@ class Func
}
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;
}
}
......@@ -52,13 +52,16 @@ class ShopRbacUser extends BaseModel implements IdentityInterface
public function rules()
{
return [
[['GUID', 'CODE'], 'required'],
[['GUID', 'CODE'], 'required','message'=>'不能为空'],
[['CREATE_DATE', 'UPDATE_DATE'], 'safe'],
[['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],
[['NAME', 'CREATE_NAME', 'UPDATE_NAME'], 'string', 'max' => 100],
[['DESCRIPTION'], 'string', 'max' => 255],
[['GUID'], 'unique'],
[['USER_GUID','CODE','NAME'],'required','on'=>'insert','message'=>'角色GUID不能为空'],
['NAME','string','max'=>10,'on'=>'insert'],
['BRANCH_GUID','safe','on'=>'insert']
];
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment