新增修改用户手机号为微信绑定的手机号,user2/UpdateUserByMiniInfo

This commit is contained in:
gazebo
2019-11-11 16:50:21 +08:00
parent 281e2b436a
commit e763aac526
4 changed files with 63 additions and 43 deletions

View File

@@ -1,13 +1,16 @@
package controllers
import (
"git.rosy.net.cn/baseapi/platformapi/weixinapi"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/auth2"
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/weixin"
"git.rosy.net.cn/jx-callback/business/authz"
"git.rosy.net.cn/jx-callback/business/authz/autils"
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao"
"github.com/astaxie/beego"
)
@@ -374,3 +377,31 @@ func (c *User2Controller) GetSelfInfo() {
return retVal, "", err
})
}
// @Title 根据小程序jsCode修改用户信息
// @Description 根据小程序jsCode修改用户信息
// @Param token header string true "认证token"
// @Param jsCode query string true "小程序jsCode"
// @Param data query string true "加密数据"
// @Param iv query string true "iv"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /UpdateUserByMiniInfo [put]
func (c *Auth2Controller) UpdateUserByMiniInfo() {
c.callUpdateUserByMiniInfo(func(params *tAuth2UpdateUserByMiniInfoParams) (retVal interface{}, errCode string, err error) {
authInfo, err := params.Ctx.GetV2AuthInfo()
if err == nil {
decryptedDataBase64, err2 := weixin.AutherObjMini.DecryptData(authInfo, params.JsCode, params.Data, params.Iv)
if err = err2; err == nil {
var userInfo *weixinapi.MiniUserInfo
if err = utils.UnmarshalUseNumber([]byte(decryptedDataBase64), &userInfo); err == nil {
if user := params.Ctx.GetFullUser(); user != nil {
user.Avatar = userInfo.AvatarURL
dao.UpdateEntity(dao.GetDB(), user, "Avatar")
}
}
}
}
return retVal, "", err
})
}