From 314aeb39f049f26d02611d8a426a2322c7ccfac0 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 18 May 2023 21:11:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jtdev' into jtdev

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttAdBaseServiceImpl.java |   38 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 38 insertions(+), 0 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttAdBaseServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttAdBaseServiceImpl.java
index 7456274..ef8fa18 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttAdBaseServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttAdBaseServiceImpl.java
@@ -1,5 +1,7 @@
 package cn.gistack.sm.sjztmd.service.impl;
 
+import cn.gistack.common.node.TreeNode;
+import cn.gistack.common.utils.NodeTreeUtil;
 import cn.gistack.sm.sjztmd.entity.AttAdBase;
 import cn.gistack.sm.sjztmd.mapper.AttAdBaseMapper;
 import cn.gistack.sm.sjztmd.service.IAttAdBaseService;
@@ -8,8 +10,11 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.Comparator;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * @ClassName AttAdBaseServiceImpl
@@ -25,4 +30,37 @@
 	public List<AttAdBaseVO> lazyTree(String parentCode, Map<String, Object> param) {
 		return baseMapper.lazyTree(parentCode, param);
 	}
+
+	/**
+	 * 查询区域菜单树-带层级
+	 * @param parentCode
+	 * @param obj
+	 * @return
+	 */
+	@Override
+	public Object selectAttAdBaseTree(String parentCode, Map<String, Object> obj) {
+		List<TreeNode> nodeTree = NodeTreeUtil.getNodeTree(baseMapper.selectAttAdBaseTree(parentCode, obj));
+		// 排序并返回
+		return sortTree(nodeTree);
+	}
+
+	/**
+	 * 排序--只排第一,二个子集
+	 * @param nodeTree
+	 */
+	private List<TreeNode> sortTree(List<TreeNode> nodeTree) {
+		for (TreeNode node : nodeTree) {
+			if (node.getHasChildren()){
+				List<TreeNode> children = node.getChildren();
+				// 遍历子节点
+				for (TreeNode child : children) {
+					if (child.getHasChildren()){
+						child.setChildren(child.getChildren().stream().sorted(Comparator.comparing(TreeNode::getId)).collect(Collectors.toList()));
+					}
+				}
+				node.setChildren(node.getChildren().stream().sorted(Comparator.comparing(TreeNode::getId)).collect(Collectors.toList()));
+			}
+		}
+		return nodeTree;
+	}
 }

--
Gitblit v1.9.3