TreeBuildUtils.java 829 B

1234567891011121314151617181920212223242526272829
  1. package com.ruoyi.common.utils;
  2. import cn.hutool.core.lang.tree.Tree;
  3. import cn.hutool.core.lang.tree.TreeNodeConfig;
  4. import cn.hutool.core.lang.tree.TreeUtil;
  5. import cn.hutool.core.lang.tree.parser.NodeParser;
  6. import lombok.AccessLevel;
  7. import lombok.NoArgsConstructor;
  8. import java.util.List;
  9. /**
  10. * 扩展 hutool TreeUtil 封装系统树构建
  11. *
  12. * @author Lion Li
  13. */
  14. @NoArgsConstructor(access = AccessLevel.PRIVATE)
  15. public class TreeBuildUtils extends TreeUtil {
  16. /**
  17. * 根据前端定制差异化字段
  18. */
  19. public static final TreeNodeConfig DEFAULT_CONFIG = TreeNodeConfig.DEFAULT_CONFIG.setNameKey("label");
  20. public static <T> List<Tree<Long>> build(List<T> list, Long parentId, NodeParser<T, Long> nodeParser) {
  21. return TreeUtil.build(list, parentId, DEFAULT_CONFIG, nodeParser);
  22. }
  23. }