From ceea9c95ca3d48cb2a85f3b16a0b12794b3e6160 Mon Sep 17 00:00:00 2001 From: yanglin Date: Tue, 8 Oct 2024 17:47:45 +0800 Subject: [PATCH 1/8] =?UTF-8?q?REQ-3045:=20=E8=AE=BE=E7=BD=AE=E6=AD=A3?= =?UTF-8?q?=E7=A1=AE=E7=9A=84=E6=B3=A8=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../axzo/msg/center/domain/entity/BaseEntityWithOperator.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/BaseEntityWithOperator.java b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/BaseEntityWithOperator.java index a399b37d..48152c57 100644 --- a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/BaseEntityWithOperator.java +++ b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/BaseEntityWithOperator.java @@ -2,10 +2,14 @@ package cn.axzo.msg.center.domain.entity; import cn.axzo.msg.center.domain.persistence.BaseEntityExt; import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Getter; +import lombok.Setter; /** * @author yanglin */ +@Setter +@Getter public abstract class BaseEntityWithOperator> extends BaseEntityExt { /** * 创建人id From c72018720c0544e97e04caf3986c65f29e3c4297 Mon Sep 17 00:00:00 2001 From: xudawei Date: Tue, 8 Oct 2024 19:18:47 +0800 Subject: [PATCH 2/8] =?UTF-8?q?feat:(REQ-3045)=20=E6=A8=A1=E7=89=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86V3-=E6=9B=B4=E6=96=B0=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MessageTemplateV3Controller.java | 4 - .../MessageTemplateV3SaveOrUpdateParam.java | 49 +++------ .../MessageTemplateButtonV3Service.java | 33 ++++++ .../MessageTemplateButtonV3ServiceImpl.java | 65 +++++++++++ .../MessageTemplateGroupV3ServiceImpl.java | 1 - .../impl/MessageTemplateV3ServiceImpl.java | 69 ++++-------- .../dto/MessageTemplateButtonV3DTO.java | 102 ++++++++++++++++++ .../dto/MessageTemplateCardJumpV3DTO.java | 42 ++++++++ .../client/MessageTemplateV3Client.java | 4 - .../MessageTemplateGroupV3CreateRequest.java | 2 - .../MessageTemplateV3CreateRequest.java | 19 ++-- .../MessageTemplateV3UpdateRequest.java | 15 ++- .../response/MessageTemplateGroupV3DTO.java | 1 - .../MessageTemplateV3DetailResponse.java | 12 +-- 14 files changed, 297 insertions(+), 121 deletions(-) create mode 100644 inside-notices/src/main/java/cn/axzo/msg/center/message/service/MessageTemplateButtonV3Service.java create mode 100644 inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java create mode 100644 msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java create mode 100644 msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java index d815d96f..cabc0dc0 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java @@ -1,7 +1,6 @@ package cn.axzo.msg.center.message.controller; import cn.axzo.basics.common.util.AssertUtil; -import cn.axzo.msg.center.message.domain.param.MessageTemplateSaveOrUpdateParam; import cn.axzo.msg.center.message.domain.param.MessageTemplateV3SaveOrUpdateParam; import cn.axzo.msg.center.message.domain.param.RelationTemplateMapInitParam; import cn.axzo.msg.center.message.domain.vo.RelationTemplateMapInitRequest; @@ -11,11 +10,8 @@ import cn.axzo.msg.center.message.service.MessageTemplateV3Service; import cn.axzo.msg.center.message.service.RelationTemplateMapService; import cn.axzo.msg.center.service.template.client.MessageTemplateV3Client; import cn.axzo.msg.center.service.template.request.MessageTemplateV3CreateRequest; -import cn.axzo.msg.center.service.template.request.MessageTemplatePageRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateSyncDto; import cn.axzo.msg.center.service.template.request.MessageTemplateSyncQueryRequest; -import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateRequest; -import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateStatusRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3DeleteRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3PageRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3UpdateRequest; diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/domain/param/MessageTemplateV3SaveOrUpdateParam.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/domain/param/MessageTemplateV3SaveOrUpdateParam.java index a431d617..f93868f2 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/domain/param/MessageTemplateV3SaveOrUpdateParam.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/domain/param/MessageTemplateV3SaveOrUpdateParam.java @@ -1,15 +1,13 @@ package cn.axzo.msg.center.message.domain.param; import cn.axzo.msg.center.common.exception.ServiceException; -import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO; -import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO; -import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO; +import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; +import cn.axzo.msg.center.service.dto.MessageTemplateCardJumpV3DTO; +import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; import cn.axzo.msg.center.service.enums.MessageCategoryEnum; import cn.axzo.msg.center.service.enums.PushTerminalEnum; -import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3CreateRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateSyncDto; -import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3DeleteRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3UpdateRequest; import cn.axzo.msg.center.utils.MessageTemplateCategoryUtil; @@ -92,15 +90,15 @@ public class MessageTemplateV3SaveOrUpdateParam implements Serializable { /** * 消息卡片信息标签列表,可为空 */ - private List messageTemplateGroups; + private List groups; /** - * 业务详情展示策略 + * 卡片跳转 */ - private MessageDetailRouteStrategyDTO bizDetailShowStrategy; + private MessageTemplateCardJumpV3DTO cardJump; /** - * 路由策略列表 + * 按钮列表 */ - private List routers; + private List buttons; /** * 待办样式, BIZ_COMMON: 业务待办能用, FLOW_COMMON: 审批待办能用, 其它动态配置的 */ @@ -121,13 +119,13 @@ public class MessageTemplateV3SaveOrUpdateParam implements Serializable { .leafGroupNodes(request.getLeafGroupNodes()) .title(request.getMsgTitle()) .content(request.getMsgContent()) - .messageTemplateGroups(request.getMessageTemplateGroups()) + .groups(request.getGroups()) .icon(request.getMsgIcon()) .minAppVersion(request.getMinAppVersion()) .operatorId(request.getOperatorId()) - .routers(request.getRouters()) + .buttons(request.getButtons()) .pushTerminals(request.getPushTerminals()) - .bizDetailShowStrategy(request.getDetailStrategy()) + .cardJump(request.getCardJump()) .pushData(request.getPushData()) .build(); } @@ -141,14 +139,14 @@ public class MessageTemplateV3SaveOrUpdateParam implements Serializable { .leafGroupNodes(request.getLeafGroupNodes()) .title(request.getMsgTitle()) .content(request.getMsgContent()) - .messageTemplateGroups(request.getMessageTemplateGroups()) + .groups(request.getGroups()) .minAppVersion(request.getMinAppVersion()) .icon(request.getMsgIcon()) .operatorId(request.getOperatorId()) .operatorName(request.getOperatorName()) - .routers(request.getRouters()) + .buttons(request.getButtons()) .pushTerminals(request.getPushTerminals()) - .bizDetailShowStrategy(request.getDetailStrategy()) + .groups(request.getGroups()) .pushData(request.getPushData()) .build(); } @@ -161,25 +159,6 @@ public class MessageTemplateV3SaveOrUpdateParam implements Serializable { } - public static MessageTemplateV3SaveOrUpdateParam fromSync(MessageTemplateSyncDto request) { - MessageCategoryEnum category = MessageTemplateCategoryUtil - .checkAndReturnSubCategory(request.getCategory(), request.getSubCategory()) - .orElseThrow(() -> new ServiceException("无效的参数")); - return MessageTemplateV3SaveOrUpdateParam.builder() - .templateName(request.getTemplateName()) - .msgCategory(category) - .leafGroupNodes(request.getLeafGroupNodes()) - .title(request.getMsgTitle()) - .content(request.getMsgContent()) -// .msgCardContentItems(request.getCardContentItems()) - .icon(request.getMsgIcon()) - .minAppVersion(request.getMinAppVersion()) - .operatorId(request.getOperatorId()) - .routers(request.getRouters()) - .pushTerminals(request.getPushTerminals()) - .bizDetailShowStrategy(request.getDetailStrategy()) - .build(); - } @Override public String toString() { diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/MessageTemplateButtonV3Service.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/MessageTemplateButtonV3Service.java new file mode 100644 index 00000000..16c7ee58 --- /dev/null +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/MessageTemplateButtonV3Service.java @@ -0,0 +1,33 @@ +package cn.axzo.msg.center.message.service; + +import cn.axzo.msg.center.domain.entity.MessageTemplateGroupV3; +import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; +import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; + +import java.util.Collection; +import java.util.List; +import java.util.Map; + +/** + * 消息模板分类管理 + * + * @author cold_blade + * @date 2023/10/5 + * @version 1.0 + */ +public interface MessageTemplateButtonV3Service { + + + /** + * 保存按钮 + */ + void saveTemplateButton(String messageTemplateCode, List buttonV3List); + + /** + * 更新按钮 + */ + void updateTemplateButton(String messageTemplateCode, List buttonV3List); + + void deleteTemplateButton(String templateNode); + +} diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java new file mode 100644 index 00000000..a7ebda0a --- /dev/null +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java @@ -0,0 +1,65 @@ +package cn.axzo.msg.center.message.service.impl; + +import cn.axzo.msg.center.dal.MessageTemplateButtonV3Dao; +import cn.axzo.msg.center.domain.entity.MessageTemplateButtonV3; +import cn.axzo.msg.center.domain.entity.MessageTemplateGroupV3; +import cn.axzo.msg.center.message.service.MessageTemplateButtonV3Service; +import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; +import cn.hutool.core.bean.BeanUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author cold_blade + * @date 2023/10/5 + * @version 1.0 + */ +@Slf4j +@Service +@RequiredArgsConstructor +public class MessageTemplateButtonV3ServiceImpl implements MessageTemplateButtonV3Service { + + private final MessageTemplateButtonV3Dao messageTemplateButtonV3Dao; + + @Override + public void saveTemplateButton(String messageTemplateCode, List buttonV3List) { + if (StringUtils.isBlank(messageTemplateCode) || CollectionUtils.isEmpty(buttonV3List)) { + return; + } + + List buttonV3s = buttonV3List.stream().map(item -> { + MessageTemplateButtonV3 buttonV3 = BeanUtil.copyProperties(item, MessageTemplateButtonV3.class); + buttonV3.setTemplateCode(messageTemplateCode); + return buttonV3; + }).collect(Collectors.toList()); + + messageTemplateButtonV3Dao.saveBatch(buttonV3s); + } + + @Override + public void updateTemplateButton(String messageTemplateCode, List buttonV3List) { + //逻辑删除 + this.deleteTemplateButton(messageTemplateCode); + // 保存 + this.saveTemplateButton(messageTemplateCode, buttonV3List); + } + + @Override + public void deleteTemplateButton(String templateNode) { + if (StringUtils.isBlank(templateNode)) { + log.info("the templateNode is blank."); + return; + } + messageTemplateButtonV3Dao.lambdaUpdate() + .eq(MessageTemplateButtonV3::getTemplateCode, templateNode) + .eq(MessageTemplateButtonV3::getIsDelete, 0) + .setSql("is_delete = id") + .update(); + } +} diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java index 00bae58f..03b106dc 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java @@ -8,7 +8,6 @@ import cn.axzo.msg.center.dal.MessageTemplateGroupV3Dao; import cn.axzo.msg.center.domain.entity.MessageTemplateGroup; import cn.axzo.msg.center.domain.entity.MessageTemplateGroupV3; import cn.axzo.msg.center.message.service.MessageGroupNodeService; -import cn.axzo.msg.center.message.service.MessageTemplateGroupService; import cn.axzo.msg.center.message.service.MessageTemplateGroupV3Service; import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; import cn.hutool.core.bean.BeanUtil; diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java index 44b40785..bf9ed7ff 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java @@ -18,6 +18,7 @@ import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO.MessageRou import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO.MessageRouteDetailDTO; import cn.axzo.msg.center.message.domain.param.MessageTemplateV3SaveOrUpdateParam; import cn.axzo.msg.center.message.service.MessageGroupNodeService; +import cn.axzo.msg.center.message.service.MessageTemplateButtonV3Service; import cn.axzo.msg.center.message.service.MessageTemplateGroupService; import cn.axzo.msg.center.message.service.MessageTemplateGroupV3Service; import cn.axzo.msg.center.message.service.MessageTemplateRouterService; @@ -26,16 +27,13 @@ import cn.axzo.msg.center.message.service.group.GroupTemplateService; import cn.axzo.msg.center.service.dto.MessageBaseTemplateDTO; import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO; import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO; +import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; import cn.axzo.msg.center.service.enums.MessageCategoryEnum; import cn.axzo.msg.center.service.enums.PushTerminalEnum; import cn.axzo.msg.center.service.enums.StatusEnum; -import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; -import cn.axzo.msg.center.service.template.request.MessageTemplatePageRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3PageRequest; import cn.axzo.msg.center.service.template.response.MessageDetailStyle; -import cn.axzo.msg.center.service.template.response.MessageTemplateDetailResponse; import cn.axzo.msg.center.service.template.response.MessageTemplateGroupV3DTO; -import cn.axzo.msg.center.service.template.response.MessageTemplatePageResponse; import cn.axzo.msg.center.service.template.response.MessageTemplateV3DetailResponse; import cn.axzo.msg.center.service.template.response.MessageTemplateV3PageResponse; import cn.axzo.msg.center.utils.JSONObjectUtil; @@ -92,28 +90,33 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { private final GroupTemplateService groupTemplateService; private final MessageTemplateV3Dao messageTemplateV3Dao; private final MessageTemplateGroupV3Service messageTemplateGroupV3Service; + private final MessageTemplateButtonV3Service messageTemplateButtonV3Service; @Override @Transactional(rollbackFor = Exception.class) public String createTemplate(MessageTemplateV3SaveOrUpdateParam param) { - // 创建模板基础数据 + //1 创建模板基础数据 String templateCode = saveTemplate(param); - // 创建模板的路由数据 -// saveTemplateRouters(param, templateCode); - // 创建模板与分类的关联关系数据 - messageTemplateGroupV3Service.saveTemplateGroup(templateCode,param.getMessageTemplateGroups()); + //2 创建模板与分类的关联关系数据 + messageTemplateGroupV3Service.saveTemplateGroup(templateCode,param.getGroups()); + //3 保存按钮列表 + messageTemplateButtonV3Service.saveTemplateButton(templateCode, param.getButtons()); + //4 创建模板与分类的关联关系数据 + messageTemplateGroupService.templateGroup(templateCode, param.getLeafGroupNodes()); return templateCode; } @Override @Transactional(rollbackFor = Exception.class) public void updateTemplate(MessageTemplateV3SaveOrUpdateParam param) { - // 更新模板基础数据 + //1 更新模板基础数据 updateMessageTemplate(param); - // 更新模板分类信息 + //2 更新分组 + messageTemplateGroupV3Service.updateTemplateGroup(param.getTemplateCode(), param.getGroups()); + //3 更新按钮列表 + messageTemplateButtonV3Service.updateTemplateButton(param.getTemplateCode(), param.getButtons()); + //4 更新模板分类信息 updateTemplateGroupRelation(param); - // 更新模板路由信息 -// updateTemplateRouters(param); } @Override @@ -332,14 +335,6 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { return template; } - public void saveTemplateRouters(MessageTemplateV3SaveOrUpdateParam param, String templateCode) { - MessageTemplateRouterDTO templateRouter = buildTemplateRouter(param, templateCode); - if (templateRouter.isValid()) { - // 模板配置了路由的场景 - messageTemplateRouterService.saveOrUpdate(templateRouter, false, templateCode); - } - } - private void updateMessageTemplate(MessageTemplateV3SaveOrUpdateParam param) { JSONObject pushData = param.getPushData(); messageTemplateV3Dao.lambdaUpdate() @@ -370,17 +365,6 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { messageTemplateGroupService.updateTemplateGroup(param.getTemplateCode(), param.getLeafGroupNodes()); } - private void updateTemplateRouters(MessageTemplateV3SaveOrUpdateParam param) { - MessageTemplateRouterDTO templateRouter = buildTemplateRouter(param, param.getTemplateCode()); - boolean isCleanOldFlag = Objects.isNull(param.getBizDetailShowStrategy()) - || CollectionUtils.isEmpty(param.getBizDetailShowStrategy().getTerminals()) - || CollectionUtils.isEmpty(param.getRouters()); - if (templateRouter.isValid() || isCleanOldFlag) { - // 模板修改了路由的场景 - messageTemplateRouterService.saveOrUpdate(templateRouter, true, param.getTemplateCode()); - } - } - private IPage pageQueryBaseTemplate(MessageTemplateV3PageRequest request) { List templateCodes = Lists.newArrayList(); if (StringUtils.isNotBlank(request.getGroupNodeCode())) { @@ -495,8 +479,8 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { .msgContent(record.getContent()) .messageTemplateGroups(CollectionUtils.isNotEmpty(messageTemplateGroups) ? BeanUtil.copyToList(messageTemplateGroups, MessageTemplateGroupV3DTO.class) : Lists.newArrayList()) .msgIcon(record.getIcon()) - .detailStrategy(MessageRouterUtil.fetchBizDetailShowStrategy(msgTemplateRouter).orElse(null)) - .routers(MessageRouterUtil.fetchMessageRouterButtonStrategies(msgTemplateRouter)) +// .detailStrategy(MessageRouterUtil.fetchBizDetailShowStrategy(msgTemplateRouter).orElse(null)) +// .routers(MessageRouterUtil.fetchMessageRouterButtonStrategies(msgTemplateRouter)) .minAppVersion(record.getMinAppVersion()) .createTimestamp(record.getCreateAt().getTime()) .updateTimestamp(record.getUpdateAt().getTime()) @@ -507,21 +491,4 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { .pushData(record.getPushData()) .build(); } - - private MessageTemplateRouterDTO buildTemplateRouter(MessageTemplateV3SaveOrUpdateParam param, String templateCode) { - MessageTemplateRouterDTO templateRouter = MessageTemplateRouterDTO.builder().build(); - if (Objects.nonNull(param.getBizDetailShowStrategy()) - && CollectionUtils.isNotEmpty(param.getBizDetailShowStrategy().getTerminals())) { - MessageRouteDetailDTO detailRouter = MessageRouteDetailDTO.from(param.getBizDetailShowStrategy(), templateCode); - templateRouter.setRouteDetail(detailRouter); - } - if (CollectionUtils.isNotEmpty(param.getRouters())) { - List btnRouters = param.getRouters().stream() - .filter(MessageButtonRouteStrategyDTO::isValid) - .map(e -> MessageRouteButtonDTO.from(e, templateCode)) - .collect(Collectors.toList()); - templateRouter.setRouteButtons(btnRouters); - } - return templateRouter; - } } diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java new file mode 100644 index 00000000..7d44f4d8 --- /dev/null +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java @@ -0,0 +1,102 @@ +package cn.axzo.msg.center.service.dto; + +import cn.axzo.msg.center.service.domain.UrlConfig; +import cn.axzo.msg.center.service.enums.ButtonStyleEnum; +import cn.axzo.msg.center.service.enums.PresetButtonType; +import cn.axzo.msg.center.service.enums.RouterButtonSourceEnum; +import cn.axzo.msg.center.service.enums.RouterCategoryEnum; +import com.alibaba.fastjson.JSON; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import org.apache.commons.lang3.StringUtils; + +import java.io.Serializable; +import java.util.List; + +/** + * @description + * + * @author cold_blade + * @date 2023/9/23 + * @version 1.0 + */ +@Setter +@Getter +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class MessageTemplateButtonV3DTO implements Serializable { + + private static final long serialVersionUID = -9083376003614521781L; + + /** + * 按钮唯一标识 + */ + private String identityCode; + /** + * 预设按钮类型 + */ + private PresetButtonType presetButtonType; + /** + * 路由描述 + */ + private String desc; + /** + * 路由分类 + * JUMP: 直接跳转 + * ACTION: 接口调用 + * PRESET_BUTTON: 预设按钮 + */ + private RouterCategoryEnum category; + /** + * 按钮来源 + * SYSTEM: 系统 + * CUSTOM: 自定义 + */ + private RouterButtonSourceEnum source; + /** + * 按钮样式配置 + * HIGH_LIGHT: 按钮高亮展示 + * OVER_CARD: 按钮显示在卡片上 + */ + private List style; + /** + * 执行人可见:true 不可见:false + */ + private Boolean executorShow; + /** + * 待办状态可见可见:true 不可见:false + */ + private Boolean pendingShow; + /** + * 路由按钮的跳转url配置 + */ + private UrlConfig linkConfig; + /** + * 当按钮类型为API调用时,该字段有值 + */ + private String apiUrl; + + /** + * @see {@link MessageTemplateRouterDTO#isValid} + *

要改2处都要记得改 + */ + public boolean isValid() { + if (RouterCategoryEnum.ACTION.equals(category)) { + return StringUtils.isNotBlank(apiUrl); + } + if (RouterCategoryEnum.PRESET_BUTTON.equals(category)) { + return presetButtonType != null; + } + //TODO + return true; + } + + @Override + public String toString() { + return JSON.toJSONString(this); + } +} diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java new file mode 100644 index 00000000..71630166 --- /dev/null +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java @@ -0,0 +1,42 @@ +package cn.axzo.msg.center.service.dto; + +import cn.axzo.msg.center.service.domain.CardUrlConfig; +import cn.axzo.msg.center.service.enums.CardUrlOpenStrategy; +import com.alibaba.fastjson.JSON; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +import java.io.Serializable; + +/** + * @author cold_blade + * @date 2023/11/6 + * @version 1.0 + */ +@Setter +@Getter +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class MessageTemplateCardJumpV3DTO implements Serializable { + + private static final long serialVersionUID = -3496745332397525305L; + + /** + * 卡片跳转方式. NONE: 无跳转, OPEN_TODO_DETAIL: 打开待办详情, OPEN_CUSTOM_PAGE: 打开指定页面 + */ + private CardUrlOpenStrategy cardUrlOpenStrategy; + + /** + * 卡片跳转配置. 在links的基础上再包一层, 避免以后卡片增加自己的配置 + */ + private CardUrlConfig cardUrConfig; + + @Override + public String toString() { + return JSON.toJSONString(this); + } +} diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/client/MessageTemplateV3Client.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/client/MessageTemplateV3Client.java index 10f73d78..41778ab8 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/client/MessageTemplateV3Client.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/client/MessageTemplateV3Client.java @@ -1,17 +1,13 @@ package cn.axzo.msg.center.service.template.client; import cn.axzo.msg.center.service.template.request.MessageTemplateV3CreateRequest; -import cn.axzo.msg.center.service.template.request.MessageTemplatePageRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateSyncDto; import cn.axzo.msg.center.service.template.request.MessageTemplateSyncQueryRequest; -import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateRequest; -import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateStatusRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3DeleteRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3PageRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3UpdateRequest; import cn.axzo.msg.center.service.template.request.MessageTemplateV3UpdateStatusRequest; import cn.axzo.msg.center.service.template.response.MessageDetailStyle; -import cn.axzo.msg.center.service.template.response.MessageTemplateDetailResponse; import cn.axzo.msg.center.service.template.response.MessageTemplatePageResponse; import cn.axzo.msg.center.service.template.response.MessageTemplateV3DetailResponse; import cn.axzo.msg.center.service.template.response.MessageTemplateV3PageResponse; diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateGroupV3CreateRequest.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateGroupV3CreateRequest.java index cd2cba63..aa63dbff 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateGroupV3CreateRequest.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateGroupV3CreateRequest.java @@ -4,8 +4,6 @@ import cn.axzo.msg.center.service.domain.GroupConfig; import cn.axzo.msg.center.service.enums.GroupType; import lombok.Data; -import java.util.List; - /** * @description * diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java index 65c7cea5..5dea8d62 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java @@ -1,8 +1,7 @@ package cn.axzo.msg.center.service.template.request; -import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO; -import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO; -import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO; +import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; +import cn.axzo.msg.center.service.dto.MessageTemplateCardJumpV3DTO; import cn.axzo.msg.center.service.enums.MessageCategoryEnum; import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum; import cn.axzo.msg.center.service.enums.PushTerminalEnum; @@ -87,17 +86,19 @@ public class MessageTemplateV3CreateRequest implements Serializable { */ private String msgIcon; /** - * 消息卡片信息标签列表,可为空 + * 卡片分组 */ - private List messageTemplateGroups; + private List groups; + /** - * 详情展示策略 + * 卡片跳转 */ - private MessageDetailRouteStrategyDTO detailStrategy; + private MessageTemplateCardJumpV3DTO cardJump; + /** - * 路由策略列表 + * 按钮列表 */ - private List routers; + private List buttons; /** * 待办样式, BIZ_COMMON: 业务待办能用, FLOW_COMMON: 审批待办能用, 其它动态配置的 */ diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3UpdateRequest.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3UpdateRequest.java index b72413d3..f187004e 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3UpdateRequest.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3UpdateRequest.java @@ -1,8 +1,7 @@ package cn.axzo.msg.center.service.template.request; -import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO; -import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO; -import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO; +import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; +import cn.axzo.msg.center.service.dto.MessageTemplateCardJumpV3DTO; import cn.axzo.msg.center.service.enums.PushTerminalEnum; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; @@ -70,15 +69,15 @@ public class MessageTemplateV3UpdateRequest implements Serializable { /** * 卡片分组 */ - private List messageTemplateGroups; + private List groups; /** - * 详情展示策略 + * 卡片跳转 */ - private MessageDetailRouteStrategyDTO detailStrategy; + private MessageTemplateCardJumpV3DTO cardJump; /** - * 路由策略列表 + * 按钮列表 */ - private List routers; + private List buttons; /** * 待办样式, BIZ_COMMON: 业务待办能用, FLOW_COMMON: 审批待办能用, 其它动态配置的 */ diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateGroupV3DTO.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateGroupV3DTO.java index 245b33f1..68ccb5a6 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateGroupV3DTO.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateGroupV3DTO.java @@ -44,7 +44,6 @@ public class MessageTemplateGroupV3DTO{ /** * 分组配置 */ - @TableField(typeHandler = FastjsonTypeHandler.class) private GroupConfig groupConfig; } \ No newline at end of file diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateV3DetailResponse.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateV3DetailResponse.java index 206873d4..f96bef40 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateV3DetailResponse.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/response/MessageTemplateV3DetailResponse.java @@ -1,12 +1,12 @@ package cn.axzo.msg.center.service.template.response; import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO; -import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO; import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO; +import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; +import cn.axzo.msg.center.service.dto.MessageTemplateCardJumpV3DTO; import cn.axzo.msg.center.service.enums.MessageCategoryEnum; import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum; import cn.axzo.msg.center.service.enums.PushTerminalEnum; -import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import lombok.AllArgsConstructor; @@ -79,13 +79,13 @@ public class MessageTemplateV3DetailResponse implements Serializable { */ private List messageTemplateGroups; /** - * 详情展示策略 + * 卡片跳转 */ - private MessageDetailRouteStrategyDTO detailStrategy; + private MessageTemplateCardJumpV3DTO cardJump; /** - * 路由策略列表 + * 按钮列表 */ - private List routers; + private List buttons; /** * 模板创建时间戳 */ From c4b7e2280e2257a901968a32b1e1ac017ce73bf1 Mon Sep 17 00:00:00 2001 From: xudawei Date: Tue, 8 Oct 2024 19:35:29 +0800 Subject: [PATCH 3/8] =?UTF-8?q?feat:(REQ-3045)=20=E6=A8=A1=E7=89=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86V3-=E6=9B=B4=E6=96=B0=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/template/request/MessageTemplateV3CreateRequest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java index 5dea8d62..b7d3ee20 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/template/request/MessageTemplateV3CreateRequest.java @@ -32,7 +32,6 @@ public class MessageTemplateV3CreateRequest implements Serializable { /** * 操作者的自然人id */ - @NotNull(message = "operatorId is required") private Long operatorId; /** * 操作人人姓名 From d7b8bdc1c0038e50506280919f4fe56a5988c857 Mon Sep 17 00:00:00 2001 From: xudawei Date: Tue, 8 Oct 2024 23:13:24 +0800 Subject: [PATCH 4/8] =?UTF-8?q?feat:(REQ-3045)=20=E6=A8=A1=E7=89=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86V3-=E6=97=A5=E5=BF=97=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../message/controller/MessageTemplateV3Controller.java | 6 ++++++ .../service/impl/MessageTemplateButtonV3ServiceImpl.java | 7 +++++-- .../service/impl/MessageTemplateGroupV3ServiceImpl.java | 4 ++++ .../message/service/impl/MessageTemplateV3ServiceImpl.java | 4 ++++ .../center/service/dto/MessageTemplateCardJumpV3DTO.java | 2 +- 5 files changed, 20 insertions(+), 3 deletions(-) diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java index cabc0dc0..045cb97b 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java @@ -25,6 +25,7 @@ import cn.azxo.framework.common.model.CommonResponse; import cn.azxo.framework.common.model.Page; import cn.hutool.core.bean.BeanUtil; import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson.JSON; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.MediaType; @@ -55,29 +56,34 @@ public class MessageTemplateV3Controller implements MessageTemplateV3Client { @Override public CommonResponse save(MessageTemplateV3CreateRequest request) { + log.info("MessageTemplateV3Controller#save,request:{}", JSON.toJSONString(request)); return CommonResponse.success( messageTemplateV3Service.createTemplate(MessageTemplateV3SaveOrUpdateParam.from(request))); } @Override public CommonResponse update(MessageTemplateV3UpdateRequest request) { + log.info("MessageTemplateV3Controller#update,request:{}", JSON.toJSONString(request)); messageTemplateV3Service.updateTemplate(MessageTemplateV3SaveOrUpdateParam.from(request)); return CommonResponse.success(); } @Override public CommonResponse delete(MessageTemplateV3DeleteRequest request) { + log.info("MessageTemplateV3Controller#delete,request:{}", JSON.toJSONString(request)); messageTemplateV3Service.deleteTemplate(MessageTemplateV3SaveOrUpdateParam.from(request)); return CommonResponse.success(); } @Override public CommonResponse detail(String templateCode) { + log.info("MessageTemplateV3Controller#detail,templateCode:{}", templateCode); return CommonResponse.success(messageTemplateV3Service.detail(templateCode)); } @Override public CommonResponse> page(MessageTemplateV3PageRequest request) { + log.info("MessageTemplateV3Controller#detail,request:{}", JSON.toJSONString(request)); return CommonResponse.success(messageTemplateV3Service.page(request)); } diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java index a7ebda0a..b4fcfa9a 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java @@ -2,10 +2,10 @@ package cn.axzo.msg.center.message.service.impl; import cn.axzo.msg.center.dal.MessageTemplateButtonV3Dao; import cn.axzo.msg.center.domain.entity.MessageTemplateButtonV3; -import cn.axzo.msg.center.domain.entity.MessageTemplateGroupV3; import cn.axzo.msg.center.message.service.MessageTemplateButtonV3Service; import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; @@ -29,6 +29,7 @@ public class MessageTemplateButtonV3ServiceImpl implements MessageTemplateButton @Override public void saveTemplateButton(String messageTemplateCode, List buttonV3List) { + log.info("ButtonV3#saveTemplateButton,code:{},buttonV3List:{}",messageTemplateCode, JSON.toJSONString(buttonV3List)); if (StringUtils.isBlank(messageTemplateCode) || CollectionUtils.isEmpty(buttonV3List)) { return; } @@ -38,12 +39,13 @@ public class MessageTemplateButtonV3ServiceImpl implements MessageTemplateButton buttonV3.setTemplateCode(messageTemplateCode); return buttonV3; }).collect(Collectors.toList()); - + log.info("ButtonV3#saveTemplateButton,code:{},buttonV3s:{}",messageTemplateCode, JSON.toJSONString(buttonV3s)); messageTemplateButtonV3Dao.saveBatch(buttonV3s); } @Override public void updateTemplateButton(String messageTemplateCode, List buttonV3List) { + log.info("ButtonV3#updateTemplateButton,code:{},buttonV3List:{}",messageTemplateCode, JSON.toJSONString(buttonV3List)); //逻辑删除 this.deleteTemplateButton(messageTemplateCode); // 保存 @@ -52,6 +54,7 @@ public class MessageTemplateButtonV3ServiceImpl implements MessageTemplateButton @Override public void deleteTemplateButton(String templateNode) { + log.info("ButtonV3#deleteTemplateButton,code:{}",templateNode); if (StringUtils.isBlank(templateNode)) { log.info("the templateNode is blank."); return; diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java index 03b106dc..86d8635b 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java @@ -11,6 +11,7 @@ import cn.axzo.msg.center.message.service.MessageGroupNodeService; import cn.axzo.msg.center.message.service.MessageTemplateGroupV3Service; import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import lombok.RequiredArgsConstructor; @@ -131,6 +132,7 @@ public class MessageTemplateGroupV3ServiceImpl implements MessageTemplateGroupV3 @Override public void saveTemplateGroup(String messageTemplateCode, List groupV3List) { + log.info("groupV3#saveTemplateGroup,templateCode:{},groupV3List:{}", messageTemplateCode, JSON.toJSONString(groupV3List)); if (CollectionUtils.isEmpty(groupV3List)) { log.info("groupV3List is empty."); return; @@ -141,11 +143,13 @@ public class MessageTemplateGroupV3ServiceImpl implements MessageTemplateGroupV3 messageTemplateGroupV3.setTemplateCode(messageTemplateCode); return messageTemplateGroupV3; }).collect(Collectors.toList()); + log.info("groupV3#saveTemplateGroup,templateCode:{},templateGroupV3List:{}", messageTemplateCode, JSON.toJSONString(templateGroupV3List)); messageTemplateGroupV3Dao.saveBatch(templateGroupV3List); } @Override public void updateTemplateGroup(String messageTemplateCode, List groupV3List) { + log.info("groupV3#updateTemplateGroup,templateCode:{},groupV3List:{}", messageTemplateCode, JSON.toJSONString(groupV3List)); // 删除卡片分组 deleteTemplateGroup(messageTemplateCode); // 插入新的分组 diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java index bf9ed7ff..66471994 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java @@ -95,6 +95,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override @Transactional(rollbackFor = Exception.class) public String createTemplate(MessageTemplateV3SaveOrUpdateParam param) { + log.info("MessageTemplateV3ServiceImpl#createTemplate,param:{}", JSON.toJSONString(param)); //1 创建模板基础数据 String templateCode = saveTemplate(param); //2 创建模板与分类的关联关系数据 @@ -109,6 +110,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override @Transactional(rollbackFor = Exception.class) public void updateTemplate(MessageTemplateV3SaveOrUpdateParam param) { + log.info("MessageTemplateV3ServiceImpl#updateTemplate,param:{}", JSON.toJSONString(param)); //1 更新模板基础数据 updateMessageTemplate(param); //2 更新分组 @@ -122,6 +124,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override @Transactional(rollbackFor = Exception.class) public void deleteTemplate(MessageTemplateV3SaveOrUpdateParam param) { + log.info("MessageTemplateV3ServiceImpl#deleteTemplate,param:{}", JSON.toJSONString(param)); if (Objects.isNull(param) || StringUtils.isBlank(param.getTemplateCode())) { log.info("messageTemplateCode is blank"); return; @@ -135,6 +138,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override public MessageTemplateV3DetailResponse detail(String templateCode) { + log.info("MessageTemplateV3ServiceImpl#deleteTemplate,templateCode:{}", templateCode); if (StringUtils.isBlank(templateCode)) { return null; } diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java index 71630166..9e3b1979 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java @@ -33,7 +33,7 @@ public class MessageTemplateCardJumpV3DTO implements Serializable { /** * 卡片跳转配置. 在links的基础上再包一层, 避免以后卡片增加自己的配置 */ - private CardUrlConfig cardUrConfig; + private CardUrlConfig cardUrlConfig; @Override public String toString() { From 4b01e5e4144d5f8cbe3d02c8adba85d36ae35cbd Mon Sep 17 00:00:00 2001 From: xudawei Date: Tue, 8 Oct 2024 23:13:24 +0800 Subject: [PATCH 5/8] =?UTF-8?q?feat:(REQ-3045)=20=E6=A8=A1=E7=89=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86V3-=E6=97=A5=E5=BF=97=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../message/controller/MessageTemplateV3Controller.java | 6 ++++++ .../service/impl/MessageTemplateButtonV3ServiceImpl.java | 7 +++++-- .../service/impl/MessageTemplateGroupV3ServiceImpl.java | 4 ++++ .../message/service/impl/MessageTemplateV3ServiceImpl.java | 4 ++++ .../center/service/dto/MessageTemplateCardJumpV3DTO.java | 2 +- 5 files changed, 20 insertions(+), 3 deletions(-) diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java index cabc0dc0..045cb97b 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/MessageTemplateV3Controller.java @@ -25,6 +25,7 @@ import cn.azxo.framework.common.model.CommonResponse; import cn.azxo.framework.common.model.Page; import cn.hutool.core.bean.BeanUtil; import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson.JSON; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.MediaType; @@ -55,29 +56,34 @@ public class MessageTemplateV3Controller implements MessageTemplateV3Client { @Override public CommonResponse save(MessageTemplateV3CreateRequest request) { + log.info("MessageTemplateV3Controller#save,request:{}", JSON.toJSONString(request)); return CommonResponse.success( messageTemplateV3Service.createTemplate(MessageTemplateV3SaveOrUpdateParam.from(request))); } @Override public CommonResponse update(MessageTemplateV3UpdateRequest request) { + log.info("MessageTemplateV3Controller#update,request:{}", JSON.toJSONString(request)); messageTemplateV3Service.updateTemplate(MessageTemplateV3SaveOrUpdateParam.from(request)); return CommonResponse.success(); } @Override public CommonResponse delete(MessageTemplateV3DeleteRequest request) { + log.info("MessageTemplateV3Controller#delete,request:{}", JSON.toJSONString(request)); messageTemplateV3Service.deleteTemplate(MessageTemplateV3SaveOrUpdateParam.from(request)); return CommonResponse.success(); } @Override public CommonResponse detail(String templateCode) { + log.info("MessageTemplateV3Controller#detail,templateCode:{}", templateCode); return CommonResponse.success(messageTemplateV3Service.detail(templateCode)); } @Override public CommonResponse> page(MessageTemplateV3PageRequest request) { + log.info("MessageTemplateV3Controller#detail,request:{}", JSON.toJSONString(request)); return CommonResponse.success(messageTemplateV3Service.page(request)); } diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java index a7ebda0a..b4fcfa9a 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateButtonV3ServiceImpl.java @@ -2,10 +2,10 @@ package cn.axzo.msg.center.message.service.impl; import cn.axzo.msg.center.dal.MessageTemplateButtonV3Dao; import cn.axzo.msg.center.domain.entity.MessageTemplateButtonV3; -import cn.axzo.msg.center.domain.entity.MessageTemplateGroupV3; import cn.axzo.msg.center.message.service.MessageTemplateButtonV3Service; import cn.axzo.msg.center.service.dto.MessageTemplateButtonV3DTO; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; @@ -29,6 +29,7 @@ public class MessageTemplateButtonV3ServiceImpl implements MessageTemplateButton @Override public void saveTemplateButton(String messageTemplateCode, List buttonV3List) { + log.info("ButtonV3#saveTemplateButton,code:{},buttonV3List:{}",messageTemplateCode, JSON.toJSONString(buttonV3List)); if (StringUtils.isBlank(messageTemplateCode) || CollectionUtils.isEmpty(buttonV3List)) { return; } @@ -38,12 +39,13 @@ public class MessageTemplateButtonV3ServiceImpl implements MessageTemplateButton buttonV3.setTemplateCode(messageTemplateCode); return buttonV3; }).collect(Collectors.toList()); - + log.info("ButtonV3#saveTemplateButton,code:{},buttonV3s:{}",messageTemplateCode, JSON.toJSONString(buttonV3s)); messageTemplateButtonV3Dao.saveBatch(buttonV3s); } @Override public void updateTemplateButton(String messageTemplateCode, List buttonV3List) { + log.info("ButtonV3#updateTemplateButton,code:{},buttonV3List:{}",messageTemplateCode, JSON.toJSONString(buttonV3List)); //逻辑删除 this.deleteTemplateButton(messageTemplateCode); // 保存 @@ -52,6 +54,7 @@ public class MessageTemplateButtonV3ServiceImpl implements MessageTemplateButton @Override public void deleteTemplateButton(String templateNode) { + log.info("ButtonV3#deleteTemplateButton,code:{}",templateNode); if (StringUtils.isBlank(templateNode)) { log.info("the templateNode is blank."); return; diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java index 03b106dc..86d8635b 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateGroupV3ServiceImpl.java @@ -11,6 +11,7 @@ import cn.axzo.msg.center.message.service.MessageGroupNodeService; import cn.axzo.msg.center.message.service.MessageTemplateGroupV3Service; import cn.axzo.msg.center.service.template.request.MessageTemplateGroupV3CreateRequest; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import lombok.RequiredArgsConstructor; @@ -131,6 +132,7 @@ public class MessageTemplateGroupV3ServiceImpl implements MessageTemplateGroupV3 @Override public void saveTemplateGroup(String messageTemplateCode, List groupV3List) { + log.info("groupV3#saveTemplateGroup,templateCode:{},groupV3List:{}", messageTemplateCode, JSON.toJSONString(groupV3List)); if (CollectionUtils.isEmpty(groupV3List)) { log.info("groupV3List is empty."); return; @@ -141,11 +143,13 @@ public class MessageTemplateGroupV3ServiceImpl implements MessageTemplateGroupV3 messageTemplateGroupV3.setTemplateCode(messageTemplateCode); return messageTemplateGroupV3; }).collect(Collectors.toList()); + log.info("groupV3#saveTemplateGroup,templateCode:{},templateGroupV3List:{}", messageTemplateCode, JSON.toJSONString(templateGroupV3List)); messageTemplateGroupV3Dao.saveBatch(templateGroupV3List); } @Override public void updateTemplateGroup(String messageTemplateCode, List groupV3List) { + log.info("groupV3#updateTemplateGroup,templateCode:{},groupV3List:{}", messageTemplateCode, JSON.toJSONString(groupV3List)); // 删除卡片分组 deleteTemplateGroup(messageTemplateCode); // 插入新的分组 diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java index bf9ed7ff..66471994 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java @@ -95,6 +95,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override @Transactional(rollbackFor = Exception.class) public String createTemplate(MessageTemplateV3SaveOrUpdateParam param) { + log.info("MessageTemplateV3ServiceImpl#createTemplate,param:{}", JSON.toJSONString(param)); //1 创建模板基础数据 String templateCode = saveTemplate(param); //2 创建模板与分类的关联关系数据 @@ -109,6 +110,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override @Transactional(rollbackFor = Exception.class) public void updateTemplate(MessageTemplateV3SaveOrUpdateParam param) { + log.info("MessageTemplateV3ServiceImpl#updateTemplate,param:{}", JSON.toJSONString(param)); //1 更新模板基础数据 updateMessageTemplate(param); //2 更新分组 @@ -122,6 +124,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override @Transactional(rollbackFor = Exception.class) public void deleteTemplate(MessageTemplateV3SaveOrUpdateParam param) { + log.info("MessageTemplateV3ServiceImpl#deleteTemplate,param:{}", JSON.toJSONString(param)); if (Objects.isNull(param) || StringUtils.isBlank(param.getTemplateCode())) { log.info("messageTemplateCode is blank"); return; @@ -135,6 +138,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { @Override public MessageTemplateV3DetailResponse detail(String templateCode) { + log.info("MessageTemplateV3ServiceImpl#deleteTemplate,templateCode:{}", templateCode); if (StringUtils.isBlank(templateCode)) { return null; } diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java index 71630166..9e3b1979 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateCardJumpV3DTO.java @@ -33,7 +33,7 @@ public class MessageTemplateCardJumpV3DTO implements Serializable { /** * 卡片跳转配置. 在links的基础上再包一层, 避免以后卡片增加自己的配置 */ - private CardUrlConfig cardUrConfig; + private CardUrlConfig cardUrlConfig; @Override public String toString() { From 33cfb806f7f0723e18449e7edcda10305f53fec9 Mon Sep 17 00:00:00 2001 From: xudawei Date: Tue, 8 Oct 2024 23:38:14 +0800 Subject: [PATCH 6/8] =?UTF-8?q?feat:(REQ-3045)=20=E6=A8=A1=E7=89=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86V3-=E5=A2=9E=E5=8A=A0templateV3=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E5=A1=AB=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/MessageTemplateV3ServiceImpl.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java index 66471994..bc247246 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java @@ -283,6 +283,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { private String saveTemplate(MessageTemplateV3SaveOrUpdateParam param) { String templateCode = UUIDUtil.uuidString(); MessageTemplateV3 template = convert(param); + log.info("templateV3#saveTemplate,template:{}", JSON.toJSONString(template)); boolean result = doSaveTemplate(template, templateCode); int retryCnt = 0; while (!result && retryCnt++ < RETRY_CNT_MAX) { @@ -304,6 +305,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { return false; } template.setCode(templateCode); + log.info("templateV3#doSaveTemplate,template:{}", JSON.toJSONString(template)); messageTemplateV3Dao.save(template); return true; } finally { @@ -325,7 +327,6 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { template.setTitle(param.getTitle()); template.setContent(param.getContent()); template.setDetailStyleCode(param.getDetailStyleCode()); -// template.setCardContent(JSONObjectUtil.toJSONString(param.getMsgCardContentItems())); template.setIcon(param.getIcon()); template.setPushTerminal(JSONObjectUtil.toJSONString(param.getPushTerminals())); template.setMinAppVersion(param.getMinAppVersion()); @@ -336,6 +337,14 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { template.setUpdatePersonId(param.getOperatorId()); template.setUpdatePersonName(param.getOperatorName()); template.setPushData(param.getPushData()); + if (Objects.nonNull(param) && Objects.nonNull(param.getCardJump())) { + if (Objects.nonNull(param.getCardJump().getCardUrlOpenStrategy())) { + template.setCardUrlOpenStrategy(param.getCardJump().getCardUrlOpenStrategy()); + } + if (Objects.nonNull(param.getCardJump().getCardUrlConfig())) { + template.setCardUrConfig(param.getCardJump().getCardUrlConfig()); + } + } return template; } From 1432d78870e1a78a36f2612c3a7ff488cc65f195 Mon Sep 17 00:00:00 2001 From: xudawei Date: Tue, 8 Oct 2024 23:50:44 +0800 Subject: [PATCH 7/8] =?UTF-8?q?feat:(REQ-3045)=20=E6=A8=A1=E7=89=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86V3-fix=20templateV3#cardUrlConfig?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../message/service/impl/MessageTemplateV3ServiceImpl.java | 6 +++++- .../cn/axzo/msg/center/domain/entity/MessageTemplateV3.java | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java index bc247246..62153c0d 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/impl/MessageTemplateV3ServiceImpl.java @@ -342,7 +342,7 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { template.setCardUrlOpenStrategy(param.getCardJump().getCardUrlOpenStrategy()); } if (Objects.nonNull(param.getCardJump().getCardUrlConfig())) { - template.setCardUrConfig(param.getCardJump().getCardUrlConfig()); + template.setCardUrlConfig(param.getCardJump().getCardUrlConfig()); } } return template; @@ -359,6 +359,10 @@ public class MessageTemplateV3ServiceImpl implements MessageTemplateV3Service { .set(StringUtils.isNotBlank(param.getTitle()), MessageTemplateV3::getTitle, param.getTitle()) // .set(MessageBaseTemplate::getCardContent, JSONObjectUtil.toJSONString(param.getMsgCardContentItems())) .set(MessageTemplateV3::getContent, param.getContent()) + .set(Objects.nonNull(param.getCardJump()) && Objects.nonNull(param.getCardJump().getCardUrlOpenStrategy()) + ,MessageTemplateV3::getCardUrlOpenStrategy,param.getCardJump().getCardUrlOpenStrategy()) + .set(Objects.nonNull(param.getCardJump()) && Objects.nonNull(param.getCardJump().getCardUrlConfig()) + ,MessageTemplateV3::getCardUrlConfig, param.getCardJump().getCardUrlConfig()) .set(StringUtils.isNotBlank(param.getDetailStyleCode()), MessageTemplateV3::getDetailStyleCode, param.getDetailStyleCode()) .set(MessageTemplateV3::getUpdatePersonId, param.getOperatorId()) diff --git a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateV3.java b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateV3.java index f457de8e..96ad567b 100644 --- a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateV3.java +++ b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateV3.java @@ -79,7 +79,7 @@ public class MessageTemplateV3 extends BaseEntityWithOperator * 卡片跳转配置. 在links的基础上再包一层, 避免以后卡片增加自己的配置 */ @TableField(typeHandler = FastjsonTypeHandler.class) - private CardUrlConfig cardUrConfig; + private CardUrlConfig cardUrlConfig; /** * IM发送优先级 From 568cb39911e4a30da7c59c21a94dfb4d14b9f3bf Mon Sep 17 00:00:00 2001 From: xudawei Date: Tue, 8 Oct 2024 23:59:37 +0800 Subject: [PATCH 8/8] =?UTF-8?q?feat:(REQ-3045)=20=E6=A8=A1=E7=89=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86V3-templateButtonV3=E5=A1=AB=E5=85=85?= =?UTF-8?q?=E5=B1=9E=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/MessageTemplateButtonV3DTO.java | 46 +++++++++---------- .../entity/MessageTemplateButtonV3.java | 5 +- 2 files changed, 26 insertions(+), 25 deletions(-) diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java index 7d44f4d8..f84ddc36 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/dto/MessageTemplateButtonV3DTO.java @@ -32,18 +32,18 @@ public class MessageTemplateButtonV3DTO implements Serializable { private static final long serialVersionUID = -9083376003614521781L; - /** - * 按钮唯一标识 - */ - private String identityCode; /** * 预设按钮类型 */ - private PresetButtonType presetButtonType; + private PresetButtonType presetBtnCode; + /** - * 路由描述 + * 按钮来源 + * SYSTEM: 系统 + * CUSTOM: 自定义 */ - private String desc; + private RouterButtonSourceEnum source; + /** * 路由分类 * JUMP: 直接跳转 @@ -51,45 +51,43 @@ public class MessageTemplateButtonV3DTO implements Serializable { * PRESET_BUTTON: 预设按钮 */ private RouterCategoryEnum category; + /** - * 按钮来源 - * SYSTEM: 系统 - * CUSTOM: 自定义 + * 路由按钮的跳转url配置 */ - private RouterButtonSourceEnum source; + private UrlConfig urlConfig; + /** * 按钮样式配置 * HIGH_LIGHT: 按钮高亮展示 * OVER_CARD: 按钮显示在卡片上 */ private List style; + /** * 执行人可见:true 不可见:false */ private Boolean executorShow; + /** * 待办状态可见可见:true 不可见:false */ private Boolean pendingShow; - /** - * 路由按钮的跳转url配置 - */ - private UrlConfig linkConfig; - /** - * 当按钮类型为API调用时,该字段有值 - */ - private String apiUrl; /** - * @see {@link MessageTemplateRouterDTO#isValid} + * 按钮优先级,数值越大优先级越低 + */ + private Integer priority; + + /** *

要改2处都要记得改 */ public boolean isValid() { - if (RouterCategoryEnum.ACTION.equals(category)) { - return StringUtils.isNotBlank(apiUrl); - } +// if (RouterCategoryEnum.ACTION.equals(category)) { +// return StringUtils.isNotBlank(apiUrl); +// } if (RouterCategoryEnum.PRESET_BUTTON.equals(category)) { - return presetButtonType != null; + return presetBtnCode != null; } //TODO return true; diff --git a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateButtonV3.java b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateButtonV3.java index ac7f85c3..e03498e1 100644 --- a/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateButtonV3.java +++ b/msg-center-domain/src/main/java/cn/axzo/msg/center/domain/entity/MessageTemplateButtonV3.java @@ -1,6 +1,7 @@ package cn.axzo.msg.center.domain.entity; import cn.axzo.msg.center.service.domain.UrlConfig; +import cn.axzo.msg.center.service.enums.ButtonStyleEnum; import cn.axzo.msg.center.service.enums.PresetButtonType; import cn.axzo.msg.center.service.enums.RouterButtonSourceEnum; import cn.axzo.msg.center.service.enums.RouterCategoryEnum; @@ -11,6 +12,8 @@ import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler; import lombok.Getter; import lombok.Setter; +import java.util.List; + /** * @author yanglin */ @@ -54,7 +57,7 @@ public class MessageTemplateButtonV3 extends BaseEntityWithOperator style; /** * 执行人可见:true 不可见:false