正在显示
1 个修改的文件
包含
28 行增加
和
7 行删除
@@ -462,7 +462,7 @@ class HouseAdmin extends Api | @@ -462,7 +462,7 @@ class HouseAdmin extends Api | ||
462 | * @ApiHeaders (name=token, type=string, required=true, description="请求的Token") | 462 | * @ApiHeaders (name=token, type=string, required=true, description="请求的Token") |
463 | * @ApiParams (name="house_id", type="inter", required=true, description="社区ID") | 463 | * @ApiParams (name="house_id", type="inter", required=true, description="社区ID") |
464 | * @ApiParams (name="nickname", type="string", required=true, description="姓名") | 464 | * @ApiParams (name="nickname", type="string", required=true, description="姓名") |
465 | - * @ApiParams (name="user_id", type="inter", required=true, description="用户ID") | 465 | + * @ApiParams (name="id_num", type="inter", required=true, description="用户ID") |
466 | * @ApiParams (name="mobile", type="string", required=true, description="手机号") | 466 | * @ApiParams (name="mobile", type="string", required=true, description="手机号") |
467 | * | 467 | * |
468 | * @ApiReturn({ | 468 | * @ApiReturn({ |
@@ -476,19 +476,40 @@ class HouseAdmin extends Api | @@ -476,19 +476,40 @@ class HouseAdmin extends Api | ||
476 | $post = $this->request->param(); | 476 | $post = $this->request->param(); |
477 | empty($post['house_id']) && $this->error('缺少必要参数'); | 477 | empty($post['house_id']) && $this->error('缺少必要参数'); |
478 | empty($post['nickname']) && $this->error('请填写姓名'); | 478 | empty($post['nickname']) && $this->error('请填写姓名'); |
479 | - empty($post['user_id']) && $this->error('请填写用户ID'); | 479 | + empty($post['id_num']) && $this->error('请填写用户ID'); |
480 | empty($post['mobile']) && $this->error('请填写手机号'); | 480 | empty($post['mobile']) && $this->error('请填写手机号'); |
481 | if (!Validate::regex($post['mobile'], "^1\d{10}$")) { | 481 | if (!Validate::regex($post['mobile'], "^1\d{10}$")) { |
482 | $this->error(__('Mobile is incorrect')); | 482 | $this->error(__('Mobile is incorrect')); |
483 | } | 483 | } |
484 | $user = $this->auth->getUser(); | 484 | $user = $this->auth->getUser(); |
485 | - $post['user_id'] = $user['id']; | ||
486 | - $admin = HouseAdminModel::get(['user_id'=>$user['id'],'house_id'=>$post['house_id'],'is_direct'=>1]); | ||
487 | - empty($admin) && $this->error('您不是该小区的主管理员'); | ||
488 | - (new HouseAdminModel)->allowField(true)->save(array_merge([ | ||
489 | - 'avatar' => $user['avatar'], | 485 | + if(!HouseAdminModel::get(['user_id'=>$user['id'],'house_id'=>$post['house_id'],'is_direct'=>1])){ |
486 | + $this->error('您不是该小区的主管理员,无法添加子管理员'); | ||
487 | + } | ||
488 | + if(!$admin_user = User::get(['id_num'=>$post['id_num']])){ | ||
489 | + $this->error('用户不存在'); | ||
490 | + } | ||
491 | + if($admin_user['id'] == $user['id']){ | ||
492 | + $this->error('您不能添加自己'); | ||
493 | + } | ||
494 | + if(HouseAdminModel::get(['user_id'=>$admin_user['id'],'house_id'=>$post['house_id']])){ | ||
495 | + $this->error('该用户已是当前小区的管理员,请勿重复添加'); | ||
496 | + } | ||
497 | + | ||
498 | + Db::startTrans(); | ||
499 | + $result = (new HouseAdminModel)->allowField(true)->save(array_merge([ | ||
500 | + 'user_id' => $admin_user['id'] | ||
501 | + 'avatar' => $admin_user['avatar'], | ||
490 | 'is_direct' => 2 | 502 | 'is_direct' => 2 |
491 | ],$post)); | 503 | ],$post)); |
504 | + if($admin_user['identity'] == 0 && !$admin_user->save(['identity' => 2])){ | ||
505 | + Db::rollback(); | ||
506 | + $this->error('添加管理员失败'); | ||
507 | + } | ||
508 | + if (!$result) { | ||
509 | + Db::rollback(); | ||
510 | + $this->error('添加管理员失败'); | ||
511 | + } | ||
512 | + | ||
492 | $this->success('success'); | 513 | $this->success('success'); |
493 | } | 514 | } |
494 | 515 |
-
请 注册 或 登录 后发表评论