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() { } }