package model // User 对应 users 表。 type User struct { ID int64 `gorm:"primaryKey" json:"id"` Username string `gorm:"size:64;uniqueIndex;not null" json:"username"` PasswordHash string `gorm:"size:100;not null" json:"-"` TOTPSecret string `gorm:"column:totp_secret;size:64;not null;default:''" json:"-"` TOTPEnabled int `gorm:"column:totp_enabled;not null;default:0" json:"totpEnabled"` LastLoginIP string `gorm:"column:last_login_ip;size:64;not null;default:''" json:"lastLoginIp"` LastSeenAt string `gorm:"column:last_seen_at;size:32;not null;default:''" json:"lastSeenAt"` AIBanned int `gorm:"column:ai_banned;not null;default:0" json:"aiBanned"` Disabled int `gorm:"not null;default:0" json:"disabled"` CreatedAt string `gorm:"size:32;not null" json:"createdAt"` } func (User) TableName() string { return "users" }