Browse Source

rebuid api 重构绑定手机号码接口

abiao 5 years ago
parent
commit
be3b6d128c

+ 43 - 0
go/gopath/src/fohow.com/apps/controllers/user_controller/binding_controller.go

@@ -95,3 +95,46 @@ func (self *UserController) BindingTel() {
 	self.Data["json"] = user
 	self.ServeJSON()
 }
+
+//绑定手机
+func (self *UserController) BindingTelNew() {
+	code := self.GetString("code")
+	tel := self.GetString("tel")
+	//校验短信验证码
+	k := fmt.Sprintf("%s%s", sms_model.BINDING, tel)
+	if cacheCode, ok := cache.Cache.Get(k).(string); ok {
+		if code != cacheCode {
+			self.ReturnError(403, apps.TelCodesError, "", nil)
+		}
+	} else {
+		//验证码过期
+		self.ReturnError(403, apps.TelCodesExpired, "", nil)
+	}
+
+	wxUser := self.GetCurrentWxUser(false)
+	//如果未注册user,直接返回
+	if wxUser.UserId == 0 {
+		self.ReturnError(403, apps.UserNotExist, "", nil)
+	}
+	user := user_model.GetByTel(tel, false)
+	if user != nil {
+		self.ReturnError(403, apps.BindingTelExisted, "", nil)
+	} else { //手机号未被注册
+		// loginPwd := tool.Get8Uuid()
+		// md5Ctx := md5.New()
+		// md5Ctx.Write([]byte(loginPwd))
+		// cipherStr := md5Ctx.Sum(nil)
+		// md5Pwd := hex.EncodeToString(cipherStr)
+		user = user_model.GetUserById(wxUser.UserId, false)
+		if user == nil {
+			self.ReturnError(403, apps.BindingUserTelError, "", nil)
+		}
+		user.Tel = tel
+		user.Save()
+		if user != nil {
+			self.SetSession(apps.SessionUserKey, user.Id)
+		}
+	}
+	self.Data["json"] = user
+	self.ServeJSON()
+}

+ 1 - 1
go/gopath/src/fohow.com/routers/routes.go

@@ -143,7 +143,7 @@ func init() {
 	beego.Router("/v1/user/binding/id_card", &user_controller.UserController{}, "put:BindingIdCard")
 
 	//绑定电话号码
-	beego.Router("/v1/wxuser/binding/tel", &user_controller.UserController{}, "post:BindingTel")
+	beego.Router("/v1/wxuser/binding/tel", &user_controller.UserController{}, "post:BindingTelNew")
 	beego.Router("/v1/wxuser/info", &user_controller.UserController{}, "put:UpdateWxUserInfo")
 	// 设置微信用户的邀请人
 	beego.Router("/v1/wxuser/inviter/:wx_inviter([0-9]+)", &user_controller.UserController{}, "put:SetWxUserInviter")