Merge branch 'feature/REQ-1507' of axzsource.com:universal/infrastructure/backend/msg-center-plat into dev

This commit is contained in:
luofu 2023-11-09 18:02:26 +08:00
commit 9e6034fd90
15 changed files with 103 additions and 55 deletions

View File

@ -11,7 +11,7 @@ import cn.axzo.msg.center.im.domain.dto.IMSendMessageDTO;
import cn.axzo.msg.center.im.domain.enums.IMChannelEnum;
import cn.axzo.msg.center.im.domain.param.IMSendSingleMessageParam;
import cn.axzo.msg.center.inside.notices.service.IYouMengMessageService;
import cn.axzo.msg.center.service.dto.MessageRouterDTO;
import cn.axzo.msg.center.service.dto.ButtonRouterDTO;
import cn.axzo.msg.center.service.dto.PersonDTO;
import cn.axzo.msg.center.service.enums.IdentityTypeEnum;
import cn.azxo.framework.common.utils.StringUtils;
@ -85,7 +85,7 @@ public class YouMengHandler implements IMChannelHandler {
private JSONObject buildMessageExt2(IMSendMessageDTO message) {
final JSONObject extra = new JSONObject();
Collection<MessageRouterDTO> messageRouters = message.getRouters();
Collection<ButtonRouterDTO> messageRouters = message.getRouters();
if (messageRouters.isEmpty()) {
extra.put("ar", "");
extra.put("ir", "");

View File

@ -1,6 +1,6 @@
package cn.axzo.msg.center.im.domain.dto;
import cn.axzo.msg.center.service.dto.MessageRouterDTO;
import cn.axzo.msg.center.service.dto.ButtonRouterDTO;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import lombok.AllArgsConstructor;
@ -47,7 +47,7 @@ public class IMSendMessageDTO implements Serializable {
/**
* 消息路由列表
*/
private Collection<MessageRouterDTO> routers;
private Collection<ButtonRouterDTO> routers;
/**
* 消息参数 key value
*/

View File

@ -4,11 +4,10 @@ import cn.axzo.basics.common.util.AssertUtil;
import cn.axzo.msg.center.domain.entity.MessageRouteButton;
import cn.axzo.msg.center.domain.entity.MessageRouteDetail;
import cn.axzo.msg.center.domain.entity.MessageRouterConfig;
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO;
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.RouterButtonSourceEnum;
import cn.axzo.msg.center.service.enums.RouterCategoryEnum;
import cn.axzo.msg.center.service.enums.TerminalTypeEnum;
@ -113,7 +112,7 @@ public class MessageTemplateRouterDTO implements Serializable {
.build();
}
public static MessageRouteDetailDTO from(BizDetailShowStrategyDTO bizDetailShowStrategy, String templateCode) {
public static MessageRouteDetailDTO from(MessageDetailRouteStrategyDTO bizDetailShowStrategy, String templateCode) {
AssertUtil.notNull(bizDetailShowStrategy, "btnRouter can not be null");
AssertUtil.notEmpty(templateCode, "templateCode can not be empty");
@ -143,11 +142,11 @@ public class MessageTemplateRouterDTO implements Serializable {
.collect(Collectors.toList());
}
public BizDetailShowStrategyDTO toBizDetailShowStrategyDTO() {
public MessageDetailRouteStrategyDTO toBizDetailShowStrategyDTO() {
List<MessageRouterTerminalDTO> terminals = this.routerConfigs.stream()
.map(e -> MessageRouterTerminalDTO.builder().terminalType(e.terminalType).url(e.url).build())
.collect(Collectors.toList());
return BizDetailShowStrategyDTO.builder().showStrategy(this.showStrategy).terminals(terminals).build();
return MessageDetailRouteStrategyDTO.builder().showStrategy(this.showStrategy).terminals(terminals).build();
}
@Override
@ -221,7 +220,7 @@ public class MessageTemplateRouterDTO implements Serializable {
.build();
}
public static MessageRouteButtonDTO from(MessageRouterButtonDTO btnRouter, String templateCode) {
public static MessageRouteButtonDTO from(MessageButtonRouteStrategyDTO btnRouter, String templateCode) {
AssertUtil.notNull(btnRouter, "btnRouter can not be null");
AssertUtil.notEmpty(templateCode, "templateCode can not be empty");
@ -269,12 +268,12 @@ public class MessageTemplateRouterDTO implements Serializable {
return CollectionUtils.isNotEmpty(routerConfigs);
}
public MessageRouterButtonDTO toMessageRouterButton() {
public MessageButtonRouteStrategyDTO toMessageRouterButton() {
List<MessageRouterTerminalDTO> terminals = CollectionUtils.isEmpty(this.routerConfigs) ?
Collections.emptyList() : this.routerConfigs.stream()
.map(e -> MessageRouterTerminalDTO.builder().terminalType(e.terminalType).url(e.url).build())
.collect(Collectors.toList());
return MessageRouterButtonDTO.builder()
return MessageButtonRouteStrategyDTO.builder()
.desc(this.name)
.category(this.category)
.identityCode(this.btnCode)

View File

@ -1,9 +1,8 @@
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.MessageButtonRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.ButtonRouterDTO;
import cn.axzo.msg.center.service.dto.MessageRouterTerminalDTO;
import cn.axzo.msg.center.service.enums.ButtonStyleEnum;
import cn.axzo.msg.center.service.enums.RouterCategoryEnum;
@ -61,7 +60,7 @@ public class RawMessageRouterDTO implements Serializable {
private List<ButtonStyleEnum> style;
public static RawMessageRouterDTO from(MessageRouterButtonDTO router, String templateCode) {
public static RawMessageRouterDTO from(MessageButtonRouteStrategyDTO router, String templateCode) {
return RawMessageRouterDTO.builder()
.desc(router.getDesc())
.category(router.getCategory())
@ -71,8 +70,8 @@ public class RawMessageRouterDTO implements Serializable {
.build();
}
public MessageRouterButtonDTO toMessageRouterButton() {
return MessageRouterButtonDTO.builder()
public MessageButtonRouteStrategyDTO toMessageRouterButton() {
return MessageButtonRouteStrategyDTO.builder()
.desc(this.desc)
.category(this.category)
.terminals(this.terminals)
@ -86,9 +85,9 @@ public class RawMessageRouterDTO implements Serializable {
.collect(Collectors.toList());
}
public MessageRouterDTO toMessageRouter(TerminalTypeEnum terminalType) {
public ButtonRouterDTO toMessageRouter(TerminalTypeEnum terminalType) {
MessageRouterTerminalDTO terminal = MessageRouterUtil.select(this, terminalType);
return MessageRouterDTO.builder()
return ButtonRouterDTO.builder()
.desc(this.desc)
.category(this.category)
.style(this.style)

View File

@ -1,9 +1,9 @@
package cn.axzo.msg.center.message.domain.param;
import cn.axzo.msg.center.common.exception.ServiceException;
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO;
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
import cn.axzo.msg.center.service.template.request.MessageTemplateCreateRequest;
@ -87,11 +87,11 @@ public class MessageTemplateSaveOrUpdateParam implements Serializable {
/**
* 业务详情展示策略
*/
private BizDetailShowStrategyDTO bizDetailShowStrategy;
private MessageDetailRouteStrategyDTO bizDetailShowStrategy;
/**
* 路由策略列表
*/
private List<MessageRouterButtonDTO> routers;
private List<MessageButtonRouteStrategyDTO> routers;
public static MessageTemplateSaveOrUpdateParam from(MessageTemplateCreateRequest request) {
MessageCategoryEnum category = MessageTemplateCategoryUtil

View File

@ -6,9 +6,9 @@ import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO;
import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO.MessageRouteButtonDTO;
import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO.MessageRouteDetailDTO;
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.MessageDetailRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.ButtonRouterDTO;
import cn.axzo.msg.center.service.dto.MessageRouterTerminalDTO;
import cn.axzo.msg.center.service.enums.ButtonStyleEnum;
import cn.axzo.msg.center.service.enums.RouterCategoryEnum;
@ -51,7 +51,7 @@ public final class MessageRouterUtil {
* @param msgTemplateRouter 模板路由配置
* @return 业务展示详情策略
*/
public static Optional<BizDetailShowStrategyDTO> fetchBizDetailShowStrategy(MessageTemplateRouterDTO msgTemplateRouter) {
public static Optional<MessageDetailRouteStrategyDTO> fetchBizDetailShowStrategy(MessageTemplateRouterDTO msgTemplateRouter) {
if (Objects.isNull(msgTemplateRouter)) {
return Optional.empty();
}
@ -65,7 +65,7 @@ public final class MessageRouterUtil {
* @param msgTemplateRouter 模板路由配置
* @return 业务按钮路由策略
*/
public static List<MessageRouterButtonDTO> fetchMessageRouterButtons(MessageTemplateRouterDTO msgTemplateRouter) {
public static List<MessageButtonRouteStrategyDTO> fetchMessageRouterButtons(MessageTemplateRouterDTO msgTemplateRouter) {
if (Objects.isNull(msgTemplateRouter)) {
return Collections.emptyList();
}
@ -125,7 +125,7 @@ public final class MessageRouterUtil {
* @param router 路由信息
* @param routerParam 路由参数
*/
public static void parseRouteUrl(MessageRouterDTO router, String routerParam) {
public static void parseRouteUrl(ButtonRouterDTO router, String routerParam) {
// 路由参数有效
if (isRouterParamValid(routerParam)) {
// 替换原始URL中的参数变量

View File

@ -25,7 +25,7 @@ import java.util.List;
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MessageRouterDTO implements Serializable {
public class ButtonRouterDTO implements Serializable {
private static final long serialVersionUID = 1326971022827041566L;

View File

@ -0,0 +1,51 @@
package cn.axzo.msg.center.service.dto;
import cn.axzo.msg.center.service.enums.BizDetailShowStrategyEnum;
import cn.axzo.msg.center.service.enums.TerminalTypeEnum;
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/9
* @version 1.0
*/
@Setter
@Getter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DetailRouterDTO implements Serializable {
private static final long serialVersionUID = -6069254958617169824L;
/**
* 展示策略
*/
private BizDetailShowStrategyEnum showStrategy;
/**
* 页面地址
*/
private String url;
/**
* 页面地址所属应用端(如果是API接口地址,请忽略改字段值)
* WEB: web端页面
* MINI_PROGRAM: 安心筑小程序端页面
* IOS: 原生IOS端页面
* ANDROID: 原生Android端页面
* WEB_VIEW: H5页面
* WECHAT_MINI_PROGRAM: 微信小程序页面
*/
private TerminalTypeEnum terminalType;
@Override
public String toString() {
return JSON.toJSONString(this);
}
}

View File

@ -13,7 +13,6 @@ import org.apache.commons.collections.CollectionUtils;
import java.io.Serializable;
import java.util.List;
import java.util.Optional;
/**
* @description
@ -27,7 +26,7 @@ import java.util.Optional;
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MessageRouterButtonDTO implements Serializable {
public class MessageButtonRouteStrategyDTO implements Serializable {
private static final long serialVersionUID = -9083376003614521781L;

View File

@ -21,7 +21,7 @@ import java.util.List;
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class BizDetailShowStrategyDTO implements Serializable {
public class MessageDetailRouteStrategyDTO implements Serializable {
private static final long serialVersionUID = -3496745332397525305L;

View File

@ -1,7 +1,7 @@
package cn.axzo.msg.center.service.general.response;
import cn.axzo.msg.center.service.dto.IdentityDTO;
import cn.axzo.msg.center.service.dto.MessageRouterDTO;
import cn.axzo.msg.center.service.dto.ButtonRouterDTO;
import cn.axzo.msg.center.service.enums.OrganizationTypeEnum;
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
import com.alibaba.fastjson.JSON;
@ -98,7 +98,7 @@ public class GeneralMessageResponse implements Serializable {
/**
* 路由信息,可为空
*/
private List<MessageRouterDTO> routers;
private List<ButtonRouterDTO> routers;
/**
* 参数及其对应的值的JSON串
*/

View File

@ -1,9 +1,9 @@
package cn.axzo.msg.center.service.pending.response;
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
import cn.axzo.msg.center.service.dto.ButtonRouterDTO;
import cn.axzo.msg.center.service.dto.DetailRouterDTO;
import cn.axzo.msg.center.service.dto.IdentityDTO;
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
import cn.axzo.msg.center.service.enums.BizCategoryEnum;
import com.alibaba.fastjson.JSON;
import lombok.AllArgsConstructor;
@ -96,13 +96,13 @@ public class PendingMessageResponse implements Serializable {
*/
private Long deadlineTimestamp;
/**
* 业务详情路由策略
* 业务详情路由
*/
private BizDetailShowStrategyDTO detailShowStrategy;
private DetailRouterDTO detailRouter;
/**
* 按钮路由策略
* 按钮路由
*/
private List<MessageRouterButtonDTO> routeButtons;
private List<ButtonRouterDTO> buttonRouters;
/**
* 业务终态的印章图片地址
*/

View File

@ -1,8 +1,8 @@
package cn.axzo.msg.center.service.template.request;
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO;
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum;
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
@ -88,11 +88,11 @@ public class MessageTemplateCreateRequest implements Serializable {
/**
* 详情展示策略
*/
private BizDetailShowStrategyDTO detailStrategy;
private MessageDetailRouteStrategyDTO detailStrategy;
/**
* 路由策略列表
*/
private List<MessageRouterButtonDTO> routers;
private List<MessageButtonRouteStrategyDTO> routers;
@Override
public String toString() {

View File

@ -1,8 +1,8 @@
package cn.axzo.msg.center.service.template.request;
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO;
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
import com.alibaba.fastjson.JSON;
import lombok.Getter;
@ -73,11 +73,11 @@ public class MessageTemplateUpdateRequest implements Serializable {
/**
* 详情展示策略
*/
private BizDetailShowStrategyDTO detailStrategy;
private MessageDetailRouteStrategyDTO detailStrategy;
/**
* 路由策略列表
*/
private List<MessageRouterButtonDTO> routers;
private List<MessageButtonRouteStrategyDTO> routers;
@Override
public String toString() {

View File

@ -1,8 +1,8 @@
package cn.axzo.msg.center.service.template.response;
import cn.axzo.msg.center.service.dto.BizDetailShowStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageDetailRouteStrategyDTO;
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
import cn.axzo.msg.center.service.dto.MessageRouterButtonDTO;
import cn.axzo.msg.center.service.dto.MessageButtonRouteStrategyDTO;
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum;
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
@ -79,11 +79,11 @@ public class MessageTemplateDetailResponse implements Serializable {
/**
* 详情展示策略
*/
private BizDetailShowStrategyDTO detailStrategy;
private MessageDetailRouteStrategyDTO detailStrategy;
/**
* 路由策略列表
*/
private List<MessageRouterButtonDTO> routers;
private List<MessageButtonRouteStrategyDTO> routers;
/**
* 模板创建时间戳
*/