Эх сурвалжийг харах

[智价云] 增加员工平台搜索

tangyuanwang 20 цаг өмнө
parent
commit
edd432da44

+ 10 - 1
app/Http/Controllers/Manager/Personnel/Employee.php

@@ -31,7 +31,7 @@ class Employee extends Controller
      * @date      2025-12-04
      * 
      */
-    public function list(Request $request, EmployeeModel $EmployeeModel, DepartmentModel $DepartmentModel, RolesModel $RolesModel, CitysModel $CitysModel, EmployeeAreaModel $EmployeeAreaModel, EmployeeDepartmentModel $EmployeeDepartmentModel, EmployeeProvinceModel $EmployeeProvinceModel)
+    public function list(Request $request, EmployeeModel $EmployeeModel, DepartmentModel $DepartmentModel, RolesModel $RolesModel, EmployeeAreaModel $EmployeeAreaModel, EmployeeDepartmentModel $EmployeeDepartmentModel,EmployeePlatformModel $EmployeePlatformModel)
     {
         $request->scene('list')->validate();
         $admin_company_id = request('admin_company_id', '0');
@@ -52,6 +52,7 @@ class Employee extends Controller
         $role_ids = [];
         $city_ids = request('city_ids', '');
         $department_ids = request('department_ids', '');
+        $platform_ids = request('platform_ids', '');
         $EmployeeModel_Other = new EmployeeModel();
         // 时间条件
         if ($start_time) $map[] = ['insert_time', '>=', strtotime($start_time)];
@@ -91,6 +92,14 @@ class Employee extends Controller
                 $query1->select('employee_id')->fromSub($subQuery, 'sub1');
             });
         }
+        //多平台查询
+        if ($platform_ids && is_string($platform_ids)) {
+            $platform_ids = explode(',', $platform_ids);
+            $subQuery = $EmployeePlatformModel->whereIn('platform_id', $platform_ids)->distinct('employee_id')->select('employee_id');
+            $EmployeeModel = $EmployeeModel->whereIn('id', function ($query1) use ($subQuery) {
+                $query1->select('employee_id')->fromSub($subQuery, 'sub1');
+            });
+        }
         //多选部门查询
         if ($department_ids && is_string($department_ids)) {
             $department_ids =  explode(',', $department_ids);