Browse Source

增加sku毛利

qianyi
shanji 3 years ago
parent
commit
b3b36e5163
  1. 14
      BBWY.Server.Business/Order/OrderBusiness.cs
  2. 6
      BBWY.Server.Business/Sync/OrderSyncBusiness.cs
  3. 6
      BBWY.Server.Model/Db/Order/OrderCostDetail.cs

14
BBWY.Server.Business/Order/OrderBusiness.cs

@ -519,6 +519,7 @@ namespace BBWY.Server.Business
SkuAmount = purchaseOrder.SingleSkuAmount * deductionQuantity,
StorageAmount = purchaseOrder.SingleStorageAmount * deductionQuantity
};
orderCostDetail.SkuGrossProfit = orderSku.Price.Value * deductionQuantity - (orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight);
insertOrderCostDetailList.Add(orderCostDetail);
}
}
@ -593,6 +594,12 @@ namespace BBWY.Server.Business
IUpdate<OrderCost> updateOrderCost = null;
IInsert<OrderCost> insertOrderCost = null;
List<OrderCostDetail> insertOrderCostDetailList = new List<OrderCostDetail>();
var orderSkuList = fsql.Select<OrderSku>().Where(osku => osku.OrderId == manualCalculationCostRequest.OrderId).ToList(osku => new
{
osku.SkuId,
osku.Price,
osku.ItemTotal
});
var dbAfterSaleOrderList = fsql.Select<AfterSaleOrder>().Where(aso => aso.OrderId == manualCalculationCostRequest.OrderId).ToList();
if (manualCalculationCostRequest.IsSetStorageType)
@ -605,6 +612,13 @@ namespace BBWY.Server.Business
orderCostDetail.CreateTime = DateTime.Now;
orderCostDetail.OrderId = manualCalculationCostRequest.OrderId;
orderCostDetail.PurchaseOrderPKId = 0;
var osku = orderSkuList.FirstOrDefault(o => o.SkuId == orderCostDetail.SkuId);
if (osku != null)
{
orderCostDetail.SkuGrossProfit = osku.Price.Value * orderCostDetail.DeductionQuantity -
(orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight);
}
}
var totalPurchaseCost = insertOrderCostDetailList.Sum(ocd => ocd.TotalCost);

6
BBWY.Server.Business/Sync/OrderSyncBusiness.cs

@ -461,6 +461,7 @@ namespace BBWY.Server.Business
{
var orderSkuId = orderSkuJToken.Value<string>("skuId");
var itemTotal = orderSkuJToken.Value<int>("itemTotal"); //sku购买数量
var itemPrice = orderSkuJToken.Value<decimal>("jdPrice"); //sku单价
var isReduceMultiTimes = false; //是否多次扣减库存
while (itemTotal != 0)
{
@ -510,8 +511,11 @@ namespace BBWY.Server.Business
OutStorageAmount = purchaseOrder.SingleOutStorageAmount * deductionQuantity,
PurchaseFreight = purchaseOrder.SingleFreight * deductionQuantity,
SkuAmount = purchaseOrder.SingleSkuAmount * deductionQuantity,
StorageAmount = purchaseOrder.SingleStorageAmount * deductionQuantity
StorageAmount = purchaseOrder.SingleStorageAmount * deductionQuantity,
IsEnabled = true
};
orderCostDetail.SkuGrossProfit = itemPrice * deductionQuantity -
(orderCostDetail.TotalCost + orderCostDetail.DeliveryExpressFreight);
insertOrderCostDetailList.Add(orderCostDetail);
}
}

6
BBWY.Server.Model/Db/Order/OrderCostDetail.cs

@ -99,7 +99,11 @@ namespace BBWY.Server.Model.Db
[Column(DbType = "bit")]
public bool IsEnabled { get; set; } = true;
/// <summary>
/// sku毛利
/// </summary>
[Column(DbType = "decimal(20,2)")]
public decimal SkuGrossProfit { get; set; } = 0.00M;
/// <summary>
/// 总计
/// </summary>

Loading…
Cancel
Save