添加门店管理员获取信息接口、调整微信登录账号生成逻辑

This commit is contained in:
2025-06-11 16:47:34 +08:00
parent 427df4a3bf
commit 1e94848f8d
11 changed files with 104 additions and 5 deletions

View File

@ -11,7 +11,9 @@ import (
"server/internal/model/do"
"server/internal/model/entity"
"server/internal/service"
"server/utility"
"server/utility/ecode"
"server/utility/encrypt"
"server/utility/gamelife"
"server/utility/jwt"
@ -63,10 +65,34 @@ func (s *sUser) Login(ctx context.Context, in *model.UserLoginIn) (out *model.Us
var userId int64
if !exist {
// 用户不存在,创建新用户
// 生成 username: qy_ + 8位随机字母数字
var username string
for {
randomStr := grand.Str("abcdefghijklmnopqrstuvwxyz0123456789", 8)
username = "qy_" + randomStr
// 检查 username 是否唯一
count, err := dao.Users.Ctx(ctx).Where(do.Users{Username: username}).Count()
if err != nil {
return nil, ecode.Fail.Sub("检查用户名失败")
}
if count == 0 {
break // username 唯一,退出循环
}
}
password, err := encrypt.EncryptPassword(consts.DefaultPassword)
if err != nil {
return nil, ecode.Fail.Sub("加密密码失败")
}
user := &entity.Users{
WxOpenId: in.OpenId,
Username: grand.Digits(10),
Username: username,
Nickname: username,
PasswordHash: password,
Avatar: "adssssssssssssss", // FIXME 后续替换成默认头像的 oss 链接
FirstVisitAt: gtime.Now(),
LastLoginAt: gtime.Now(),
WxPopenId: utility.GenerateUserID("WX"),
QqPopenId: utility.GenerateUserID("QQ"),
}
result, err := dao.Users.Ctx(ctx).Insert(user)
if err != nil {