package com.dsh.upms.entity;
|
|
import java.io.Serializable;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
import cn.mb.cloud.common.data.entity.BaseEntity;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.dsh.utils.login.Tree;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
|
/**
|
* <p>
|
* 权限菜单
|
* </p>
|
*
|
* @author zhao
|
* @since 2022-05-16
|
*/
|
@ApiModel("权限菜单")
|
@Data
|
@TableName("sys_menu")
|
public class SysMenu extends BaseEntity<SysMenu> {
|
|
private static final long serialVersionUID = 1L;
|
|
/**
|
* 菜单名称
|
*/
|
@ApiModelProperty("菜单名称")
|
private String name;
|
/**
|
* 菜单权限标识
|
*/
|
@ApiModelProperty("菜单权限标识")
|
private String permission;
|
/**
|
* 前端URL
|
*/
|
@ApiModelProperty("前端URL")
|
private String path;
|
/**
|
* 父菜单ID
|
*/
|
@ApiModelProperty("父菜单ID")
|
@TableField("parent_id")
|
private Long parentId;
|
/**
|
* 图标
|
*/
|
@ApiModelProperty("图标")
|
private String icon;
|
/**
|
* VUE页面
|
*/
|
@ApiModelProperty("VUE页面")
|
private String component;
|
/**
|
* 排序值
|
*/
|
@ApiModelProperty("排序值")
|
private Integer sort;
|
/**
|
* 0-开启,1- 关闭
|
*/
|
@ApiModelProperty("0-开启,1- 关闭")
|
@TableField("keep_alive")
|
private String keepAlive;
|
/**
|
* 菜单类型 (0菜单 1按钮)
|
*/
|
@ApiModelProperty("菜单类型 (0菜单 1按钮)")
|
private String type;
|
/**
|
* 是否启用
|
*/
|
@ApiModelProperty("是否启用")
|
private Boolean enable;
|
/**
|
* 租户ID
|
*/
|
@ApiModelProperty("租户ID")
|
@TableField("tenant_id")
|
private Integer tenantId;
|
/**
|
* 创建人
|
*/
|
@ApiModelProperty("创建人")
|
@TableField("create_user")
|
private String createUser;
|
/**
|
* 更新人
|
*/
|
@ApiModelProperty("更新人")
|
@TableField("update_user")
|
private String updateUser;
|
/**
|
* 重定向地址
|
*/
|
@ApiModelProperty("重定向地址")
|
private String redirect;
|
/**
|
* 是否是叶子节点
|
*/
|
@ApiModelProperty("是否是叶子节点")
|
@TableField("if_leaf")
|
private Integer ifLeaf;
|
|
/**
|
* 子级
|
*/
|
@ApiModelProperty("子级")
|
@TableField(exist = false)
|
private List<SysMenu> children = new ArrayList<>();
|
|
public static void initTree(List<SysMenu> list, Tree rootTree) {
|
for (SysMenu item : list) {
|
String parentId = item.getParentId() == null ? "-1L" : item.getParentId().toString();
|
if (parentId.equals(rootTree.getKey())) {
|
Tree tree = new Tree(item.getId().toString(), item.getName(), Tree.TREE_NODE_STATE_DEFAULT);
|
tree.setChecked(false);
|
tree.setPermission(item.getPermission());
|
tree.setPath(item.getPath());
|
tree.setType(item.getType());
|
tree.setIcon(item.getIcon());
|
tree.setLable(item.getName());
|
tree.setName(item.getName()) ;
|
tree.setParentId(item.getParentId());
|
tree.setEnable(item.getEnable());
|
rootTree.getChildren().add(tree);
|
initTree(list, tree);
|
}
|
}
|
}
|
}
|