Documentation ¶
Index ¶
- func AttachmentUrl(id string) string
- func ClearRulesData() error
- func FormatStructToArrayMap(data any) []map[string]any
- func FormatStructToMap(data any) map[string]any
- func GetConfig(key string, typ ...string) any
- func NewAdmin() *gorm.DB
- func NewAttachment() *gorm.DB
- func NewAuthGroup() *gorm.DB
- func NewAuthGroupAccess() *gorm.DB
- func NewAuthRule() *gorm.DB
- func NewAuthRuleAccess() *gorm.DB
- func NewDB() *gorm.DB
- func NewRules() *gorm.DB
- type Admin
- type Attachment
- type AuthGroup
- type AuthGroupAccess
- type AuthRule
- type AuthRuleAccess
- type Rules
- type Session
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FormatStructToArrayMap ¶
格式化获取的数据为 array_map
func NewAttachment ¶
func NewAuthGroup ¶
func NewAuthGroupAccess ¶
func NewAuthRule ¶
func NewAuthRuleAccess ¶
Types ¶
type Admin ¶
type Admin struct { ID string `gorm:"column:id;type:char(32);not null;primaryKey;" json:"id"` Name string `gorm:"column:name;not null;type:varchar(30);" json:"name"` Password string `gorm:"column:password;type:char(32);" json:"password"` PasswordSalt string `gorm:"column:password_salt;type:char(6);" json:"password_salt"` Nickname string `gorm:"column:nickname;type:varchar(150);" json:"nickname"` Email string `gorm:"column:email;type:varchar(100);" json:"email"` Avatar string `gorm:"column:avatar;type:char(32);" json:"avatar"` Introduce string `gorm:"column:introduce;type:mediumtext;" json:"introduce"` IsRoot int `gorm:"column:is_root;type:tinyint(1);" json:"is_root"` Status int `gorm:"column:status;not null;type:tinyint(1);" json:"status"` RefreshTime int `gorm:"column:refresh_time;type:int(10);" json:"refresh_time"` RefreshIp string `gorm:"column:refresh_ip;type:varchar(50);" json:"refresh_ip"` LastActive int `gorm:"column:last_active;type:int(10);" json:"last_active"` LastIp string `gorm:"column:last_ip;type:varchar(50);" json:"last_ip"` UpdateTime int `gorm:"column:update_time;type:int(10);" json:"update_time"` UpdateIp string `gorm:"column:update_ip;type:varchar(50);" json:"update_ip"` AddTime int `gorm:"column:add_time;type:int(10);" json:"add_time"` AddIp string `gorm:"column:add_ip;type:varchar(50);" json:"add_ip"` Groups []AuthGroup `gorm:"many2many:auth_group_access;foreignKey:ID;joinForeignKey:AdminId;References:ID;JoinReferences:GroupId"` Attachments []Attachment `gorm:"polymorphic:Owner;polymorphicValue:admin;"` GroupAccesses []AuthGroupAccess `gorm:"foreignKey:AdminId;references:ID"` }
type Attachment ¶
type Attachment struct { ID string `gorm:"column:id;size:32;not null;index;" json:"id"` OwnerType string `gorm:"column:owner_type;size:50;not null;" json:"owner_type"` OwnerID string `gorm:"column:owner_id;size:32;" json:"owner_id"` Name string `gorm:"column:name;size:50;" json:"name"` Path string `gorm:"column:path;size:255;" json:"path"` Mime string `gorm:"column:mime;size:100;" json:"mime"` Extension string `gorm:"column:extension;size:10;" json:"extension"` Size string `gorm:"column:size;size:100;" json:"size"` Md5 string `gorm:"column:md5;size:32;" json:"md5"` Sha1 string `gorm:"column:sha1;size:40;" json:"sha1"` Disk string `gorm:"column:disk;size:16;" json:"disk"` Status int `gorm:"column:status;not null;size:1;" json:"status"` UpdateTime int `gorm:"column:update_time;size:10;" json:"update_time"` CreateTime int `gorm:"column:create_time;size:10;" json:"create_time"` AddTime int `gorm:"column:add_time;size:10;" json:"add_time"` AddIp string `gorm:"column:add_ip;size:50;" json:"add_ip"` }
附件
func (*Attachment) BeforeCreate ¶
func (this *Attachment) BeforeCreate(tx *gorm.DB) error
type AuthGroup ¶
type AuthGroup struct { ID string `gorm:"column:id;type:char(32);not null;primaryKey;" json:"id"` Parentid string `gorm:"column:parentid;type:char(32);not null;" json:"parentid"` Title string `gorm:"column:title;type:varchar(50);" json:"title"` Description string `gorm:"column:description;type:varchar(80);" json:"description"` Listorder string `gorm:"column:listorder;type:int(10);" json:"listorder"` Status int `gorm:"column:status;not null;type:tinyint(1);" json:"status"` UpdateTime int `gorm:"column:update_time;type:int(10);" json:"update_time"` UpdateIp string `gorm:"column:update_ip;type:varchar(50);" json:"update_ip"` AddTime int `gorm:"column:add_time;type:int(10);" json:"add_time"` AddIp string `gorm:"column:add_ip;type:varchar(50);" json:"add_ip"` Admins []Admin `gorm:"many2many:auth_group_access;foreignKey:ID;joinForeignKey:GroupId;References:ID;JoinReferences:AdminId"` Rules []AuthRule `gorm:"many2many:auth_rule_access;foreignKey:ID;joinForeignKey:GroupId;References:ID;JoinReferences:RuleId"` RuleAccesses []AuthRuleAccess `gorm:"foreignKey:GroupId;references:ID"` GroupAccesses []AuthGroupAccess `gorm:"foreignKey:GroupId;references:ID"` }
权限分组
type AuthGroupAccess ¶
type AuthGroupAccess struct { AdminId string `gorm:"column:admin_id;type:char(32);not null;index;" json:"admin_id"` GroupId string `gorm:"column:group_id;type:char(32);not null;index;" json:"group_id"` Admin Admin `gorm:"foreignKey:ID;references:AdminId"` Group AuthGroup `gorm:"foreignKey:ID;references:GroupId"` }
管理员管理分组
type AuthRule ¶
type AuthRule struct { ID string `gorm:"column:id;size:32;not null;index;" json:"id"` Parentid string `gorm:"column:parentid;size:32;not null;" json:"parentid"` Title string `gorm:"column:title;not null;size:50;" json:"title"` Url string `gorm:"column:url;not null;" json:"url"` Method string `gorm:"column:method;not null;size:10;" json:"method"` Slug string `gorm:"column:slug;not null;size:50;" json:"slug"` Description string `gorm:"column:description;" json:"description"` Listorder string `gorm:"column:listorder;size:10;" json:"listorder"` Status int `gorm:"column:status;not null;" json:"status"` UpdateTime int `gorm:"column:update_time;size:10;" json:"update_time"` UpdateIp string `gorm:"column:update_ip;size:50;" json:"update_ip"` AddTime int `gorm:"column:add_time;size:10;" json:"add_time"` AddIp string `gorm:"column:add_ip;size:50;" json:"add_ip"` RuleAccesses []AuthRuleAccess `gorm:"foreignKey:RuleId;references:ID"` }
菜单权限
type AuthRuleAccess ¶
type AuthRuleAccess struct { GroupId string `gorm:"column:group_id;size:32;not null;index;" json:"group_id"` RuleId string `gorm:"column:rule_id;size:32;not null;index;" json:"rule_id"` Rule AuthRule `gorm:"foreignKey:ID;references:RuleId"` Group AuthGroup `gorm:"foreignKey:ID;references:GroupId"` }
分组关联菜单权限
type Rules ¶
type Rules struct { ID string `gorm:"primaryKey;autoIncrement:false;size:32"` Ptype string `gorm:"size:250;"` V0 string `gorm:"size:250;"` V1 string `gorm:"size:250;"` V2 string `gorm:"size:250;"` V3 string `gorm:"size:250;"` V4 string `gorm:"size:250;"` V5 string `gorm:"size:250;"` }
授权权限
Source Files ¶
Click to show internal directories.
Click to hide internal directories.