From 743754427e660cac561116d1ec2f53b8e588c29d Mon Sep 17 00:00:00 2001 From: yanglin Date: Tue, 25 Feb 2025 18:00:40 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3345:=20=E5=A6=82=E6=9E=9C=E8=81=8A?= =?UTF-8?q?=E5=A4=A9=E6=B6=88=E6=81=AF=E5=8F=AA=E6=9C=89=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E7=9A=84=E6=83=85=E5=86=B5=E4=B8=8B=EF=BC=8C=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E5=8F=91=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../axzo/im/controller/MessageController.java | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/im-center-server/src/main/java/cn/axzo/im/controller/MessageController.java b/im-center-server/src/main/java/cn/axzo/im/controller/MessageController.java index bdd7fb0..129f497 100644 --- a/im-center-server/src/main/java/cn/axzo/im/controller/MessageController.java +++ b/im-center-server/src/main/java/cn/axzo/im/controller/MessageController.java @@ -251,17 +251,6 @@ public class MessageController implements MessageApi { String sendImAccount = accountService.registerAccountIfAbsent( sender.getPersonId(), sender.getOuId(), sender.getAppType()); 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(); List requestReceivePersons = JSONArray.parseArray( JSONObject.toJSONString(request.receivePersonsOrEmpty()), MessageTask.ReceivePerson.class); @@ -274,6 +263,15 @@ public class MessageController implements MessageApi { .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 -> { MessageTask task = messageTaskService.create(MessageTask.builder() .bizId(request.getBizId())