菜单
一、菜单结构
菜单分为 菜单
和 菜单项
,可以将菜单视为一个菜单项集,一个菜单可以有多个菜单项。
二、菜单表结构
1.菜单表
/**
* 菜单表
*/
object Menus : Table("menu") {
/** 菜单 ID **/
val menuId = long("menu_id").autoIncrement()
/** 是否是主菜单 **/
val isMain = bool("is_main")
/** 菜单名 **/
val displayName = varchar("display_name", 128, "utf8mb4_general_ci").uniqueIndex()
/** 创建时间 **/
val createTime = long("create_time")
/** 最后修改时间 **/
val lastModifyTime = long("last_modify_time").nullable()
override val primaryKey = PrimaryKey(menuId)
}
2.菜单项表
/**
* 菜单项表
*/
object MenuItems : Table("menu_item") {
/** 菜单项 ID **/
val menuItemId = long("menu_item_id").autoIncrement()
/** 菜单项名称 **/
val displayName = varchar("display_name", 128)
/** 菜单项地址 **/
val href = varchar("href", 512)
/** 菜单项打开方式 **/
val target = enumerationByName<MenuItemTarget>("target", 12)
/** 父菜单 ID **/
val parentMenuId = long("parent_menuId")
/** 父菜单项 ID **/
val parentMenuItemId = long("parent_menu_item_id").nullable()
/** 菜单项排序索引 **/
val index = integer("index")
/** 创建时间 **/
val createTime = long("create_time")
/** 最后修改时间 **/
val lastModifyTime = long("last_modify_time").nullable()
override val primaryKey = PrimaryKey(menuItemId)
}
三、菜单枚举类
1.打开方式枚举类
/**
* 菜单项打开方式枚举类
*/
enum class MenuItemTarget {
/** 新窗口打开(默认) */
BLANK,
/** 当前窗口打开 */
SELF,
/** 父窗口打开 */
PARENT,
/** 顶级窗口打开 */
TOP
}
最后修改时间: 3 个月前
一、菜单结构
二、菜单表结构
1.菜单表
2.菜单项表
三、菜单枚举类
1.打开方式枚举类