From a2843b599dca4edc4bb72a34ff268c2e1df6c62d Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期六, 16 七月 2022 15:44:26 +0800 Subject: [PATCH] !205 StreamUtils优化分组方法返回由HashMap无序转为LinkedHashMap有序 Merge pull request !205 from 抓蛙师/auto-7465549-dev-1657957318499 --- ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java index 7d25410..f9f8fa1 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java @@ -1,9 +1,11 @@ package com.ruoyi.common.utils; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeNodeConfig; import cn.hutool.core.lang.tree.TreeUtil; import cn.hutool.core.lang.tree.parser.NodeParser; +import com.ruoyi.common.utils.reflect.ReflectUtils; import lombok.AccessLevel; import lombok.NoArgsConstructor; @@ -22,13 +24,12 @@ */ public static final TreeNodeConfig DEFAULT_CONFIG = TreeNodeConfig.DEFAULT_CONFIG.setNameKey("label"); - /** - * 榛樿鏍戠埗鑺傜偣id - */ - public static final Long DEFAULT_PARENT_ID = 0L; - - public static <T> List<Tree<Long>> build(List<T> list, NodeParser<T, Long> nodeParser) { - return TreeUtil.build(list, DEFAULT_PARENT_ID, DEFAULT_CONFIG, nodeParser); + public static <T, K> List<Tree<K>> build(List<T> list, NodeParser<T, K> nodeParser) { + if (CollUtil.isEmpty(list)) { + return null; + } + K k = ReflectUtils.invokeGetter(list.get(0), "parentId"); + return TreeUtil.build(list, k, DEFAULT_CONFIG, nodeParser); } } -- Gitblit v1.9.3