...
|
...
|
@@ -462,7 +462,7 @@ class HouseAdmin extends Api |
|
|
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
|
|
|
* @ApiParams (name="house_id", type="inter", required=true, description="社区ID")
|
|
|
* @ApiParams (name="nickname", type="string", required=true, description="姓名")
|
|
|
* @ApiParams (name="user_id", type="inter", required=true, description="用户ID")
|
|
|
* @ApiParams (name="id_num", type="inter", required=true, description="用户ID")
|
|
|
* @ApiParams (name="mobile", type="string", required=true, description="手机号")
|
|
|
*
|
|
|
* @ApiReturn({
|
...
|
...
|
@@ -476,19 +476,40 @@ class HouseAdmin extends Api |
|
|
$post = $this->request->param();
|
|
|
empty($post['house_id']) && $this->error('缺少必要参数');
|
|
|
empty($post['nickname']) && $this->error('请填写姓名');
|
|
|
empty($post['user_id']) && $this->error('请填写用户ID');
|
|
|
empty($post['id_num']) && $this->error('请填写用户ID');
|
|
|
empty($post['mobile']) && $this->error('请填写手机号');
|
|
|
if (!Validate::regex($post['mobile'], "^1\d{10}$")) {
|
|
|
$this->error(__('Mobile is incorrect'));
|
|
|
}
|
|
|
$user = $this->auth->getUser();
|
|
|
$post['user_id'] = $user['id'];
|
|
|
$admin = HouseAdminModel::get(['user_id'=>$user['id'],'house_id'=>$post['house_id'],'is_direct'=>1]);
|
|
|
empty($admin) && $this->error('您不是该小区的主管理员');
|
|
|
(new HouseAdminModel)->allowField(true)->save(array_merge([
|
|
|
'avatar' => $user['avatar'],
|
|
|
if(!HouseAdminModel::get(['user_id'=>$user['id'],'house_id'=>$post['house_id'],'is_direct'=>1])){
|
|
|
$this->error('您不是该小区的主管理员,无法添加子管理员');
|
|
|
}
|
|
|
if(!$admin_user = User::get(['id_num'=>$post['id_num']])){
|
|
|
$this->error('用户不存在');
|
|
|
}
|
|
|
if($admin_user['id'] == $user['id']){
|
|
|
$this->error('您不能添加自己');
|
|
|
}
|
|
|
if(HouseAdminModel::get(['user_id'=>$admin_user['id'],'house_id'=>$post['house_id']])){
|
|
|
$this->error('该用户已是当前小区的管理员,请勿重复添加');
|
|
|
}
|
|
|
|
|
|
Db::startTrans();
|
|
|
$result = (new HouseAdminModel)->allowField(true)->save(array_merge([
|
|
|
'user_id' => $admin_user['id']
|
|
|
'avatar' => $admin_user['avatar'],
|
|
|
'is_direct' => 2
|
|
|
],$post));
|
|
|
if($admin_user['identity'] == 0 && !$admin_user->save(['identity' => 2])){
|
|
|
Db::rollback();
|
|
|
$this->error('添加管理员失败');
|
|
|
}
|
|
|
if (!$result) {
|
|
|
Db::rollback();
|
|
|
$this->error('添加管理员失败');
|
|
|
}
|
|
|
|
|
|
$this->success('success');
|
|
|
}
|
|
|
|
...
|
...
|
|