REQ-3345: 如果聊天消息只有一个人的情况下,同步发送
This commit is contained in:
parent
638a6fd8fb
commit
743754427e
@ -251,17 +251,6 @@ public class MessageController implements MessageApi {
|
|||||||
String sendImAccount = accountService.registerAccountIfAbsent(
|
String sendImAccount = accountService.registerAccountIfAbsent(
|
||||||
sender.getPersonId(), sender.getOuId(), sender.getAppType());
|
sender.getPersonId(), sender.getOuId(), sender.getAppType());
|
||||||
BizAssertions.assertNotNull(sendImAccount, "创建账号失败");
|
BizAssertions.assertNotNull(sendImAccount, "创建账号失败");
|
||||||
boolean syncSend = request.isTrySyncSend()
|
|
||||||
&& CollectionUtils.isEmpty(request.receivePersonsOrEmpty())
|
|
||||||
&& request.getImReceiveAccounts() != null
|
|
||||||
&& request.getImReceiveAccounts().size() == 1;
|
|
||||||
MessageTask.BizData bizData = MessageTask.BizData.builder()
|
|
||||||
.messageBody(JSON.toJSONString(request.getMessageBody()))
|
|
||||||
.isSenderRobot(false)
|
|
||||||
.syncSend(syncSend)
|
|
||||||
.senderPersonId(request.determineSenderPersonId())
|
|
||||||
.nimMessageType(request.getMessageType())
|
|
||||||
.build();
|
|
||||||
Date now = new Date();
|
Date now = new Date();
|
||||||
List<MessageTask.ReceivePerson> requestReceivePersons = JSONArray.parseArray(
|
List<MessageTask.ReceivePerson> requestReceivePersons = JSONArray.parseArray(
|
||||||
JSONObject.toJSONString(request.receivePersonsOrEmpty()), MessageTask.ReceivePerson.class);
|
JSONObject.toJSONString(request.receivePersonsOrEmpty()), MessageTask.ReceivePerson.class);
|
||||||
@ -274,6 +263,15 @@ public class MessageController implements MessageApi {
|
|||||||
.build());
|
.build());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
int receiverSize = request.receivePersonsOrEmpty().size() + request.getImReceiveAccounts().size();
|
||||||
|
boolean syncSend = request.isTrySyncSend() && receiverSize == 1;
|
||||||
|
MessageTask.BizData bizData = MessageTask.BizData.builder()
|
||||||
|
.messageBody(JSON.toJSONString(request.getMessageBody()))
|
||||||
|
.isSenderRobot(false)
|
||||||
|
.syncSend(syncSend)
|
||||||
|
.senderPersonId(request.determineSenderPersonId())
|
||||||
|
.nimMessageType(request.getMessageType())
|
||||||
|
.build();
|
||||||
Long taskId = transactionTemplate.execute(unused -> {
|
Long taskId = transactionTemplate.execute(unused -> {
|
||||||
MessageTask task = messageTaskService.create(MessageTask.builder()
|
MessageTask task = messageTaskService.create(MessageTask.builder()
|
||||||
.bizId(request.getBizId())
|
.bizId(request.getBizId())
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user