Commit 5661836d by Future

会话列表

parent 90504097
...@@ -890,7 +890,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap ...@@ -890,7 +890,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
conversationVo.setIsBeAt(Boolean.FALSE); conversationVo.setIsBeAt(Boolean.FALSE);
} }
// todo 优化为批量 查询会话的最后一条消息 // 查询会话的最后一条消息 只取有离线消息的会话
OfflineMsgDto lastMsg = imMessageService.getLastMsgByConversationId(conversationVo.getId(), currentClient.getId()); OfflineMsgDto lastMsg = imMessageService.getLastMsgByConversationId(conversationVo.getId(), currentClient.getId());
conversationVo.setLastMsg(lastMsg); conversationVo.setLastMsg(lastMsg);
......
package com.wecloud.im.service.impl; package com.wecloud.im.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.wecloud.im.entity.ImApplication;
import com.wecloud.im.entity.ImClient; import com.wecloud.im.entity.ImClient;
import com.wecloud.im.entity.ImInbox; import com.wecloud.im.entity.ImInbox;
import com.wecloud.im.mapper.ImInboxMapper; import com.wecloud.im.mapper.ImInboxMapper;
...@@ -11,14 +11,12 @@ import com.wecloud.im.param.UpdateMsgReadStatusByConversationParam; ...@@ -11,14 +11,12 @@ import com.wecloud.im.param.UpdateMsgReadStatusByConversationParam;
import com.wecloud.im.service.ImClientService; import com.wecloud.im.service.ImClientService;
import com.wecloud.im.service.ImInboxService; import com.wecloud.im.service.ImInboxService;
import com.wecloud.im.vo.ConversationCountVo; import com.wecloud.im.vo.ConversationCountVo;
import com.wecloud.im.ws.enums.MsgTypeEnum;
import io.geekidea.springbootplus.framework.common.service.impl.BaseServiceImpl; import io.geekidea.springbootplus.framework.common.service.impl.BaseServiceImpl;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List; import java.util.List;
/** /**
...@@ -81,10 +79,13 @@ public class ImInboxServiceImpl extends BaseServiceImpl<ImInboxMapper, ImInbox> ...@@ -81,10 +79,13 @@ public class ImInboxServiceImpl extends BaseServiceImpl<ImInboxMapper, ImInbox>
@Override @Override
public Boolean updateMsgReadStatusByConversation(UpdateMsgReadStatusByConversationParam param) { public Boolean updateMsgReadStatusByConversation(UpdateMsgReadStatusByConversationParam param) {
ImClient currentClient = imClientService.getCurrentClient(); ImClient currentClient = imClientService.getCurrentClient();
this.remove(new QueryWrapper<ImInbox>().lambda() LambdaQueryWrapper<ImInbox> wrapper = new QueryWrapper<ImInbox>().lambda()
.eq(ImInbox::getFkConversationId, param.getConversationId()) .eq(ImInbox::getFkConversationId, param.getConversationId())
.le(ImInbox::getFkMsgId, param.getMsgIdEnd()) .eq(ImInbox::getReceiver, currentClient.getId());
.eq(ImInbox::getReceiver, currentClient.getId())); if (param.getMsgIdEnd() != null) {
wrapper.le(ImInbox::getFkMsgId, param.getMsgIdEnd());
}
this.remove(wrapper);
return true; return true;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment