diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/adapter/MessageAdapter.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/adapter/MessageAdapter.java index 7ca194e..c5c60dc 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/adapter/MessageAdapter.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/adapter/MessageAdapter.java @@ -35,19 +35,19 @@ public class MessageAdapter { } - public static List buildMsgResp(List messages, Map replyMap, List msgMark, Long receiveUid) { + public static List buildMsgResp(List messages, List msgMark, Long receiveUid) { Map> markMap = msgMark.stream().collect(Collectors.groupingBy(MessageMark::getMsgId)); return messages.stream().map(a -> { ChatMessageResp resp = new ChatMessageResp(); resp.setFromUser(buildFromUser(a.getFromUid())); - resp.setMessage(buildMessage(a, replyMap, markMap.getOrDefault(a.getId(), new ArrayList<>()), receiveUid)); + resp.setMessage(buildMessage(a, markMap.getOrDefault(a.getId(), new ArrayList<>()), receiveUid)); return resp; }) .sorted(Comparator.comparing(a -> a.getMessage().getSendTime()))//帮前端排好序,更方便它展示 .collect(Collectors.toList()); } - private static ChatMessageResp.Message buildMessage(Message message, Map replyMap, List marks, Long receiveUid) { + private static ChatMessageResp.Message buildMessage(Message message, List marks, Long receiveUid) { ChatMessageResp.Message messageVO = new ChatMessageResp.Message(); BeanUtil.copyProperties(message, messageVO); messageVO.setSendTime(message.getCreateTime()); diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java index f0988c1..47ae8a8 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java @@ -306,15 +306,9 @@ public class ChatServiceImpl implements ChatService { if (CollectionUtil.isEmpty(messages)) { return new ArrayList<>(); } - Map replyMap = new HashMap<>(); - //批量查出回复的消息 - List replyIds = messages.stream().map(Message::getReplyMsgId).filter(Objects::nonNull).distinct().collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(replyIds)) { - replyMap = messageDao.listByIds(replyIds).stream().collect(Collectors.toMap(Message::getId, Function.identity())); - } //查询消息标志 List msgMark = messageMarkDao.getValidMarkByMsgIdBatch(messages.stream().map(Message::getId).collect(Collectors.toList())); - return MessageAdapter.buildMsgResp(messages, replyMap, msgMark, receiveUid); + return MessageAdapter.buildMsgResp(messages, msgMark, receiveUid); } }