From 3890237d4a3e16f1018f31c7ad083d061210bba6 Mon Sep 17 00:00:00 2001 From: Quan Date: Fri, 27 Oct 2023 16:11:27 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=B8=85=E9=99=A4=E6=97=A0=E6=95=88?= =?UTF-8?q?=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/chat/service/adapter/MessageAdapter.java | 6 +++--- .../common/chat/service/impl/ChatServiceImpl.java | 8 +------- 2 files changed, 4 insertions(+), 10 deletions(-) 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); } }