Merge branch 'feature/REQ-1507' of axzsource.com:universal/infrastructure/backend/msg-center-plat into dev
This commit is contained in:
commit
77d59a3e18
@ -3,11 +3,10 @@ package cn.axzo.msg.center.message.controller;
|
||||
import cn.axzo.msg.center.message.domain.param.MessageGroupNodeSaveOrUpdateParam;
|
||||
import cn.axzo.msg.center.message.service.MessageGroupNodeService;
|
||||
import cn.axzo.msg.center.service.dto.GroupTreeNodeDTO;
|
||||
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
|
||||
import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum;
|
||||
import cn.axzo.msg.center.service.group.client.MessageGroupClient;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupNodeAddRequest;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupNodeUpdateRequest;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupPageRequest;
|
||||
import cn.axzo.msg.center.service.group.response.MessageGroupTreeNodeResponse;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@ -48,8 +47,9 @@ public class MessageGroupController implements MessageGroupClient {
|
||||
}
|
||||
|
||||
@Override
|
||||
public CommonResponse<List<MessageGroupTreeNodeResponse>> list(MessageGroupCategoryEnum category) {
|
||||
List<MessageGroupTreeNodeResponse> groupTreeNodes = messageGroupNodeService.listGroupTree(category).stream()
|
||||
public CommonResponse<List<MessageGroupTreeNodeResponse>> list(MessageGroupPageRequest request) {
|
||||
List<MessageGroupTreeNodeResponse> groupTreeNodes = messageGroupNodeService
|
||||
.listGroupTree(request.getCategory(), request.getNodeName()).stream()
|
||||
.map(GroupTreeNodeDTO::toMessageGroupTreeNodeResponse)
|
||||
.collect(Collectors.toList());
|
||||
return CommonResponse.success(groupTreeNodes);
|
||||
|
||||
@ -4,6 +4,7 @@ import cn.axzo.msg.center.message.domain.param.MessageGroupNodeSaveOrUpdateParam
|
||||
import cn.axzo.msg.center.service.dto.GroupTreeNodeDTO;
|
||||
import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -67,7 +68,8 @@ public interface MessageGroupNodeService {
|
||||
/**
|
||||
* 查询消息/待办 或者两者的分类树
|
||||
* @param category 消息/待办
|
||||
* @param nodeName 结点名称
|
||||
* @return 分类树列表
|
||||
*/
|
||||
List<GroupTreeNodeDTO> listGroupTree(MessageGroupCategoryEnum category);
|
||||
List<GroupTreeNodeDTO> listGroupTree(@Nullable MessageGroupCategoryEnum category, @Nullable String nodeName);
|
||||
}
|
||||
|
||||
@ -124,11 +124,13 @@ public class MessageGroupNodeServiceImpl implements MessageGroupNodeService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GroupTreeNodeDTO> listGroupTree(MessageGroupCategoryEnum category) {
|
||||
public List<GroupTreeNodeDTO> listGroupTree(MessageGroupCategoryEnum category, String nodeName) {
|
||||
return messageGroupTreeNodeCacheService.listAllGroupTree().stream()
|
||||
// 查询消息/待办 OR 两者的分类树
|
||||
// 分类过滤条件
|
||||
.filter(e -> Objects.isNull(category)
|
||||
|| category.getMsgGroupNodeCategories().contains(e.getCategory()))
|
||||
// 结点名称过滤条件
|
||||
.filter(e -> StringUtils.isBlank(nodeName) || e.getNodeName().equals(nodeName))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
||||
@ -157,6 +157,7 @@ public class MessageGroupTreeNodeCacheServiceImpl implements MessageGroupTreeNod
|
||||
return GroupTreeNodeDTO.builder()
|
||||
.nodeName(groupNode.getName())
|
||||
.nodeCode(groupNode.getCode())
|
||||
.nodeIcon(groupNode.getIcon())
|
||||
.category(groupNode.getCategory())
|
||||
.parentNodeCode(groupNode.getParentCode())
|
||||
.isLeaf(groupNode.getIsLeaf())
|
||||
|
||||
@ -40,6 +40,10 @@ public class GroupTreeNodeDTO implements IBaseTree<GroupTreeNodeDTO, String>, Se
|
||||
* 模板分组结点名称code
|
||||
*/
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 结点图标
|
||||
*/
|
||||
private String nodeIcon;
|
||||
/**
|
||||
* 结点类型
|
||||
*/
|
||||
@ -75,6 +79,7 @@ public class GroupTreeNodeDTO implements IBaseTree<GroupTreeNodeDTO, String>, Se
|
||||
.nodeName(nodeName)
|
||||
.nodeCode(nodeCode)
|
||||
.parentNodeCode(parentNodeCode)
|
||||
.nodeIcon(nodeIcon)
|
||||
.children(children)
|
||||
.build();
|
||||
}
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
package cn.axzo.msg.center.service.group.client;
|
||||
|
||||
import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum;
|
||||
import cn.axzo.msg.center.service.group.client.fallback.MessageGroupClientFallback;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupNodeAddRequest;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupNodeUpdateRequest;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupPageRequest;
|
||||
import cn.axzo.msg.center.service.group.response.MessageGroupTreeNodeResponse;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -57,9 +57,8 @@ public interface MessageGroupClient {
|
||||
/**
|
||||
* 查询通知/待办的分类信息
|
||||
*
|
||||
* @param category 消息分类
|
||||
* @param request 分页查询相关参数
|
||||
*/
|
||||
@PostMapping(value = "/message/group/node/list", produces = {MediaType.APPLICATION_JSON_VALUE})
|
||||
CommonResponse<List<MessageGroupTreeNodeResponse>> list(@RequestParam(value = "category", required = false)
|
||||
MessageGroupCategoryEnum category);
|
||||
CommonResponse<List<MessageGroupTreeNodeResponse>> list(@RequestBody MessageGroupPageRequest request);
|
||||
}
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
package cn.axzo.msg.center.service.group.client.fallback;
|
||||
|
||||
import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum;
|
||||
import cn.axzo.msg.center.service.group.client.MessageGroupClient;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupNodeAddRequest;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupNodeUpdateRequest;
|
||||
import cn.axzo.msg.center.service.group.request.MessageGroupPageRequest;
|
||||
import cn.axzo.msg.center.service.group.response.MessageGroupTreeNodeResponse;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -40,8 +40,8 @@ public class MessageGroupClientFallback implements MessageGroupClient {
|
||||
}
|
||||
|
||||
@Override
|
||||
public CommonResponse<List<MessageGroupTreeNodeResponse>> list(MessageGroupCategoryEnum category) {
|
||||
log.error("fall back while listing message group node. category:[{}]", category);
|
||||
public CommonResponse<List<MessageGroupTreeNodeResponse>> list(MessageGroupPageRequest request) {
|
||||
log.error("fall back while listing message group node. request:{}", request);
|
||||
return CommonResponse.error("fall back while listing message group node");
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
package cn.axzo.msg.center.service.group.request;
|
||||
|
||||
import cn.axzo.core.domain.PageRequest;
|
||||
import cn.axzo.msg.center.service.enums.MessageGroupCategoryEnum;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* @author cold_blade
|
||||
* @date 2023/11/9
|
||||
* @version 1.0
|
||||
*/
|
||||
@Setter
|
||||
@Getter
|
||||
public class MessageGroupPageRequest extends PageRequest {
|
||||
|
||||
private MessageGroupCategoryEnum category;
|
||||
private String nodeName;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -47,6 +47,10 @@ public class MessageGroupTreeNodeResponse implements Serializable {
|
||||
* 父节点编码
|
||||
*/
|
||||
private String parentNodeCode;
|
||||
/**
|
||||
* 结点图标
|
||||
*/
|
||||
private String nodeIcon;
|
||||
/**
|
||||
* 子节点列表
|
||||
*/
|
||||
|
||||
Loading…
Reference in New Issue
Block a user