diff --git a/business/partner/partner.go b/business/partner/partner.go index 3b405db4c..97928dc65 100644 --- a/business/partner/partner.go +++ b/business/partner/partner.go @@ -114,7 +114,7 @@ type IOrderManager interface { GetOrderWaybillInfo(ctx *jxcontext.Context, vendorOrderID string, vendorID int, isNotEnded, isGetPos bool) (bills []*model.WaybillExt, err error) - ChangeOrderInfo(order *model.GoodsOrder) (err error) + ChangeOrderInfo(order *model.GoodsOrder, valid map[string]interface{}) (err error) // afs order OnAfsOrderAdjust(afsOrder *model.AfsOrder, orderStatus *model.OrderStatus) (err error) OnAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *model.OrderStatus) (err error) diff --git a/business/partner/purchase/jd/order.go b/business/partner/purchase/jd/order.go index c445f1d6d..78328428e 100644 --- a/business/partner/purchase/jd/order.go +++ b/business/partner/purchase/jd/order.go @@ -124,7 +124,8 @@ func (c *PurchaseHandler) onOrderInfoChangeMsg(vendorOrgCode string, msg *jdapi. order, _, err := c.getOrder(a, msg.BillID) if err == nil { globals.SugarLogger.Debugf("onOrderInfoChangeMsg orderID:%s", msg.BillID) - partner.CurOrderManager.ChangeOrderInfo(order) + valid := orderInfoChangeSet(order, msg) + partner.CurOrderManager.ChangeOrderInfo(order, valid) } return retVal } @@ -557,3 +558,26 @@ func (c *PurchaseHandler) ConfirmSelfTake(ctx *jxcontext.Context, order *model.G } return err } + +func orderInfoChangeSet(order *model.GoodsOrder, msg *jdapi.CallbackOrderInfoChangeMsg) (valid map[string]interface{}) { + valid = make(map[string]interface{}) + if msg.BuyerFullAddress != "" { + valid["consigneeAddress"] = msg.BuyerFullAddress + } + if msg.BuyerFullName != "" { + valid["consigneeName"] = msg.BuyerFullName + } + if msg.BuyerMobile != "" { + valid["consigneeMobile"] = msg.BuyerMobile + } + if msg.BuyerLat != 0 { + valid["consigneeLat"] = jxutils.StandardCoordinate2Int(msg.BuyerLat) + } + if msg.BuyerLng != 0 { + valid["consigneeLng"] = jxutils.StandardCoordinate2Int(msg.BuyerLng) + } + if msg.OrderBuyerRemark != "" { + valid["buyerComment"] = msg.OrderBuyerRemark + } + return valid +} diff --git a/controllers/cms_sync.go b/controllers/cms_sync.go index 36938eee8..4cdba082e 100644 --- a/controllers/cms_sync.go +++ b/controllers/cms_sync.go @@ -361,7 +361,7 @@ func (c *SyncController) SyncStoreSkusFromYb() { c.callSyncStoreSkusFromYb(func(params *tSyncSyncStoreSkusFromYbParams) (retVal interface{}, errCode string, err error) { var storeIDs []int if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDs); err == nil { - cms.CurVendorSync.SyncStoreSkusFromYb(params.Ctx, storeIDs, params.IsAsync, params.IsContinueWhenError) + retVal, err = cms.CurVendorSync.SyncStoreSkusFromYb(params.Ctx, storeIDs, params.IsAsync, params.IsContinueWhenError) } return retVal, "", err })