package com.ld.igds.data;
|
|
import lombok.Data;
|
|
import java.util.Comparator;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.stream.Collectors;
|
|
/**
|
* @author vince.xu
|
* @Title: LayTree
|
* @ProjectName ibms
|
* @Description: 对layui树状数据封装
|
* @date 2019/5/20 002016:18
|
*/
|
@Data
|
public class LayTree {
|
/**
|
* 编号
|
*/
|
private String id;
|
|
/**
|
* 父编号
|
*/
|
private String parentId;
|
/**
|
* 名称
|
*/
|
private String name;
|
/**
|
* 顺序
|
*/
|
private Integer sort;
|
/**
|
* 是否默认展开
|
*/
|
private boolean spread = false;
|
|
/**
|
* 子数据
|
*/
|
private List<LayTree> children;
|
|
|
@SuppressWarnings("unused")
|
private static void forEach(Map<String, List<LayTree>> collect, LayTree treeMenuNode) {
|
List<LayTree> treeMenuNodes = collect.get(treeMenuNode.getId());
|
if(collect.get(treeMenuNode.getId())!=null){
|
//排序
|
treeMenuNodes.sort((u1, u2) -> u1.getSort().compareTo(u2.getSort()));
|
treeMenuNodes.stream().sorted(Comparator.comparing(LayTree::getSort)).collect(Collectors.toList());
|
treeMenuNode.setChildren(treeMenuNodes);
|
treeMenuNode.getChildren().forEach(t->{
|
forEach(collect,t);
|
});
|
}
|
}
|
}
|