Browse Source

新增校验邮箱验证码接口

rdluck 4 years ago
parent
commit
1c86d0ee97
2 changed files with 62 additions and 6 deletions
  1. 56 5
      controllers/user.go
  2. 6 1
      models/wx_user.go

+ 56 - 5
controllers/user.go

@@ -68,6 +68,10 @@ func (this *UserCommonController) GetSmsCode() {
 		this.ServeJSON()
 	}()
 	mobile := this.GetString("Mobile")
+	if mobile == "" {
+		br.Msg="请输入手机号"
+		return
+	}
 	areaNum := this.GetString("AreaNum")
 	msgCode := utils.GetRandString(4)
 	var result bool
@@ -116,7 +120,7 @@ func (this *UserCommonController) CheckSmsCode() {
 		br.ErrMsg = "参数解析失败,Err:" + err.Error()
 		return
 	}
-	if req.Mobile != "" {
+	if req.Mobile == "" {
 		br.Msg = "请输入手机号"
 		br.ErrMsg = "请输入手机号"
 		return
@@ -159,7 +163,7 @@ func (this *UserCommonController) GetEmailCode() {
 		this.ServeJSON()
 	}()
 	email := this.GetString("Email")
-	if email != "" {
+	if email == "" {
 		br.Msg = "请输入邮箱地址"
 		return
 	}
@@ -186,12 +190,59 @@ func (this *UserCommonController) GetEmailCode() {
 	br.Success = true
 }
 
+
+// @Title 校验邮箱验证码
+// @Description 校验邮箱验证码接口
+// @Param	request	body models.CheckEmailCodeReq true "type json string"
+// @Success 200 {object} models.LoginResp
+// @router /checkEmailCode [post]
+func (this *UserCommonController) CheckEmailCode() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	var req models.CheckEmailCodeReq
+	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+	if req.Email == "" {
+		br.Msg = "请输入手机号"
+		br.ErrMsg = "请输入手机号"
+		return
+	}
+	if req.SmsCode == "" {
+		br.Msg = "请输入验证码"
+		br.ErrMsg = "请输入验证码"
+		return
+	}
+	item, err := models.GetMsgCode(req.Email, req.SmsCode)
+	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
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "验证码正确"
+}
+
 /*
-$app->get('api/user/getEmailCode',"UserController@getEmailCode");//获取邮件验证码
-$app->post('api/user/checkEmailCode',"UserController@checkEmailCode");//校验邮件验证码
 $app->post('api/user/login',"UserController@login");//登录
 $app->post('api/user/apply',"UserController@apply");//申请试用
-$app->get('api/user/smallLimit',"UserController@smallLimit");//是否小套餐客户
 */
 
 // @Title 是否小套餐客户

+ 6 - 1
models/wx_user.go

@@ -127,10 +127,15 @@ func GetUserDetailByUserId(userId int) (item *UserDetail, err error) {
 }
 
 type CheckSmsCodeReq struct {
-	Mobile  string `description:"邮箱"`
+	Mobile  string `description:"手机号"`
 	SmsCode string `description:"验证码"`
 }
 
 type SmallLimitResp struct {
 	IsMaxPermission int
 }
+
+type CheckEmailCodeReq struct {
+	Email  string `description:"邮箱"`
+	SmsCode string `description:"验证码"`
+}