From b3b566ebdfed4005aaa513da3d5d2fd3924903cc Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Wed, 31 Jan 2024 16:17:54 +0800
Subject: [PATCH] 拿不到地址总表数据,不设置网格信息

---
 src/main/java/org/springblade/common/utils/NodeTreeUtil.java |   47 ++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 40 insertions(+), 7 deletions(-)

diff --git a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java b/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
index f616629..c867cf4 100644
--- a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
+++ b/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;
 
@@ -62,14 +63,20 @@
 	 */
 	public static List<TreeStringNode> getStringNodeTree(Map<String, TreeStringNode> treeMap){
 		List<TreeStringNode> tree = new ArrayList<>();
-		if (treeMap.size() > 1) {
-			treeMap.forEach((id, treeNode) -> {
-				if (treeMap.containsKey(treeNode.getParentId())) {
-					treeMap.get(treeNode.getParentId()).getChildren().add(treeNode);
-				} else {
+		if (treeMap.size() > 0) {
+			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;
+	}
 }

--
Gitblit v1.9.3