diff --git a/app/common/controller/ImController.php b/app/common/controller/ImController.php index f68acfcc1..885db5746 100644 --- a/app/common/controller/ImController.php +++ b/app/common/controller/ImController.php @@ -8,6 +8,7 @@ use app\common\model\Company; use app\common\model\im\UserImMessage; use app\common\model\user\User; use GatewayClient\Gateway; +use think\facade\Db; use think\response\Json; class ImController extends BaseLikeAdminController @@ -114,7 +115,7 @@ class ImController extends BaseLikeAdminController 'to_user_id' => $params['to_user_id'], 'content' => $params['content'], 'type' => $params['type'], - 'is_read' => 1, + 'is_read' => 0, 'is_undo' => 0, 'is_delete' => 0, 'create_time' => time(), @@ -208,7 +209,7 @@ class ImController extends BaseLikeAdminController 'to_user_id' => $params['to_user_id'], 'content' => $result['data'], 'type' => $params['type'], - 'is_read' => 1, + 'is_read' => 0, 'is_undo' => 0, 'is_delete' => 0, 'create_time' => time(), @@ -273,27 +274,12 @@ class ImController extends BaseLikeAdminController if(empty($toUserInfo)){ return $this->fail('接收者信息错误'); } + //将消息设置为已读 + UserImMessage::where([['from_user_id','=',$params['from_user_id']],['to_user_id','=',$params['to_user_id']]])->update(['is_read' => 1]); //获取用户消息 - $msgData = UserImMessage::field('id,from_user_id,to_user_id,content,type,is_read,create_time,extends') - ->where([['from_user_id','=',$params['from_user_id']],['to_user_id','=',$params['to_user_id']]]) - ->whereOr([['from_user_id','=',$params['to_user_id']],['to_user_id','=',$params['from_user_id']]]) - ->order('create_time desc')->page($params['page_no'],$params['page_size'])->select()->each(function($item) use($params,$fromUserInfo,$toUserInfo) { - if($item['from_user_id'] == $params['from_user_id']){ - $item['from_user_name'] = $fromUserInfo['name']; - $item['from_user_avatar'] = $fromUserInfo['avatar']; - }else{ - $item['from_user_name'] = $toUserInfo['name']; - $item['from_user_avatar'] = $toUserInfo['avatar']; - } - if($item['to_user_id'] == $params['to_user_id']){ - $item['to_user_name'] = $toUserInfo['name']; - $item['to_user_avatar'] = $toUserInfo['avatar']; - }else{ - $item['to_user_name'] = $fromUserInfo['name']; - $item['to_user_avatar'] = $fromUserInfo['avatar']; - } - - })->toArray(); + $params['page_no'] -= 1; + $sql = "SELECT id,from_user_id,to_user_id,content,type,is_read,create_time,extends FROM la_user_im_message WHERE (from_user_id = {$params['from_user_id']} AND to_user_id = {$params['to_user_id']}) OR (from_user_id = {$params['to_user_id']} AND to_user_id = {$params['from_user_id']}) ORDER BY create_time DESC LIMIT {$params['page_no']},{$params['page_size']}"; + $msgData = Db::query($sql); //返回数据 return $this->success('请求成功',$msgData); }