Przeglądaj źródła

[智价云] 操作日志记录管理

tangyuanwang 2 miesięcy temu
rodzic
commit
d389065291

+ 55 - 0
app/Http/Controllers/Manager/AdminHistory.php

@@ -0,0 +1,55 @@
+<?php
+
+namespace App\Http\Controllers\manager;
+
+use App\Http\Controllers\Controller;
+use App\Http\Requests\Manager\AdminHistory as Request;
+use App\Models\Manager\AdminHistory as AdminHistoryModel;
+
+/**
+ * 操作日志记录
+ * @author 唐远望
+ * @version 1.0
+ * @date 2025-12-24
+ */
+class AdminHistory extends Controller
+{
+    /**
+     * 列表
+     * @author    唐远望
+     * @version   1.0
+     * @date      2025-12-24
+     * 
+     */
+    public function list(Request $request, AdminHistoryModel $AdminHistoryModel)
+    {
+        $request->scene('list')->validate();
+        // 查询条件
+        $map  = [];
+        $limit = request('limit', config('page_num', 10));
+        $status    = request('status', '');
+        $start_time = request('start_time', '');
+        $end_time = request('end_time', '');
+        $module_menu_name = request('module_menu_name', '');
+        $general_description = request('general_description', '');
+        $notes_type = request('notes_type', '');
+        // 时间条件
+        if ($start_time) $map[] = ['insert_time', '>=', strtotime($start_time)];
+        if ($end_time) $map[]   = ['insert_time', '<=', strtotime($end_time)];
+        // 其他条件
+        if (is_numeric($status)) $map[] = ['status', '=', $status];
+        if ($module_menu_name) $map[] = ['module_menu_name', 'like', "%$module_menu_name%"];
+        if ($general_description) $map[] = ['general_description', 'like', "%$general_description%"];
+        if ($notes_type) $map[] = ['notes_type', '=', $notes_type];
+        // 查询数据
+        $result = $AdminHistoryModel->join('admin', 'admin.uid', '=', 'admin_history.admin_uid')
+            ->where($map)
+            ->select(['admin_history.id','admin.username','admin_history.admin_uid','admin_history.module_menu_name','admin_history.notes_type','admin_history.general_description','admin_history.insert_time'])
+            ->orderByDesc('admin_history.id')
+            ->paginate($limit);
+        // 分配数据
+        if (!$result)  return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => []]);
+        // 加载模板
+        return        json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $result]);
+    }
+}

+ 78 - 0
app/Http/Requests/Manager/AdminHistory.php

@@ -0,0 +1,78 @@
+<?php
+
+namespace App\Http\Requests\Manager;
+
+use App\Http\Requests\BaseRequest;
+
+/**
+ * 管理员操作历史记录
+ * @author 唐远望
+ * @version 1.0
+ * @date 2025-12-24
+ * 
+ */
+class AdminHistory 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'],
+        'edit'                  => ['id','name'],
+        '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'              => '排序格式错误',
+        ];
+    }
+}

+ 4 - 1
routes/manager.php

@@ -238,4 +238,7 @@ Route::any('process/violation_store/export_excel', [App\Http\Controllers\Manager
 // 获取签名上传地址
 Route::any('upload/get_sign_url',[App\Http\Controllers\Manager\Upload::class,'get_sign_url']);
 // 普通图片上传
-Route::any('upload/uploadimg',[App\Http\Controllers\Manager\Upload::class,'uploadimg']);
+Route::any('upload/uploadimg',[App\Http\Controllers\Manager\Upload::class,'uploadimg']);
+
+// 操作日志-列表
+Route::any('operation_log/list', [App\Http\Controllers\Manager\AdminHistory::class, 'list']);