This commit is contained in:
2026-10-26 22:42:29 +08:00
parent 6f13816bcf
commit 554f6737cf
9 changed files with 331 additions and 47 deletions
+10 -10
View File
@@ -3,20 +3,20 @@
// 各小程序用户互不关联(open_id 在不同 appid 下天然互不冲突,故无需额外隔离键)。
package model
import "time"
import "portal-mini-go/internal/pkg/types"
// User 是小程序端用户。MiniID 关联被纳管的小程序(mini_programs.id),
// 与 open_id 共同唯一标识一个用户:(mini_id, open_id)。
type User struct {
ID uint64 `gorm:"primaryKey;autoIncrement" json:"id"`
MiniID uint64 `gorm:"column:mini_id;index:idx_mini_openid" json:"mini_id"`
OpenID string `gorm:"type:varchar(64);index:idx_mini_openid" json:"openid"`
UnionID string `gorm:"type:varchar(64);index" json:"union_id"`
Nickname string `gorm:"type:varchar(128)" json:"nickname"`
Avatar string `gorm:"type:varchar(512)" json:"avatar"`
Status int8 `gorm:"column:status;type:tinyint;not null;default:1" json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
ID uint64 `gorm:"primaryKey;autoIncrement" json:"id"`
MiniID uint64 `gorm:"column:mini_id;index:idx_mini_openid" json:"mini_id"`
OpenID string `gorm:"type:varchar(64);index:idx_mini_openid" json:"openid"`
UnionID string `gorm:"type:varchar(64);index" json:"union_id"`
Nickname string `gorm:"type:varchar(128)" json:"nickname"`
Avatar string `gorm:"type:varchar(512)" json:"avatar"`
Status int8 `gorm:"column:status;type:tinyint;not null;default:1" json:"status"`
CreatedAt types.Time `json:"created_at"`
UpdatedAt types.Time `json:"updated_at"`
}
func (User) TableName() string { return "users" }