Browse Source

聊天记录显示软删除问题处理

master
wanghongjun 8 months ago
parent
commit
6a4f5a9943
  1. 5
      app/enterprise/controller/Im.php
  2. 2
      app/enterprise/model/Message.php

5
app/enterprise/controller/Im.php

@ -296,6 +296,9 @@ class Im extends BaseController
}
$toContactId=$v['is_group'] ==1 ? 'group-'.$v['to_user'] : $v['to_user'];
$atList=($v['at'] ?? null) ? explode(',',$v['at']): [];
if (!is_numeric($v['create_time'])) {
$v['create_time'] = strtotime($v['create_time']);
}
$data[] = [
'msg_id' => $v['msg_id'],
'id' => $v['id'],
@ -817,7 +820,7 @@ class Im extends BaseController
if($message['from_user']!=$this->userInfo['user_id']){
return warning(lang('system.noAuth'));
}
Message::where(['id' => $id])->delete();
$message->delete();
// 如果是最后一条消息,需要将上一条设置为最后一条
if($message['is_last']){
Message::where(['chat_identify'=>$message['chat_identify']])->order('msg_id desc')->limit(1)->update(['is_last'=>1]);

2
app/enterprise/model/Message.php

@ -32,7 +32,7 @@ class Message extends BaseModel
// 查询聊天记录
public static function getList($map,$where,$sort,$listRows,$pageSize){
$list= Db::name('message')
$list= (new self())
->where($map)
->where($where)
->order($sort)

Loading…
Cancel
Save