From 9c8c8cf13ec34243c9df20876aef9c2e3b9378e2 Mon Sep 17 00:00:00 2001 From: gazebo Date: Sun, 17 Feb 2019 09:35:58 +0800 Subject: [PATCH] - handle jd order don't have orderPurchaseTime field --- business/partner/purchase/jd/order.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/business/partner/purchase/jd/order.go b/business/partner/purchase/jd/order.go index 4f8b0b767..1b1741ed4 100644 --- a/business/partner/purchase/jd/order.go +++ b/business/partner/purchase/jd/order.go @@ -95,6 +95,11 @@ func (c *PurchaseHandler) GetOrder(orderID string) (order *model.GoodsOrder, err func (c *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder) { result := orderData orderID := utils.Int64ToStr(utils.MustInterface2Int64(result["orderId"])) + const defaultStatusTimeField = "orderPurchaseTime" + statusTimeField := defaultStatusTimeField + if result[statusTimeField] == nil { // 814560888003021 orderPurchaseTime为空 + statusTimeField = "orderStartTime" + } order = &model.GoodsOrder{ VendorOrderID: orderID, VendorID: model.VendorIDJD, @@ -107,10 +112,10 @@ func (c *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo CoordinateType: model.CoordinateTypeMars, BuyerComment: utils.TrimBlankChar(utils.Interface2String(result["orderBuyerRemark"])), ExpectedDeliveredTime: utils.Str2TimeWithDefault(utils.Interface2String(result["orderPreEndDeliveryTime"]), utils.DefaultTimeValue), - PickDeadline: utils.Str2TimeWithDefault(utils.Interface2String(result["pickDeadline"]), utils.DefaultTimeValue), + PickDeadline: utils.Str2TimeWithDefault(utils.Interface2String(result["pickDeadline"]), utils.DefaultTimeValue), // 813951615000022 pickDeadline为空 VendorStatus: utils.Int64ToStr(utils.MustInterface2Int64(result["orderStatus"])), OrderSeq: int(utils.MustInterface2Int64(result["orderNum"])), - StatusTime: utils.Str2Time(result["orderPurchaseTime"].(string)), + StatusTime: utils.Str2Time(result[statusTimeField].(string)), OriginalData: string(utils.MustMarshal(result)), ActualPayPrice: utils.MustInterface2Int64(result["orderBuyerPayableMoney"]), Skus: []*model.OrderSku{},