User.php 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. namespace app\admin\controller;
  3. use app\BaseController;
  4. use app\admin\model\User as UserModel;
  5. use Exception;
  6. class User extends BaseController
  7. {
  8. /**
  9. * @api {get} /user/list 用户列表
  10. */
  11. function list()
  12. {
  13. $config = \app\admin\model\Config::getFieldValue('fileUpload');
  14. // $chatInfo=\app\admin\model\Config::where(['field'=>'platform_name'])->value('val');
  15. // print_r($chatInfo);die;
  16. print_r($config);die;
  17. try {
  18. $params = $this->request->param();
  19. $page = $params['page'] ?? 1;
  20. $limit = $params['limit'] ?? 15;
  21. $user_id = $params['user_id'] ?? '';
  22. $name = $params['name'] ?? '';
  23. $role = $params['role'] ?? 0;
  24. $query = new UserModel();
  25. if ($role == 0) {
  26. $query = $query->where('role', 0);
  27. } else {
  28. $query = $query->where('role', 3);
  29. }
  30. if (!empty($user_id)) {
  31. $query = $query->where('user_id', $user_id);
  32. }
  33. if (!empty($name)) {
  34. $query = $query->where(function ($query) use ($name) {
  35. $query->where('account', 'like', "%{$name}%")
  36. ->whereOr('phone', 'like', "%{$name}%")
  37. ->whereOr('realname', 'like', "%{$name}%");
  38. });
  39. }
  40. $count = $query->count();
  41. $list = $query->order('last_login_time','desc')
  42. ->limit($limit)
  43. ->page($page)
  44. ->select();
  45. foreach($list as &$item) {
  46. $item['last_login_time'] = date('Y-m-d H:i:s', $item['last_login_time']);
  47. $item['offline_time'] = $item['offline_time'] ? date('Y-m-d H:i:s', $item['offline_time']) : '';
  48. }
  49. } catch (Exception $e) {
  50. return $this->error($e->getMessage());
  51. }
  52. return $this->success(['count' => $count, 'list' => $list]);
  53. }
  54. //设置用户状态
  55. public function setStatus()
  56. {
  57. $user_id = (int)$this->request->param('user_id');
  58. $user = UserModel::where('user_id', $user_id)->find();
  59. if (!$user) {
  60. return $this->error('用户不存在');
  61. }
  62. $user->status = $user->status == 0 ? 1 : 0;
  63. $user->save();
  64. return $this->success($user);
  65. }
  66. }