java递归获取树结构的指定层级、指定层级之上(向上递归(包含父集所有、爷爷集所有...)(父集单独、爷爷集单独...))、指定层级之下所有的(子集、孙子集...)和list集合转Tree树结构

实体类

package com.ruoyi.system.test;

import lombok.Data;

import java.util.ArrayList;
import java.util.List;

@Data
public class SysDept implements TreeParentNode<SysDept> {

    private static final long serialVersionUID = 1L;

    /**
     * 部门ID
     */
    private Long deptId;

    /**
     * 父部门ID
     */
    private Long parentId;

    /**
     * 祖级列表
     */
    private String ancestors;

    /**
     * 部门名称
     */
    private String deptName;

    /**
     * 显示顺序
     */
    private String orderNum;

    /**
     * 负责人
     */
    private String leader;

    /**
     * 联系电话
     */
    private String phone;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 部门状态:0正常,1停用
     */
    private String status;

    /**
     * 删除标志(0代表存在 2代表删除)
     */
    private String delFlag;

    /**
     * 父部门名称
     */
    private String parentName;

    /**
     * 子部门
     */
    private List<SysDept> children = new ArrayList<SysDept>();

    //参考率
    private String referenceRate;
    //正确率
    private String correctRate;
    private String avg;


    @Override
    public String getTreeNodeId() {
        return String.valueOf(this.deptId);
    }

    @Override
    public String getParentTreeNodeId() {
        return String.valueOf(this.parentId);
    }

    @Override
    public List<SysDept> getChildTreeNodes() {
        return children;
    }

}

获取树结构 

指定层级、

指定层级之上(向上递归(包含父集所有、爷爷集所有...)(父集单独、爷爷集单独...))、

指定层级之下所有的(子集、孙子集...)

package com.ruoyi.system.test;

import com.alibaba.fastjson.JSONObject;
import com.ruoyi.system.api.domain.SysDept;
import org.apache.commons.lang3.StringUtils;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @program: isite90
 * @author: xlk
 */
public class TestUtil {


   static   String aa  = "[{\"deptName\":\"华电国际电力股份有限公司\",\"deptId\":99,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":0,\"createBy\":\"admin\",\"children\":[],\"createTime\":1635757852000,\"ancestors\":\"0\",\"status\":\"0\"},{\"deptName\":\"山东分公司\",\"leader\":\"若依\",\"deptId\":100,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":99,\"createBy\":\"admin\",\"children\":[],\"createTime\":1626869734000,\"phone\":\"15888888888\",\"ancestors\":\"0,99\",\"email\":\"ry@qq.com\",\"status\":\"0\"},{\"deptName\":\"济南分公司\",\"deptId\":413,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":99,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555443000,\"ancestors\":\"0,99\",\"status\":\"0\"},{\"deptName\":\"莱城发电厂\",\"deptId\":237,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":100,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797157000,\"ancestors\":\"0,99,100\",\"status\":\"0\"},{\"deptName\":\"安全环保部\",\"leader\":\"\",\"deptId\":239,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797382000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"生产技术部\",\"leader\":\"\",\"deptId\":240,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797392000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行调度部\",\"leader\":\"\",\"deptId\":241,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797404000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"保卫部\",\"deptId\":407,\"orderNum\":\"31\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1642491000000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"运行分场\",\"leader\":\"\",\"deptId\":242,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797419000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水分场\",\"leader\":\"\",\"deptId\":248,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797502000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"化水分场\",\"deptId\":260,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798037000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"燃料分场\",\"deptId\":269,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798213000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"燃料质检部\",\"deptId\":281,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798407000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"锅炉队\",\"deptId\":287,\"orderNum\":\"90\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798496000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"汽机队\",\"deptId\":295,\"orderNum\":\"100\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798625000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"电气队\",\"deptId\":302,\"orderNum\":\"110\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798716000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"热控队\",\"deptId\":308,\"orderNum\":\"120\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798804000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"灰检队\",\"deptId\":314,\"orderNum\":\"130\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798921000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"综合队\",\"deptId\":319,\"orderNum\":\"140\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798993000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"行政服务部\",\"deptId\":406,\"orderNum\":\"150\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1642490988000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"山东润丰电力建设工程有限公司\",\"leader\":\"张鹏\",\"deptId\":408,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"wanghongru\",\"children\":[],\"createTime\":1642493024000,\"phone\":\"19963488085\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"华电水务工程有限公司\",\"leader\":\"李路\",\"deptId\":409,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"wanghongru\",\"children\":[],\"createTime\":1642493106000,\"phone\":\"13598852863\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"江苏帝邦建设工程有限公司\",\"leader\":\"公一霏\",\"deptId\":410,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"wanghongru\",\"children\":[],\"createTime\":1642493215000,\"phone\":\"18021834444\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"监理单位\",\"leader\":\"监理单位\",\"deptId\":411,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"zhangmeng\",\"children\":[],\"createTime\":1642560312000,\"phone\":\"15512345678\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"分包\",\"leader\":\"分包\",\"deptId\":412,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"18021834444\",\"children\":[],\"createTime\":1642560403000,\"phone\":\"15512345679\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"运行甲班\",\"leader\":\"\",\"deptId\":243,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797434000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行乙班\",\"leader\":\"\",\"deptId\":244,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797451000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行丙班\",\"leader\":\"\",\"deptId\":245,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797461000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行丁班\",\"leader\":\"\",\"deptId\":246,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797472000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行戊班\",\"leader\":\"\",\"deptId\":247,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797486000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水甲班\",\"leader\":\"\",\"deptId\":249,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797515000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水乙班\",\"leader\":\"\",\"deptId\":250,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797593000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水丙班\",\"leader\":\"\",\"deptId\":251,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797603000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水丁班\",\"leader\":\"\",\"deptId\":252,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797612000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水戊班\",\"leader\":\"\",\"deptId\":253,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797622000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"水源地班\",\"leader\":\"\",\"deptId\":254,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797632000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫甲班\",\"leader\":\"\",\"deptId\":255,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797645000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫乙班\",\"leader\":\"\",\"deptId\":256,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797657000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫丙班\",\"leader\":\"\",\"deptId\":257,\"orderNum\":\"90\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797667000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫丁班\",\"leader\":\"\",\"deptId\":258,\"orderNum\":\"100\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797683000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫戊班\",\"deptId\":259,\"orderNum\":\"110\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798005000,\"ancestors\":\"0,99,100,237,248\",\"status\":\"0\"},{\"deptName\":\"化验班\",\"deptId\":261,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798091000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"制氢站\",\"deptId\":262,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798105000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行甲班\",\"deptId\":263,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798118000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行乙班\",\"deptId\":264,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798134000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行丙班\",\"deptId\":265,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798144000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行丁班\",\"deptId\":266,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798156000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行戊班\",\"deptId\":267,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798169000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"化学运行\",\"deptId\":268,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798192000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"调度室\",\"deptId\":271,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798261000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行甲班\",\"deptId\":272,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798272000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行乙班\",\"deptId\":273,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798282000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行丙班\",\"deptId\":274,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798315000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行丁班\",\"deptId\":275,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798328000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行戊班\",\"deptId\":276,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798343000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"系统班\",\"deptId\":277,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798356000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"电工班\",\"deptId\":278,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798366000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"机修班\",\"deptId\":279,\"orderNum\":\"90\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798377000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"煤管班\",\"deptId\":280,\"orderNum\":\"100\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798391000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"采样班\",\"deptId\":282,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798425000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"制样班\",\"deptId\":283,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798444000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"化验班\",\"deptId\":284,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798456000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"铁路班\",\"deptId\":285,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798469000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"计量班\",\"deptId\":286,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798481000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"磨煤机班\",\"deptId\":288,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798512000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"风机班\",\"deptId\":289,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798521000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"本体班\",\"deptId\":290,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798532000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"管阀班\",\"deptId\":291,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798544000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"焊工班\",\"deptId\":292,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798557000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"综合班\",\"deptId\":293,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798571000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"本体班\",\"deptId\":296,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798641000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"调速班\",\"deptId\":297,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798652000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"水泵班\",\"deptId\":298,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798662000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"辅机班\",\"deptId\":299,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798673000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"化检班\",\"deptId\":300,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798685000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"保洁班\",\"deptId\":301,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798698000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"继电保护班\",\"deptId\":303,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798736000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"配电班\",\"deptId\":304,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798747000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"高压试验班\",\"deptId\":305,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798759000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"通讯班\",\"deptId\":306,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798771000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"电机班\",\"deptId\":307,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798787000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"试验班\",\"deptId\":309,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798821000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"炉控班\",\"deptId\":310,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798831000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"机控班\",\"deptId\":311,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798843000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"工程师站\",\"deptId\":312,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798856000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"辅控班\",\"deptId\":313,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798867000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"脱硫班\",\"deptId\":315,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798938000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"综合班\",\"deptId\":316,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798948000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"机械班\",\"deptId\":317,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798959000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"泵班\",\"deptId\":318,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798970000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"车辆调度班\",\"deptId\":320,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799916000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"维护班\",\"deptId\":321,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799927000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"土建班\",\"deptId\":322,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799937000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"安装班\",\"deptId\":323,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799947000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"维修班\",\"deptId\":324,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799957000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"保洁班\",\"deptId\":325,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799969000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"历下发电厂\",\"deptId\":414,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":413,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555476000,\"ancestors\":\"0,99,413\",\"status\":\"0\"},{\"deptName\":\"高新研发部\",\"deptId\":415,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":413,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555503000,\"ancestors\":\"0,99,413\",\"status\":\"0\"},{\"deptName\":\"电厂001\",\"deptId\":416,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":414,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555533000,\"ancestors\":\"0,99,413,414\",\"status\":\"0\"},{\"deptName\":\"电厂002\",\"deptId\":417,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":414,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555541000,\"ancestors\":\"0,99,413,414\",\"status\":\"0\"},{\"deptName\":\"研发部001\",\"deptId\":418,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":415,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555562000,\"ancestors\":\"0,99,413,415\",\"status\":\"0\"},{\"deptName\":\"研发部002\",\"deptId\":419,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":415,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555570000,\"ancestors\":\"0,99,413,415\",\"status\":\"0\"},{\"deptName\":\"研发部003\",\"deptId\":420,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":415,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555575000,\"ancestors\":\"0,99,413,415\",\"status\":\"0\"}]";
 
  

    // ===============   向下查询 子集(子集全部、孙子集全部......)
    @org.junit.Test
    public void getChildrenTest(){
        List<SysDept> sysDepts = JSONObject.parseArray(aa, SysDept.class);
        SysDept dept = new SysDept();
        dept.setDeptId(237L);
        int count = 0;
        List<SysDept> childrenList = new ArrayList<>();
        getChildren(dept, sysDepts,childrenList);
        for (SysDept sysDept : childrenList) {
            count += 1 ;
            System.out.println(sysDept.getDeptName() + "  ========== " + sysDept.getParentId() + " ===  " + count );
        }
    }
    //获取子集(子集全部、孙子集全部......)
    public static void getChildren(SysDept dept, List<SysDept> list, List<SysDept> dataList) {
        for (SysDept sysDept : list) {
            if (sysDept.getParentId().equals(dept.getDeptId())) {
                dataList.add(sysDept);
                getChildren(sysDept, list, dataList);
            }
        }
    }

    // ===============   向上查询父集(直属父级)元素 一直到最顶级
    @org.junit.Test
    public void getParentTest(){
        List<SysDept> sysDepts = JSONObject.parseArray(aa, SysDept.class);
        SysDept dept = new SysDept();
        int count = 0;
        dept.setParentId(242L);
        List<SysDept> dataList = new ArrayList<>();
        getParent(dept, sysDepts,dataList );
        for (SysDept sysDept : dataList) {
            count += 1 ;
            System.out.println(sysDept.getDeptName() + "  ========== " + sysDept.getParentId() + " ===  " + count );
        }
    }

    public static void getParent(SysDept dept, List<SysDept> list, List<SysDept> dataList) {
        for (SysDept sysDept : list) {
            if (sysDept.getDeptId().equals(dept.getParentId())) {
                dataList.add(sysDept);
                getParent(sysDept, list, dataList);
            }
        }
    }

    //  获取 当前 层级 或者 所有父级、祖父级 ...     1 所有父集   2 当前层级
    @org.junit.Test
    public void getBrotherListTest(){
        List<SysDept> sysDepts = JSONObject.parseArray(aa, SysDept.class);
        SysDept dept = new SysDept();
        dept.setDeptId(242L);
        int count = 0;
        //   1 所有父集   2 当前层级
       int  type = 2;
        List<SysDept> parentList = getBrotherList(dept, sysDepts,type);
        for (SysDept sysDept : parentList) {
            count += 1 ;
            System.out.println(sysDept.getDeptName() + "  ========== " + sysDept.getParentId() + " ===  " + count );
        }
    }
    //获取父集 (父集所有 、爷爷集所有 ....) ; 传入某个层级  向上查询( 指定层级之上 (包含指定层级的同级)) 1 所有父集   2 当前等级
    public static List<SysDept> getBrotherList(SysDept dept, List<SysDept> list,int type) {
        List<SysDept> dataList = new ArrayList<>();
        String oldAncestors = "";
        //  通过层级id查询对应的层级码
        for (SysDept sysDept : list) {
            if( sysDept.getDeptId().equals(dept.getDeptId())){
                oldAncestors = sysDept.getAncestors();
            }
        }
        //获取目标层级码的  , 号 数量
        int oldCountStr = countStr(oldAncestors, ",");
        for (SysDept sysDept : list) {
            if(StringUtils.isNotBlank( sysDept.getAncestors())) {
                String ancestors = sysDept.getAncestors();
                int newCountStr = countStr(ancestors, ",");
                if( type == 2){
                    if(newCountStr == oldCountStr){
                        dataList.add(sysDept);
                    }
                }else if( type == 1){
                    if(newCountStr <= oldCountStr){
                        dataList.add(sysDept);
                    }
                }
            }
        }
        return dataList;
    }


    /**
     * 判断字符串中某个字符存在的个数
     * @param str1  完整字符串
     * @param str2  要统计匹配个数的字符
     * @return
     */
    public static int countStr(String str1, String str2) {
        int count=0;
        if (str1.indexOf(str2) == -1) {
            return 0;
        }
        while(str1.indexOf(str2)!=-1){
            count++;
            str1=str1.substring(str1.indexOf(str2)+str2.length());
        }
        return count;
    }






// 递归获取当前元素的所有子元素,通过 lambda 表达式遍历的

    @org.junit.Test
    public void listWithTree() {
        //1、查出所有分类
        List<SysDept> entities = JSONObject.parseArray(aa, SysDept.class);
        List<SysDept> returnData = new ArrayList<>();
        //2.1)、找到所有的一级分类
        List<SysDept> level1Menus = entities.stream().filter(entity ->
                entity.getDeptId().equals(237L)
        ).map((dept) -> {
            dept.setChildren(getChildrensss(dept, entities,returnData));
            return dept;
        }).collect(Collectors.toList());
        for (SysDept dept : returnData) {
            System.out.println(dept.getDeptName() + " ============== " + dept.getDeptId());
        }
    }
    //递归查找所有菜单的子菜单
    private List<SysDept> getChildrensss(SysDept root,List<SysDept> all, List<SysDept> returnDatas ){
        List<SysDept> children = all.stream().filter(categoryEntity -> {
            return categoryEntity.getParentId().equals(root.getDeptId());
        }).map(sysDept -> {
            //1、找到子菜单
            sysDept.setChildren(getChildrensss(sysDept,all,returnDatas));
            returnDatas.add(sysDept);
            return sysDept;
        }).collect(Collectors.toList());
        return children;
    }



}

集合转树结构

工具类接口

package com.ruoyi.system.test;

import com.alibaba.fastjson.annotation.JSONField;

import java.util.List;

/**
 * 通过id/ParentId方式
 * 实现树形结构的List转树形结构的定义接口
 *
 * @author mengqiang
 */
public interface TreeParentNode<T> {


    /**
     * 获取树形结构当前节点的标识
     * 注:不参与 json序列化
     *
     * @return
     */
    @JSONField(serialize = false)
    String getTreeNodeId();

    /**
     * 获取树形结构当前节点父节点的标识
     * 注:不参与 json序列化
     *
     * @return
     */
    @JSONField(serialize = false)
    String getParentTreeNodeId();

    /**
     * 获取树形结构当前节点的所有子节点
     * 注:不参与 json序列化
     *
     * @return
     */
    @JSONField(serialize = false)
    List<T> getChildTreeNodes();
}

转换工具类

package com.ruoyi.system.test;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * List转树形结构工具类 泛型对象必须继承
 */
public class ListToTreeUtil<T extends TreeParentNode> {

    /**
     * 获取树形结构对象
     */
    public T getTreeObject(List<T> objectList) {
        Map<String, T> objectMap = new HashMap<>();

        //第一次遍历列表,将列表转成Map
        for (T object : objectList) {
            objectMap.put(object.getTreeNodeId(), object);
        }

        T root = null;
        //第二次遍历列表,设置父子关系
        for (T object : objectList) {
            //获取当前节点对象的父节点标识
            String key = object.getParentTreeNodeId();
            if (key == null || !objectMap.containsKey(key)) {
                root = object;
            } else {
                //如果包含父节点标识的Key则获取父对象
                T parentObj = objectMap.get(key);
                //将当前节点保存入父对象子节点集合中
                parentObj.getChildTreeNodes().add(object);
            }
        }
        return root;
    }

    /**
     * @param nodes
     * @return
     */
    public List<T> getTreeListObject(List<T> nodes) {
        List<T> result = new ArrayList<T>();
        Map<String, T> nodeMap = new HashMap<>();
        //第一次遍历列表,将列表转成Map
        for (T node : nodes) {
            nodeMap.put(node.getTreeNodeId(), node);
        }
        //第二次遍历列表,设置父子关系
        for (T node : nodes) {
            //获取当前节点对象的父节点标识
            String key = node.getParentTreeNodeId();
            if (nodeMap.containsKey(key)) {
                //如果包含父节点标识的Key则获取父对象
                T parentObj = nodeMap.get(key);
                //将当前节点保存入父对象子节点集合中
                parentObj.getChildTreeNodes().add(node);
            } else {
                //父节点标识的Key不存在表示当前节点是根节点
                result.add(node);
            }
        }
        return result;
    }
}

测试代码

package com.ruoyi.system.test;

import com.alibaba.fastjson.JSON;

import java.util.List;

/**
 * @program: isite90
 * @author: xlk
 */
public class ListToTree {

    private static final String JSON_STR   = "[{\"deptName\":\"华电国际电力股份有限公司\",\"deptId\":99,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":0,\"createBy\":\"admin\",\"children\":[],\"createTime\":1635757852000,\"ancestors\":\"0\",\"status\":\"0\"},{\"deptName\":\"山东分公司\",\"leader\":\"若依\",\"deptId\":100,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":99,\"createBy\":\"admin\",\"children\":[],\"createTime\":1626869734000,\"phone\":\"15888888888\",\"ancestors\":\"0,99\",\"email\":\"ry@qq.com\",\"status\":\"0\"},{\"deptName\":\"济南分公司\",\"deptId\":413,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":99,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555443000,\"ancestors\":\"0,99\",\"status\":\"0\"},{\"deptName\":\"莱城发电厂\",\"deptId\":237,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":100,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797157000,\"ancestors\":\"0,99,100\",\"status\":\"0\"},{\"deptName\":\"安全环保部\",\"leader\":\"\",\"deptId\":239,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797382000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"生产技术部\",\"leader\":\"\",\"deptId\":240,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797392000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行调度部\",\"leader\":\"\",\"deptId\":241,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797404000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"保卫部\",\"deptId\":407,\"orderNum\":\"31\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1642491000000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"运行分场\",\"leader\":\"\",\"deptId\":242,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797419000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水分场\",\"leader\":\"\",\"deptId\":248,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797502000,\"ancestors\":\"0,99,100,237\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"化水分场\",\"deptId\":260,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798037000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"燃料分场\",\"deptId\":269,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798213000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"燃料质检部\",\"deptId\":281,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798407000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"锅炉队\",\"deptId\":287,\"orderNum\":\"90\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798496000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"汽机队\",\"deptId\":295,\"orderNum\":\"100\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798625000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"电气队\",\"deptId\":302,\"orderNum\":\"110\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798716000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"热控队\",\"deptId\":308,\"orderNum\":\"120\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798804000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"灰检队\",\"deptId\":314,\"orderNum\":\"130\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798921000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"综合队\",\"deptId\":319,\"orderNum\":\"140\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798993000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"行政服务部\",\"deptId\":406,\"orderNum\":\"150\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"admin\",\"children\":[],\"createTime\":1642490988000,\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"山东润丰电力建设工程有限公司\",\"leader\":\"张鹏\",\"deptId\":408,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"wanghongru\",\"children\":[],\"createTime\":1642493024000,\"phone\":\"19963488085\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"华电水务工程有限公司\",\"leader\":\"李路\",\"deptId\":409,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"wanghongru\",\"children\":[],\"createTime\":1642493106000,\"phone\":\"13598852863\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"江苏帝邦建设工程有限公司\",\"leader\":\"公一霏\",\"deptId\":410,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"wanghongru\",\"children\":[],\"createTime\":1642493215000,\"phone\":\"18021834444\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"监理单位\",\"leader\":\"监理单位\",\"deptId\":411,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"zhangmeng\",\"children\":[],\"createTime\":1642560312000,\"phone\":\"15512345678\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"分包\",\"leader\":\"分包\",\"deptId\":412,\"orderNum\":\"999999\",\"delFlag\":\"0\",\"params\":{},\"parentId\":237,\"createBy\":\"18021834444\",\"children\":[],\"createTime\":1642560403000,\"phone\":\"15512345679\",\"ancestors\":\"0,99,100,237\",\"status\":\"0\"},{\"deptName\":\"运行甲班\",\"leader\":\"\",\"deptId\":243,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797434000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行乙班\",\"leader\":\"\",\"deptId\":244,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797451000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行丙班\",\"leader\":\"\",\"deptId\":245,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797461000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行丁班\",\"leader\":\"\",\"deptId\":246,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797472000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"运行戊班\",\"leader\":\"\",\"deptId\":247,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":242,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797486000,\"ancestors\":\"0,99,100,237,242\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水甲班\",\"leader\":\"\",\"deptId\":249,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797515000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水乙班\",\"leader\":\"\",\"deptId\":250,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797593000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水丙班\",\"leader\":\"\",\"deptId\":251,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797603000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水丁班\",\"leader\":\"\",\"deptId\":252,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797612000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"灰水戊班\",\"leader\":\"\",\"deptId\":253,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797622000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"水源地班\",\"leader\":\"\",\"deptId\":254,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797632000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫甲班\",\"leader\":\"\",\"deptId\":255,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797645000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫乙班\",\"leader\":\"\",\"deptId\":256,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797657000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫丙班\",\"leader\":\"\",\"deptId\":257,\"orderNum\":\"90\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797667000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫丁班\",\"leader\":\"\",\"deptId\":258,\"orderNum\":\"100\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634797683000,\"ancestors\":\"0,99,100,237,248\",\"email\":\"\",\"status\":\"0\"},{\"deptName\":\"脱硫戊班\",\"deptId\":259,\"orderNum\":\"110\",\"delFlag\":\"0\",\"params\":{},\"parentId\":248,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798005000,\"ancestors\":\"0,99,100,237,248\",\"status\":\"0\"},{\"deptName\":\"化验班\",\"deptId\":261,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798091000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"制氢站\",\"deptId\":262,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798105000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行甲班\",\"deptId\":263,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798118000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行乙班\",\"deptId\":264,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798134000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行丙班\",\"deptId\":265,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798144000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行丁班\",\"deptId\":266,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798156000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"运行戊班\",\"deptId\":267,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798169000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"化学运行\",\"deptId\":268,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":260,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798192000,\"ancestors\":\"0,99,100,237,260\",\"status\":\"0\"},{\"deptName\":\"调度室\",\"deptId\":271,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798261000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行甲班\",\"deptId\":272,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798272000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行乙班\",\"deptId\":273,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798282000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行丙班\",\"deptId\":274,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798315000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行丁班\",\"deptId\":275,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798328000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"运行戊班\",\"deptId\":276,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798343000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"系统班\",\"deptId\":277,\"orderNum\":\"70\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798356000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"电工班\",\"deptId\":278,\"orderNum\":\"80\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798366000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"机修班\",\"deptId\":279,\"orderNum\":\"90\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798377000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"煤管班\",\"deptId\":280,\"orderNum\":\"100\",\"delFlag\":\"0\",\"params\":{},\"parentId\":269,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798391000,\"ancestors\":\"0,99,100,237,269\",\"status\":\"0\"},{\"deptName\":\"采样班\",\"deptId\":282,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798425000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"制样班\",\"deptId\":283,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798444000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"化验班\",\"deptId\":284,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798456000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"铁路班\",\"deptId\":285,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798469000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"计量班\",\"deptId\":286,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":281,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798481000,\"ancestors\":\"0,99,100,237,281\",\"status\":\"0\"},{\"deptName\":\"磨煤机班\",\"deptId\":288,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798512000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"风机班\",\"deptId\":289,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798521000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"本体班\",\"deptId\":290,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798532000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"管阀班\",\"deptId\":291,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798544000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"焊工班\",\"deptId\":292,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798557000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"综合班\",\"deptId\":293,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":287,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798571000,\"ancestors\":\"0,99,100,237,287\",\"status\":\"0\"},{\"deptName\":\"本体班\",\"deptId\":296,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798641000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"调速班\",\"deptId\":297,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798652000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"水泵班\",\"deptId\":298,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798662000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"辅机班\",\"deptId\":299,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798673000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"化检班\",\"deptId\":300,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798685000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"保洁班\",\"deptId\":301,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":295,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798698000,\"ancestors\":\"0,99,100,237,295\",\"status\":\"0\"},{\"deptName\":\"继电保护班\",\"deptId\":303,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798736000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"配电班\",\"deptId\":304,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798747000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"高压试验班\",\"deptId\":305,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798759000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"通讯班\",\"deptId\":306,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798771000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"电机班\",\"deptId\":307,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":302,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798787000,\"ancestors\":\"0,99,100,237,302\",\"status\":\"0\"},{\"deptName\":\"试验班\",\"deptId\":309,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798821000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"炉控班\",\"deptId\":310,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798831000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"机控班\",\"deptId\":311,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798843000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"工程师站\",\"deptId\":312,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798856000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"辅控班\",\"deptId\":313,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":308,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798867000,\"ancestors\":\"0,99,100,237,308\",\"status\":\"0\"},{\"deptName\":\"脱硫班\",\"deptId\":315,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798938000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"综合班\",\"deptId\":316,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798948000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"机械班\",\"deptId\":317,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798959000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"泵班\",\"deptId\":318,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":314,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634798970000,\"ancestors\":\"0,99,100,237,314\",\"status\":\"0\"},{\"deptName\":\"车辆调度班\",\"deptId\":320,\"orderNum\":\"10\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799916000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"维护班\",\"deptId\":321,\"orderNum\":\"20\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799927000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"土建班\",\"deptId\":322,\"orderNum\":\"30\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799937000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"安装班\",\"deptId\":323,\"orderNum\":\"40\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799947000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"维修班\",\"deptId\":324,\"orderNum\":\"50\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799957000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"保洁班\",\"deptId\":325,\"orderNum\":\"60\",\"delFlag\":\"0\",\"params\":{},\"parentId\":319,\"createBy\":\"admin\",\"children\":[],\"createTime\":1634799969000,\"ancestors\":\"0,99,100,237,319\",\"status\":\"0\"},{\"deptName\":\"历下发电厂\",\"deptId\":414,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":413,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555476000,\"ancestors\":\"0,99,413\",\"status\":\"0\"},{\"deptName\":\"高新研发部\",\"deptId\":415,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":413,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555503000,\"ancestors\":\"0,99,413\",\"status\":\"0\"},{\"deptName\":\"电厂001\",\"deptId\":416,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":414,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555533000,\"ancestors\":\"0,99,413,414\",\"status\":\"0\"},{\"deptName\":\"电厂002\",\"deptId\":417,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":414,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555541000,\"ancestors\":\"0,99,413,414\",\"status\":\"0\"},{\"deptName\":\"研发部001\",\"deptId\":418,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":415,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555562000,\"ancestors\":\"0,99,413,415\",\"status\":\"0\"},{\"deptName\":\"研发部002\",\"deptId\":419,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":415,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555570000,\"ancestors\":\"0,99,413,415\",\"status\":\"0\"},{\"deptName\":\"研发部003\",\"deptId\":420,\"orderNum\":\"0\",\"delFlag\":\"0\",\"params\":{},\"parentId\":415,\"createBy\":\"admin\",\"children\":[],\"createTime\":1644555575000,\"ancestors\":\"0,99,413,415\",\"status\":\"0\"}]";

    public static void main(String[] args) {
        List<SysDept> deptList = JSON.parseArray(JSON_STR, SysDept.class);
        ListToTreeUtil<SysDept> menuList = new ListToTreeUtil<SysDept>();
        List<SysDept> treeListObject = menuList.getTreeListObject(deptList);
        System.out.println(JSON.toJSONString(treeListObject));
    }


}

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
假设我们有一个树形结构的节点类,具有以下属性: ```java class TreeNode { int id; int parentId; String name; List<TreeNode> children; } ``` 其中,id 是节点的唯一标识符,parentId 是节点的 id,name 是节点的名称,children 是子节点列表。 现在我们需要对这个树进行归处理,给每个节点设置一个 level 属性表示节点的层级,并按照层级排序。 可以通过以下归方法实现: ```java public static void setLevelAndSort(List<TreeNode> nodes, int level) { if (nodes == null || nodes.isEmpty()) { return; } for (TreeNode node : nodes) { node.level = level; setLevelAndSort(node.children, level + 1); } Collections.sort(nodes, new Comparator<TreeNode>() { @Override public int compare(TreeNode o1, TreeNode o2) { return o1.id - o2.id; } }); } ``` 这个方法接受两个参数:节点列表和当前层级。首先遍历节点列表,给每个节点设置 level 属性,然后归处理子节点列表,并将当前层级加一。最后,对当前节点列表按照 id 排序。 示例代码如下: ```java public static void main(String[] args) { List<TreeNode> nodes = new ArrayList<>(); nodes.add(new TreeNode(1, 0, "A", new ArrayList<>())); nodes.add(new TreeNode(2, 1, "B", new ArrayList<>())); nodes.add(new TreeNode(3, 1, "C", new ArrayList<>())); nodes.add(new TreeNode(4, 2, "D", new ArrayList<>())); nodes.add(new TreeNode(5, 2, "E", new ArrayList<>())); nodes.add(new TreeNode(6, 3, "F", new ArrayList<>())); nodes.add(new TreeNode(7, 3, "G", new ArrayList<>())); setLevelAndSort(nodes, 0); for (TreeNode node : nodes) { System.out.println(node.id + " " + node.parentId + " " + node.name + " " + node.level); } } ``` 输出结果如下: ``` 1 0 A 0 2 1 B 1 4 2 D 2 5 2 E 2 3 1 C 1 6 3 F 2 7 3 G 2 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值