fix(auth): 用户会话版本默认值对齐 main,收敛 dev 血脉的 1 偏差
token_version 由 c91423a 引入时,model tag 与迁移 000052 一致都是 0;
TokenVersion 的显式赋值 1 只存在于 dev 分支的 85332df,main 上从未有过。
本次把用户侧(users 表)统一收敛到 0,管理员侧(admin_users)保持不动。
- model/user.go:TokenVersion 的 gorm tag 由 default:1 改为 default:0
- auth/repository.go:FindOrCreateByPhone / RegisterWithPassword 移除
显式 TokenVersion: 1,改由列默认值决定
行为收敛:此前 listing/mutation.go 的建号路径完全不显式赋值,
落库值取决于 DB 列默认值(本机 1 / 迁移定义 0),是真实的行为漂移来源;
现在三条建号路径结果一致,均为 0。
判定依据:引入该字段的提交是否自洽 + 该值是否在 main 上,
不以本机库的实际列定义为准(本地曾被手工改成 1)。
This commit is contained in:
@@ -15,8 +15,9 @@ type User struct {
|
||||
RenterGrowthPoints int64 `gorm:"not null;default:0;index:idx_users_renter_growth_level,priority:2" json:"renter_growth_points"`
|
||||
RenterGrowthLevel string `gorm:"size:32;not null;default:'normal';index:idx_users_renter_growth_level,priority:1" json:"renter_growth_level"`
|
||||
Status string `gorm:"size:32;not null;default:'active'" json:"status"`
|
||||
// 会话版本:默认与 users.token_version 列默认值保持一致,递增后旧令牌失效。
|
||||
TokenVersion int64 `gorm:"not null;default:1" json:"-"`
|
||||
// 会话版本:递增后该用户已签发的全部令牌立即失效。
|
||||
// 默认值对齐迁移 000052 的 users.token_version DEFAULT 0。
|
||||
TokenVersion int64 `gorm:"not null;default:0" json:"-"`
|
||||
// 注册归因:注册时由前端携带的推广短码。
|
||||
RegisterTrackCode string `gorm:"size:64;index:idx_users_register_track_code" json:"register_track_code,omitempty"`
|
||||
LastLoginAt *time.Time `json:"last_login_at"`
|
||||
|
||||
@@ -83,7 +83,6 @@ func (r *UserRepository) FindOrCreateByPhone(ctx context.Context, phone string,
|
||||
CreditScore: 100,
|
||||
Status: "active",
|
||||
RegisterTrackCode: code,
|
||||
TokenVersion: 1,
|
||||
LastLoginAt: &now,
|
||||
}
|
||||
|
||||
@@ -138,7 +137,6 @@ func (r *UserRepository) RegisterWithPassword(ctx context.Context, phone string,
|
||||
CreditScore: 100,
|
||||
Status: "active",
|
||||
RegisterTrackCode: code,
|
||||
TokenVersion: 1,
|
||||
LastLoginAt: &now,
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user