From 034cbf6163c3038b5469d39e707e81b9f727466a Mon Sep 17 00:00:00 2001 From: yanglin Date: Wed, 15 Jan 2025 14:42:15 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3502:=20=E8=AE=BE=E7=BD=AE=E9=87=8D?= =?UTF-8?q?=E8=AF=95=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../notices/config/PendingMessageBizConfig.java | 6 ++++++ .../center/message/service/card/CardSupport.java | 16 +++++++++++++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/config/PendingMessageBizConfig.java b/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/config/PendingMessageBizConfig.java index 12cb8150..9d3cad3e 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/config/PendingMessageBizConfig.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/config/PendingMessageBizConfig.java @@ -176,6 +176,12 @@ public class PendingMessageBizConfig { @Getter private boolean enableTodoLog = true; + @Getter + private String workflowIMChannelAppMinVersionCmp = ""; + + @Getter + private String workflowIMChannelAppMinVersionCm = ""; + public boolean determineOldMsgStatCacheOn() { return isOldMsgStatCacheOn(); } diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardSupport.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardSupport.java index 4e69cbcb..627f2f3f 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardSupport.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardSupport.java @@ -10,6 +10,7 @@ import cn.axzo.msg.center.common.utils.BizAssertions; import cn.axzo.msg.center.dal.CardIdempotentDao; import cn.axzo.msg.center.domain.entity.Card; import cn.axzo.msg.center.domain.entity.CardIdempotent; +import cn.axzo.msg.center.inside.notices.config.PendingMessageBizConfig; import cn.axzo.msg.center.message.domain.dto.TemplateModelV3; import cn.axzo.msg.center.message.domain.vo.GeneralMessagePushVO; import cn.axzo.msg.center.message.service.card.domain.CardGroup; @@ -23,6 +24,7 @@ import cn.axzo.msg.center.nimpush.device.PushDeviceSnapshots; import cn.axzo.msg.center.push.PushData; import cn.axzo.msg.center.service.domain.card.AppVersionConfig; import cn.axzo.msg.center.service.dto.PeerPerson; +import cn.axzo.msg.center.service.enums.MessageCategoryEnum; import cn.axzo.msg.center.service.enums.MessageChannel; import cn.axzo.msg.center.service.pending.request.CardContent; import cn.axzo.msg.center.service.pending.request.CardSendRequest; @@ -60,6 +62,7 @@ public class CardSupport { private final NimPushService nimPushService; private final CardIdempotentDao cardIdempotentDao; private final CardProps cardProps; + private final PendingMessageBizConfig cfg; public static String getBizIdPrefix(String templateCode) { return IdBuilder.builder() @@ -178,15 +181,22 @@ public class CardSupport { private String determineMinAppVersion(ParsedModelV3 model, AppTypeEnum appType) { - Ref minVersion = Ref.create(""); + Ref ref = Ref.create(""); ParsedModelV3Walker.walkDown(model, new ParsedModel3Visitor() { @Override public void visitAppVersionConfig(AppVersionConfig cfg) { if (cfg.getAppType() == appType) - minVersion.set(cfg.getMinVersion()); + ref.set(cfg.getMinVersion()); } }); - return minVersion.get(); + String minVersion = ref.get(); + if (StringUtils.isBlank(minVersion) + && model.getTemplate().getMsgCategory() == MessageCategoryEnum.APPROVAL_PENDING_MESSAGE) { + return appType == AppTypeEnum.CMP + ? cfg.getWorkflowIMChannelAppMinVersionCmp() + : cfg.getWorkflowIMChannelAppMinVersionCm(); + } + return minVersion; } TemplateModelV3 ensureImChannelPresent(String templateCode) {