Merge branch 'feature/REQ-1507' of axzsource.com:universal/infrastructure/backend/msg-center-plat into dev
This commit is contained in:
commit
17922bef00
@ -1,6 +1,6 @@
|
||||
package cn.axzo.msg.center.message.controller;
|
||||
|
||||
import cn.axzo.msg.center.message.domain.dto.MessageGroupNodeStatisticDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.PendingMessageStatisticDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.PendingMessageDTO;
|
||||
import cn.axzo.msg.center.message.domain.param.MessageGroupNodeStatisticParam;
|
||||
import cn.axzo.msg.center.message.domain.param.PendingMessagePushParam;
|
||||
@ -10,7 +10,7 @@ import cn.axzo.msg.center.service.pending.client.PendingMessageClient;
|
||||
import cn.axzo.msg.center.service.pending.request.MessageGroupNodeStatisticRequest;
|
||||
import cn.axzo.msg.center.service.pending.request.PendingMessagePageRequest;
|
||||
import cn.axzo.msg.center.service.pending.request.PendingMessagePushRequest;
|
||||
import cn.axzo.msg.center.service.pending.response.MessageGroupNodeResponse;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageStatisticResponse;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageResponse;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import cn.azxo.framework.common.model.Page;
|
||||
@ -35,11 +35,11 @@ public class PendingMessageNewController implements PendingMessageClient {
|
||||
private final PendingMessageNewService pendingMessageNewService;
|
||||
|
||||
@Override
|
||||
public CommonResponse<List<MessageGroupNodeResponse>> groupStatistic(MessageGroupNodeStatisticRequest request) {
|
||||
List<MessageGroupNodeStatisticDTO> groupNodes = pendingMessageNewService
|
||||
public CommonResponse<List<PendingMessageStatisticResponse>> groupStatistic(MessageGroupNodeStatisticRequest request) {
|
||||
List<PendingMessageStatisticDTO> groupNodes = pendingMessageNewService
|
||||
.groupStatistic(MessageGroupNodeStatisticParam.from(request));
|
||||
return CommonResponse.success(groupNodes.stream()
|
||||
.map(MessageGroupNodeStatisticDTO::toResponse)
|
||||
.map(PendingMessageStatisticDTO::toResponse)
|
||||
.collect(Collectors.toList())
|
||||
);
|
||||
}
|
||||
|
||||
@ -1,81 +0,0 @@
|
||||
package cn.axzo.msg.center.message.domain.dto;
|
||||
|
||||
import cn.axzo.basics.common.model.IBaseTree;
|
||||
import cn.axzo.core.utils.converter.BeanConverter;
|
||||
import cn.axzo.msg.center.service.dto.GroupTreeNodeDTO;
|
||||
import cn.axzo.msg.center.service.pending.response.MessageGroupNodeResponse;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @description
|
||||
* 消息分类结点DTO
|
||||
*
|
||||
* @author cold_blade
|
||||
* @date 2023/9/26
|
||||
* @version 1.0
|
||||
*/
|
||||
@Setter
|
||||
@Getter
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class MessageGroupNodeStatisticDTO implements IBaseTree<MessageGroupNodeStatisticDTO, String>, Serializable {
|
||||
|
||||
private static final long serialVersionUID = 5171436359992401120L;
|
||||
|
||||
/**
|
||||
* 树结点
|
||||
*/
|
||||
private GroupTreeNodeDTO treeNode;
|
||||
/**
|
||||
* 子节点列表
|
||||
*/
|
||||
private List<MessageGroupNodeStatisticDTO> nodeChildren;
|
||||
/**
|
||||
* 结点对应的代办数量
|
||||
*/
|
||||
private Integer pendingCount;
|
||||
|
||||
public static MessageGroupNodeStatisticDTO of(GroupTreeNodeDTO groupNode) {
|
||||
return MessageGroupNodeStatisticDTO.builder()
|
||||
.treeNode(groupNode)
|
||||
.build();
|
||||
}
|
||||
|
||||
public MessageGroupNodeResponse toResponse() {
|
||||
MessageGroupNodeResponse response = new MessageGroupNodeResponse();
|
||||
response.setCategory(treeNode.getCategory());
|
||||
response.setNodeCode(treeNode.getNodeCode());
|
||||
response.setNodeName(treeNode.getNodeName());
|
||||
response.setParentNodeCode(treeNode.getParentNodeCode());
|
||||
response.setPendingCount(this.pendingCount);
|
||||
List<MessageGroupNodeResponse> children = this.nodeChildren.stream()
|
||||
.map(MessageGroupNodeStatisticDTO::toResponse).collect(Collectors.toList());
|
||||
response.setNodeChildren(children);
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getNodeCode() {
|
||||
return treeNode.getNodeCode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getParentNodeCode() {
|
||||
return treeNode.getParentNodeCode();
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,58 @@
|
||||
package cn.axzo.msg.center.message.domain.dto;
|
||||
|
||||
import cn.axzo.msg.center.service.dto.GroupTreeNodeDTO;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageStatisticResponse;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @description
|
||||
* 消息分类结点DTO
|
||||
*
|
||||
* @author cold_blade
|
||||
* @date 2023/9/26
|
||||
* @version 1.0
|
||||
*/
|
||||
@Setter
|
||||
@Getter
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class PendingMessageStatisticDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 5171436359992401120L;
|
||||
|
||||
/**
|
||||
* 树结点
|
||||
*/
|
||||
private GroupTreeNodeDTO treeNode;
|
||||
/**
|
||||
* 结点对应的代办数量
|
||||
*/
|
||||
private Integer pendingCount;
|
||||
|
||||
public static PendingMessageStatisticDTO of(GroupTreeNodeDTO groupNode) {
|
||||
return PendingMessageStatisticDTO.builder()
|
||||
.treeNode(groupNode)
|
||||
.build();
|
||||
}
|
||||
|
||||
public PendingMessageStatisticResponse toResponse() {
|
||||
PendingMessageStatisticResponse response = new PendingMessageStatisticResponse();
|
||||
response.setGroupCode(treeNode.getNodeCode());
|
||||
response.setGroupName(treeNode.getNodeName());
|
||||
response.setPendingCount(this.pendingCount);
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -3,8 +3,7 @@ package cn.axzo.msg.center.message.domain.param;
|
||||
import cn.axzo.core.utils.converter.BeanConverter;
|
||||
import cn.axzo.msg.center.service.dto.IdentityDTO;
|
||||
import cn.axzo.msg.center.service.dto.PersonDTO;
|
||||
import cn.axzo.msg.center.service.enums.PendingMessageRoleCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.PendingMessageStateEnum;
|
||||
import cn.axzo.msg.center.service.enums.AppTerminalTypeEnum;
|
||||
import cn.axzo.msg.center.service.pending.request.MessageGroupNodeStatisticRequest;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.Getter;
|
||||
@ -31,34 +30,19 @@ public class MessageGroupNodeStatisticParam implements Serializable {
|
||||
*/
|
||||
private PersonDTO operator;
|
||||
/**
|
||||
* 业务方是否只关注特定身份的消息
|
||||
* true: 是
|
||||
* false: 否
|
||||
* 应用终端类型
|
||||
*/
|
||||
private Boolean withIdentify;
|
||||
private AppTerminalTypeEnum terminalType;
|
||||
/**
|
||||
* 消息的分类结点编码集合
|
||||
*/
|
||||
private Collection<String> groupNodeCodes;
|
||||
/**
|
||||
* 代办角色
|
||||
* PROMOTER: 发起者
|
||||
* EXECUTOR: 执行者
|
||||
* 业务方是否只关注特定身份的消息
|
||||
* true: 是
|
||||
* false: 否
|
||||
*/
|
||||
private PendingMessageRoleCategoryEnum roleCategory;
|
||||
/**
|
||||
* 代办消息状态
|
||||
* UNSENT: 未发送
|
||||
* HAS_BEEN_SENT: 已发送
|
||||
* COMPLETED: 已办
|
||||
* RETRACT: 已撤回
|
||||
* DELETED: 已删除
|
||||
*/
|
||||
private PendingMessageStateEnum msgState;
|
||||
/**
|
||||
* 消息标题
|
||||
*/
|
||||
private String title;
|
||||
private Boolean withIdentify;
|
||||
|
||||
public static MessageGroupNodeStatisticParam from(MessageGroupNodeStatisticRequest request) {
|
||||
MessageGroupNodeStatisticParam param = BeanConverter.convert(request, MessageGroupNodeStatisticParam.class);
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
package cn.axzo.msg.center.message.service;
|
||||
|
||||
import cn.axzo.msg.center.message.domain.dto.MessageGroupNodeStatisticDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.PendingMessageStatisticDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.PendingMessageDTO;
|
||||
import cn.axzo.msg.center.message.domain.param.MessageGroupNodeStatisticParam;
|
||||
import cn.axzo.msg.center.message.domain.param.PendingMessagePushParam;
|
||||
@ -21,7 +21,7 @@ import java.util.Optional;
|
||||
*/
|
||||
public interface PendingMessageNewService {
|
||||
|
||||
List<MessageGroupNodeStatisticDTO> groupStatistic(MessageGroupNodeStatisticParam param);
|
||||
List<PendingMessageStatisticDTO> groupStatistic(MessageGroupNodeStatisticParam param);
|
||||
|
||||
/**
|
||||
* 代办列表分页查询
|
||||
|
||||
@ -5,10 +5,10 @@ import cn.axzo.msg.center.common.exception.ServiceException;
|
||||
import cn.axzo.msg.center.common.utils.PlaceholderResolver;
|
||||
import cn.axzo.msg.center.dal.PendingMessageRecordDao;
|
||||
import cn.axzo.msg.center.domain.entity.PendingMessageRecord;
|
||||
import cn.axzo.msg.center.message.domain.dto.MessageGroupNodeStatisticDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.MessageTemplateDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.PendingMessageDTO;
|
||||
import cn.axzo.msg.center.message.domain.dto.PendingMessageStatisticDTO;
|
||||
import cn.axzo.msg.center.message.domain.param.MessageGroupNodeStatisticParam;
|
||||
import cn.axzo.msg.center.message.domain.param.PendingMessagePushParam;
|
||||
import cn.axzo.msg.center.message.service.MessageGroupNodeService;
|
||||
@ -28,7 +28,6 @@ import cn.axzo.msg.center.service.pending.request.PendingMessagePageRequest;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageResponse;
|
||||
import cn.axzo.msg.center.utils.JSONObjectUtil;
|
||||
import cn.axzo.msg.center.utils.OrderFieldParseUtil;
|
||||
import cn.axzo.msg.center.utils.TreeHelperUtil;
|
||||
import cn.axzo.msg.center.utils.UUIDUtil;
|
||||
import cn.azxo.framework.common.model.Page;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
@ -44,7 +43,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.LinkedList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
@ -68,7 +67,8 @@ public class PendingMessageNewServiceImpl implements PendingMessageNewService {
|
||||
private final MessageTemplateGroupService messageTemplateGroupService;
|
||||
|
||||
@Override
|
||||
public List<MessageGroupNodeStatisticDTO> groupStatistic(MessageGroupNodeStatisticParam param) {
|
||||
public List<PendingMessageStatisticDTO> groupStatistic(MessageGroupNodeStatisticParam param) {
|
||||
// TODO: [cold_blade] [P0] 获取待统计的业务中心分类结点的编码
|
||||
return param.getGroupNodeCodes().stream()
|
||||
.flatMap(e -> statistic(e, param).stream())
|
||||
.collect(Collectors.toList());
|
||||
@ -184,35 +184,27 @@ public class PendingMessageNewServiceImpl implements PendingMessageNewService {
|
||||
return pendingMessage;
|
||||
}
|
||||
|
||||
private List<MessageGroupNodeStatisticDTO> statistic(String rootNodeCode, MessageGroupNodeStatisticParam param) {
|
||||
private List<PendingMessageStatisticDTO> statistic(String rootNodeCode, MessageGroupNodeStatisticParam param) {
|
||||
// TODO:[cold_blade] [P0] 异常捕获处理记忆功能实现
|
||||
GroupTreeNodeDTO rootNode = messageGroupNodeService.queryRootNode(rootNodeCode)
|
||||
.orElseThrow(() -> new ServiceException("groupNodeCode is invalid."));
|
||||
MessageGroupNodeStatisticDTO rootWrapper = TreeHelperUtil.wrapper(rootNode, MessageGroupNodeStatisticDTO::of);
|
||||
LinkedList<MessageGroupNodeStatisticDTO> stack = new LinkedList<>();
|
||||
stack.push(rootWrapper);
|
||||
MessageGroupNodeStatisticDTO wrapper;
|
||||
while (!stack.isEmpty()) {
|
||||
wrapper = stack.pop();
|
||||
statistic(wrapper, param);
|
||||
stack.addAll(wrapper.getNodeChildren());
|
||||
}
|
||||
// 外部传的是根节点,但是前端希望只返回根节点的字节的
|
||||
return rootWrapper.getNodeChildren();
|
||||
int pendingCnt = doStatistic(rootNodeCode, param);
|
||||
PendingMessageStatisticDTO dto = PendingMessageStatisticDTO.of(rootNode);
|
||||
dto.setPendingCount(pendingCnt);
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
private void statistic(MessageGroupNodeStatisticDTO groupNode, MessageGroupNodeStatisticParam param) {
|
||||
List<String> templateCodes = messageTemplateGroupService.listMessageTemplateCodes(groupNode.getNodeCode());
|
||||
private int doStatistic(String groupNodeCode, MessageGroupNodeStatisticParam param) {
|
||||
List<String> templateCodes = messageTemplateGroupService.listMessageTemplateCodes(groupNodeCode);
|
||||
if (CollectionUtils.isEmpty(templateCodes)) {
|
||||
groupNode.setPendingCount(0);
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
LambdaQueryChainWrapper<PendingMessageRecord> query = pendingMessageRecordDao.lambdaQuery()
|
||||
.in(PendingMessageRecord::getTemplateCode, templateCodes)
|
||||
.like(StringUtils.isNotBlank(param.getTitle()), PendingMessageRecord::getTitle, param.getTitle())
|
||||
.eq(Objects.nonNull(param.getMsgState()), PendingMessageRecord::getState, param.getMsgState())
|
||||
.eq(PendingMessageRecord::getIsDelete, 0);
|
||||
buildPersonCondition(query, param.getWithIdentify(), param.getRoleCategory(), param.getOperator());
|
||||
groupNode.setPendingCount(query.count());
|
||||
.eq(PendingMessageRecord::getState, PendingMessageStateEnum.HAS_BEEN_SENT);
|
||||
buildPersonCondition(query, param.getWithIdentify(), PendingMessageRoleCategoryEnum.EXECUTOR, param.getOperator());
|
||||
return query.count();
|
||||
}
|
||||
|
||||
private void buildPersonCondition(LambdaQueryChainWrapper<PendingMessageRecord> query, Boolean withIdentify,
|
||||
|
||||
@ -0,0 +1,37 @@
|
||||
package cn.axzo.msg.center.service.enums;
|
||||
|
||||
import lombok.AccessLevel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @description
|
||||
* 应用终端类型枚举
|
||||
* @author cold_blade
|
||||
* @date 2023/11/9
|
||||
* @version 1.0
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor(access = AccessLevel.PRIVATE)
|
||||
public enum AppTerminalTypeEnum {
|
||||
|
||||
/**
|
||||
* B-安心筑企业版
|
||||
*/
|
||||
B_ENTERPRISE_APP("B-安心筑企业版"),
|
||||
/**
|
||||
* C-安心筑工人版
|
||||
*/
|
||||
C_WORKER_APP("C-安心筑工人版"),
|
||||
/**
|
||||
* CMS PC端
|
||||
*/
|
||||
CMS_WEB_PC("CMS PC端"),
|
||||
/**
|
||||
* OMS PC端
|
||||
*/
|
||||
OMS_WEB_PC("OMS PC端"),
|
||||
;
|
||||
|
||||
private final String desc;
|
||||
}
|
||||
@ -5,7 +5,7 @@ import cn.axzo.msg.center.service.pending.client.fallback.PendingMessageClientFa
|
||||
import cn.axzo.msg.center.service.pending.request.MessageGroupNodeStatisticRequest;
|
||||
import cn.axzo.msg.center.service.pending.request.PendingMessagePageRequest;
|
||||
import cn.axzo.msg.center.service.pending.request.PendingMessagePushRequest;
|
||||
import cn.axzo.msg.center.service.pending.response.MessageGroupNodeResponse;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageStatisticResponse;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageResponse;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import cn.azxo.framework.common.model.Page;
|
||||
@ -33,7 +33,7 @@ import java.util.List;
|
||||
public interface PendingMessageClient {
|
||||
|
||||
@PostMapping(value = "/pending-message/record/group/statistic", produces = {MediaType.APPLICATION_JSON_VALUE})
|
||||
CommonResponse<List<MessageGroupNodeResponse>> groupStatistic(@RequestBody @Valid
|
||||
CommonResponse<List<PendingMessageStatisticResponse>> groupStatistic(@RequestBody @Valid
|
||||
MessageGroupNodeStatisticRequest request);
|
||||
|
||||
/**
|
||||
|
||||
@ -5,7 +5,7 @@ import cn.axzo.msg.center.service.pending.client.PendingMessageClient;
|
||||
import cn.axzo.msg.center.service.pending.request.MessageGroupNodeStatisticRequest;
|
||||
import cn.axzo.msg.center.service.pending.request.PendingMessagePageRequest;
|
||||
import cn.axzo.msg.center.service.pending.request.PendingMessagePushRequest;
|
||||
import cn.axzo.msg.center.service.pending.response.MessageGroupNodeResponse;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageStatisticResponse;
|
||||
import cn.axzo.msg.center.service.pending.response.PendingMessageResponse;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import cn.azxo.framework.common.model.Page;
|
||||
@ -26,7 +26,7 @@ import java.util.List;
|
||||
public class PendingMessageClientFallback implements PendingMessageClient {
|
||||
|
||||
@Override
|
||||
public CommonResponse<List<MessageGroupNodeResponse>> groupStatistic(MessageGroupNodeStatisticRequest request) {
|
||||
public CommonResponse<List<PendingMessageStatisticResponse>> groupStatistic(MessageGroupNodeStatisticRequest request) {
|
||||
log.error("fall back while statistic pending message. req:{}", request);
|
||||
return CommonResponse.error("fall back while statistic pending message");
|
||||
}
|
||||
|
||||
@ -1,13 +1,11 @@
|
||||
package cn.axzo.msg.center.service.pending.request;
|
||||
|
||||
import cn.axzo.msg.center.service.enums.AppTerminalTypeEnum;
|
||||
import cn.axzo.msg.center.service.enums.IdentityTypeEnum;
|
||||
import cn.axzo.msg.center.service.enums.PendingMessageRoleCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.PendingMessageStateEnum;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.util.Collection;
|
||||
@ -41,34 +39,11 @@ public class MessageGroupNodeStatisticRequest implements Serializable {
|
||||
/**
|
||||
* 消息的分类结点编码集合
|
||||
*/
|
||||
@NotEmpty(message = "groupNodeCodes is required")
|
||||
private Collection<String> groupNodeCodes;
|
||||
/**
|
||||
* 业务方是否只关注特定身份的消息
|
||||
* true: 是
|
||||
* false: 否
|
||||
* 应用终端类型
|
||||
*/
|
||||
private Boolean withIdentify;
|
||||
/**
|
||||
* 代办角色
|
||||
* PROMOTER: 发起者
|
||||
* CREATOR: 创建者
|
||||
* EXECUTOR: 执行者
|
||||
*/
|
||||
private PendingMessageRoleCategoryEnum roleCategory;
|
||||
/**
|
||||
* 代办消息状态
|
||||
* UNSENT: 未发送
|
||||
* HAS_BEEN_SENT: 已发送
|
||||
* COMPLETED: 已办
|
||||
* RETRACT: 已撤回
|
||||
* DELETED: 已删除
|
||||
*/
|
||||
private PendingMessageStateEnum msgState;
|
||||
/**
|
||||
* 消息标题
|
||||
*/
|
||||
private String title;
|
||||
private AppTerminalTypeEnum terminalType;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
|
||||
@ -1,60 +0,0 @@
|
||||
package cn.axzo.msg.center.service.pending.response;
|
||||
|
||||
import cn.axzo.basics.common.model.IBaseTree;
|
||||
import cn.axzo.msg.center.service.enums.MessageGroupNodeCategoryEnum;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description
|
||||
*
|
||||
* @author cold_blade
|
||||
* @date 2023/9/23
|
||||
* @version 1.0
|
||||
*/
|
||||
@Setter
|
||||
@Getter
|
||||
public class MessageGroupNodeResponse implements IBaseTree<MessageGroupNodeResponse, String>, Serializable {
|
||||
|
||||
private static final long serialVersionUID = 972200410809186003L;
|
||||
|
||||
/**
|
||||
* 结点类型
|
||||
* GENERAL_MESSAGE_CENTER: 消息中心
|
||||
* GENERAL_MESSAGE_MODULE: 消息模块
|
||||
* GENERAL_MESSAGE_CATEGORY: 消息分类
|
||||
* PENDING_MESSAGE_CENTER: 待办中心
|
||||
* PENDING_MESSAGE_MODULE: 待办模块
|
||||
* PENDING_MESSAGE_CATEGORY: 待办分类
|
||||
*/
|
||||
private MessageGroupNodeCategoryEnum category;
|
||||
/**
|
||||
* 结点名称
|
||||
*/
|
||||
private String nodeName;
|
||||
/**
|
||||
* 结点编码
|
||||
*/
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 父节点编码
|
||||
*/
|
||||
private String parentNodeCode;
|
||||
/**
|
||||
* 子节点列表
|
||||
*/
|
||||
private List<MessageGroupNodeResponse> nodeChildren;
|
||||
/**
|
||||
* 结点对应的代办数量
|
||||
*/
|
||||
private Integer pendingCount;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,39 @@
|
||||
package cn.axzo.msg.center.service.pending.response;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @description
|
||||
*
|
||||
* @author cold_blade
|
||||
* @date 2023/9/23
|
||||
* @version 1.0
|
||||
*/
|
||||
@Setter
|
||||
@Getter
|
||||
public class PendingMessageStatisticResponse implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 972200410809186003L;
|
||||
|
||||
/**
|
||||
* 分类名称
|
||||
*/
|
||||
private String groupName;
|
||||
/**
|
||||
* 分类编码
|
||||
*/
|
||||
private String groupCode;
|
||||
/**
|
||||
* 分类对应的代办数量
|
||||
*/
|
||||
private Integer pendingCount;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -1,6 +1,6 @@
|
||||
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.BizCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.BizFinalStateEnum;
|
||||
import cn.axzo.msg.center.service.enums.IdentityTypeEnum;
|
||||
@ -24,7 +24,7 @@ import java.util.Date;
|
||||
@Setter
|
||||
@Getter
|
||||
@TableName("pending_message_record")
|
||||
public class PendingMessageRecord extends BaseEntity<PendingMessageRecord> implements Serializable {
|
||||
public class PendingMessageRecord extends BaseEntityExt<PendingMessageRecord> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 2184329278851311992L;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user