This commit is contained in:
liangzai
2026-02-28 19:24:18 +08:00
parent 9053225fa7
commit a88154e8e2

View File

@@ -90,6 +90,9 @@ func (l *BindMobileLogic) BindMobile(req *types.BindMobileReq) (resp *types.Bind
if _, err := l.svcCtx.UserAuthModel.Insert(l.ctx, nil, &model.UserAuth{Id: uuid.NewString(), UserId: finalUserID, AuthType: model.UserAuthTypeMobile, AuthKey: encryptedMobile}); err != nil { if _, err := l.svcCtx.UserAuthModel.Insert(l.ctx, nil, &model.UserAuth{Id: uuid.NewString(), UserId: finalUserID, AuthType: model.UserAuthTypeMobile, AuthKey: encryptedMobile}); err != nil {
return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "创建手机号认证失败: %v", err) return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "创建手机号认证失败: %v", err)
} }
// 使 UserModel.FindOneByMobile 的缓存失效,避免后续流程(如代理注册)仍命中“手机号不存在”的旧缓存
userMobileCacheKey := fmt.Sprintf("cache:bdqr:user:mobile:%v", sql.NullString{String: encryptedMobile, Valid: true})
_, _ = l.svcCtx.Redis.DelCtx(l.ctx, userMobileCacheKey)
// 发放tokenuserType会根据mobile字段动态计算 // 发放tokenuserType会根据mobile字段动态计算
token, err := l.svcCtx.UserService.GeneralUserToken(l.ctx, finalUserID) token, err := l.svcCtx.UserService.GeneralUserToken(l.ctx, finalUserID)
if err != nil { if err != nil {