Merge branch 'feature/REQ-1507' of axzsource.com:universal/infrastructure/backend/msg-center-plat into dev
This commit is contained in:
commit
17110f049d
@ -1,10 +1,12 @@
|
||||
package cn.axzo.msg.center.message.domain.dto;
|
||||
|
||||
import cn.axzo.msg.center.domain.entity.MessageBaseTemplate;
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
|
||||
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
|
||||
import cn.axzo.msg.center.utils.JSONObjectUtil;
|
||||
import cn.axzo.msg.center.utils.MessageRouterUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
@ -63,6 +65,10 @@ public class MessageTemplateDTO implements Serializable {
|
||||
* 模板icon
|
||||
*/
|
||||
private String icon;
|
||||
/**
|
||||
* 业务详情展示策略
|
||||
*/
|
||||
private BizDetailShowStrategyDTO bizDetailShowStrategy;
|
||||
/**
|
||||
* 模板路由信息
|
||||
*/
|
||||
@ -77,6 +83,9 @@ public class MessageTemplateDTO implements Serializable {
|
||||
private String minAppVersion;
|
||||
|
||||
public static MessageTemplateDTO from(MessageBaseTemplate baseTemplate, List<RawMessageRouterDTO> routers) {
|
||||
// 业务详情展示策略
|
||||
BizDetailShowStrategyDTO bizDetailShowStrategy = MessageRouterUtil.selectAndConvertBizDetailShowStrategy(
|
||||
baseTemplate.getBizDetailShowStrategy(), routers).orElse(null);
|
||||
return MessageTemplateDTO.builder()
|
||||
.name(baseTemplate.getName())
|
||||
.code(baseTemplate.getCode())
|
||||
@ -84,8 +93,9 @@ public class MessageTemplateDTO implements Serializable {
|
||||
.content(baseTemplate.getContent())
|
||||
.msgCardContentItems(JSONObjectUtil.parseArray(baseTemplate.getCardContent(), MessageCardContentItemDTO.class))
|
||||
.msgCategory(baseTemplate.getMsgCategory())
|
||||
.bizDetailShowStrategy(bizDetailShowStrategy)
|
||||
.icon(baseTemplate.getIcon())
|
||||
.routers(routers)
|
||||
.routers(MessageRouterUtil.selectRouterButtons(routers))
|
||||
.pushTerminals(JSON.parseArray(baseTemplate.getPushTerminal(), PushTerminalEnum.class))
|
||||
.minAppVersion(baseTemplate.getMinAppVersion())
|
||||
.build();
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package cn.axzo.msg.center.message.domain.dto;
|
||||
|
||||
import cn.axzo.msg.center.domain.entity.MessageTemplateRouter;
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterTerminalDTO;
|
||||
@ -73,6 +74,15 @@ public class RawMessageRouterDTO implements Serializable {
|
||||
.build();
|
||||
}
|
||||
|
||||
public static RawMessageRouterDTO from(BizDetailShowStrategyDTO showStrategy, String templateCode) {
|
||||
return RawMessageRouterDTO.builder()
|
||||
.desc("业务详情展示策略")
|
||||
.category(RouterCategoryEnum.DETAIL)
|
||||
.terminals(showStrategy.getTerminals())
|
||||
.templateCode(templateCode)
|
||||
.build();
|
||||
}
|
||||
|
||||
public static RawMessageRouterDTO from(MessageRouterButtonDTO router, String templateCode) {
|
||||
return RawMessageRouterDTO.builder()
|
||||
.desc(router.getDesc())
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package cn.axzo.msg.center.message.domain.param;
|
||||
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
|
||||
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
|
||||
@ -32,54 +33,63 @@ public class MessageTemplateSaveOrUpdateParam implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 6657624182580261353L;
|
||||
|
||||
/**
|
||||
* 模板名称
|
||||
*/
|
||||
private String templateName;
|
||||
/**
|
||||
* 模板编码
|
||||
*/
|
||||
private String templateCode;
|
||||
/**
|
||||
* 消息分类树的叶结点的结点编码列表
|
||||
*/
|
||||
private List<String> leafGroupNodes;
|
||||
/**
|
||||
* 所属消息类型
|
||||
* GENERAL_MESSAGE: 普通消息
|
||||
* PENDING_MESSAGE: 待办消息
|
||||
*/
|
||||
private MessageCategoryEnum msgCategory;
|
||||
/**
|
||||
* 模板标题
|
||||
*/
|
||||
private String title;
|
||||
/**
|
||||
* 模板类容
|
||||
*/
|
||||
private String content;
|
||||
/**
|
||||
* 消息卡片信息标签列表
|
||||
*/
|
||||
private List<MessageCardContentItemDTO> msgCardContentItems;
|
||||
/**
|
||||
* 模板icon
|
||||
*/
|
||||
private String icon;
|
||||
/**
|
||||
* 操作者自然人id
|
||||
* 操作者的自然人id
|
||||
*/
|
||||
private Long operatorId;
|
||||
/**
|
||||
* 路由列表
|
||||
* 模板名称
|
||||
*/
|
||||
private List<MessageRouterButtonDTO> routers;
|
||||
private String templateName;
|
||||
/**
|
||||
* 消息类型
|
||||
* GENERAL_MESSAGE: 通知
|
||||
* BIZ_PENDING_MESSAGE: 业务待办
|
||||
* APPROVAL_PENDING_MESSAGE: 审批待办
|
||||
*/
|
||||
private MessageCategoryEnum msgCategory;
|
||||
/**
|
||||
* 消息分类树的叶结点的结点编码列表
|
||||
*/
|
||||
private List<String> leafGroupNodes;
|
||||
/**
|
||||
* 推送终端配置
|
||||
* B_ENTERPRISE_APP: B-安心筑企业版
|
||||
* C_WORKER_APP: C-安心筑工人版
|
||||
*/
|
||||
private List<PushTerminalEnum> pushTerminals;
|
||||
/**
|
||||
* 该模板最低支持的APP版本号
|
||||
*/
|
||||
private String minAppVersion;
|
||||
/**
|
||||
* 消息标题
|
||||
*/
|
||||
private String title;
|
||||
/**
|
||||
* 消息内容
|
||||
*/
|
||||
private String content;
|
||||
/**
|
||||
* 消息图标
|
||||
*/
|
||||
private String icon;
|
||||
/**
|
||||
* 消息卡片信息标签列表,可为空
|
||||
*/
|
||||
private List<MessageCardContentItemDTO> msgCardContentItems;
|
||||
/**
|
||||
* 业务详情展示策略
|
||||
*/
|
||||
private BizDetailShowStrategyDTO bizDetailShowStrategy;
|
||||
/**
|
||||
* 路由策略列表
|
||||
*/
|
||||
private List<MessageRouterButtonDTO> routers;
|
||||
|
||||
public static MessageTemplateSaveOrUpdateParam from(MessageTemplateCreateRequest request) {
|
||||
return MessageTemplateSaveOrUpdateParam.builder()
|
||||
@ -93,6 +103,7 @@ public class MessageTemplateSaveOrUpdateParam implements Serializable {
|
||||
.operatorId(request.getOperatorId())
|
||||
.routers(request.getRouters())
|
||||
.pushTerminals(request.getPushTerminals())
|
||||
.bizDetailShowStrategy(request.getDetailStrategy())
|
||||
.build();
|
||||
}
|
||||
|
||||
@ -108,6 +119,7 @@ public class MessageTemplateSaveOrUpdateParam implements Serializable {
|
||||
.operatorId(request.getOperatorId())
|
||||
.routers(request.getRouters())
|
||||
.pushTerminals(request.getPushTerminals())
|
||||
.bizDetailShowStrategy(request.getDetailStrategy())
|
||||
.build();
|
||||
}
|
||||
|
||||
|
||||
@ -15,15 +15,18 @@ import cn.axzo.msg.center.message.service.MessageGroupNodeService;
|
||||
import cn.axzo.msg.center.message.service.MessageTemplateGroupService;
|
||||
import cn.axzo.msg.center.message.service.MessageTemplateNewService;
|
||||
import cn.axzo.msg.center.message.service.MessageTemplateRouterService;
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageBaseTemplateDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
|
||||
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
|
||||
import cn.axzo.msg.center.service.enums.RouterCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.StatusEnum;
|
||||
import cn.axzo.msg.center.service.template.request.MessageTemplatePageRequest;
|
||||
import cn.axzo.msg.center.service.template.response.MessageTemplateDetailResponse;
|
||||
import cn.axzo.msg.center.service.template.response.MessageTemplatePageResponse;
|
||||
import cn.axzo.msg.center.utils.JSONObjectUtil;
|
||||
import cn.axzo.msg.center.utils.MessageRouterUtil;
|
||||
import cn.axzo.msg.center.utils.UUIDUtil;
|
||||
import cn.azxo.framework.common.model.Page;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
@ -315,18 +318,27 @@ public class MessageTemplateNewServiceImpl implements MessageTemplateNewService
|
||||
template.setCardContent(JSONObjectUtil.toJSONString(param.getMsgCardContentItems()));
|
||||
template.setIcon(param.getIcon());
|
||||
template.setPushTerminal(JSONObjectUtil.toJSONString(param.getPushTerminals()));
|
||||
if (Objects.nonNull(param.getBizDetailShowStrategy())) {
|
||||
template.setBizDetailShowStrategy(param.getBizDetailShowStrategy().getShowStrategy());
|
||||
}
|
||||
template.setMinAppVersion(param.getMinAppVersion());
|
||||
template.setCreatorId(param.getOperatorId());
|
||||
template.setUpdaterId(param.getOperatorId());
|
||||
return template;
|
||||
}
|
||||
|
||||
private void saveTemplateRouters(MessageTemplateSaveOrUpdateParam param, String templateCode) {
|
||||
if (CollectionUtils.isEmpty(param.getRouters())) {
|
||||
return;
|
||||
List<RawMessageRouterDTO> routers = Lists.newArrayList();
|
||||
if (Objects.nonNull(param.getBizDetailShowStrategy())
|
||||
&& CollectionUtils.isNotEmpty(param.getBizDetailShowStrategy().getTerminals())) {
|
||||
routers.add(RawMessageRouterDTO.from(param.getBizDetailShowStrategy(), templateCode));
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(param.getRouters())) {
|
||||
List<RawMessageRouterDTO> btnRouters = param.getRouters().stream()
|
||||
.map(e -> RawMessageRouterDTO.from(e, templateCode))
|
||||
.collect(Collectors.toList());
|
||||
routers.addAll(btnRouters);
|
||||
}
|
||||
List<RawMessageRouterDTO> routers = param.getRouters().stream()
|
||||
.map(e -> RawMessageRouterDTO.from(e, templateCode))
|
||||
.collect(Collectors.toList());
|
||||
messageTemplateRouterService.batchInsert(routers);
|
||||
}
|
||||
|
||||
@ -344,6 +356,10 @@ public class MessageTemplateNewServiceImpl implements MessageTemplateNewService
|
||||
JSONObjectUtil.toJSONString(param.getMsgCardContentItems()))
|
||||
.set(StringUtils.isNotBlank(param.getContent()), MessageBaseTemplate::getContent, param.getContent())
|
||||
.set(StringUtils.isNotBlank(param.getIcon()), MessageBaseTemplate::getIcon, param.getIcon())
|
||||
.set(StringUtils.isNotBlank(param.getMinAppVersion()), MessageBaseTemplate::getMinAppVersion,
|
||||
param.getMinAppVersion())
|
||||
.set(Objects.nonNull(param.getBizDetailShowStrategy()), MessageBaseTemplate::getBizDetailShowStrategy,
|
||||
param.getBizDetailShowStrategy().getShowStrategy())
|
||||
.update();
|
||||
}
|
||||
|
||||
@ -355,10 +371,20 @@ public class MessageTemplateNewServiceImpl implements MessageTemplateNewService
|
||||
}
|
||||
|
||||
private void updateTemplateRouters(MessageTemplateSaveOrUpdateParam param) {
|
||||
if (CollectionUtils.isEmpty(param.getRouters())) {
|
||||
return;
|
||||
List<MessageRouterButtonDTO> routers = Lists.newArrayList();
|
||||
if (Objects.nonNull(param.getBizDetailShowStrategy())
|
||||
&& CollectionUtils.isNotEmpty(param.getBizDetailShowStrategy().getTerminals())) {
|
||||
MessageRouterButtonDTO btn = MessageRouterButtonDTO.builder()
|
||||
.desc(RouterCategoryEnum.DETAIL.getDesc())
|
||||
.category(RouterCategoryEnum.DETAIL)
|
||||
.terminals(param.getBizDetailShowStrategy().getTerminals())
|
||||
.build();
|
||||
routers.add(btn);
|
||||
}
|
||||
messageTemplateRouterService.updateTemplateRoutes(param.getTemplateCode(), param.getRouters());
|
||||
if (CollectionUtils.isNotEmpty(param.getRouters())) {
|
||||
routers.addAll(param.getRouters());
|
||||
}
|
||||
messageTemplateRouterService.updateTemplateRoutes(param.getTemplateCode(), routers);
|
||||
}
|
||||
|
||||
private MessageBaseTemplateDTO convert(MessageBaseTemplate record) {
|
||||
@ -398,10 +424,11 @@ public class MessageTemplateNewServiceImpl implements MessageTemplateNewService
|
||||
List<String> groupNodeCodes = groupNodePaths.stream()
|
||||
.map(GroupTreeNodePathDTO::parseLeafNodeCode)
|
||||
.collect(Collectors.toList());
|
||||
// 转化为页面相关的数据模型
|
||||
List<MessageRouterButtonDTO> routerButtons = routers.stream()
|
||||
.map(RawMessageRouterDTO::toMessageRouterButton)
|
||||
.collect(Collectors.toList());
|
||||
// 按钮路由策略
|
||||
List<MessageRouterButtonDTO> msgRouterButtons = MessageRouterUtil.selectAndConvertRouterButtons(routers);
|
||||
// 业务详情展示策略
|
||||
BizDetailShowStrategyDTO bizDetailShowStrategy = MessageRouterUtil.selectAndConvertBizDetailShowStrategy(
|
||||
record.getBizDetailShowStrategy(), routers).orElse(null);
|
||||
return MessageTemplateDetailResponse.builder()
|
||||
.templateName(record.getName())
|
||||
.category(record.getMsgCategory())
|
||||
@ -411,7 +438,9 @@ public class MessageTemplateNewServiceImpl implements MessageTemplateNewService
|
||||
.msgContent(record.getContent())
|
||||
.cardContentItems(JSONObjectUtil.parseArray(record.getCardContent(), MessageCardContentItemDTO.class))
|
||||
.msgIcon(record.getIcon())
|
||||
.routers(routerButtons)
|
||||
.routers(msgRouterButtons)
|
||||
.detailStrategy(bizDetailShowStrategy)
|
||||
.minAppVersion(record.getMinAppVersion())
|
||||
.createTimestamp(record.getCreateAt().getTime())
|
||||
.updateTimestamp(record.getUpdateAt().getTime())
|
||||
.build();
|
||||
|
||||
@ -2,8 +2,11 @@ package cn.axzo.msg.center.utils;
|
||||
|
||||
import cn.axzo.msg.center.common.utils.PlaceholderResolver;
|
||||
import cn.axzo.msg.center.message.domain.dto.RawMessageRouterDTO;
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterTerminalDTO;
|
||||
import cn.axzo.msg.center.service.enums.BizDetailShowStrategyEnum;
|
||||
import cn.axzo.msg.center.service.enums.ButtonStyleEnum;
|
||||
import cn.axzo.msg.center.service.enums.RouterCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.TerminalTypeEnum;
|
||||
@ -17,6 +20,7 @@ import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@ -33,6 +37,51 @@ public final class MessageRouterUtil {
|
||||
// 非法路由参数的定义
|
||||
private static final String INVALID_ROUTER_PARAM = "null";
|
||||
|
||||
/**
|
||||
* 获取业务展示详情策略
|
||||
*
|
||||
* @param showStrategy 展示策略
|
||||
* @param routers 路由列表
|
||||
* @return 业务展示详情策略
|
||||
*/
|
||||
public static Optional<BizDetailShowStrategyDTO> selectAndConvertBizDetailShowStrategy(
|
||||
BizDetailShowStrategyEnum showStrategy, List<RawMessageRouterDTO> routers) {
|
||||
return routers.stream()
|
||||
// 过滤掉非页面详情相关的路由
|
||||
.filter(e -> RouterCategoryEnum.DETAIL.equals(e.getCategory()))
|
||||
.map(e -> BizDetailShowStrategyDTO.builder()
|
||||
.terminals(e.getTerminals())
|
||||
// 兼容老数据,默认为跳转业务详情
|
||||
.showStrategy(Objects.nonNull(showStrategy) ? showStrategy : BizDetailShowStrategyEnum.JUMP_TO)
|
||||
.build())
|
||||
.findFirst();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取业务按钮路由策略
|
||||
*
|
||||
* @param routers 路由列表
|
||||
* @return 业务展示详情策略
|
||||
*/
|
||||
public static List<MessageRouterButtonDTO> selectAndConvertRouterButtons(List<RawMessageRouterDTO> routers) {
|
||||
return selectRouterButtons(routers).stream()
|
||||
.map(RawMessageRouterDTO::toMessageRouterButton)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取业务按钮路由策略
|
||||
*
|
||||
* @param routers 路由列表
|
||||
* @return 业务展示详情策略
|
||||
*/
|
||||
public static List<RawMessageRouterDTO> selectRouterButtons(List<RawMessageRouterDTO> routers) {
|
||||
return routers.stream()
|
||||
// 过滤掉页面详情相关的路由
|
||||
.filter(e -> !RouterCategoryEnum.DETAIL.equals(e.getCategory()))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据指定的终端类型选取合适的路由
|
||||
*
|
||||
@ -46,27 +95,9 @@ public final class MessageRouterUtil {
|
||||
}
|
||||
return rawMessageRouter.getTerminals().stream()
|
||||
.filter(e -> Objects.equals(terminalType, e.getTerminalType()))
|
||||
// 若没有匹配的,默认选择第一个然后由前端去进行最终判断
|
||||
.findFirst().orElseGet(() -> rawMessageRouter.getTerminals().get(0));
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据指定的终端类型选取合适的路由
|
||||
*
|
||||
* @param rawMessageRouter 原始的模板路由策略
|
||||
* @param excludeTerminalType 待排除的终端类型
|
||||
* @return 合适的路由数据
|
||||
*/
|
||||
public static List<MessageRouterTerminalDTO> selectWithout(RawMessageRouterDTO rawMessageRouter,
|
||||
TerminalTypeEnum excludeTerminalType) {
|
||||
if (RouterCategoryEnum.ACTION.equals(rawMessageRouter.getCategory())) {
|
||||
// 如果配置路由是API调用,这与终端无关
|
||||
return rawMessageRouter.getTerminals();
|
||||
}
|
||||
return rawMessageRouter.getTerminals().stream()
|
||||
.filter(e -> !Objects.equals(excludeTerminalType, e.getTerminalType()))
|
||||
// 若没有匹配的,默认选择第一个然后由前端去进行最终判断
|
||||
.collect(Collectors.toList());
|
||||
.findFirst()
|
||||
// 优先选择H5,没有则选择第一个元素
|
||||
.orElseGet(() -> selectH5(rawMessageRouter).orElseGet(() -> rawMessageRouter.getTerminals().get(0)));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -146,4 +177,10 @@ public final class MessageRouterUtil {
|
||||
}
|
||||
return JSON.parseArray(style, ButtonStyleEnum.class);
|
||||
}
|
||||
|
||||
private static Optional<MessageRouterTerminalDTO> selectH5(RawMessageRouterDTO rawMessageRouter) {
|
||||
return rawMessageRouter.getTerminals().stream()
|
||||
.filter(e -> Objects.equals(TerminalTypeEnum.WEB_VIEW, e.getTerminalType()))
|
||||
.findFirst();
|
||||
}
|
||||
}
|
||||
|
||||
@ -21,7 +21,7 @@ import java.util.List;
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class MessageDetailShowStrategyDTO implements Serializable {
|
||||
public class BizDetailShowStrategyDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -3496745332397525305L;
|
||||
|
||||
@ -16,11 +16,11 @@ import lombok.Getter;
|
||||
public enum BizDetailShowStrategyEnum {
|
||||
|
||||
/**
|
||||
* 内嵌H5展示
|
||||
* 内嵌展示
|
||||
*/
|
||||
INLINE,
|
||||
/**
|
||||
* 跳转至业务详情页展示
|
||||
* 跳转展示
|
||||
*/
|
||||
JUMP_TO;
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
package cn.axzo.msg.center.service.template.request;
|
||||
|
||||
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
|
||||
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
|
||||
@ -82,7 +82,7 @@ public class MessageTemplateCreateRequest implements Serializable {
|
||||
/**
|
||||
* 详情展示策略
|
||||
*/
|
||||
private MessageDetailShowStrategyDTO detailStrategy;
|
||||
private BizDetailShowStrategyDTO detailStrategy;
|
||||
/**
|
||||
* 路由策略列表
|
||||
*/
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
package cn.axzo.msg.center.service.template.request;
|
||||
|
||||
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
|
||||
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
@ -73,7 +73,7 @@ public class MessageTemplateUpdateRequest implements Serializable {
|
||||
/**
|
||||
* 详情展示策略
|
||||
*/
|
||||
private MessageDetailShowStrategyDTO detailStrategy;
|
||||
private BizDetailShowStrategyDTO detailStrategy;
|
||||
/**
|
||||
* 路由策略列表
|
||||
*/
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
package cn.axzo.msg.center.service.template.response;
|
||||
|
||||
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
|
||||
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
|
||||
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
|
||||
@ -12,7 +12,6 @@ import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
@ -74,7 +73,7 @@ public class MessageTemplateDetailResponse implements Serializable {
|
||||
/**
|
||||
* 详情展示策略
|
||||
*/
|
||||
private MessageDetailShowStrategyDTO detailStrategy;
|
||||
private BizDetailShowStrategyDTO detailStrategy;
|
||||
/**
|
||||
* 路由策略列表
|
||||
*/
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package cn.axzo.msg.center.domain.entity;
|
||||
|
||||
import cn.axzo.msg.center.domain.persistence.BaseEntity;
|
||||
import cn.axzo.msg.center.domain.persistence.BaseEntityExt;
|
||||
import cn.axzo.msg.center.service.enums.BizDetailShowStrategyEnum;
|
||||
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.StatusEnum;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
@ -20,7 +21,7 @@ import java.io.Serializable;
|
||||
@Setter
|
||||
@Getter
|
||||
@TableName("message_base_template")
|
||||
public class MessageBaseTemplate extends BaseEntity<MessageBaseTemplate> implements Serializable {
|
||||
public class MessageBaseTemplate extends BaseEntityExt<MessageBaseTemplate> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -880409106378455813L;
|
||||
|
||||
@ -66,6 +67,10 @@ public class MessageBaseTemplate extends BaseEntity<MessageBaseTemplate> impleme
|
||||
* APP最小版本支持,可不配
|
||||
*/
|
||||
private String minAppVersion;
|
||||
/**
|
||||
* 业务详情展示策略
|
||||
*/
|
||||
private BizDetailShowStrategyEnum bizDetailShowStrategy;
|
||||
/**
|
||||
* 创建者自然人id
|
||||
*/
|
||||
|
||||
Loading…
Reference in New Issue
Block a user