|
@@ -1297,102 +1297,36 @@ func (this *UserCommonController) LoginPublic() {
|
|
|
br.ErrMsg = "参数解析失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
- user, err := models.GetWxUserItemByMobile(req.Mobile)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "登录失败!"
|
|
|
- br.ErrMsg = "获取手机号用户信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- if user == nil {
|
|
|
- br.Msg = "用户不存在"
|
|
|
- br.Ret = 408
|
|
|
- return
|
|
|
- }
|
|
|
|
|
|
- userRecord, err := models.GetUserRecordByUserId(user.UserId, utils.WxPlatform)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "用户不存在!"
|
|
|
- br.ErrMsg = "用户OPID不存在,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- unionId := userRecord.UnionId
|
|
|
- openId := userRecord.OpenId
|
|
|
- if unionId == "" {
|
|
|
+ mobile := strings.Trim(req.Mobile, " ")
|
|
|
+ if req.Mobile == "" {
|
|
|
br.Msg = "参数错误"
|
|
|
- br.ErrMsg = "参数错误,unionId 为空"
|
|
|
+ br.ErrMsg = "参数错误,手机号为空 为空"
|
|
|
return
|
|
|
}
|
|
|
- if req.LoginType == 1 || req.LoginType == 3 {
|
|
|
- if req.Mobile == "" {
|
|
|
- br.Msg = "参数错误"
|
|
|
- br.ErrMsg = "参数错误,手机号为空 为空"
|
|
|
- return
|
|
|
- }
|
|
|
- if req.LoginType == 3 {
|
|
|
- item, err := models.GetMsgCode(req.Mobile, req.VCode)
|
|
|
- if err != nil {
|
|
|
- if err.Error() == utils.ErrNoRow() {
|
|
|
- br.Msg = "验证码错误,请重新输入"
|
|
|
- br.ErrMsg = "校验验证码失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- } else {
|
|
|
- br.Msg = "验证码错误,请重新输入"
|
|
|
- br.ErrMsg = "校验验证码失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- if item == nil {
|
|
|
- br.Msg = "验证码错误,请重新输入"
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- req.Mobile = strings.Trim(req.Mobile, " ")
|
|
|
- } else if req.LoginType == 2 {
|
|
|
- if req.Email == "" {
|
|
|
- br.ErrMsg = "邮箱不能为空,请输入邮箱"
|
|
|
- br.Msg = "邮箱不能为空,请输入邮箱"
|
|
|
- return
|
|
|
- }
|
|
|
- if !utils.ValidateEmailFormatat(req.Email) {
|
|
|
- br.ErrMsg = "邮箱格式错误,请重新输入"
|
|
|
- br.Msg = "邮箱格式错误,请重新输入"
|
|
|
+
|
|
|
+ item, err := models.GetMsgCode(req.Mobile, req.VCode)
|
|
|
+ if err != nil {
|
|
|
+ if err.Error() == utils.ErrNoRow() {
|
|
|
+ br.Msg = "验证码错误,请重新输入"
|
|
|
+ br.ErrMsg = "校验验证码失败,Err:" + err.Error()
|
|
|
return
|
|
|
- }
|
|
|
- item, err := models.GetMsgCode(req.Email, req.VCode)
|
|
|
- if err != nil {
|
|
|
- if err.Error() == utils.ErrNoRow() {
|
|
|
- br.Msg = "验证码错误,请重新输入"
|
|
|
- br.ErrMsg = "校验验证码失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- } else {
|
|
|
- br.Msg = "验证码错误,请重新输入"
|
|
|
- br.ErrMsg = "校验验证码失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- if item == nil {
|
|
|
+ } else {
|
|
|
br.Msg = "验证码错误,请重新输入"
|
|
|
+ br.ErrMsg = "校验验证码失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
- } else {
|
|
|
- br.Msg = "无效的登录方式"
|
|
|
- br.ErrMsg = "无效的登录方式,Err:" + err.Error()
|
|
|
+ }
|
|
|
+ if item == nil {
|
|
|
+ br.Msg = "验证码错误,请重新输入"
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
if len(req.Mobile) >= 11 && req.CountryCode == "" {
|
|
|
req.CountryCode = "86"
|
|
|
}
|
|
|
-
|
|
|
- user, err = services.BindWxUser(openId, req.Mobile, req.Email, req.CountryCode)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "登录失败"
|
|
|
- br.ErrMsg = "绑定手机号失败:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- userId := user.UserId
|
|
|
var token string
|
|
|
- tokenItem, err := models.GetTokenByOpenId(openId)
|
|
|
+ tokenItem, err := models.GetSessionMobileTokenByOpenId(mobile)
|
|
|
if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
br.Msg = "登录失败"
|
|
|
br.ErrMsg = "登录失败,获取token失败:" + err.Error()
|
|
@@ -1401,18 +1335,16 @@ func (this *UserCommonController) LoginPublic() {
|
|
|
if tokenItem == nil || (err != nil && err.Error() == utils.ErrNoRow()) {
|
|
|
timeUnix := time.Now().Unix()
|
|
|
timeUnixStr := strconv.FormatInt(timeUnix, 10)
|
|
|
- token = utils.MD5(openId) + utils.MD5(timeUnixStr)
|
|
|
+ token = utils.MD5(mobile) + utils.MD5(timeUnixStr)
|
|
|
//新增session
|
|
|
{
|
|
|
- session := new(models.CygxSession)
|
|
|
- session.OpenId = unionId
|
|
|
- session.UnionId = unionId
|
|
|
- session.UserId = userId
|
|
|
+ session := new(models.CygxSessionMobile)
|
|
|
+ session.Mobile = mobile
|
|
|
session.CreatedTime = time.Now()
|
|
|
session.LastUpdatedTime = time.Now()
|
|
|
session.ExpireTime = time.Now().AddDate(0, 1, 0)
|
|
|
session.AccessToken = token
|
|
|
- err = models.AddSession(session)
|
|
|
+ err = models.AddCygxSessionMobile(session)
|
|
|
if err != nil {
|
|
|
br.Msg = "登录失败"
|
|
|
br.ErrMsg = "登录失败,新增用户session信息失败:" + err.Error()
|
|
@@ -1422,25 +1354,8 @@ func (this *UserCommonController) LoginPublic() {
|
|
|
} else {
|
|
|
token = tokenItem.AccessToken
|
|
|
}
|
|
|
-
|
|
|
- //新增登录日志
|
|
|
- {
|
|
|
- loginLog := new(models.WxUserLog)
|
|
|
- loginLog.UserId = userId
|
|
|
- loginLog.OpenId = unionId
|
|
|
- loginLog.Mobile = req.Mobile
|
|
|
- loginLog.Email = req.Email
|
|
|
- loginLog.CreateTime = time.Now()
|
|
|
- loginLog.Handle = "wechat_user_login"
|
|
|
- loginLog.Remark = token
|
|
|
- go models.AddWxUserLog(loginLog)
|
|
|
- }
|
|
|
resp := new(models.LoginResp)
|
|
|
- resp.UserId = userId
|
|
|
resp.Authorization = token
|
|
|
- if user.CompanyId == 1 {
|
|
|
- resp.IsPotential = true
|
|
|
- }
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
|
br.Data = resp
|