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)
|
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 (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"errors"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -51,6 +51,25 @@ type MiniUserInfo struct {
|
|||||||
} `json:"watermark"`
|
} `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 {
|
func mapData2SNSToken(result map[string]interface{}) *SNSTokenInfo {
|
||||||
return &SNSTokenInfo{
|
return &SNSTokenInfo{
|
||||||
AccessToken: utils.Interface2String(result["access_token"]),
|
AccessToken: utils.Interface2String(result["access_token"]),
|
||||||
@@ -125,6 +144,30 @@ func (a *API) SNSCode2Session(jsCode string) (sessionInfo *SessionInfo, err erro
|
|||||||
return nil, err
|
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) {
|
func (a *API) SNSDecodeMiniProgramData(encryptedData, sessionKey, iv string) (decryptedData []byte, err error) {
|
||||||
return SNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
return SNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
||||||
|
|||||||
Reference in New Issue
Block a user