TreeBuildUtils.java 812 B

12345678910111213141516171819202122232425262728293031
  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 java.util.List;
  7. /**
  8. * 扩展 hutool TreeUtil 封装系统树构建
  9. *
  10. * @author Lion Li
  11. */
  12. public class TreeBuildUtils extends TreeUtil {
  13. /**
  14. * 根据前端定制差异化字段
  15. */
  16. public static final TreeNodeConfig DEFAULT_CONFIG = TreeNodeConfig.DEFAULT_CONFIG.setNameKey("label");
  17. /**
  18. * 默认树父节点id
  19. */
  20. public static final Long DEFAULT_PARENT_ID = 0L;
  21. public static <T> List<Tree<Long>> build(List<T> list, NodeParser<T, Long> nodeParser) {
  22. return TreeUtil.build(list, DEFAULT_PARENT_ID, DEFAULT_CONFIG, nodeParser);
  23. }
  24. }