package org.springblade.common.utils; import org.springblade.common.node.TreeIntegerNode; import org.springblade.common.node.TreeNode; 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; /** * node tree 工具类 * @author zhongrj * @since 2023-10-28 */ public class NodeTreeUtil { /** * 树转换 * @param treeMap * @return */ public static List getNodeTree(Map treeMap){ List 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 getAddressNodeTree(Map treeMap){ List 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 getHouseTree(Map treeMap){ List 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; } }