From 6c87f57624604504abffdd2254e49c5b387b326a Mon Sep 17 00:00:00 2001 From: yanglin Date: Tue, 25 Feb 2025 18:14:25 +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 --- .../cn/axzo/im/controller/MessageController.java | 11 +---------- .../im/send/handler/CommonSendOneHandler.java | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 10 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 126a201..37ca4a6 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 @@ -27,7 +27,6 @@ import cn.axzo.im.center.api.vo.resp.MessageUpdateResponse; import cn.axzo.im.center.api.vo.resp.UpdatableMessageSendResult; import cn.axzo.im.center.api.vo.resp.UserAccountResp; import cn.axzo.im.center.common.enums.AppTypeEnum; -import cn.axzo.im.channel.netease.dto.MessageDispatchResponse; import cn.axzo.im.entity.AccountRegister; import cn.axzo.im.entity.MessageHistory; import cn.axzo.im.entity.MessageTask; @@ -289,15 +288,7 @@ public class MessageController implements MessageApi { task = messageTaskService.getById(task.getId()); List historyIds = messageTaskService.createMessageHistory(task); MessageHistory history = messageHistoryService.getById(historyIds.get(0)); - MessageDispatchResponse response = commonSendOneHandler.send(history); - if (response.isSuccess()) { - messageHistoryService.setSendSuccess(history, response.getMsgid(), null); - log.info("sendChatMessage, send success, historyId={}, taskId={}, bizId={}", - history.getId(), history.getImMessageTaskId(), history.getBizId()); - } else { - log.warn("sendChatMessage, send failed, historyId={}, taskId={}, bizId={}, failReason={}", - history.getId(), history.getImMessageTaskId(), history.getBizId(), response.getDesc()); - } + commonSendOneHandler.updateSyncSendState(history, commonSendOneHandler.send(history)); } return task.getId(); }); diff --git a/im-center-server/src/main/java/cn/axzo/im/send/handler/CommonSendOneHandler.java b/im-center-server/src/main/java/cn/axzo/im/send/handler/CommonSendOneHandler.java index daa7ddb..dbd29f2 100644 --- a/im-center-server/src/main/java/cn/axzo/im/send/handler/CommonSendOneHandler.java +++ b/im-center-server/src/main/java/cn/axzo/im/send/handler/CommonSendOneHandler.java @@ -7,13 +7,16 @@ import cn.axzo.im.channel.netease.dto.MessageDispatchResponse; import cn.axzo.im.entity.MessageHistory; import cn.axzo.im.send.MessageHistoryNimLogger; import cn.axzo.im.send.SendExecutor; +import cn.axzo.im.service.impl.MessageHistoryServiceImpl; import cn.axzo.im.utils.ImProperties; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; /** * @author yanglin */ +@Slf4j @Component @RequiredArgsConstructor public class CommonSendOneHandler extends SendOneHandler { @@ -21,6 +24,7 @@ public class CommonSendOneHandler extends SendOneHandler { private final ImProperties props; private final IMChannelProvider imChannelProvider; private final MessageHistoryNimLogger messageHistoryNimLogger; + private final MessageHistoryServiceImpl messageHistoryService; @Override public void sendAndSubmitUpdate(SendExecutor executor, MessageHistory history) { @@ -55,6 +59,17 @@ public class CommonSendOneHandler extends SendOneHandler { return imChannelProvider.dispatchMessage(sendRequest); } + public void updateSyncSendState(MessageHistory history, MessageDispatchResponse response) { + if (response.isSuccess()) { + messageHistoryService.setSendSuccess(history, response.getMsgid(), null); + log.info("sync send success, historyId={}, taskId={}, bizId={}", + history.getId(), history.getImMessageTaskId(), history.getBizId()); + } else { + log.warn("sync send failed, historyId={}, taskId={}, bizId={}, failReason={}", + history.getId(), history.getImMessageTaskId(), history.getBizId(), response.getDesc()); + } + } + @Override ImProperties getProps() { return props;