cqp vor 3 Monaten
Ursprung
Commit
39f42bff1f

+ 13 - 0
app/Http/Controllers/Api/EmployeeController.php

@@ -72,6 +72,19 @@ class EmployeeController extends BaseController
         }
     }
 
+    public function employeeDetail(Request $request)
+    {
+        $service = new EmployeeService();
+        $user = $request->userData;
+        list($status,$data) = $service->employeeDetail($request->all(), $user);
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
     public function roleEdit(Request $request)
     {
         $service = new EmployeeService();

+ 1 - 0
app/Model/Employee.php

@@ -11,6 +11,7 @@ class Employee extends DataScopeBaseModel
     const CREATED_AT = 'crt_time';
     const UPDATED_AT = 'upd_time';
     protected $dateFormat = 'U';
+    public static $field = ['number','mobile','title','id','is_admin', 'account', 'crt_time', 'state'];
     const SPECIAL_ADMIN = 1;
     const USE = 1;
     const NOT_USE = 2;

+ 29 - 5
app/Service/EmployeeService.php

@@ -5,6 +5,7 @@ namespace App\Service;
 use App\Model\Depart;
 use App\Model\Employee;
 use App\Model\EmployeeDepartPermission;
+use App\Model\EmployeeDetails;
 use App\Model\EmployeeRole;
 use App\Model\Role;
 use App\Model\RoleMenu;
@@ -181,16 +182,30 @@ class EmployeeService extends Service
         return [true,'删除成功'];
     }
 
-    public function employeeList($data,$user){
+    public function employeeDetail($data, $user){
+        if(empty($data['id'])) return [false,'人员id不能为空'];
+        list($status, $return) = $this->employeeList(['id' => [$data['id']]], $user);
+        $user = $return['data'][0] ?? [];
+
+        return [true, $user];
+    }
+
+    public function employeeCommon($data,$user, $field = []){
+        if(empty($field)) $field = Employee::$field;
+
         $model = Employee::TopClear($user,$data);
         $model = $model->where('del_time',0)
             ->where('is_admin', '<>', Employee::IS_ADMIN_TWO)
-            ->select('number','mobile','title','id','is_admin', 'account', 'crt_time', 'state')
+            ->select($field)
             ->orderBy('id','desc');
 
+        if(! empty($data['id'])) $model->whereIn('id', $data['id']);
         if(! empty($data['number'])) $model->where('number', 'LIKE', '%'.$data['number'].'%');
         if(! empty($data['title'])) $model->where('title', 'LIKE', '%'.$data['title'].'%');
         if(! empty($data['mobile'])) $model->where('mobile', 'LIKE', '%'.$data['mobile'].'%');
+        if(isset($data['is_admin'])) $model->where('is_admin', $data['is_admin']);
+        if(! empty($data['state'])) $model->where('state', $data['state']);
+        if(isset($data['education'])) $model->where('education', $data['education']);
         if(! empty($data['role'])) {
             $emp = EmployeeRole::where('role_id',$data['role'])
                 ->where('del_time',0)
@@ -198,12 +213,21 @@ class EmployeeService extends Service
             $model->whereIn('id',array_column($emp,'employee_id'));
         }
 
-        $list = $this->limit($model,'',$data);
+        return $model;
+    }
 
-        //组织数据
+    /**
+     * 产品列表
+     * @param $data
+     * @param $user
+     * @return array
+     */
+    public function employeeList($data,$user){
+        $model = $this->employeeCommon($data, $user);
+        $list = $this->limit($model,'',$data);
         $list = $this->organizationEmployeeData($list);
 
-        return [true , $list];
+        return [true, $list];
     }
 
     public function organizationEmployeeData($data)

+ 7 - 0
routes/api.php

@@ -48,6 +48,7 @@ Route::group(['middleware'=> ['checkLogin']],function ($route){
     $route->any('employeeEdit', 'Api\EmployeeController@employeeEdit')->name('employee.edit');
     $route->any('employeeEditOther', 'Api\EmployeeController@employeeEditOther')->name('employee.editPassword');
     $route->any('employeeDel', 'Api\EmployeeController@employeeDel')->name('employee.delete');
+    $route->any('employeeDetail', 'Api\EmployeeController@employeeDetail')->name('employee.detail');
     $route->any('employeeList', 'Api\EmployeeController@employeeList')->name('employee.list');
 
     $route->any('employeeDepart', 'Api\EmployeeController@employeeDepart');
@@ -68,5 +69,11 @@ Route::group(['middleware'=> ['checkLogin']],function ($route){
     $route->any('roleDetail', 'Api\EmployeeController@roleDetail')->name('role.');
     $route->any('roleMenu', 'Api\EmployeeController@roleMenu')->name('role.');
 
+    //设备
+    $route->any('deviceList', 'Api\DeviceController@deviceList');
+    $route->any('deviceEdit', 'Api\DeviceController@deviceEdit');
+    $route->any('deviceAdd', 'Api\DeviceController@deviceAdd');
+    $route->any('deviceDel', 'Api\DeviceController@deviceDel');
+    $route->any('deviceDetail', 'Api\DeviceController@deviceDetail');
 });