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/modules/label/service/impl/LabelServiceImpl.java |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/springblade/modules/label/service/impl/LabelServiceImpl.java b/src/main/java/org/springblade/modules/label/service/impl/LabelServiceImpl.java
index 7f0e1ab..384908b 100644
--- a/src/main/java/org/springblade/modules/label/service/impl/LabelServiceImpl.java
+++ b/src/main/java/org/springblade/modules/label/service/impl/LabelServiceImpl.java
@@ -26,7 +26,9 @@
 import org.springblade.modules.label.vo.LabelVO;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 标签管理 服务实现类
@@ -49,12 +51,28 @@
 	 */
 	@Override
 	public Object getLabelList(LabelVO label) {
-		return NodeTreeUtil.getNodeTree(baseMapper.getLabelList(label));
+		Map<Integer, TreeIntegerNode> labelList = baseMapper.getLabelList(label);
+		List<Integer> list = new ArrayList<>();
+		// 遍历
+		labelList.forEach((id, treeNode) -> {
+			if (treeNode.getHasChildren()){
+				list.add(id);
+			}
+		});
+		if (list.size()>0) {
+			// 查询子集
+			Map<Integer, TreeIntegerNode> childrenLabelList = baseMapper.getChildrenLabelList(list);
+			// 合并集合
+			labelList.putAll(childrenLabelList);
+		}
+		// 处理并返回
+		return NodeTreeUtil.getNodeTree(labelList);
 	}
 
 	@Override
 	public List<TreeIntegerNode> tree(LabelVO label) {
-		List<TreeIntegerNode> nodeTree = NodeTreeUtil.getNodeTree(baseMapper.getLabelTreeList(label));
+		Map<Integer, TreeIntegerNode> labelTreeList = baseMapper.getLabelTreeList(label);
+		List<TreeIntegerNode> nodeTree = NodeTreeUtil.getNodeTree(labelTreeList);
 		nodeTree.forEach(node -> recursion(node));
 		return nodeTree;
 	}

--
Gitblit v1.9.3