fix(权限点): 修正树形顶级展示逻辑
This commit is contained in:
parent
f3e1ac397e
commit
0aee92334e
@ -74,11 +74,15 @@ public class PermissionPointServiceImpl implements PermissionPointService {
|
||||
if (request.getParentId() != null || CollectionUtil.isEmpty(nodesResult)) {
|
||||
return nodesResult;
|
||||
}
|
||||
|
||||
return buildTopNodes(nodesResult);
|
||||
//顶级展示 - 非特殊过滤时,没有子节点也应该展示,否则无法新增
|
||||
boolean needAllTop = StrUtil.isBlank(request.getKeyword())
|
||||
&& CollectionUtil.isEmpty(request.getTerminalList())
|
||||
&& CollectionUtil.isEmpty(request.getWorkspaceType())
|
||||
&& CollectionUtil.isEmpty(request.getIds());
|
||||
return buildTopNodes(nodesResult, needAllTop);
|
||||
}
|
||||
|
||||
private List<PermissionPointTreeNode> buildTopNodes(List<PermissionPointTreeNode> nodesResult) {
|
||||
private List<PermissionPointTreeNode> buildTopNodes(List<PermissionPointTreeNode> nodesResult, boolean needAllTop) {
|
||||
//构建workspace-terminal工作台层级
|
||||
|
||||
//按terminal分组
|
||||
@ -94,7 +98,8 @@ public class PermissionPointServiceImpl implements PermissionPointService {
|
||||
for (BasicDictTreeResp terminal : terminals) {
|
||||
//有下级权限点 则建立上级
|
||||
List<PermissionPointTreeNode> childrenNodes = mappingNode.get(terminal.getCode());
|
||||
if (CollectionUtil.isNotEmpty(childrenNodes)) {
|
||||
if (needAllTop || CollectionUtil.isNotEmpty(childrenNodes)) {
|
||||
//需要保留顶级时,没有子节点也要展示
|
||||
PermissionPointTreeNode terminalTree = new PermissionPointTreeNode();
|
||||
terminalTree.setPermissionName(terminal.getName());
|
||||
terminalTree.setTerminal(terminal.getCode());
|
||||
|
||||
Loading…
Reference in New Issue
Block a user