diff --git a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs index 9f7d5ddf..910c840b 100644 --- a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs +++ b/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs @@ -246,8 +246,8 @@ namespace BBWY.Server.Business }); List insertPurchaseOrders = new List(); - List insertOrderCostDetails = new List(); List insertPurchaseOrderDetails = new List(); + List insertOrderCostDetails = new List(); IInsert insertOrderCost = null; IInsert insertOrderDropShipping = null; @@ -287,6 +287,17 @@ namespace BBWY.Server.Business insertPurchaseOrders.Add(purchaseOrder); #endregion + #region 采购单明细 + insertPurchaseOrderDetails.AddRange(currentOrderSkuCargoParamList.Select(p => new PurchaseOrderDetail() + { + Id = idGenerator.NewLong(), + OrderId = createOnlinePurchaseOrderRequest.OrderId, + PurchaseOrderPKId = purchaseOrder.Id, + PurchaseSkuId = p.SkuId, + SkuId = orderSku.SkuId + })); + #endregion + #region 成本明细 var orderCostDetail = new OrderCostDetail() { @@ -307,7 +318,7 @@ namespace BBWY.Server.Business UnitCost = purchaseOrder.UnitCost, TotalCost = currentOrderSkuProductAmount + currentOrderSkuFreightAmount//purchaseOrder.UnitCost * orderSku.ItemTotal.Value }; - insertOrderCostDetail = fsql.Insert(orderCostDetail); + insertOrderCostDetails.Add(orderCostDetail); #endregion } @@ -321,7 +332,7 @@ namespace BBWY.Server.Business PlatformCommissionRatio = 0.05M, PreferentialAmount = dbOrder.PreferentialAmount, SDCommissionAmount = 0, - PurchaseAmount = createOrderResponse.TotalAmount + PurchaseAmount = purchaseOrderSimpleInfo.TotalAmount }; orderCost.PlatformCommissionAmount = dbOrder.OrderSellerPrice * orderCost.PlatformCommissionRatio; orderCost.Profit = dbOrder.OrderSellerPrice + @@ -341,7 +352,7 @@ namespace BBWY.Server.Business SellerAccount = createOnlinePurchaseOrderRequest.SellerAccount, CreateTime = DateTime.Now, DeliveryFreight = 0, - PurchaseAmount = createOrderResponse.TotalAmount, + PurchaseAmount = purchaseOrderSimpleInfo.TotalAmount, PurchaseOrderId = createOrderResponse.PurchaseOrderId, PurchasePlatform = createOnlinePurchaseOrderRequest.Platform }; @@ -350,8 +361,9 @@ namespace BBWY.Server.Business fsql.Transaction(() => { - insertPurchaseOrder.ExecuteAffrows(); - insertOrderCostDetail.ExecuteAffrows(); + fsql.Insert(insertPurchaseOrders).ExecuteAffrows(); + fsql.Insert(insertPurchaseOrderDetails).ExecuteAffrows(); + fsql.Insert(insertOrderCostDetails).ExecuteAffrows(); insertOrderCost.ExecuteAffrows(); insertOrderDropShipping.ExecuteAffrows(); fsql.Update(createOnlinePurchaseOrderRequest.OrderId).SetIf(dbOrder.OrderState == Enums.OrderState.等待采购, o => o.OrderState, Model.Enums.OrderState.待出库) diff --git a/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderDetail.cs b/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderDetail.cs index 777ff209..1c6810bf 100644 --- a/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderDetail.cs +++ b/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderDetail.cs @@ -12,6 +12,9 @@ namespace BBWY.Server.Model.Db [Column(StringLength = 50)] public string OrderId { get; set; } + [Column(StringLength = 50)] + public string SkuId { get; set; } + public long? PurchaseOrderPKId { get; set; } [Column(StringLength = 50)]