Files
2026-09-11 01:47:20 +08:00

19 lines
1.1 KiB
Go

package mysqlmodel
// AdminUser 管理员账号(管理后台自建表,唯一不共享业务服务的表)。
// 字符串字段显式指定 type:varchar 长度:MySQL 无法对 TEXT/BLOB 列建普通唯一索引,
// 且 varchar 长度受 utf8mb4 索引 3072 字节上限约束。
type AdminUser struct {
Model
Username string `gorm:"column:username;type:varchar(32);uniqueIndex:uk_admin_username"` // 登录账号
PasswordHash string `gorm:"column:password_hash;type:varchar(100)"` // bcrypt 密码哈希(60 字符)
Nickname string `gorm:"column:nickname;type:varchar(32)"` // 显示名
Role int8 `gorm:"column:role"` // 角色 1=超级管理员 2=普通管理员
Status int8 `gorm:"column:status"` // 状态 1=启用 2=禁用
LastLoginTime int64 `gorm:"column:last_login_time"` // 最近登录时间
}
func (AdminUser) TableName() string {
return "admin_users"
}