2021-09-28 11:47:19 +08:00
|
|
|
|
package model
|
|
|
|
|
|
|
|
|
|
type SysMenu struct {
|
|
|
|
|
Model
|
|
|
|
|
SysMenuBasic
|
2022-01-07 16:12:43 +08:00
|
|
|
|
Auth string `gorm:"column:auth;type:varchar(100);default:'';comment:权限/路由" json:"auth"`
|
2021-09-28 11:47:19 +08:00
|
|
|
|
Sort int `gorm:"column:sort;type:tinyint(3);default:0;comment:排序,数值越大,优先排序" json:"sort"`
|
2021-12-03 14:18:06 +08:00
|
|
|
|
Remark string `gorm:"column:remark;type:varchar(255);default:'';comment:菜单备注" json:"remark"`
|
2021-09-28 11:47:19 +08:00
|
|
|
|
Status SysMenuStatus `gorm:"column:status;type:tinyint(1);default:1;comment:状态" json:"status"`
|
|
|
|
|
ModelDeleted
|
|
|
|
|
ModelAt
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type SysMenuBasic struct {
|
2022-01-06 17:11:57 +08:00
|
|
|
|
ParentID uint64 `gorm:"column:parent_id;type:int;default:0;comment:父级ID" json:"-"`
|
|
|
|
|
Name string `gorm:"column:name;type:varchar(30);default:'';comment:菜单名" json:"name"`
|
|
|
|
|
Kind SysMenuKind `gorm:"column:kind;type:tinyint(1);default:1;comment:类型(1:目录,2:菜单,3:事件)" json:"kind"`
|
|
|
|
|
Link string `gorm:"column:link;type:varchar(80);default:'';comment:菜单链接" json:"-"`
|
|
|
|
|
Component string `gorm:"column:component;type:varchar(80);default:'';comment:组件标识" json:"component"`
|
|
|
|
|
Icon string `gorm:"column:icon;type:varchar(50);default:'';comment:菜单图标" json:"icon"`
|
|
|
|
|
IsCache SysMenuCacheStatus `gorm:"column:is_cache;type:tinyint(1);default:0;comment:缓存(0:不缓存,1:缓存)" json:"is_cache"`
|
|
|
|
|
IsHidden SysMenuHiddenStatus `gorm:"column:is_hidden;type:tinyint(1);default:0;comment:隐藏(0:不隐藏,1:隐藏)" json:"-"`
|
2021-09-28 11:47:19 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// SysMenuKind 菜单类型
|
|
|
|
|
type SysMenuKind int
|
|
|
|
|
|
|
|
|
|
const (
|
|
|
|
|
// SysMenuKindForCatalogue 目录
|
|
|
|
|
SysMenuKindForCatalogue SysMenuKind = iota + 1
|
|
|
|
|
// SysMenuKindForMenu 菜单
|
|
|
|
|
SysMenuKindForMenu
|
2022-01-06 17:11:57 +08:00
|
|
|
|
// SysMenuKindForEvent 事件
|
|
|
|
|
SysMenuKindForEvent
|
2021-09-28 11:47:19 +08:00
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// SysMenuStatus 菜单状态
|
|
|
|
|
type SysMenuStatus int
|
|
|
|
|
|
|
|
|
|
const (
|
|
|
|
|
// SysMenuStatusForNormal 正常
|
|
|
|
|
SysMenuStatusForNormal SysMenuStatus = iota + 1
|
|
|
|
|
// SysMenuStatusForDisable 禁用
|
|
|
|
|
SysMenuStatusForDisable
|
|
|
|
|
)
|
|
|
|
|
|
2022-01-06 17:11:57 +08:00
|
|
|
|
type SysMenuHiddenStatus int
|
|
|
|
|
|
|
|
|
|
const (
|
|
|
|
|
SysMenuHiddenStatusForNot SysMenuHiddenStatus = iota
|
|
|
|
|
SysMenuHiddenStatusForYes
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
type SysMenuCacheStatus int
|
|
|
|
|
|
|
|
|
|
const (
|
|
|
|
|
SysMenuCacheStatusForNot SysMenuCacheStatus = iota
|
|
|
|
|
SysMenuCacheStatusForYes
|
|
|
|
|
)
|
|
|
|
|
|
2021-09-28 11:47:19 +08:00
|
|
|
|
func (m *SysMenu) TableName() string {
|
|
|
|
|
return "sys_menu"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func NewSysMenu() *SysMenu {
|
|
|
|
|
return &SysMenu{}
|
|
|
|
|
}
|