| /** | 
|  * Copyright (c) 2018 人人开源 All rights reserved. | 
|  * | 
|  * https://www.renren.io | 
|  * | 
|  * 版权所有,侵权必究! | 
|  */ | 
|   | 
| package com.zt.modules.sys.model; | 
|   | 
| import com.baomidou.mybatisplus.annotation.TableField; | 
| import com.baomidou.mybatisplus.annotation.TableName; | 
| import com.zt.common.entity.PlatformEntity; | 
| import com.zt.common.entity.TreeNode; | 
| import com.zt.common.validator.group.DefaultGroup; | 
| import io.swagger.annotations.ApiModel; | 
| import io.swagger.annotations.ApiModelProperty; | 
| import lombok.Data; | 
| import lombok.EqualsAndHashCode; | 
| import org.hibernate.validator.constraints.Range; | 
|   | 
| import javax.validation.constraints.Min; | 
| import javax.validation.constraints.NotBlank; | 
| import javax.validation.constraints.NotNull; | 
| import java.util.ArrayList; | 
| import java.util.List; | 
|   | 
| /** | 
|  * 菜单 | 
|  * | 
|  * @author hehz | 
|  */ | 
| @Data | 
| @ApiModel(value = "菜单") | 
| @EqualsAndHashCode(callSuper=false) | 
| @TableName("SYS_MENU") | 
| public class SysMenu extends PlatformEntity implements TreeNode<SysMenu> { | 
|     private static final long serialVersionUID = 1L; | 
|   | 
|     @ApiModelProperty(value = "上级ID") | 
|     @NotNull(message="上级ID,不能为空", groups = DefaultGroup.class) | 
|     private Long pid; | 
|   | 
|   | 
|     @ApiModelProperty(value = "菜单名称") | 
|     @NotBlank(message="菜单名称不能为空", groups = DefaultGroup.class) | 
|     private String name; | 
|   | 
|     @ApiModelProperty(value = "菜单URL") | 
|     private String url; | 
|   | 
|     @ApiModelProperty(value = "类型   0:菜单   1:按钮  2 系统  3 平台") | 
|     @Range(min=0, max=3, message = "菜单类型取值范围0~3", groups = DefaultGroup.class) | 
|     private Integer type; | 
|   | 
|     @ApiModelProperty(value = "是否显示菜单") | 
|     private Integer showMenu; | 
|   | 
|     @ApiModelProperty(value = "是否刷新页面") | 
|     private Integer isRefresh; | 
|   | 
|     @ApiModelProperty(value = "菜单参数") | 
|     private String params; | 
|   | 
|     @ApiModelProperty(value = "菜单图标") | 
|     private String icon; | 
|   | 
|     @ApiModelProperty(value = "授权(多个用逗号分隔,如:sys:user:list,sys:user)") | 
|     private String permissions; | 
|   | 
|     @ApiModelProperty(value = "排序") | 
|     @Min(value = 0, message = "排序值不能小于0", groups = DefaultGroup.class) | 
|     private Integer sort; | 
|   | 
|     @ApiModelProperty(value = "上级菜单名称") | 
|     @TableField(exist = false) | 
|     private String parentName; | 
|   | 
|     @ApiModelProperty(value = "子菜单") | 
|     @TableField(exist = false) | 
|     private List<SysMenu> children = new ArrayList<>(); | 
|   | 
|     @ApiModelProperty(value = "备注") | 
|     private String remark; | 
|   | 
|     @ApiModelProperty(value = "菜单图标") | 
|     @TableField(exist = false) | 
|     private Integer iconNo; | 
| } |