Files

78 lines
2.5 KiB
Go
Raw Normal View History

2021-09-28 11:47:19 +08:00
package model
type SysMenu struct {
Model
SysMenuBasic
2022-01-06 17:11:57 +08:00
Auth SysMenuAuth `gorm:"column:auth;type:tinyint(1);default:0;comment:查看权限0通用1超管" json:"-"`
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
)
// SysMenuAuth 菜单权限
type SysMenuAuth int
const (
// SysMenuAuthForOrdinary 普通权限
SysMenuAuthForOrdinary SysMenuAuth = iota
// SysMenuAuthForSystem 系统权限
SysMenuAuthForSystem
)
// 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{}
}