sys

package
v1.21.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2025 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseModel

type BaseModel struct {
	DelFlag  uint      `gorm:"type:tinyint;default:0;index;comment:删除标记;column:del_flag;" json:"delFlag"` // 删除标记
	CreateAt time.Time `gorm:"type:datetime;autoCreateTime;comment:创建日期" json:"createAt"`                 // 创建日期
	UpdateAt time.Time `gorm:"type:datetime;autoUpdateTime;comment:更新日期" json:"updateAt"`                 // 更新日期
	UpdateBy string    `gorm:"type:string;size:32;comment:更新者;" json:"updateBy"`                          // 更新者
	CreateBy string    `gorm:"type:string;size:32;comment:创建者;" json:"createBy"`                          // 创建者
	TenantId int64     `gorm:"type:string;size:32;comment:租户id;" json:"tenantId" form:"tenantId"`         // 租户id
}

BaseModel 共享属性

type SysApi

type SysApi struct {
	ID      uint   `gorm:"primaryKey;comment:接口ID" json:"id"`                                                     // 主键ID
	Name    string `gorm:"type:varchar(100);unique;not null;comment:API接口名称" json:"name"`                         // API接口名称
	APIPath string `gorm:"type:varchar(255);not null;uniqueIndex:api_unique;comment:接口路径(支持通配符)" json:"api_path"` // API路径(支持通配符)
	Method  string ``                                                                                             // 请求方法(GET|POST|PUT|DELETE...)
	/* 128-byte string literal not displayed */
	Description string `gorm:"type:varchar(255);comment:接口描述" json:"description"`                    // 接口描述
	APIGroup    string `gorm:"type:varchar(50);index;comment:接口分组(模块名称)" json:"api_group"`           // 接口分组(模块名称)
	Enabled     uint8  `gorm:"type:tinyint;default:1;index;comment:启用状态(1启用 0禁用)" json:"enabled"`    // 启用状态(1启用 0禁用)
	NeedAuth    uint8  `gorm:"type:tinyint;comment:是否需要认证(1是 0否);column:need_auth" json:"need_auth"` // 是否需要JWT认证(1是 0否)
	NeedLog     uint8  `gorm:"type:tinyint;default:1;comment:是否需要记录日志" json:"need_log"`              // 是否需要记录日志
	BaseModel
}

SysApi 系统接口表 记录后端所有API接口的权限信息

func (SysApi) TableName

func (SysApi) TableName() string

type SysConfig

type SysConfig struct {
	ID     int64  `gorm:"primaryKey;autoIncrement;comment:主键ID" json:"id"`                            // 主键ID
	Module string `gorm:"type:varchar(100);comment:所属功能模块;index" json:"module" binding:"required"`    // 所属功能模块
	Name   string `gorm:"type:varchar(50);not null;index;comment:配置名" json:"name" binding:"required"` // 配置名
	Key    string ``                                                                                  // 配置项名称,即配置变量名,唯一
	/* 129-byte string literal not displayed */
	Value       string `gorm:"type:text;comment:该配置保存值" json:"value" binding:"required"` // 该配置保存值
	Description string `gorm:"type:varchar(255);comment:配置项描述" json:"description"`       // 配置项描述
}

SysConfig 系统配置表,相当于动态INI配置文件 该表用于存储系统的配置信息,包括模块、名称、键名、值和描述等字段。 可以根据需要添加更多字段,例如配置类型、配置范围等。 该表可以通过模块和键名进行查询和更新操作,方便管理系统的配置信息。 注意:该表中的配置项名称是唯一的,不允许重复。

func (SysConfig) TableName

func (SysConfig) TableName() string

type SysDept

type SysDept struct {
	ID         uint   `gorm:"type:uint;primary_key;auto_increment;部门id;" json:"id"`                // 主键ID
	ParentId   uint   `gorm:"type:uint;index;comment:父部门id;" json:"parentId"`                      // 父部门id
	Ancestors  string `gorm:"type:varchar(100);comment:祖级列表;index:idx_ancestors" json:"ancestors"` // 祖级列表,以逗号分割
	Name       string `gorm:"type:varchar(30);unique;not null;comment:部门名称;" json:"name"`          // 部门名称
	Sort       int    `gorm:"type:int(10);comment:显示顺序;" json:"sort"`                              // 显示顺序
	Leader     string `gorm:"type:varchar(20);comment:负责人;" json:"leader"`                         // 负责人
	Mobile     string `gorm:"type:varchar(11);comment:联系电话;" json:"mobile"`                        // 联系电话
	DeptType   string `gorm:"type:varchar(50);index;default:0;comment:组织类型;" json:"deptType"`      // 组织类型(0:公司 1:部门)
	Status     uint8  `gorm:"type:tinyint;default:1;comment:部门状态(1正常 0停用);" json:"status"`         // 部门状态(1:正常 0:停用)
	ParentName string `gorm:"-" json:"parentName"`                                                 // 父部门名称
	BaseModel
	Children []*SysDept `gorm:"-" json:"children"` // 子部门列表
}

SysDept 系统部门表

func (SysDept) TableName

func (e SysDept) TableName() string

type SysDict

type SysDict struct {
	ID       int    `json:"id" gorm:"primaryKey;autoIncrement;type:int;comment:主键ID"`          // 主键ID
	Type     string `json:"type" gorm:"type:varchar(50);not null;index:idx_type;comment:字典类型"` // 字典类型
	ParentId int    `json:"parent_id" gorm:"type:int;default:0;comment:父级ID"`                  // 父级ID
	Name     string `json:"name" gorm:"type:varchar(100);not null;index;comment:字典中文名称"`       // 字典中文名称
	Key      string `json:"key" gorm:"type:varchar(50);not null;index:idx_key;comment:字典键名"`   // 字典键名
	Value    string `json:"value" gorm:"type:varchar(100);not null;comment:字典值"`               // 字典值
	Sort     int    `json:"sort" gorm:"type:int;default:0;comment:排序"`                         // 排序
	Remark   string `json:"remark" gorm:"type:varchar(255);comment:备注"`                        // 备注
	BaseModel
}

SysDict 字典数据

func (SysDict) TableName

func (e SysDict) TableName() string

type SysMenu

type SysMenu struct {
	ID         uint   `gorm:"primaryKey;comment:菜单ID" json:"id"`                                   // 菜单ID
	MenuLevel  int    `gorm:"type:tinyint;default:1;comment:菜单等级(1主菜单 2子菜单)" json:"menu_level"`    // 菜单等级(1主菜单 2子菜单)
	ParentId   uint   `gorm:"index;comment:父菜单ID(0表示根菜单)" json:"parent_id"`                        // 父菜单ID(0表示根菜单)
	Path       string `gorm:"type:varchar(255);index;comment:路由路径(需符合Vue Router规范)" json:"path"`   // 路由路径(需符合Vue Router规范)
	Name       string `gorm:"type:varchar(50);index;comment:路由名称" json:"name"`                     // 路由名称
	Component  string `gorm:"type:varchar(255);comment:组件路径(views目录下的路径)" json:"component"`        // 组件路径(views目录下的路径)
	Redirect   string `gorm:"type:varchar(255);comment:重定向路径" json:"redirect"`                     // 重定向路径
	Icon       string `gorm:"type:varchar(50);comment:菜单图标(组件名称)" json:"icon"`                     // 菜单图标(组件名称)
	Title      string `gorm:"type:varchar(50);not null;comment:菜单标题(显示名称)" json:"title"`           // 菜单标题(显示名称)
	Sort       int    `gorm:"type:int;default:0;index;comment:排序序号(越小越靠前)" json:"sort"`            // 排序序号(越小越靠前)
	Hidden     uint8  `gorm:"type:tinyint;default:0;comment:是否隐藏(0显示 1隐藏)" json:"hidden"`          // 是否隐藏(0显示 1隐藏)
	KeepAlive  uint8  `gorm:"type:tinyint;default:1;comment:是否缓存(0否 1是)" json:"keep_alive"`        // 是否缓存(0否 1是)
	AlwaysShow uint8  `gorm:"type:tinyint;default:0;comment:是否总是显示(即使只有一个子菜单)" json:"always_show"` // 是否总是显示(即使只有一个子菜单)
	Breadcrumb uint8  `gorm:"type:tinyint;default:1;comment:是否显示面包屑" json:"breadcrumb"`            // 是否显示面包屑
	Affix      uint8  `gorm:"type:tinyint;default:0;comment:是否固定到标签页" json:"affix"`                // 是否固定到标签页
	ActiveMenu string `gorm:"type:varchar(255);comment:激活菜单的路径" json:"active_menu"`                // 激活菜单的路径
	Status     int    `gorm:"type:tinyint;default:1;index;comment:菜单状态(1正常 0停用)" json:"status"`    // 菜单状态(1正常 0停用)
	BaseModel
	// 关联关系
	Children []SysMenu `gorm:"-;comment:子菜单列表" json:"children"` // 不作为数据库字段
	Roles    []SysRole `gorm:"-" json:"roles"`                  // 多对多关联
	Parent   *SysMenu  `gorm:"-" json:"parent"`                 // 自关联
}

SysMenu 系统菜单表 用于存储前端路由和后端权限的菜单结构

func (SysMenu) TableName

func (SysMenu) TableName() string

type SysPost

type SysPost struct {
	ID       int64  `gorm:"type:bigint(20);primary_key;auto_increment;岗位ID;"     json:"id"  form:"id"`    // 主键ID
	PostCode string `gorm:"type:varchar(64);uniqueIndex;comment:岗位编码;" json:"post_code" form:"post_code"` // 岗位编码(全局唯一)
	PostName string `gorm:"type:varchar(50);uniqueIndex;comment:岗位名称;" json:"post_name" form:"post_name"` // 岗位名称(全局唯一)
	DeptId   int64  `gorm:"type:bigint(20);index;comment:所属部门ID;" json:"dept_id" form:"dept_id"`          // 所属部门ID
	Sort     int    `gorm:"type:int(11);comment:显示顺序;" json:"sort" form:"sort"`                           // 显示顺序
	Status   uint8  `gorm:"type:tinyint;comment:状态(1正常 0停用);" json:"status" form:"status"`                // 状态(1:正常 0:停用)
	Remark   string `gorm:"type:varchar(500);comment:备注;" json:"remark" form:"remark"`                    // 备注
	BaseModel
}

SysPost 岗位信息

func (SysPost) TableName

func (e SysPost) TableName() string

type SysRole

type SysRole struct {
	ID          uint   `gorm:"primaryKey;comment:角色ID"`                                 // 角色ID
	RoleName    string `gorm:"type:varchar(50);not null;uniqueIndex;comment:角色名称"`      // 角色名称
	RoleIdent   string `gorm:"type:varchar(50);not null;uniqueIndex;comment:角色标识符(英文)"` // 角色标识符(英文)
	IsEnable    uint8  `gorm:"type:tinyint;default:1;index;comment:启用状态(1启用 0禁用)"`      // 启用状态(1启用 0禁用)
	Description string `gorm:"type:varchar(255);comment:角色描述"`                          // 角色描述
	BaseModel
}

SysRole 角色表结构

func (SysRole) TableName

func (SysRole) TableName() string

type SysRoleApi

type SysRoleApi struct {
	ID     uint `gorm:"primaryKey;type:uint;comment:权限ID" json:"id"`          // 权限ID
	RoleId uint `gorm:"type:uint;not null;index;comment:角色ID" json:"role_id"` // 角色ID
	ApiId  uint `gorm:"type:uint;not null;comment:API接口ID" json:"api_id"`     // API接口ID

	Role *SysRole `gorm:"-" json:"role"` // 关联的角色信息
	Api  *SysApi  `gorm:"-" json:"api"`  // 关联的API接口信息
	BaseModel
}

SysRoleApi 角色API权限信息模型

func (SysRoleApi) TableName

func (SysRoleApi) TableName() string

type SysRoleMenu

type SysRoleMenu struct {
	ID     uint `gorm:"primaryKey;type:uint;comment:权限ID" json:"id"`          // 权限ID,主键
	RoleId uint `gorm:"type:uint;not null;index;comment:角色ID" json:"role_id"` // 角色ID,不能为空
	MenuId uint `gorm:"type:uint;not null;comment:菜单ID" json:"menu_id"`       // 菜单ID,不能为空

	Role *SysRole `gorm:"-" json:"role"` // 关联的角色信息
	Menu *SysMenu `gorm:"-" json:"menu"` // 关联的菜单信息
	BaseModel
}

SysRoleMenu 角色菜单权限信息模型

func (SysRoleMenu) TableName

func (SysRoleMenu) TableName() string

type SysUser

type SysUser struct {
	ID        int64      `gorm:"type:bigint(20);primary_key;auto_increment;用户ID;"     json:"id"  form:"id"`             // 主键ID
	LoginName string     `gorm:"type:varchar(30);not null;uniqueIndex;comment:登录账号;" json:"loginName" form:"loginName"` // 登录账号(全局唯一)
	NickName  string     `gorm:"type:varchar(30);comment:用户昵称;" json:"nickName" form:"nickName"`                        // 用户昵称或姓名
	UserType  string     `gorm:"type:varchar(10);index;comment:用户类型(根据业务自由定义);" json:"userType" form:"userType"`        // 用户类型(根据业务自由定义)
	Email     string     `gorm:"type:varchar(50);index;comment:用户邮箱;" json:"email" form:"email"`                        // 用户邮箱(全局唯一)
	Mobile    string     `gorm:"type:varchar(11);index;comment:手机号码;" json:"mobile" form:"mobile"`                      // 手机号码(全局唯一)
	Sex       uint8      `gorm:"type:tinyint;comment:用户性别(1男 2女 3未知);" json:"sex" form:"sex"`                           // 用户性别(1:男 2:女 3:未知)
	Avatar    string     `gorm:"type:varchar(100);comment:头像路径;" json:"avatar" form:"avatar"`                           // 头像路径
	Password  string     `gorm:"type:varchar(50);comment:密码;" json:"password" form:"password"`                          // 密码
	Status    uint8      `gorm:"type:tinyint;index;default:1;comment:帐号状态(1正常 2停用);" json:"status" form:"status"`       // 状态(1:正常 2:停用)
	LoginIp   string     `gorm:"type:varchar(50);comment:最后登陆IP;" json:"loginIp" form:"loginIp"`                        // 最后登陆IP
	LoginDate *time.Time `gorm:"type:datetime;comment:最后登陆时间;" json:"loginDate" form:"loginDate"`                       // 最后登陆时间
	Remark    string     `gorm:"type:varchar(500);comment:备注;" json:"remark"   form:"remark"`                           // 备注
	BaseModel
}

SysUser 用户信息

func (SysUser) TableName

func (e SysUser) TableName() string

映射数据表

type SysUserExt

type SysUserExt struct {
	ID           int64 `gorm:"type:bigint(20);primary_key;auto_increment;ID;" json:"id" form:"id"`            // 主键ID
	UserId       int64 `gorm:"type:bigint(20);unique;not null;comment:用户ID;" json:"userId" form:"userId"`     // 用户ID
	DepartmentId int64 `gorm:"type:bigint(20);index;comment:所属部门ID;" json:"departmentId" form:"departmentId"` // 所属部门ID
	PositionId   int64 `gorm:"type:bigint(20);index;comment:所属岗位ID;" json:"positionId" form:"positionId"`     // 所属岗位ID
	RoleId       int64 `gorm:"type:bigint(20);index;comment:所属角色ID;" json:"roleId" form:"roleId"`             // 所属角色ID
}

SysUserExt 扩展的SysUser模型

func (SysUserExt) TableName

func (e SysUserExt) TableName() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL