Browse Source

[智价云] 部门角色信息更新

tangyuanwang 1 week ago
parent
commit
baa641e498

+ 9 - 1
app/Http/Controllers/Manager/Personnel/Department.php

@@ -60,6 +60,7 @@ class Department extends Controller
     public function all(DepartmentModel $DepartmentModel)
     {
         $map  = [];
+        $status    = request('status', '0');
         $start_time = request('start_time', '');
         $end_time = request('end_time', '');
         $name = request('name', '');
@@ -68,6 +69,7 @@ class Department extends Controller
         if ($end_time) $map[]   = ['insert_time', '<=', strtotime($end_time)];
         // 其他条件
         if ($name) $map[] = ['name', 'like', "%$name%"];
+        if (is_numeric($status)) $map[] = ['status', '=', $status];
         $result = $DepartmentModel->query()
             ->where($map)
             ->orderByDesc('id')
@@ -158,13 +160,19 @@ class Department extends Controller
      * @date      2025-12-04
      * 
      */
-    public function set_status(Request $request, DepartmentModel $DepartmentModel)
+    public function set_status(Request $request, DepartmentModel $DepartmentModel,EmployeeModel $EmployeeModel)
     {
         // 验证参数
         $request->scene('set_status')->validate();
         // 接收数据
         $id                = request('id', 0);
         $status            = request('status', 0);
+        if ($status == 1) {
+            // 查询部门下是否有员工
+            $map = ['department_id' => $id];
+            $data = $EmployeeModel->where($map)->first();
+            if ($data)     return json_send(['code' => 'error', 'msg' => '该部门下存在员工,不能禁用']);
+        }
         // 查询用户
         $where = ['id' => $id];
         // 执行修改

+ 8 - 1
app/Http/Controllers/Manager/Personnel/Roles.php

@@ -59,6 +59,7 @@ class Roles extends Controller
     public function all(RolesModel $RolesModel)
     {
         $map  = [];
+        $status    = request('status', '0');
         $start_time = request('start_time', '');
         $end_time = request('end_time', '');
         $name = request('name', '');
@@ -67,6 +68,7 @@ class Roles extends Controller
         if ($end_time) $map[]   = ['insert_time', '<=', strtotime($end_time)];
         // 其他条件
         if ($name) $map[] = ['name', 'like', "%$name%"];
+        if (is_numeric($status)) $map[] = ['status', '=', $status];
         // 查询数据
         $result = $RolesModel->query()
             ->where($map)
@@ -158,13 +160,18 @@ class Roles extends Controller
      * @date      2025-12-05
      * 
      */
-    public function set_status(Request $request, RolesModel $RolesModel)
+    public function set_status(Request $request, RolesModel $RolesModel,EmployeeModel $EmployeeModel)
     {
         // 验证参数
         $request->scene('set_status')->validate();
         // 接收数据
         $id                = request('id', 0);
         $status            = request('status', 0);
+        if($status == 1){
+            // 查询是否有员工使用该角色
+            $employee_data = $EmployeeModel->where('role_id', $id)->first();
+            if ($employee_data)    return json_send(['code' => 'error', 'msg' => '该角色已被使用,不能禁用']);
+        }
         // 查询用户
         $where = ['id' => $id];
         // 执行修改