diff --git a/platformapi/fnpsapi/fnpsapi_test.go b/platformapi/fnpsapi/fnpsapi_test.go index 1b378c0e..1980cf8e 100644 --- a/platformapi/fnpsapi/fnpsapi_test.go +++ b/platformapi/fnpsapi/fnpsapi_test.go @@ -18,7 +18,7 @@ func init() { sugarLogger = logger.Sugar() baseapi.Init(sugarLogger) api = New("6a3e2073-1850-413b-9eb7-6c342ec36e1c", "a8248088-a742-4c33-a0db-03aeae00ca7d") - // api.SetToken("n-c6e3d9e2-8003-4855-ac88-ca8b9042d616-w") + api.SetToken("n-5ab70454-9ed6-4bf2-9215-b4646eb17992-w") } func TestGetAccessToken(t *testing.T) { diff --git a/platformapi/fnpsapi/order.go b/platformapi/fnpsapi/order.go index 88aaad20..f59637b8 100644 --- a/platformapi/fnpsapi/order.go +++ b/platformapi/fnpsapi/order.go @@ -122,9 +122,41 @@ func (a *API) ComplaintOrder(cancelOrderParam *CancelOrderParam) (err error) { return err } -func (a *API) QueryOrder(partnerOrderCode string) (err error) { - _, err = a.AccessAPI("v2/order/query", URL, map[string]interface{}{ +type QueryOrderResult struct { + AbnormalCode string `json:"abnormal_code"` + AbnormalDesc string `json:"abnormal_desc"` + CarrierDriverID int `json:"carrier_driver_id"` + CarrierDriverName string `json:"carrier_driver_name"` + CarrierDriverPhone string `json:"carrier_driver_phone"` + ComplaintDescription interface{} `json:"complaintDescription"` + ComplaintStatus interface{} `json:"complaintStatus"` + EstimateArriveTime int64 `json:"estimate_arrive_time"` + EventLogDetails []struct { + CarrierDriverName string `json:"carrier_driver_name"` + CarrierDriverPhone string `json:"carrier_driver_phone"` + OccurTime int64 `json:"occur_time"` + OrderStatus int `json:"order_status"` + } `json:"event_log_details"` + HandleID interface{} `json:"handleId"` + OrderID interface{} `json:"orderId"` + OrderStatus int `json:"order_status"` + OrderTotalDeliveryCost float64 `json:"order_total_delivery_cost"` + OrderTotalDeliveryDiscount interface{} `json:"order_total_delivery_discount"` + OvertimeCompensationCost float64 `json:"overtime_compensation_cost"` + Reason string `json:"reason"` + SupportClaims bool `json:"support_claims"` + TrackingID int64 `json:"trackingId"` + TrackingID2 int64 `json:"tracking_id"` + TransportStationID string `json:"transport_station_id"` + TransportStationTel string `json:"transport_station_tel"` +} + +func (a *API) QueryOrder(partnerOrderCode string) (queryOrderResult *QueryOrderResult, err error) { + result, err := a.AccessAPI("v2/order/query", URL, map[string]interface{}{ "partner_order_code": partnerOrderCode, }, true) - return err + if err == nil { + utils.Map2StructByJson(result["data"], &queryOrderResult, false) + } + return queryOrderResult, err } diff --git a/platformapi/fnpsapi/order_test.go b/platformapi/fnpsapi/order_test.go index bdeffb62..b841c011 100644 --- a/platformapi/fnpsapi/order_test.go +++ b/platformapi/fnpsapi/order_test.go @@ -8,11 +8,11 @@ import ( ) func TestQueryOrder(t *testing.T) { - err := api.QueryOrder("11") + result, err := api.QueryOrder("134420892247000001") if err != nil { t.Fatal(err) } - // t.Log(utils.Format4Output(result, false)) + t.Log(utils.Format4Output(result, false)) } func TestCreateOrder(t *testing.T) {