refactor: reorganize modules and add Linux build tooling
This commit is contained in:
35
module/base/mgt/internal/models/permission.go
Normal file
35
module/base/mgt/internal/models/permission.go
Normal file
@@ -0,0 +1,35 @@
|
||||
package models
|
||||
|
||||
import coreTypes "git.apinb.com/bsm-sdk/core/types"
|
||||
|
||||
// 权限模型
|
||||
type MgtPermission struct {
|
||||
coreTypes.Std_IICUDS // 标准字段
|
||||
Title string `gorm:"column:title;type:varchar(255);" json:"title"` // 权限名称
|
||||
TitleEn string `gorm:"column:title_en;type:varchar(255);" json:"title_en"` // 权限名称
|
||||
Code string `gorm:"column:code;type:varchar(255);uniqueIndex:idx_mgt_pmn_app_code" json:"code"` // 权限标识,与 app_id 联合唯一
|
||||
Description string `gorm:"column:description;type:text" json:"description"` // 权限描述
|
||||
Appid uint `gorm:"column:app_id;uniqueIndex:idx_mgt_pmn_app_code" json:"app_id"` // 应用ID
|
||||
ParentID uint `gorm:"column:parent_id;default:0" json:"parent_id" ` // 父级ID
|
||||
MenuPath string `gorm:"column:menu_path;" json:"menu_path"` // 菜单路径
|
||||
MenuIcon string `gorm:"column:menu_icon;" json:"menu_icon"` // 菜单图标
|
||||
SortKey int8 `gorm:"column:sort_key;default:0;" json:"sort_key"` // 排序键
|
||||
Type int8 `gorm:"column:type;comment:1=菜单 2=按钮" json:"type"` // 类型 1=菜单 2=按钮
|
||||
Component string `gorm:"column:component;type:varchar(255)" json:"component"` // 组件路径 非必填
|
||||
IsWebPage bool `gorm:"column:is_web_page;default:0" json:"is_web_page"`
|
||||
IsNewTab bool `gorm:"column:is_new_tab;default:0" json:"is_new_tab"` // 是否在新标签页打开 非必填
|
||||
IsFull bool `gorm:"column:is_full;default:0" json:"is_full"` // 单独页面,不包含菜单,默认为 false
|
||||
HideMenu bool `gorm:"column:hide_menu;default:0" json:"hide_menu"` // 隐藏菜单栏的菜单,默认为 false
|
||||
WebUrl string `gorm:"column:web_url;type:varchar(500)" json:"web_url"` // 网页地址
|
||||
Users []MgtUser `gorm:"many2many:mgt_link_user_pmn;foreignKey:ID;joinForeignKey:pmn_id;References:ID;joinReferences:user_id" json:"users,omitempty"` // 权限关联的用户
|
||||
Roles []MgtRole `gorm:"many2many:mgt_link_role_pmn;foreignKey:ID;joinForeignKey:pmn_id;References:ID;joinReferences:role_id" json:"roles,omitempty"` // 权限关联的角色
|
||||
Departments []MgtDepartment `gorm:"many2many:mgt_link_dpt_pmn;foreignKey:ID;joinForeignKey:pmn_id;References:ID;joinReferences:dpt_id" json:"departments,omitempty"` // 关联的部门(部门替代用户组)
|
||||
Applications MgtApplication `gorm:"foreignKey:Appid;references:ID" json:"applications,omitempty"`
|
||||
Children []MgtPermission `gorm:"foreignKey:ParentID;references:ID" json:"children,omitempty"` // 子集
|
||||
}
|
||||
|
||||
func (MgtPermission) TableName() string { return "mgt_permission" }
|
||||
|
||||
// func init() {
|
||||
// database.AppendMigrate(&Permission{})
|
||||
// }
|
||||
Reference in New Issue
Block a user