Commit aa41cc02 by 罗长华

修复报错

parent 80891467
......@@ -37,7 +37,7 @@ public class Couriers {
* @param cmd ws命令类型
* @Return
*/
public void deliver(ImMessage message, ImClient sender, ImClient receiver, WsResponseCmdEnum cmd) {
public void deliver(ImMessage message, Object content, ImClient sender, ImClient receiver, WsResponseCmdEnum cmd) {
// 封装响应的实体
ImMessageOnlineSend imMessageOnlineSend = new ImMessageOnlineSend();
......@@ -45,7 +45,7 @@ public class Couriers {
imMessageOnlineSend.setCreateTime(new Date());
imMessageOnlineSend.setType(message.getMsgType());
imMessageOnlineSend.setSender(sender.getClientId());
imMessageOnlineSend.setContent(message.getContent());
imMessageOnlineSend.setContent(content);
imMessageOnlineSend.setConversationId(message.getFkConversationId());
imMessageOnlineSend.setWithdraw(message.getWithdraw());
imMessageOnlineSend.setEvent(message.getEvent());
......
......@@ -296,7 +296,7 @@ public interface ImConversationService extends BaseService<ImConversation> {
* @Return
*/
void sendMsgToMembers(ImConversation conversation, List<ImConversationMembers> membersList, ImClient sender,
ImMessage message);
ImMessage message, Object content);
}
......@@ -297,7 +297,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
ImMessage imMessage = MessageBuilder.buildEventMessage(MsgTypeEnum.CLIENT_JOIN_NEW_CONVERSATION, imApplication, createClient, imConversation, JsonUtils.encodeJson(content));
imMessageService.save(imMessage);
// 投递消息
couriers.deliver(imMessage, createClient, client2, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(imMessage, content, createClient, client2, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
}
}
ImConversationCreateVo imConversationCreateVo = new ImConversationCreateVo();
......@@ -438,7 +438,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
imMessage.setFkConversationId(imConversation.getId());
imMessageService.save(imMessage);
// 投递消息
couriers.deliver(imMessage, creator, member, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(imMessage, content, creator, member, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
}
}
ImConversationCreateVo imConversationCreateVo = new ImConversationCreateVo();
......@@ -522,9 +522,9 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
ImMessage imMessage = MessageBuilder.buildEventMessage(MsgTypeEnum.INVITE_CLIENT_JOIN_CONVERSATION, imApplication, createClient, imConversation, JsonUtils.encodeJson(content));
boolean save = imMessageService.save(imMessage);
// 发送给在群内的成员
sendMsgToMembers(imConversation, membersList, createClient, imMessage);
sendMsgToMembers(imConversation, membersList, createClient, imMessage, content);
// 发送给被邀请人
couriers.deliver(imMessage, createClient, clientToConversation, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(imMessage, content, createClient, clientToConversation, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
}
// 将群成员数量减
......@@ -588,7 +588,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
Long appId = imApplication.getId();
String sender = imClientSender.getClientId();
Integer msgType = imMessage.getMsgType();
sendMsgToMembers(imConversation, membersList, createClient, imMessage);
sendMsgToMembers(imConversation, membersList, createClient, imMessage, content);
}
// 将群成员数量减
......@@ -630,7 +630,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
ImMessage imMessage = MessageBuilder.buildEventMessage(MsgTypeEnum.CONVERSATION_DISBAND, imApplication, currentClient, imConversation, JsonUtils.encodeJson(content));
imMessageService.save(imMessage);
sendMsgToMembers(imConversation, membersList, currentClient, imMessage);
sendMsgToMembers(imConversation, membersList, currentClient, imMessage, content);
}
/**
......@@ -659,7 +659,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
for (ImClient receiver : clientReceivers) {
// 投递消息
try {
couriers.deliver(imMessage, currentClient, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(imMessage, content, currentClient, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
} catch (Exception e) {
log.info("下发群会话事件失败,事件类型 {} 接收人 {}", imMessage.getMsgType(), JSON.toJSONString(receiver));
}
......@@ -709,7 +709,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
throw new BusinessException("退出群聊错误");
}
sendMsgToMembers(imConversation, membersList, currentClient, imMessage);
sendMsgToMembers(imConversation, membersList, currentClient, imMessage, null);
// 群主退出 转移给下一个人
if (GroupRoleEnum.OWNER.getCode().equals(members.getRole())) {
ImConversationMembers conversationMember = membersList.get(0);
......@@ -873,7 +873,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
content.put("name", imConversation.getName());
// 发送消息至成员
ImMessage message = MessageBuilder.buildEventMessage(MsgTypeEnum.CONVERSATION_NAME_CHANGE, imApplication, currentClient, imConversation, "");
sendMsgToMembers(imConversation, membersList, currentClient, message);
sendMsgToMembers(imConversation, membersList, currentClient, message, content);
return ApiResult.ok();
} else {
return ApiResult.fail();
......@@ -910,7 +910,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
message.setWithdraw(Boolean.FALSE);
message.setEvent(Boolean.TRUE);
message.setMsgType(MsgTypeEnum.CONVERSATION_EXPAND_FIELD_CHANGE.getUriCode());
sendMsgToMembers(imConversation, membersList, currentClient, message);
sendMsgToMembers(imConversation, membersList, currentClient, message, null);
} else {
throw new BusinessException("修改错误");
}
......@@ -941,7 +941,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
for (ImClient receiver : clientReceivers) {
// 投递消息
try {
couriers.deliver(imMessage, currentClient, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(imMessage, null, currentClient, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
} catch (Exception e) {
log.info("下发群会话事件失败,事件类型 {} 接收人 {}", imMessage.getMsgType(), JSON.toJSONString(receiver));
}
......@@ -1167,7 +1167,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
// 查询该会话所有成员
List<ImConversationMembers> membersList = imConversationMembersService.list(new QueryWrapper<ImConversationMembers>().lambda().eq(ImConversationMembers::getFkAppid, currentClient.getFkAppid()).eq(ImConversationMembers::getFkConversationId, param.getConversationId()).ne(ImConversationMembers::getFkClientId, currentClient.getId()));
ImMessage message = MessageBuilder.buildEventMessage(MsgTypeEnum.CONVERSATION_SET_GROUP_PORTRAIT, imApplication, currentClient, imConversation, "");
sendMsgToMembers(imConversation, membersList, currentClient, message);
sendMsgToMembers(imConversation, membersList, currentClient, message, null);
} else {
throw new BusinessException("修改错误");
}
......@@ -1230,7 +1230,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
for (ImClient receiver : clientReceivers) {
// 投递消息
try {
couriers.deliver(imMessage, imClientSender, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(imMessage, content, imClientSender, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
} catch (Exception e) {
log.info("下发群会话事件失败,事件类型 {} 接收人 {}", imMessage.getMsgType(), JSON.toJSONString(receiver));
}
......@@ -1279,7 +1279,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
for (ImClient receiver : clientReceivers) {
// 投递消息
try {
couriers.deliver(imMessage, currentClient, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(imMessage, null, currentClient, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
} catch (Exception e) {
log.info("下发群会话事件失败,事件类型 {} 接收人 {}", imMessage.getMsgType(), JSON.toJSONString(receiver));
}
......@@ -1423,7 +1423,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
ImMessage imMessage = MessageBuilder.buildEventMessage(msgType, application, currentClient, conversation, JsonUtils.encodeJson(content));
imMessageService.save(imMessage);
// 发送消息至群成员
sendMsgToMembers(conversation, membersList, currentClient, imMessage);
sendMsgToMembers(conversation, membersList, currentClient, imMessage, content);
}
}
......@@ -1438,7 +1438,8 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
* @Date 2022年04月27日 02:11:19
*/
@Override
public void sendMsgToMembers(ImConversation conversation, List<ImConversationMembers> membersList, ImClient sender, ImMessage message) {
public void sendMsgToMembers(ImConversation conversation, List<ImConversationMembers> membersList,
ImClient sender, ImMessage message, Object content) {
Long appId = conversation.getId();
List<Long> receiverClientIds = membersList.stream().map(ImConversationMembers::getFkClientId).collect(Collectors.toList());
......@@ -1447,7 +1448,7 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
for (ImClient receiver : clientReceivers) {
// 投递消息
try {
couriers.deliver(message, sender, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
couriers.deliver(message, content, sender, receiver, WsResponseCmdEnum.CONVERSATION_EVENT_MSG);
} catch (Exception e) {
log.info("下发群会话事件失败,事件类型 {} 接收人 {}", message.getMsgType(), JSON.toJSONString(receiver));
}
......
......@@ -150,7 +150,7 @@ public class ImGroupServiceImpl implements ImGroupService {
operator, conversation, JsonUtils.encodeJson(content));
// 保存消息至消息表
imMessageService.save(imMessage);
conversationService.sendMsgToMembers(conversation, membersList, operator, imMessage);
conversationService.sendMsgToMembers(conversation, membersList, operator, imMessage, content);
return true;
}
......
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