From 59e1a8ff7dfd9af5244ae5448d8af745a9720d13 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Wed, 29 Nov 2023 18:04:34 +0800
Subject: [PATCH] bug修复

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

diff --git a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java b/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
index a17981b..f616629 100644
--- a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
+++ b/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
@@ -1,7 +1,11 @@
 package org.springblade.common.utils;
 
 import org.springblade.common.node.TreeIntegerNode;
-import org.springblade.common.node.TreeNode;
+import org.springblade.common.node.TreeLongNode;
+import org.springblade.common.node.TreeStringNode;
+import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree;
+import org.springblade.modules.house.vo.HouseTree;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -31,4 +35,80 @@
 		}
 		return tree;
 	}
+
+	/**
+	 * 树转换
+	 * @param treeMap
+	 * @return
+	 */
+	public static List<TreeLongNode> getLongNodeTree(Map<Long, TreeLongNode> treeMap){
+		List<TreeLongNode> tree = new ArrayList<>();
+		if (treeMap.size() > 1) {
+			treeMap.forEach((id, treeNode) -> {
+				if (treeMap.containsKey(treeNode.getParentId())) {
+					treeMap.get(treeNode.getParentId()).getChildren().add(treeNode);
+				} else {
+					tree.add(treeNode);
+				}
+			});
+		}
+		return tree;
+	}
+
+	/**
+	 * 树转换
+	 * @param treeMap
+	 * @return
+	 */
+	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 {
+					tree.add(treeNode);
+				}
+			});
+		}
+		return tree;
+	}
+
+	/**
+	 * 树转换
+	 * @param treeMap
+	 * @return
+	 */
+	public static List<DoorplateAddressVOTree> getAddressNodeTree(Map<String, DoorplateAddressVOTree> treeMap){
+		List<DoorplateAddressVOTree> tree = new ArrayList<>();
+		if (treeMap.size() > 1) {
+			treeMap.forEach((code, treeNode) -> {
+				if (treeMap.containsKey(treeNode.getParentCode())) {
+					treeMap.get(treeNode.getParentCode()).getChildren().add(treeNode);
+				} else {
+					tree.add(treeNode);
+				}
+			});
+		}
+		return tree;
+	}
+
+	/**
+	 * 树转换
+	 * @param treeMap
+	 * @return
+	 */
+	public static List<HouseTree> getHouseTree(Map<String, HouseTree> treeMap){
+		List<HouseTree> tree = new ArrayList<>();
+		if (treeMap.size() > 1) {
+			treeMap.forEach((code, treeNode) -> {
+				if (treeMap.containsKey(treeNode.getParentCode())) {
+					treeMap.get(treeNode.getParentCode()).getChildren().add(treeNode);
+				} else {
+					tree.add(treeNode);
+				}
+			});
+		}
+		return tree;
+	}
 }

--
Gitblit v1.9.3