Message.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace app\api\controller;
  3. use app\common\controller\Api;
  4. use think\Db;
  5. /**
  6. * 消息
  7. */
  8. class Message extends Api
  9. {
  10. protected $noNeedLogin = [];
  11. protected $noNeedRight = ['*'];
  12. //我的个人消息列表
  13. public function mylist(){
  14. $list = Db::name('message')
  15. ->field('message.*,user.nickname,user.avatar,topic_dongtai.images')
  16. ->join('user','user.id = message.user_id','LEFT')
  17. ->join('topic_dongtai','topic_dongtai.id = message.dt_id','LEFT')
  18. ->where('message.to_user_id',$this->auth->id)
  19. ->autopage()->order('message.id desc')->select();
  20. if(!empty($list)){
  21. foreach($list as $key => $value){
  22. $dongtai_image = explode(',',$value['images']);
  23. $value['dongtai_image'] = isset($dongtai_image[0]) ? localpath_to_netpath($dongtai_image[0]) : '';
  24. $value['avatar'] = localpath_to_netpath($value['avatar']);
  25. if($value['infotype'] == 'dongtai_answer'){
  26. $value['content'] = Db::name('topic_dongtai_answer')->where('id',$value['infotype_id'])->value('content');
  27. }
  28. $value['createtime_text'] = get_last_time($value['createtime']);
  29. $list[$key] = $value;
  30. }
  31. }
  32. //读取即为已读
  33. $map = [
  34. 'to_user_id' => $this->auth->id,
  35. 'status' => 0,
  36. ];
  37. Db::name('message')->where($map)->update(['status'=>1]);
  38. $this->success('success',$list);
  39. }
  40. }