登录时设置手机号和openid为必填2

This commit is contained in:
2024-08-30 14:28:21 +08:00
parent d68fab94cd
commit 94d25b4ec4
2 changed files with 29 additions and 18 deletions
+27 -16
View File
@@ -32,6 +32,33 @@ func (r *Login) Login(c *gin.Context) {
return
}
if req.OpenId == "" && req.Mobile == "" {
responses.FailWithMessage("登陆失败", c)
return
}
// 检测参数
if req.Mobile != "" {
if req.Code == "" {
responses.FailWithMessage("请输入手机号验证码", c)
return
}
// 检测验证码
if config.C.Env != "dev" {
code, _ := global.Redis.Get(c, "login_code_count_"+req.Mobile).Result()
if code == "" {
responses.FailWithMessage("验证码失效", c)
return
}
if req.Code != code {
responses.FailWithMessage("验证码错误", c)
return
}
}
}
// 开始事务
tx := global.Db.Begin()
defer func() {
@@ -63,22 +90,6 @@ func (r *Login) Login(c *gin.Context) {
user, _ := userDao.GetUser(maps)
// 新用户处理方式
if user == nil {
// 检测验证码
if req.Source == 1 {
if config.C.Env != "dev" {
code, _ := global.Redis.Get(c, "login_code_count_"+req.Mobile).Result()
if code == "" {
responses.FailWithMessage("验证码失效", c)
return
}
if req.Code != code {
responses.FailWithMessage("验证码错误", c)
return
}
}
}
// 登录ip
publicService := service.PublicService{}
loginIp := publicService.GetUserIP(c.Request)