正在显示
3 个修改的文件
包含
76 行增加
和
34 行删除
| @@ -148,11 +148,11 @@ class ProjectLogic extends BaseLogic | @@ -148,11 +148,11 @@ class ProjectLogic extends BaseLogic | ||
| 148 | $this->saveAfter($param); | 148 | $this->saveAfter($param); |
| 149 | //创建默认数据库 | 149 | //创建默认数据库 |
| 150 | if($param['type'] == Project::TYPE_ONE){ | 150 | if($param['type'] == Project::TYPE_ONE){ |
| 151 | - if(isset($data['mysql_id']) && !empty($data['mysql_id'])){ | 151 | + if(isset($param['mysql_id']) && !empty($param['mysql_id'])){ |
| 152 | $this->initializationMysql($res['id']); | 152 | $this->initializationMysql($res['id']); |
| 153 | } | 153 | } |
| 154 | - if(isset($data['mobile'])){ | ||
| 155 | - | 154 | + if(isset($param['mobile']) && !empty($param['mobile'])){ |
| 155 | + $this->createUser($param['mobile'],$res['id'],$param['lead_name']); | ||
| 156 | } | 156 | } |
| 157 | } | 157 | } |
| 158 | //更改服务器状态 | 158 | //更改服务器状态 |
| @@ -206,31 +206,23 @@ class ProjectLogic extends BaseLogic | @@ -206,31 +206,23 @@ class ProjectLogic extends BaseLogic | ||
| 206 | */ | 206 | */ |
| 207 | public function createUser($mobile,$project_id,$lead_name){ | 207 | public function createUser($mobile,$project_id,$lead_name){ |
| 208 | $userModel = new UserModel(); | 208 | $userModel = new UserModel(); |
| 209 | + //查看当前用户是否存在 | ||
| 210 | + $info = $userModel->read(['mobile'=>$mobile,'project_id'=>$project_id]); | ||
| 211 | + if($info === false){ | ||
| 209 | $data = [ | 212 | $data = [ |
| 210 | 'mobile'=>$mobile, | 213 | 'mobile'=>$mobile, |
| 211 | 'password'=>base64_encode(md5('123456')), | 214 | 'password'=>base64_encode(md5('123456')), |
| 212 | 'project_id'=>$project_id, | 215 | 'project_id'=>$project_id, |
| 213 | - 'name'=>$lead_name | 216 | + 'name'=>$lead_name, |
| 217 | + 'type'=>UserModel::TYPE_ONE, | ||
| 218 | + 'operator_id'=>$this->manager['id'], | ||
| 219 | + 'create_id'=>$this->manager['id'], | ||
| 214 | ]; | 220 | ]; |
| 215 | - return $userModel->add($data); | ||
| 216 | - } | ||
| 217 | - | ||
| 218 | - /** | ||
| 219 | - * @remark :验证域名 | ||
| 220 | - * @name :verifyDomain | ||
| 221 | - * @author :lyh | ||
| 222 | - * @method :post | ||
| 223 | - * @time :2023/8/17 16:22 | ||
| 224 | - */ | ||
| 225 | - public function verifyDomain($domain){ | ||
| 226 | - if(!empty($domain)){ | ||
| 227 | - $domain = checkDomain($domain); | ||
| 228 | - if(!$domain){ | ||
| 229 | - $this->fail('正式域名格式不正确'); | 221 | + $userModel->add($data); |
| 230 | } | 222 | } |
| 231 | return $this->success(); | 223 | return $this->success(); |
| 232 | } | 224 | } |
| 233 | - } | 225 | + |
| 234 | /** | 226 | /** |
| 235 | * 保存付款续费 | 227 | * 保存付款续费 |
| 236 | * @author zbj | 228 | * @author zbj |
| @@ -283,7 +275,7 @@ class ProjectLogic extends BaseLogic | @@ -283,7 +275,7 @@ class ProjectLogic extends BaseLogic | ||
| 283 | } | 275 | } |
| 284 | } | 276 | } |
| 285 | $data['id'] = DeployOptimize::where('project_id', $param['id'])->value('id'); | 277 | $data['id'] = DeployOptimize::where('project_id', $param['id'])->value('id'); |
| 286 | - @file_put_contents(storage_path('logs/lyh_error.log'), var_export($data, true) . PHP_EOL, FILE_APPEND); | 278 | + //@file_put_contents(storage_path('logs/lyh_error.log'), var_export($data, true) . PHP_EOL, FILE_APPEND); |
| 287 | return (new DeployOptimizeLogic)->save($data); | 279 | return (new DeployOptimizeLogic)->save($data); |
| 288 | } | 280 | } |
| 289 | /** | 281 | /** |
| @@ -47,22 +47,14 @@ class UserLogic extends BaseLogic | @@ -47,22 +47,14 @@ class UserLogic extends BaseLogic | ||
| 47 | */ | 47 | */ |
| 48 | public function projectUserSave() | 48 | public function projectUserSave() |
| 49 | { | 49 | { |
| 50 | + //验证手机号是否存在 | ||
| 51 | + $this->verifyMobile($this->param); | ||
| 52 | + //验证一个项目是否只有一个超级管理员 | ||
| 53 | + $this->verifyRole($this->param); | ||
| 50 | if (isset($this->param['id']) && !empty($this->param['id'])) { | 54 | if (isset($this->param['id']) && !empty($this->param['id'])) { |
| 51 | - $info = $this->model->read(['mobile' => $this->param['mobile'], 'id' => ['!=', $this->param['id']]]); | ||
| 52 | - if ($info !== false) { | ||
| 53 | - $this->fail('当前手机号码已存在'); | ||
| 54 | - } | ||
| 55 | $this->param = $this->editPassword($this->param); | 55 | $this->param = $this->editPassword($this->param); |
| 56 | $rs = $this->model->edit($this->param, ['id' => $this->param['id']]); | 56 | $rs = $this->model->edit($this->param, ['id' => $this->param['id']]); |
| 57 | } else { | 57 | } else { |
| 58 | - $info = $this->model->read(['mobile'=>$this->param['mobile']]); | ||
| 59 | - if($info !== false){ | ||
| 60 | - $this->fail('当前手机号码已存在'); | ||
| 61 | - } | ||
| 62 | - $info = $this->model->read(['project_id'=>$this->param['project_id'],'role_id'=>0]); | ||
| 63 | - if($info !== false){ | ||
| 64 | - $this->fail('当前项目已存在超级管理员,请选择其他项目'); | ||
| 65 | - } | ||
| 66 | $this->param['password'] = base64_encode(md5($this->param['password'])); | 58 | $this->param['password'] = base64_encode(md5($this->param['password'])); |
| 67 | $rs = $this->model->add($this->param); | 59 | $rs = $this->model->add($this->param); |
| 68 | } | 60 | } |
| @@ -73,6 +65,63 @@ class UserLogic extends BaseLogic | @@ -73,6 +65,63 @@ class UserLogic extends BaseLogic | ||
| 73 | } | 65 | } |
| 74 | 66 | ||
| 75 | /** | 67 | /** |
| 68 | + * @remark :验证手机号是否可用 | ||
| 69 | + * @name :verifyMobile | ||
| 70 | + * @author :lyh | ||
| 71 | + * @method :post | ||
| 72 | + * @time :2023/8/29 9:14 | ||
| 73 | + */ | ||
| 74 | + public function verifyMobile($param){ | ||
| 75 | + if(isset($param['id']) && !empty($param['id'])){ | ||
| 76 | + $condition = [ | ||
| 77 | + 'mobile' => $param['mobile'], | ||
| 78 | + 'project_id'=>$param['project_id'], | ||
| 79 | + 'id' => ['!=', $param['id']] | ||
| 80 | + ]; | ||
| 81 | + }else{ | ||
| 82 | + $condition = [ | ||
| 83 | + 'mobile' => $param['mobile'], | ||
| 84 | + 'project_id'=>$param['project_id'], | ||
| 85 | + ]; | ||
| 86 | + } | ||
| 87 | + $info = $this->model->read($condition); | ||
| 88 | + if ($info !== false) { | ||
| 89 | + $this->fail('当前手机号码已存在'); | ||
| 90 | + } | ||
| 91 | + return $this->success(); | ||
| 92 | + } | ||
| 93 | + | ||
| 94 | + /** | ||
| 95 | + * @remark :验证一个项目超级管理员只允许存在一个 | ||
| 96 | + * @name :verifyRole | ||
| 97 | + * @author :lyh | ||
| 98 | + * @method :post | ||
| 99 | + * @time :2023/8/29 9:22 | ||
| 100 | + */ | ||
| 101 | + public function verifyRole($param){ | ||
| 102 | + if($param['role_id'] == $this->model::ROLE_MANAGER){ | ||
| 103 | + if(isset($param['id']) && !empty($param['id'])){ | ||
| 104 | + $condition = [ | ||
| 105 | + 'mobile' => $param['mobile'], | ||
| 106 | + 'project_id'=>$param['project_id'], | ||
| 107 | + 'id' => ['!=', $param['id']], | ||
| 108 | + 'role_id'=>$this->model::ROLE_MANAGER | ||
| 109 | + ]; | ||
| 110 | + }else{ | ||
| 111 | + $condition = [ | ||
| 112 | + 'mobile' => $param['mobile'], | ||
| 113 | + 'project_id'=>$param['project_id'], | ||
| 114 | + 'role_id'=>$this->model::ROLE_MANAGER, | ||
| 115 | + ]; | ||
| 116 | + } | ||
| 117 | + $info = $this->model->read($condition); | ||
| 118 | + if ($info !== false) { | ||
| 119 | + $this->fail('当前项目已存在超级管理员'); | ||
| 120 | + } | ||
| 121 | + } | ||
| 122 | + } | ||
| 123 | + | ||
| 124 | + /** | ||
| 76 | * @name :编辑会员 | 125 | * @name :编辑会员 |
| 77 | * @return void | 126 | * @return void |
| 78 | * @author :liyuhang | 127 | * @author :liyuhang |
| @@ -10,7 +10,8 @@ use App\Models\Base; | @@ -10,7 +10,8 @@ use App\Models\Base; | ||
| 10 | class User extends Base | 10 | class User extends Base |
| 11 | { | 11 | { |
| 12 | // use HasApiTokens, HasFactory, Notifiable; | 12 | // use HasApiTokens, HasFactory, Notifiable; |
| 13 | - | 13 | + const ROLE_MANAGER = 0;//超级管理员 |
| 14 | + const TYPE_ONE = 1; | ||
| 14 | protected $table = 'gl_project_user'; | 15 | protected $table = 'gl_project_user'; |
| 15 | //自动维护create_at创建时间 updated_at修改时间 | 16 | //自动维护create_at创建时间 updated_at修改时间 |
| 16 | public $timestamps = true; | 17 | public $timestamps = true; |
-
请 注册 或 登录 后发表评论