09-10-netty优化

This commit is contained in:
2025-09-10 16:00:43 +08:00
parent 4392a287cc
commit 0f3d1e38be
2 changed files with 10 additions and 6 deletions

View File

@ -145,7 +145,7 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
roomCounts.put(loginUser.getUserId()+"+"+chatGroup.getId().toString(), list.size()); roomCounts.put(loginUser.getUserId()+"+"+chatGroup.getId().toString(), list.size());
} }
//在遍历的同时寻找是否有系统消息房间 //在遍历的同时寻找是否有系统消息房间
if (chatGroup.getMembers().contains("system")){ if (chatGroup.getMembers().contains("[99")){
isHaveSystemRoom = true; isHaveSystemRoom = true;
} }
} }
@ -159,8 +159,9 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
if (!isHaveSystemRoom){ if (!isHaveSystemRoom){
ChatGroup chatGroup = new ChatGroup(); ChatGroup chatGroup = new ChatGroup();
chatGroup.setType(String.valueOf(0)); chatGroup.setType(String.valueOf(0));
chatGroup.setMembers("[system, "+loginUser.getUserId()+"]"); chatGroup.setMembers("[99, "+loginUser.getUserId()+"]");
chatGroupService.save(chatGroup); chatGroupService.save(chatGroup);
} }
} }
} }
@ -272,7 +273,7 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
temp.put(value,userRoomCountMap.get(value)); temp.put(value,userRoomCountMap.get(value));
} }
}); });
jsonObject.put("countValue", JsonUtils.toJsonString(temp)); jsonObject.put("unReadCount", JsonUtils.toJsonString(temp));
//给每个通道发送对应消息 //给每个通道发送对应消息
for (ChannelHandlerContext handlerContext : channelHandlerContexts) { for (ChannelHandlerContext handlerContext : channelHandlerContexts) {
sendMessage(handlerContext, jsonObject.toString()); sendMessage(handlerContext, jsonObject.toString());
@ -361,13 +362,13 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
//生成系统消息的聊天记录 //生成系统消息的聊天记录
LambdaQueryWrapper<ChatGroup> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ChatGroup> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(ChatGroup::getMembers,"[system, "+userId+"]"); lambdaQueryWrapper.eq(ChatGroup::getMembers,"[99, "+userId+"]");
ChatGroup groupServiceOne = chatGroupService.getOne(lambdaQueryWrapper); ChatGroup groupServiceOne = chatGroupService.getOne(lambdaQueryWrapper);
//如果给成员发送系统消息 而该成员还没有建立过连接从而没有群聊房间 则创建该成员系统消息房间 //如果给成员发送系统消息 而该成员还没有建立过连接从而没有群聊房间 则创建该成员系统消息房间
if (groupServiceOne == null){ if (groupServiceOne == null){
groupServiceOne = new ChatGroup(); groupServiceOne = new ChatGroup();
groupServiceOne.setType(String.valueOf(0)); groupServiceOne.setType(String.valueOf(0));
groupServiceOne.setMembers("[system, "+userId+"]"); groupServiceOne.setMembers("[99, "+userId+"]");
chatGroupService.save(groupServiceOne); chatGroupService.save(groupServiceOne);
} }
ChatHistory chatHistory = new ChatHistory(); ChatHistory chatHistory = new ChatHistory();
@ -400,7 +401,7 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
temp.put(value,userRoomCountMap.get(value)); temp.put(value,userRoomCountMap.get(value));
} }
}); });
jsonObject.put("countValue", temp); jsonObject.put("unReadCount", temp);
sendMessage(handlerContext, jsonObject.toString()); sendMessage(handlerContext, jsonObject.toString());
} }
} }

View File

@ -153,6 +153,9 @@ public class ChatGroupController {
if (sysUserVo != null) { if (sysUserVo != null) {
byId.setName(sysUserVo.getNickName()); byId.setName(sysUserVo.getNickName());
byId.setAvatar(sysUserVo.getAvatar()); byId.setAvatar(sysUserVo.getAvatar());
}else if (list.getFirst().equals(99L)){
byId.setName("系统消息");
byId.setAvatar(null);
}else{ }else{
byId.setName("此用户已注销"); byId.setName("此用户已注销");
byId.setAvatar(null); byId.setAvatar(null);