Record.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace addons\shopro\controller\chat;
  3. use addons\shopro\controller\Common;
  4. use app\admin\model\shopro\chat\Record as RecordModel;
  5. use app\admin\model\shopro\chat\User as ChatUserModel;
  6. class Record extends Common
  7. {
  8. protected $noNeedLogin = [];
  9. protected $noNeedRight = ['*'];
  10. public function noRead()
  11. {
  12. $user = auth_user();
  13. $params = $this->request->param();
  14. $room_id = $params['room_id'] ?? 'admin';
  15. $session_id = $params['session_id'] ?? '';
  16. if (!$user && !$session_id) {
  17. $this->success('获取成功', null, 0);
  18. }
  19. // 查询客服用户
  20. $chatUser = ChatUserModel::where(function($query) use ($user, $session_id) {
  21. $query->where('auth', 'user')->where(function ($query) use ($user, $session_id) {
  22. if ($user) {
  23. $query->where('auth_id', $user->id);
  24. }
  25. if ($session_id) {
  26. $query->whereOr('session_id', $session_id);
  27. }
  28. });
  29. })->find();
  30. $no_read_num = 0;
  31. if($chatUser){
  32. // 查询未读消息数量
  33. $no_read_num = RecordModel::customer()->noRead()->where('room_id', $room_id)->where('sender_id', $chatUser->id)->count();
  34. }
  35. $this->success('获取成功', $no_read_num);
  36. }
  37. }