57 lines
1.3 KiB
Java
57 lines
1.3 KiB
Java
package com.muyu.system.domain.vo;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
|
import com.muyu.common.system.domain.SysDept;
|
|
import com.muyu.system.domain.SysMenu;
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.Builder;
|
|
import lombok.Data;
|
|
import lombok.NoArgsConstructor;
|
|
|
|
import java.io.Serializable;
|
|
import java.util.List;
|
|
import java.util.stream.Collectors;
|
|
|
|
/**
|
|
* Treeselect树结构实体类
|
|
*
|
|
* @author muyu
|
|
*/
|
|
@Data
|
|
@Builder
|
|
@NoArgsConstructor
|
|
@AllArgsConstructor
|
|
public class TreeSelect implements Serializable {
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
/**
|
|
* 节点ID
|
|
*/
|
|
private Long id;
|
|
|
|
/**
|
|
* 节点名称
|
|
*/
|
|
private String label;
|
|
|
|
/**
|
|
* 子节点
|
|
*/
|
|
@JsonInclude(JsonInclude.Include.NON_EMPTY)
|
|
private List<TreeSelect> children;
|
|
|
|
|
|
public TreeSelect (SysDept dept) {
|
|
this.id = dept.getDeptId();
|
|
this.label = dept.getDeptName();
|
|
this.children = dept.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList());
|
|
}
|
|
|
|
public TreeSelect (SysMenu menu) {
|
|
this.id = menu.getMenuId();
|
|
this.label = menu.getMenuName();
|
|
this.children = menu.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList());
|
|
}
|
|
|
|
}
|