| package com.xzx.gc.entity;  | 
| import com.xzx.gc.annotation.Dict;  | 
| import com.xzx.gc.util.ValidateConfig;  | 
| import com.xzx.gc.util.enums.CoreDictType;  | 
| import lombok.Data;  | 
|   | 
| import javax.persistence.Id;  | 
| import javax.persistence.Table;  | 
| import javax.validation.constraints.NotBlank;  | 
| import javax.validation.constraints.NotNull;  | 
| import java.util.Date;  | 
|   | 
| /**  | 
|  * 系统菜单  | 
|  */  | 
| @Table(name = "core_menu")  | 
| @Data  | 
| public class CoreMenu extends BaseEntity {  | 
|   | 
|     public static final String TYPE_SYSTEM = "MENU_S";  | 
|     public static final String TYPE_NAV = "MENU_N";  | 
|     public static final String TYPE_MENUITEM = "MENU_M";  | 
|   | 
|     @NotNull(message = "ID不能为空", groups = ValidateConfig.UPDATE.class)  | 
|     @Id  | 
|     private Long id;  | 
|     private Date createTime;  | 
|     @NotBlank(message = "菜单代码不能为空", groups = ValidateConfig.ADD.class)  | 
|     private String code;  | 
|   | 
|     //功能id  | 
|     private Long functionId;  | 
|   | 
|     //类型  /*1 系统 2 导航 3 菜单项(与功能点有关)*/  | 
|     @NotNull(message = "菜单类型不能为空")  | 
|     @Dict(type = CoreDictType.MENU_TYPE)  | 
|     private String type;  | 
|   | 
|     //菜单名称  | 
|     @NotBlank(message = "菜单名称不能为空")  | 
|     private String name;  | 
|   | 
|     //上层菜单id  | 
|   | 
|     @NotNull(message = "上层菜单不能为空")  | 
|     private Long parentMenuId;  | 
|     //排序  | 
|     @NotNull(message = "排序不能为空")  | 
|     private Integer seq;  | 
|   | 
|     //图标  | 
|     private String icon;  | 
|   | 
|     public CoreMenu() {  | 
|     }  | 
|       | 
| }  |