- refactor weixin and mini program login

This commit is contained in:
gazebo
2019-01-26 16:02:01 +08:00
parent ab53a4b61d
commit aba16383fe
10 changed files with 284 additions and 116 deletions

View File

@@ -10,6 +10,7 @@ import (
_ "git.rosy.net.cn/jx-callback/business/jxcallback/auth/localpass" // 加载本地用户密码
"git.rosy.net.cn/jx-callback/business/jxcallback/auth/mobile"
"git.rosy.net.cn/jx-callback/business/jxcallback/auth/weixin"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/globals"
"github.com/astaxie/beego"
)
@@ -45,7 +46,7 @@ func (c *AuthController) GetWeiXinUserInfo() {
state := c.GetString("state")
if block != "" {
if code != "" {
result, err2 := weixin.GetUserInfo(code, state)
result, err2 := weixin.GetWeiXinUserInfo(code, state)
if err = err2; err == nil {
retVal.Code = 1
retVal.Msg = "微信登录成功"
@@ -73,6 +74,9 @@ func (c *AuthController) GetWeiXinUserInfo() {
func (c *AuthController) Login() {
c.callLogin(func(params *tAuthLoginParams) (retVal interface{}, errCode string, err error) {
retVal, err = auth.Login(params.Id, params.Type, params.Secret)
if err == auth.ErrUserNotExist {
return retVal, model.ErrCodeUserNotExist, err
}
return retVal, "", err
})
}
@@ -129,6 +133,9 @@ func (c *AuthController) SendMobileVerifyCode() {
func (c *AuthController) BindMobile() {
c.callBindMobile(func(params *tAuthBindMobileParams) (retVal interface{}, errCode string, err error) {
err = weixin.BindMobile(params.Token, params.Mobile, params.Code, params.Nickname)
if err == auth.ErrUserNotExist {
return retVal, model.ErrCodeUserNotExist, err
}
return retVal, "", err
})
}
@@ -144,6 +151,9 @@ func (c *AuthController) BindMobile() {
func (c *AuthController) MiniBindWeiXin() {
c.callMiniBindWeiXin(func(params *tAuthMiniBindWeiXinParams) (retVal interface{}, errCode string, err error) {
err = weixin.AutherMini.BindWeiXin(params.Ctx, params.Code, params.Nickname)
if err == auth.ErrUserNotExist {
return retVal, model.ErrCodeUserNotExist, err
}
return retVal, "", err
})
}
@@ -162,3 +172,23 @@ func (c *AuthController) MiniDecryptData() {
return retVal, "", err
})
}
// @Title 微信公众号绑定手机2
// @Description 微信公众号绑定手机2
// @Param openID formData string true "微信公众号ID"
// @Param secret formData string true "后台之前返回的secret"
// @Param nickname formData string false "用户名"
// @Param mobile formData string true "手机号"
// @Param verifyCode formData string true "手机验证码"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /BindMobile2 [post]
func (c *AuthController) BindMobile2() {
c.callBindMobile2(func(params *tAuthBindMobile2Params) (retVal interface{}, errCode string, err error) {
retVal, err = weixin.BindMobile2(params.OpenID, params.Secret, params.Mobile, params.VerifyCode, params.Nickname)
if err == auth.ErrUserNotExist {
return retVal, model.ErrCodeUserNotExist, err
}
return retVal, "", err
})
}