39 lines
2.0 KiB
Go
39 lines
2.0 KiB
Go
package models
|
||
|
||
import "time"
|
||
|
||
// =============================================================
|
||
// 注册会话 yz_auth_register_session
|
||
// (建表脚本:docs/sql/create_auth_register_session.sql)
|
||
// 第一步核验通过 → 写入本表并签发 token(此时尚未创建身份);
|
||
// 第二步企业归属时按 token 取出、建号并写回 identity_id;业务成功后删除。
|
||
// 落库而非放内存:服务重启 / 多副本部署都不会让用户的注册流程中途失效。
|
||
// =============================================================
|
||
|
||
// 注册会话状态
|
||
const (
|
||
RegisterSessionPending = 0 // 待完成(第二步归属未提交)
|
||
RegisterSessionDone = 1 // 已完成
|
||
)
|
||
|
||
// AuthRegisterSession 注册会话
|
||
type AuthRegisterSession struct {
|
||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||
Token string `orm:"column(token);size(64)" json:"-"`
|
||
Account string `orm:"column(account);size(64)" json:"account"`
|
||
Mobile string `orm:"column(mobile);size(20)" json:"mobile"`
|
||
Nickname string `orm:"column(nickname);size(64)" json:"nickname"`
|
||
PasswordHash string `orm:"column(password_hash);size(255)" json:"-"`
|
||
PasswordAlgo string `orm:"column(password_algo);size(16)" json:"password_algo"`
|
||
OpenID string `orm:"column(openid);size(64)" json:"openid"`
|
||
UnionID string `orm:"column(unionid);size(64)" json:"unionid"`
|
||
Provider string `orm:"column(provider);size(32)" json:"provider"`
|
||
IdentityID uint64 `orm:"column(identity_id)" json:"identity_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 *AuthRegisterSession) TableName() string { return "yz_auth_register_session" }
|