AdminHistory.php 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. namespace App\Http\Controllers\manager;
  3. use App\Http\Controllers\Controller;
  4. use App\Http\Requests\Manager\AdminHistory as Request;
  5. use App\Models\Manager\AdminHistory as AdminHistoryModel;
  6. use App\Models\Manager\AdminUser as AdminUserModel;
  7. use App\Models\Manager\Personnel\Employee as EmployeeModel;
  8. /**
  9. * 操作日志记录
  10. * @author 唐远望
  11. * @version 1.0
  12. * @date 2025-12-24
  13. */
  14. class AdminHistory extends Controller
  15. {
  16. /**
  17. * 列表
  18. * @author 唐远望
  19. * @version 1.0
  20. * @date 2025-12-24
  21. *
  22. */
  23. public function list(Request $request, AdminHistoryModel $AdminHistoryModel, AdminUserModel $AdminUserModel, EmployeeModel $EmployeeModel)
  24. {
  25. $request->scene('list')->validate();
  26. // 查询条件
  27. $map = [];
  28. $limit = request('limit', config('page_num', 10));
  29. $start_time = request('start_time', '');
  30. $end_time = request('end_time', '');
  31. $module_menu_name = request('module_menu_name', '');
  32. $general_description = request('general_description', '');
  33. $notes_type = request('notes_type', '');
  34. // 时间条件
  35. if ($start_time) $map[] = ['insert_time', '>=', strtotime($start_time)];
  36. if ($end_time) $map[] = ['insert_time', '<=', strtotime($end_time)];
  37. // 其他条件
  38. if ($module_menu_name) $map[] = ['module_menu_name', 'like', "%$module_menu_name%"];
  39. if ($general_description) $map[] = ['general_description', 'like', "%$general_description%"];
  40. if ($notes_type) $map[] = ['notes_type', '=', $notes_type];
  41. // 查询数据
  42. $result = $AdminHistoryModel
  43. ->where($map)
  44. ->select(['id', 'admin_uid', 'is_admin', 'module_menu_name', 'notes_type', 'general_description', 'insert_time'])
  45. ->orderByDesc('id')
  46. ->paginate($limit)->toarray();
  47. if (isset($result['data']) && count($result['data']) > 0) {
  48. foreach ($result['data'] as $key => $value) {
  49. $is_admin = $value['is_admin'];
  50. if ($is_admin == '1') {
  51. $result['data'][$key]['username'] = $AdminUserModel->where('uid', $value['admin_uid'])->value('username');
  52. } else {
  53. $result['data'][$key]['username'] = $EmployeeModel->where('id', $value['admin_uid'])->value('name');
  54. }
  55. }
  56. }
  57. // 分配数据
  58. if (!$result) return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => []]);
  59. // 加载模板
  60. return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $result]);
  61. }
  62. }