瀏覽代碼

● 一个项目只能有一个项目经理和一个机电负责人,但是可以有多个工区负责人和项目副经理。
后台如果要更改的话,设置了第二个项目经理,第一个项目经理的角色自动取消,机电负责人同理

ChenWuJie 4 年之前
父節點
當前提交
e2f940f6b7
共有 1 個文件被更改,包括 16 次插入1 次删除
  1. 16 1
      app/Http/Controllers/Admin/ProjectUserController.php

+ 16 - 1
app/Http/Controllers/Admin/ProjectUserController.php

xqd
@@ -80,7 +80,22 @@ class ProjectUserController extends BaseController
             return back()->withErrors($validator)->withInput();
         }
         $data = $request->input('data');
-//        $this->model->where('user_id', $data['user_id'])->delete();
+        $project_id = $data['project_id'];
+        $user_id = $data['user_id'];
+        $project_role_id = $data['project_role_id'];
+        //新加的角色是项目经理
+        if ($project_role_id == 4)
+        {
+            $m_user = ProjectUser::where('project_id',$project_id)->where('project_role_id',4)->value('user_id');
+            ProjectUser::where('project_id',$project_id)->where('project_role_id',4)->where('user_id',$m_user)->update(['project_role_id'=>3]);
+        }
+        //新加的角色是机电负责人
+        if ($project_role_id == 2)
+        {
+            $s_user = ProjectUser::where('project_id',$project_id)->where('project_role_id',2)->value('user_id');
+            ProjectUser::where('project_id',$project_id)->where('project_role_id',2)->where('user_id',$s_user)->update(['project_role_id'=>1]);
+        }
+        $this->model->where('user_id', $data['user_id'])->delete();
         $res = $this->model->create($data);
         if(empty($res)) return back()->withErrors(['sg_error_info' => '保存失败']);
         return redirect($this->pre_uri . 'create')->with(['sg_success_info' => '创建成功']);