|
- package express_select
-
- import (
- zhios_third_party_utils "code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/utils"
- "encoding/json"
- "errors"
- "github.com/tidwall/gjson"
- )
-
- func Send(appcode string, param map[string]string) (*ExpressData, error) {
- url := "https://jmexpresv2.market.alicloudapi.com/express/query-v2"
- headers := map[string]string{
- "Authorization": "APPCODE " + appcode,
- }
- post, err := zhios_third_party_utils.CurlPost(url, param, headers)
- if err != nil {
- return nil, err
- }
- if gjson.Get(string(post), "code").Int() != 200 {
- return nil, errors.New(gjson.Get(string(post), "msg").String())
- }
- data := gjson.Get(string(post), "data").String()
- var res ExpressData
- json.Unmarshal([]byte(data), &res)
- LogisticsStatus := map[string]string{
- "WAIT_ACCEPT": "待揽收",
- "ACCEPT": "已揽收",
- "TRANSPORT": "运输中",
- "DELIVERING": "派件中",
- "AGENT_SIGN": "已代签收",
- "SIGN": "已签收",
- "FAILED": "包裹异常",
- }
- for k, v := range res.LogisticsTraceDetails {
- res.LogisticsTraceDetails[k].LogisticsStatusDesc = LogisticsStatus[v.LogisticsStatus]
- }
- return &res, nil
- }
|