diff --git a/business/partner/purchase/jd/order.go b/business/partner/purchase/jd/order.go index 3f355e37d..b53a21d67 100644 --- a/business/partner/purchase/jd/order.go +++ b/business/partner/purchase/jd/order.go @@ -76,7 +76,7 @@ func (c *PurchaseHandler) updateOrderFinancialInfo(a *jdapi.API, orderID string) orderSettlement, err := a.OrderShoudSettlementService2(orderID) if err == nil { if orderSettlement != nil { - updateOrderBySettleMent(order, orderSettlement) + UpdateOrderBySettleMent(order, orderSettlement) err = partner.CurOrderManager.UpdateOrderFields(order, []string{ /*"WaybillTipMoney", */ "TotalShopMoney", "PmSubsidyMoney", "NewEarningPrice"}) } } @@ -95,6 +95,7 @@ func (c *PurchaseHandler) onOrderMsg(a *jdapi.API, msg *jdapi.CallbackOrderMsg) if partner.CurOrderManager.GetStatusDuplicatedCount(status) > 0 { return nil } + if msg.MsgURL == jdapi.CallbackMsgOrderAccounting { retVal = c.OnFinancialMsg(msg) retVal = jdapi.Err2CallbackResponse(c.updateOrderFinancialInfo(a, msg.BillID), status.VendorStatus) @@ -174,7 +175,7 @@ func (c *PurchaseHandler) onOrderInfoChangeMsg(vendorOrgCode string, msg *jdapi. return jdapi.SuccessResponse } -func updateOrderBySettleMent(order *model.GoodsOrder, orderSettlement *jdapi.OrderSettlementInfo) { +func UpdateOrderBySettleMent(order *model.GoodsOrder, orderSettlement *jdapi.OrderSettlementInfo) { if orderSettlement != nil { order.TotalShopMoney = orderSettlement.SettlementAmount order.PmSubsidyMoney = orderSettlement.PlatOrderGoodsDiscountMoney + orderSettlement.PlatSkuGoodsDiscountMoney @@ -227,8 +228,8 @@ func (c *PurchaseHandler) getOrder(a *jdapi.API, orderID string) (order *model.G task.Run() _, err = task.GetResult(0) if order != nil && orderSettlement != nil { - updateOrderBySettleMent(order, orderSettlement) - err = partner.CurOrderManager.UpdateOrderFields(order, []string{"NewEarningPrice"}) + UpdateOrderBySettleMent(order, orderSettlement) + err = partner.CurOrderManager.UpdateOrderFields(order, []string{"NewEarningPrice", "TotalShopMoney"}) } return order, orderMap, err } @@ -451,7 +452,7 @@ func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bo } if err == nil { orderSettlement, _ := getAPI(order.VendorOrgCode).OrderShoudSettlementService2(order.VendorOrderID) - updateOrderBySettleMent(order, orderSettlement) + UpdateOrderBySettleMent(order, orderSettlement) err = partner.CurOrderManager.UpdateOrderFields(order, []string{"NewEarningPrice"}) } return err