diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index 5f3952da3..8e836191b 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -343,7 +343,13 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db *dao. } } if len(vendorSkuIDs) > 0 { - l, err := dao.GetStoreSkuPriceAndWeight(db, order.VendorStoreID, order.VendorID, vendorSkuIDs) + var vendorStoreID string + if order.VendorID == model.VendorIDJDShop { + vendorStoreID = model.JdShopMainVendorStoreID + } else { + vendorStoreID = order.VendorStoreID + } + l, err := dao.GetStoreSkuPriceAndWeight(db, vendorStoreID, order.VendorID, vendorSkuIDs) if err != nil { globals.SugarLogger.Warnf("updateOrderSkuOtherInfo orderID:%s failed with err:%v", order.VendorOrderID, err) return err @@ -358,20 +364,25 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db *dao. if intVendorSkuID != 0 && v.VendorSkuID != "-70000" { // todo hard code skuBindInfo := skumapper[v.VendorSkuID] if skuBindInfo == nil { - //京东商城的话,门店里可能取不到对应商品 - if order.VendorID == model.VendorIDJDShop { - v.JxSkuID = v.SkuID - v.ShopPrice = v.SalePrice * 70 / 100 - } else { - globals.SugarLogger.Infof("updateOrderSkuOtherInfo [运营%s]%s订单sku找不到门店价格(或商品映射),orderID:%s, StoreID:%d, VendorSkuID:%s, sku:%v", opNumStr, model.VendorChineseNames[order.VendorID], order.VendorOrderID, jxStoreID, v.VendorSkuID, v) - } + globals.SugarLogger.Infof("updateOrderSkuOtherInfo [运营%s]%s订单sku找不到门店价格(或商品映射),orderID:%s, StoreID:%d, VendorSkuID:%s, sku:%v", opNumStr, model.VendorChineseNames[order.VendorID], order.VendorOrderID, jxStoreID, v.VendorSkuID, v) } else { // TODO 客户端当前逻辑认为SkuID为0为赠品 if v.SkuID == 0 { v.SkuID = v.JxSkuID } v.JxSkuID = skuBindInfo.SkuID - v.ShopPrice = int64(skuBindInfo.Price) + //京东商城的话,门店里可能取不到对应商品 + if order.VendorID == model.VendorIDJDShop { + v.JxSkuID = v.SkuID + storeSkus, _ := dao.GetStoresSkusInfo(db, []int{order.StoreID}, []int{v.SkuID}) + if len(storeSkus) > 0 { + v.ShopPrice = int64(storeSkus[0].Price) + } else { + v.ShopPrice = v.SalePrice * 70 / 100 + } + } else { + v.ShopPrice = int64(skuBindInfo.Price) + } v.Weight = skuBindInfo.Weight // 以本地信息中的WEIGHT为准 //饿鲜达的订单做一下处理 if strings.Contains(order.StoreName, model.ExdStoreName) { diff --git a/business/partner/purchase/jd/store.go b/business/partner/purchase/jd/store.go index aca822b80..14e966040 100644 --- a/business/partner/purchase/jd/store.go +++ b/business/partner/purchase/jd/store.go @@ -148,7 +148,7 @@ func (p *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin StationNo: store.VendorStoreID, Operator: userName, Phone: phone, - Mobile: store.Tel2, + Mobile: store.Tel1, } if store.SyncStatus&model.SyncFlagDeletedMask == 0 { storeParams.OutSystemID = utils.Int2Str(int(store.ID))