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

[智价云] 员工列表接口补充

tangyuanwang 6 өдөр өмнө
parent
commit
156f31b157

+ 48 - 0
app/Http/Controllers/Api/Personnel/Employee.php

@@ -0,0 +1,48 @@
+<?php
+
+namespace App\Http\Controllers\Api\Personnel;
+
+use App\Http\Controllers\Api\Api;
+use App\Http\Requests\Api\Personnel\Employee as Request;
+use App\Models\Api\Personnel\Employee as EmployeeModel;
+
+/**
+ * 人员信息管理-员工管理
+ * @author 唐远望
+ * @version 1.0
+ * @date 2025-12-10
+ */
+class Employee extends Api
+{
+    /**
+     * 列表
+     * @author    唐远望
+     * @version   1.0
+     * @date      2025-12-10
+     * 
+     */
+    public function list(Request $request, EmployeeModel $EmployeeModel)
+    {
+        $user_info = $this->checkLogin();
+        if (!$user_info) return json_send(['code' => 'error', 'msg' => '请先登录']);
+        $request->scene('list')->validate();
+        // 查询条件
+        $map  = [];
+        $limit = request('limit', config('page_num', 10));
+        $name = request('name', '');
+        // 其他条件
+        if ($name) $map[] = ['name', 'like', "%$name%"];
+        $field = ['id', 'employee_code', 'name'];
+        // 查询数据
+        $result_model = $EmployeeModel->query();
+        $result = $result_model
+            ->where($map)
+            ->select($field)
+            ->orderByDesc('id')
+            ->paginate($limit)->toarray();
+        // 分配数据
+        if (!$result)  return json_send(['code' => 'error', 'msg' => '暂无数据']);
+        // 加载模板
+        return        json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $result]);
+    }
+}

+ 89 - 0
app/Http/Requests/Api/Personnel/Employee.php

@@ -0,0 +1,89 @@
+<?php
+
+namespace App\Http\Requests\Api\Personnel;
+
+use App\Http\Requests\BaseRequest;
+
+/**
+ * 人员管理-员工管理-请求类
+ * @author 唐远望
+ * @version 1.0
+ * @date 2025-12-10
+ * 
+ */
+class Employee extends BaseRequest
+{
+    /**
+     * 获取应用于请求的规则
+     *
+     * @return array
+     */
+    public function rules()
+    {
+        // 返回结果
+        return      [
+            'name'                 => 'required',
+            'id'                => 'required|integer|gt:0',
+            'status'            => 'required|integer|in:0,1',
+            'page'              => 'integer|min:1',
+            'limit'             => 'integer|min:1',
+            'image_url'         => 'required',
+            'link_url'          => 'required',
+            'sort'              => 'required|integer|min:0',
+            'mobile'            => 'required',
+            'department_id'     => 'required|integer|gt:0',
+            'role_id'           => 'required|integer|gt:0',
+            'password'          => 'required',
+            'open_notice'       => 'required|integer|in:0,1',
+        ];
+    }
+
+
+    // 场景列表
+    protected   $scenes         = [
+        'detail'             => ['id'],
+        'list'               => ['page', 'limit'],
+        'add'                      => ['name', 'mobile','department_id','role_id','password','open_notice'],
+        'edit'                  => ['id','name', 'mobile','department_id','role_id','open_notice'],
+        'set_status'              => ['id', 'status'],
+        'delete'                  => ['id'],
+    ];
+
+    /**
+     * 获取已定义验证规则的错误消息
+     *
+     * @return array
+     */
+    public function messages()
+    {
+        return [
+            'name.required'     => '姓名必填',
+            'id.required'       => 'ID未知',
+            'id.integer'        => 'ID格式错误',
+            'id.gt'               => 'ID格式错误',
+            'status.required'   => '状态未知',
+            'status.integer'    => '状态格式错误',
+            'status.in'         => '状态格式错误',
+            'page.integer'      => '页码格式错误',
+            'page.min'          => '页码格式错误',
+            'limit.integer'     => '每页数量格式错误',
+            'limit.min'         => '每页数量格式错误',
+            'image_url.required'    => '图片链接未知',
+            'link_url.required'     => '链接地址未知',
+            'sort.required'         => '排序未知',
+            'sort.integer'          => '排序格式错误',
+            'sort.min'              => '排序格式错误',
+            'mobile.required'       => '手机号未知',
+            'department_id.required'    => '部门未知',
+            'department_id.integer'     => '部门格式错误',
+            'department_id.gt'          => '部门格式错误',
+            'role_id.required'        => '角色未知',
+            'role_id.integer'         => '角色格式错误',
+            'role_id.gt'              => '角色格式错误',
+            'password.required'       => '密码未知',
+            'open_notice.required'    => '通知未知',
+            'open_notice.integer'     => '通知格式错误',
+            'open_notice.in'          => '通知格式错误',
+        ];
+    }
+}

+ 4 - 1
routes/api.php

@@ -47,4 +47,7 @@ Route::any('process/violation_store/detail', [App\Http\Controllers\Api\Process\V
 // 违规店铺违规处理-状态(记录)
 Route::any('process/violation_store/set_status', [App\Http\Controllers\Api\Process\ViolationStore::class, 'set_status']);
 // 违规店铺违规处理-状态(处理)
-Route::any('process/violation_store/set_processing_status', [App\Http\Controllers\Api\Process\ViolationStore::class, 'set_processing_status']);
+Route::any('process/violation_store/set_processing_status', [App\Http\Controllers\Api\Process\ViolationStore::class, 'set_processing_status']);
+
+// 员工管理-列表
+Route::any('personnel_employee/list', [App\Http\Controllers\Api\Personnel\Employee::class, 'list']);