Message.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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. if($value['infotype'] == 'dongtai_answer'){
  25. $value['content'] = Db::name('topic_dongtai_answer')->where('id',$value['infotype_id'])->value('content');
  26. }
  27. $value['createtime_text'] = get_last_time($value['createtime']);
  28. $list[$key] = $value;
  29. }
  30. }
  31. //读取即为已读
  32. $map = [
  33. 'to_user_id' => $this->auth->id,
  34. 'status' => 0,
  35. ];
  36. Db::name('message')->where($map)->update(['status'=>1]);
  37. $this->success('success',$list);
  38. }
  39. }