This commit is contained in:
苏尹岚
2021-03-25 11:30:23 +08:00
parent baae588ec4
commit 4c19bd32a0
2 changed files with 61 additions and 0 deletions

View File

@@ -6,6 +6,7 @@ import (
"net/http"
"strings"
"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/dingding"
@@ -13,6 +14,7 @@ import (
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/password"
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/weixin"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao"
"git.rosy.net.cn/jx-callback/globals"
"github.com/astaxie/beego"
)
@@ -322,3 +324,44 @@ func (c *Auth2Controller) DeletedTokenInfoWithoutParam() {
return retVal, "", err
})
}
type UserInfoWithWeixin struct {
Mobile string `json:"mobile"`
IsExist bool `json:"isExist"`
}
// @Title 根据小程序jsCode查询用户信息
// @Description 根据小程序jsCode查询用户信息
// @Param token header string false "认证token"
// @Param data formData string true "加密数据"
// @Param iv formData string true "iv"
// @Param jsCode formData string false "小程序jsCode"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetUserByMiniInfo [post]
func (c *Auth2Controller) GetUserByMiniInfo() {
c.callGetUserByMiniInfo(func(params *tAuth2GetUserByMiniInfoParams) (retVal interface{}, errCode string, err error) {
authInfo := &auth2.AuthInfo{}
if err == nil {
decryptedDataBase64, err2 := weixin.AutherObjMini.DecryptData(authInfo, GetComposedCode(&c.Controller, params.JsCode), params.Data, params.Iv)
if err = err2; err == nil {
var userInfo *weixinapi.MiniUserInfo
if err = utils.UnmarshalUseNumber([]byte(decryptedDataBase64), &userInfo); err == nil {
result := &UserInfoWithWeixin{}
result.Mobile = userInfo.PhoneNumber
if userInfo.PhoneNumber != "" {
if user, err := dao.GetUserByID(dao.GetDB(), "mobile", userInfo.PhoneNumber); err == nil {
if user != nil {
result.IsExist = true
} else {
result.IsExist = false
}
}
}
retVal = result
}
}
}
return retVal, "", err
})
}

View File

@@ -169,6 +169,15 @@ func init() {
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:Auth2Controller"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:Auth2Controller"],
beego.ControllerComments{
Method: "GetUserByMiniInfo",
Router: `/GetUserByMiniInfo`,
AllowHTTPMethods: []string{"post"},
MethodParams: param.Make(),
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:Auth2Controller"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:Auth2Controller"],
beego.ControllerComments{
Method: "Login",
@@ -2601,6 +2610,15 @@ func init() {
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreSkuController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreSkuController"],
beego.ControllerComments{
Method: "GetStoresSkusForStore",
Router: `/GetStoresSkusForStore`,
AllowHTTPMethods: []string{"get"},
MethodParams: param.Make(),
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreSkuController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreSkuController"],
beego.ControllerComments{
Method: "GetStoresSkusSaleInfo",