linwei
2024-01-31 b3b566ebdfed4005aaa513da3d5d2fd3924903cc
src/main/java/org/springblade/common/utils/NodeTreeUtil.java
@@ -3,6 +3,7 @@
import org.springblade.common.node.TreeIntegerNode;
import org.springblade.common.node.TreeLongNode;
import org.springblade.common.node.TreeStringNode;
import org.springblade.core.tool.node.TreeNode;
import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree;
import org.springblade.modules.house.vo.HouseTree;
@@ -63,13 +64,19 @@
   public static List<TreeStringNode> getStringNodeTree(Map<String, TreeStringNode> treeMap){
      List<TreeStringNode> tree = new ArrayList<>();
      if (treeMap.size() > 0) {
         treeMap.forEach((id, treeNode) -> {
            if (treeMap.containsKey(treeNode.getParentId())) {
               treeMap.get(treeNode.getParentId()).getChildren().add(treeNode);
            } else {
         if (treeMap.size()==1){
            treeMap.forEach((id, treeNode) -> {
               tree.add(treeNode);
            }
         });
            });
         }else {
            treeMap.forEach((id, treeNode) -> {
               if (treeMap.containsKey(treeNode.getParentId())) {
                  treeMap.get(treeNode.getParentId()).getChildren().add(treeNode);
               } else {
                  tree.add(treeNode);
               }
            });
         }
      }
      return tree;
   }
@@ -111,4 +118,30 @@
      }
      return tree;
   }
   /**
    * list 转 tree 组织机构
    * @param parentList
    * @param childrenList
    * @return
    */
   public  static List<TreeNode> getNodeTree(List<TreeNode> parentList, List<TreeNode> childrenList){
      // 遍历
      for (TreeNode parentNode : parentList) {
         // 判断是否有孩子
         if (parentNode.getHasChildren()) {
            List<TreeNode> tree = new ArrayList<>();
            // 遍历子集合
            for (TreeNode childrenNode : childrenList) {
               if (parentNode.getId().equals(childrenNode.getParentId())) {
                  tree.add(childrenNode);
               }
            }
            // 设置孩子节点
            parentNode.setChildren(tree);
         }
      }
      return parentList;
   }
}