Merge branch 'master' of https://e.coding.net/rosydev/baseapi
This commit is contained in:
@@ -159,3 +159,9 @@ func TestAPI_OrderselfDeliveryStateSync(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
func TestAggrent(t *testing.T) {
|
||||
err := api.OrderAgreeReturnGoods("4648176604190697145", "1483635799404794")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package weixinapi
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
|
||||
"errors"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
)
|
||||
|
||||
@@ -51,6 +51,25 @@ type MiniUserInfo struct {
|
||||
} `json:"watermark"`
|
||||
}
|
||||
|
||||
type GetUserPhone struct {
|
||||
ErrCode int64 `json:"errcode"`
|
||||
ErrMsg string `json:"errmsg"`
|
||||
PhoneInfo *UserPhone `json:"phone_info"`
|
||||
}
|
||||
|
||||
// UserPhone 微信小程序解密后 用户手机号结构体
|
||||
type UserPhone struct {
|
||||
PhoneNumber string `json:"phoneNumber,omitempty"`
|
||||
PurePhoneNumber string `json:"purePhoneNumber,omitempty"`
|
||||
CountryCode string `json:"countryCode,omitempty"`
|
||||
Watermark *watermarkInfo `json:"watermark,omitempty"`
|
||||
}
|
||||
|
||||
type watermarkInfo struct {
|
||||
Appid string `json:"appid,omitempty"`
|
||||
Timestamp int `json:"timestamp,omitempty"`
|
||||
}
|
||||
|
||||
func mapData2SNSToken(result map[string]interface{}) *SNSTokenInfo {
|
||||
return &SNSTokenInfo{
|
||||
AccessToken: utils.Interface2String(result["access_token"]),
|
||||
@@ -125,6 +144,30 @@ func (a *API) SNSCode2Session(jsCode string) (sessionInfo *SessionInfo, err erro
|
||||
return nil, err
|
||||
}
|
||||
|
||||
func (a *API) SNSGetUserPhone(jsCode string) (string, error) {
|
||||
url := "wxa/business/getuserphonenumber"
|
||||
if a.token == "" {
|
||||
a.CBRetrieveToken()
|
||||
}
|
||||
bodyJson := map[string]interface{}{
|
||||
"code": jsCode,
|
||||
}
|
||||
|
||||
result, err := a.AccessAPI(url, nil, string(utils.MustMarshal(bodyJson)))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
var phoneInfo *GetUserPhone
|
||||
if err := utils.Map2StructByJson(result, &phoneInfo, false); err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
if phoneInfo.ErrCode != 0 {
|
||||
return "", errors.New(phoneInfo.ErrMsg)
|
||||
}
|
||||
return phoneInfo.PhoneInfo.PhoneNumber, nil
|
||||
}
|
||||
|
||||
// 待删除
|
||||
func (a *API) SNSDecodeMiniProgramData(encryptedData, sessionKey, iv string) (decryptedData []byte, err error) {
|
||||
return SNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
||||
|
||||
Reference in New Issue
Block a user