35 lines
1.7 KiB
Go
35 lines
1.7 KiB
Go
package models
|
||
|
||
import "time"
|
||
|
||
// =============================================================
|
||
// 微信小程序扫码注册核验会话 yz_auth_mini_register
|
||
// (建表脚本:docs/sql/create_auth_mini_register.sql)
|
||
// PC 注册页发起会话并展示小程序码 → 用户扫码在小程序内确认(wx.login)→
|
||
// 服务端写入 openid/unionid → PC 端轮询到已确认后继续注册,核验时按 scene 核销。
|
||
// =============================================================
|
||
|
||
// 会话状态
|
||
const (
|
||
MiniRegisterStatusWaiting = 0 // 待确认(已生成小程序码)
|
||
MiniRegisterStatusConfirmed = 1 // 已确认(小程序端已上报 openid)
|
||
MiniRegisterStatusUsed = 2 // 已核销(注册第一步已取用)
|
||
MiniRegisterStatusExpired = 3 // 已过期
|
||
)
|
||
|
||
// AuthMiniRegister 微信小程序扫码注册核验会话
|
||
type AuthMiniRegister struct {
|
||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||
Scene string `orm:"column(scene);size(64)" json:"scene"`
|
||
OpenID string `orm:"column(openid);size(64)" json:"openid"`
|
||
UnionID string `orm:"column(unionid);size(64)" json:"unionid"`
|
||
Mobile string `orm:"column(mobile);size(32)" json:"mobile"`
|
||
AppID string `orm:"column(app_id);size(64)" json:"app_id"`
|
||
Status int8 `orm:"column(status)" json:"status"`
|
||
ExpireAt time.Time `orm:"column(expire_at);type(datetime)" json:"expire_at"`
|
||
CreateTime time.Time `orm:"column(create_time);type(datetime);auto_now_add" json:"create_time"`
|
||
UpdateTime *time.Time `orm:"column(update_time);type(datetime);null" json:"update_time"`
|
||
}
|
||
|
||
func (m *AuthMiniRegister) TableName() string { return "yz_auth_mini_register" }
|