Commit f7476fd4 by Future

代码调试

parent f8e44037
......@@ -106,10 +106,7 @@ public class NormalChatAction {
// if (log.isDebugEnabled()) {
// log.debug("接收到参数,reqId: {},\n data: {}, ", reqId, data);
// }
//查看接收的群属性,是否万人群
ImConversationQueryVo conversation = imConversationService.getCacheImConversationById(data.getToConversation());
if (conversation == null) {
log.warn("会reqId: {} ,会话id: {}db中不存在", reqId, data.getToConversation());
return;
......@@ -142,59 +139,59 @@ public class NormalChatAction {
channelSender.sendMsgLocal((NioSocketChannel) request.getSenderChannel(), responseModel);
return;
}
Map<Long, ImConversationMembers> memberMap = membersList.stream().collect(Collectors.toMap(ImConversationMembers::getFkClientId, member -> member));
// Map<Long, ImConversationMembers> memberMap = membersList.stream().collect(Collectors.toMap(ImConversationMembers::getFkClientId, member -> member));
// 判断为单聊
if (ChatTypeEnum.SINGLE.getCode().equals(conversation.getChatType())) {
// 判断是否被拉黑逻辑
if (black(reqId, imClientSender, membersList, request.getSenderChannel())) {
return;
}
if (!friend(reqId, imClientSender, data.getToConversation(), membersList, request.getSenderChannel())) {
return;
}
}
// if (ChatTypeEnum.SINGLE.getCode().equals(conversation.getChatType())) {
// // 判断是否被拉黑逻辑
// if (black(reqId, imClientSender, membersList, request.getSenderChannel())) {
// return;
// }
//
// if (!friend(reqId, imClientSender, data.getToConversation(), membersList, request.getSenderChannel())) {
// return;
// }
// }
if (ChatTypeEnum.NORMAL_GROUP.getCode().equals(conversation.getChatType())) {
if (beKickOut(reqId, imClientSender, membersList, request.getSenderChannel())) {
return;
}
if (muted(conversation, reqId, imClientSender, membersList, memberMap, request.getSenderChannel())) {
return;
}
if (baned(conversation, reqId, imClientSender, membersList, request.getSenderChannel())) {
return;
}
}
// if (ChatTypeEnum.NORMAL_GROUP.getCode().equals(conversation.getChatType())) {
// if (beKickOut(reqId, imClientSender, membersList, request.getSenderChannel())) {
// return;
// }
// if (muted(conversation, reqId, imClientSender, membersList, memberMap, request.getSenderChannel())) {
// return;
// }
// if (baned(conversation, reqId, imClientSender, membersList, request.getSenderChannel())) {
// return;
// }
// }
// 消息内容校验
if (!checkMsg(imClientSender, conversation, reqId, data, request.getSenderChannel(), memberMap)) {
return;
}
// if (!checkMsg(imClientSender, conversation, reqId, data, request.getSenderChannel(), memberMap)) {
// return;
// }
ImMessageOnlineSend imMessageOnlineSend = assembleImMessageOnlineSend(data, imClientSender, imApplication.getId());
// 入库 保存收件箱
batchSaveInbox(imApplication, conversation, imMessageOnlineSend.getMsgId(), membersList);
// 入库成功后 判断是否是临时会话 如果是,双方会话display状态是否是1(显示),如果不是,需要修改为是
if (ChatTypeEnum.TEMP.getCode().equals(conversation.getChatType())) {
// 木有只有私聊一种临时会话类型
List<ImConversationMembers> tempMemberToUpdate = Lists.newArrayList();
for (ImConversationMembers members : membersList) {
if (members.getDisplayStatus() == 0) {
members.setDisplayStatus(1);
tempMemberToUpdate.add(members);
}
}
if (CollectionUtils.isNotEmpty(tempMemberToUpdate)) {
imConversationMembersService.updateBatchById(tempMemberToUpdate);
}
}
// if (ChatTypeEnum.TEMP.getCode().equals(conversation.getChatType())) {
// // 木有只有私聊一种临时会话类型
// List<ImConversationMembers> tempMemberToUpdate = Lists.newArrayList();
// for (ImConversationMembers members : membersList) {
// if (members.getDisplayStatus() == 0) {
// members.setDisplayStatus(1);
// tempMemberToUpdate.add(members);
// }
// }
// if (CollectionUtils.isNotEmpty(tempMemberToUpdate)) {
// imConversationMembersService.updateBatchById(tempMemberToUpdate);
// }
// }
String key = "push_" + conversation.getId();
String value = redisUtils.getKey(key);
final Boolean isPush;
if (StringUtils.isBlank(value)) {
isPush = Boolean.TRUE;
redisUtils.addKey(key, "1", Duration.ofMinutes(2));
redisUtils.addKey(key, "1", Duration.ofMinutes(5));
} else {
isPush = Boolean.FALSE;
}
......@@ -217,7 +214,7 @@ public class NormalChatAction {
// 在线用户直接发消息
Boolean sendSuccess = sendMsgForOnline(member.getFkClientId(), imMessageOnlineSend);
if (isPush && !sendSuccess && !member.getDoNotDisturb()) {
// 异步推送系统通知消息 2分钟内推一次消息
// 异步推送系统通知消息 5分钟内推一次消息
PushDTO pushDTO = mqSender.buildPushDto(push, member.getFkClientId(), member.getClientId(), imApplication);
if (pushDTO != null) {
mqSender.orderSend(MqConstant.Topic.IM_ORDER_MSG_TOPIC, MqConstant.Tag.IM_ORDER_MSG_TAG, pushDTO);
......
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