|
|
|
@ -116,16 +116,13 @@ public class SearchTreeUtil {
|
|
|
|
|
Set<String> leafIds = new HashSet<>();
|
|
|
|
|
List<SearchTree> collect = treeList.stream().peek(e -> {
|
|
|
|
|
Set<TreeNode> treeNodes = new LinkedHashSet<>();
|
|
|
|
|
List<TreeNode> nodes = parentMap.get(e.getId());
|
|
|
|
|
if (CollectionUtils.isNotEmpty(nodes)) {
|
|
|
|
|
treeNodes.addAll(nodes);
|
|
|
|
|
}
|
|
|
|
|
if (isAdd && CollectionUtils.isNotEmpty(childMap.get(e.getId()))) {
|
|
|
|
|
List<SearchTree> searchTrees = childMap.get(e.getId()).stream().sorted(Comparator.comparing(SearchTree::getOrderNum)).collect(Collectors.toList());
|
|
|
|
|
treeNodes.addAll(searchTrees);
|
|
|
|
|
}
|
|
|
|
|
if(CollectionUtils.isNotEmpty(treeNodes)){
|
|
|
|
|
treeNodes = treeNodes.stream().sorted(Comparator.comparing(TreeNode::getType).reversed()).collect(Collectors.toCollection(LinkedHashSet::new));
|
|
|
|
|
List<TreeNode> nodes = parentMap.get(e.getId());
|
|
|
|
|
if (CollectionUtils.isNotEmpty(nodes)) {
|
|
|
|
|
treeNodes.addAll(nodes);
|
|
|
|
|
}
|
|
|
|
|
e.setSubs(new ArrayList<>(treeNodes));
|
|
|
|
|
leafIds.add(e.getId());
|
|
|
|
|