From 0e888302f32321272cfb2e9f654507b18162a98a Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Wed, 9 Nov 2022 09:25:03 +0800
Subject: [PATCH] =?UTF-8?q?=E9=94=80=E5=94=AE=E6=AF=9B=E5=88=A9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWY.Server.Business/Order/OrderBusiness.cs | 14 ++++++++------
.../PurchaseOrder/PurchaseOrderBusiness.cs | 1 +
BBWY.Server.Business/Sync/OrderSyncBusiness.cs | 3 ++-
3 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/BBWY.Server.Business/Order/OrderBusiness.cs b/BBWY.Server.Business/Order/OrderBusiness.cs
index 1e906e9e..f651ee3a 100644
--- a/BBWY.Server.Business/Order/OrderBusiness.cs
+++ b/BBWY.Server.Business/Order/OrderBusiness.cs
@@ -425,6 +425,9 @@ namespace BBWY.Server.Business
///
public void AutoCalculationCost(AutoCalculationCostRequest autoCalculationCostRequest)
{
+ if (autoCalculationCostRequest.PlatformCommissionRatio == 0M)
+ autoCalculationCostRequest.PlatformCommissionRatio = 0.05M;
+
var dbOrder = fsql.Select(autoCalculationCostRequest.OrderId).ToOne();
if (dbOrder == null)
throw new BusinessException($"订单号{autoCalculationCostRequest.OrderId}不存在");
@@ -519,15 +522,13 @@ namespace BBWY.Server.Business
SkuAmount = purchaseOrder.SingleSkuAmount * deductionQuantity,
StorageAmount = purchaseOrder.SingleStorageAmount * deductionQuantity
};
- orderCostDetail.SkuGrossProfit = orderSku.Price.Value * deductionQuantity - (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight);
+ orderCostDetail.SkuGrossProfit = orderSku.Price.Value * deductionQuantity - (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight) - orderSku.Price.Value * deductionQuantity * autoCalculationCostRequest.PlatformCommissionRatio;
insertOrderCostDetailList.Add(orderCostDetail);
}
}
if (orderCost == null)
{
- if (autoCalculationCostRequest.PlatformCommissionRatio == 0M)
- autoCalculationCostRequest.PlatformCommissionRatio = 0.05M;
#region 计算成本
orderCost = new OrderCost()
{
@@ -584,6 +585,8 @@ namespace BBWY.Server.Business
///
public void ManualCalculationCost(ManualCalculationCostRequest manualCalculationCostRequest)
{
+ if (manualCalculationCostRequest.PlatformCommissionRatio == 0M)
+ manualCalculationCostRequest.PlatformCommissionRatio = 0.05M;
var dbOrder = fsql.Select(manualCalculationCostRequest.OrderId).ToOne();
if (dbOrder == null)
throw new BusinessException($"订单号{manualCalculationCostRequest.OrderId}不存在");
@@ -617,7 +620,8 @@ namespace BBWY.Server.Business
if (osku != null)
{
orderCostDetail.SkuGrossProfit = osku.Price.Value * orderCostDetail.DeductionQuantity -
- (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight);
+ (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight) *
+ osku.Price.Value * orderCostDetail.DeductionQuantity * manualCalculationCostRequest.PlatformCommissionRatio;
}
}
@@ -627,8 +631,6 @@ namespace BBWY.Server.Business
var orderCost = fsql.Select(manualCalculationCostRequest.OrderId).ToOne();
if (orderCost == null)
{
- if (manualCalculationCostRequest.PlatformCommissionRatio == 0M)
- manualCalculationCostRequest.PlatformCommissionRatio = 0.05M;
orderCost = new OrderCost()
{
OrderId = manualCalculationCostRequest.OrderId,
diff --git a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
index 1aabcfd4..87a89dac 100644
--- a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
+++ b/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
@@ -261,6 +261,7 @@ namespace BBWY.Server.Business
//UnitCost = purchaseOrder.UnitCost,
//TotalCost = currentOrderSkuProductAmount + currentOrderSkuFreightAmount//purchaseOrder.UnitCost * orderSku.ItemTotal.Value
};
+ orderCostDetail.SkuGrossProfit = orderSku.Price.Value * orderCostDetail.DeductionQuantity - (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight) - orderSku.Price.Value * orderCostDetail.DeductionQuantity * createOnlinePurchaseOrderRequest.PlatformCommissionRatio;
insertOrderCostDetails.Add(orderCostDetail);
#endregion
}
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index 7a0b63f9..81cedc2d 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -517,7 +517,8 @@ namespace BBWY.Server.Business
IsEnabled = true
};
orderCostDetail.SkuGrossProfit = itemPrice * deductionQuantity -
- (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight);
+ (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight) -
+ itemPrice * deductionQuantity * platformCommissionRatio;
insertOrderCostDetailList.Add(orderCostDetail);
}
}