Home.php 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\AdminBaseController;
  4. use app\common\model\AdminModel;
  5. use app\common\model\FeedbackModel;
  6. use app\common\model\MenuModel;
  7. use app\common\model\UserModel;
  8. class Home extends AdminBaseController
  9. {
  10. public function index()
  11. {
  12. $access_admin = session('access_admin');
  13. $admin = AdminModel::find($access_admin['id']);
  14. $where = [
  15. ['mtype', '=', 'admin'],
  16. ['status', '=', 1],
  17. ];
  18. if ($access_admin['id'] != 1) {
  19. $where[] = ['id', 'in', $admin->powerids];
  20. }
  21. $menu_list = MenuModel::where(['mtype' => 'admin', 'status' => 1])
  22. ->where($where)
  23. ->order(['pid' => 'asc', 'priority' => 'asc', 'id' => 'asc'])
  24. ->select()
  25. ->toArray();
  26. $powerarr = [];
  27. if (!empty($menu_list)) {
  28. foreach ($menu_list as $k => $v) {
  29. if ($v['pid'] == 0) {
  30. $v['children'] = [];
  31. $powerarr[$v['id']] = $v;
  32. } else {
  33. $powerarr[$v['pid']]['children'][] = $v;
  34. }
  35. }
  36. }
  37. return view('', [
  38. 'access_admin' => $access_admin,
  39. 'powerarr' => $powerarr,
  40. ]);
  41. }
  42. public function console()
  43. {
  44. //用户统计
  45. $user_count = [];
  46. $user_count['today'] = UserModel::whereDay('create_time')->count();
  47. $user_count['yesterday'] = UserModel::whereDay('create_time', 'yesterday')->count();
  48. $user_count['week'] = UserModel::whereWeek('create_time')->count();
  49. $user_count['month'] = UserModel::whereMonth('create_time')->count();
  50. $user_count['total'] = UserModel::count();
  51. //意见反馈
  52. $feedback = FeedbackModel::where('status', FeedbackModel::STATUS_UNREAD)
  53. ->limit(5)
  54. ->order('create_time', 'desc')
  55. ->select();
  56. return view('home/console', [
  57. 'access_admin' => session('access_admin'),
  58. 'user_count' => $user_count,
  59. 'feedback' => $feedback,
  60. ]);
  61. }
  62. }