From b3b5077b9467d42bdc1c759ad3fd212f03c8826b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Mon, 27 Jul 2020 14:21:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BB=93=E7=AE=97=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxcallback/scheduler/defsch/defsch.go | 6 ++++++ business/jxutils/jxutils.go | 6 +++++- business/partner/purchase/jd/order.go | 7 +------ 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/business/jxcallback/scheduler/defsch/defsch.go b/business/jxcallback/scheduler/defsch/defsch.go index ab4be842b..fca8bea4b 100644 --- a/business/jxcallback/scheduler/defsch/defsch.go +++ b/business/jxcallback/scheduler/defsch/defsch.go @@ -1177,6 +1177,12 @@ func (s *DefScheduler) updateOrderByBill(order *model.GoodsOrder, bill *model.Wa } else { order.WaybillVendorID = bill.WaybillVendorID order.VendorWaybillID = bill.VendorWaybillID + if bill.Status == model.WaybillStatusDelivered { + stores, _ := dao.GetStoreList(dao.GetDB(), []int{jxutils.GetSaleStoreIDFromOrder(order)}, nil, nil, nil, "") + if len(stores) > 0 { + jxutils.RefreshOrderEarningPrice2(order, stores[0].PayPercentage) + } + } } if revertStatus { order.Status = model.OrderStatusFinishedPickup diff --git a/business/jxutils/jxutils.go b/business/jxutils/jxutils.go index c12e1cfac..41d5e9604 100644 --- a/business/jxutils/jxutils.go +++ b/business/jxutils/jxutils.go @@ -590,7 +590,11 @@ func RefreshOrderSkuRelated(order *model.GoodsOrder) *model.GoodsOrder { func RefreshOrderEarningPrice2(order *model.GoodsOrder, payPercentage int) *model.GoodsOrder { if payPercentage <= 50 { - order.NewEarningPrice = order.TotalShopMoney * int64((100 - payPercentage/2)) / 100 + if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX { + order.NewEarningPrice = order.TotalShopMoney * int64((100 - payPercentage/2)) / 100 + } else { + order.NewEarningPrice = order.TotalShopMoney * int64((100 - payPercentage)) / 100 + } } else { order.NewEarningPrice = order.EarningPrice } diff --git a/business/partner/purchase/jd/order.go b/business/partner/purchase/jd/order.go index 6d5fa4f3d..e74e245af 100644 --- a/business/partner/purchase/jd/order.go +++ b/business/partner/purchase/jd/order.go @@ -162,18 +162,13 @@ func updateOrderBySettleMent(order *model.GoodsOrder, orderSettlement *jdapi.Ord order2, _ := dao.GetSimpleOrder(dao.GetDB(), order.VendorOrderID) stores, _ := dao.GetStoreList(dao.GetDB(), []int{jxutils.GetSaleStoreIDFromOrder(order2)}, nil, nil, nil, "") if len(stores) > 0 { - if stores[0].PayPercentage <= 50 { - order.NewEarningPrice = orderSettlement.SettlementAmount * int64((100 - stores[0].PayPercentage/2)) / 100 - } else { - order.NewEarningPrice = order.EarningPrice - } + jxutils.RefreshOrderEarningPrice2(order, stores[0].PayPercentage) } else { globals.SugarLogger.Warnf("updateOrderBySettleMent,%v,%v,%v", order.VendorOrderID, orderSettlement.SettlementAmount) } } else { order.NewEarningPrice = order.EarningPrice } - globals.SugarLogger.Debugf("updateOrderBySettleMent,%v,%v,%v", order.VendorOrderID, order.NewEarningPrice, jxutils.GetSaleStoreIDFromOrder(order)) } }