zhentao 1 week ago
parent
commit
48249f60a5

+ 1 - 0
src/main/java/com/zhentao/groups/MongoDB/pojo/Message.java

@@ -39,4 +39,5 @@ public class Message {
      * 消息创建时间
      */
     private Date createdAt;
+    private String imageurl;
 }

+ 1 - 0
src/main/java/com/zhentao/information/entity/ChatMessage.java

@@ -32,4 +32,5 @@ public class ChatMessage {
     // 复合索引:用于查询两个用户之间的聊天记录
     @Indexed
     private String chatId;
+    private String imageurl;
 }

+ 2 - 1
src/main/java/com/zhentao/information/handler/WebSocketHandler.java

@@ -42,7 +42,7 @@ public class WebSocketHandler extends SimpleChannelInboundHandler<TextWebSocketF
         try {
             Message message = JSON.parseObject(text, Message.class);
             log.info("接收到的消息:{}", message);
-            
+
             // 如果是连接消息,处理token
             if ("connect".equals(message.getType())) {
                 String userId = webSocketService.handleUserLogin(message.getContent(), ctx);
@@ -116,6 +116,7 @@ public class WebSocketHandler extends SimpleChannelInboundHandler<TextWebSocketF
         chatMessage.setToUserId(message.getToUserId());
         chatMessage.setContent(message.getContent());
         chatMessage.setType(message.getType());
+        chatMessage.setImageurl(message.getImageurl());
         chatMessage.setTimestamp(System.currentTimeMillis());
         chatMessage.setIsRead(false);
         chatMessage.setChatId(chatId);

+ 3 - 2
src/main/java/com/zhentao/information/service/WebSocketService.java

@@ -116,7 +116,7 @@ public class WebSocketService {
         if (message.getType() == null) {
             message.setType("text");
         }
-        
+
         ChannelHandlerContext ctx = channelCache.getCache(userId);
         if (ctx != null && ctx.channel().isActive()) {
             try {
@@ -199,6 +199,7 @@ public class WebSocketService {
         chatMessage.setTimestamp(System.currentTimeMillis());
         chatMessage.setIsRead(false);
         chatMessage.setChatId("group_" + groupId);
+        chatMessage.setImageurl(message.getImageurl());
         chatMessageRepository.save(chatMessage);
 
         // 获取群成员
@@ -210,7 +211,7 @@ public class WebSocketService {
                 break;
             }
         }
-        
+
         if (groupMembers == null || groupMembers.isEmpty()) {
             log.error("群 {} 不存在或没有成员", groupId);
             return false;

+ 1 - 0
src/main/java/com/zhentao/user/service/impl/UserLoginServiceImpl.java

@@ -229,6 +229,7 @@ public class UserLoginServiceImpl extends ServiceImpl<UserLoginMapper, UserLogin
                 Map<String,Object> map = new HashMap<>();
                 map.put("token",jwtToken);
                 map.put("userId",one.getId()+"");
+                map.put("image",one.getAvatar());
                 return Result.OK(map,"登录成功");
             }else {
                 // 如果获取锁超时,返回错误信息