diff --git a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs index 447099f..0d74339 100644 --- a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs +++ b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs @@ -460,10 +460,46 @@ namespace BBWYB.Server.Business foreach (var purchaseOrder in request.AssociationPurchaseOrderList) { + var avgFreight = purchaseOrder.PurchaseFreight / purchaseOrder.AssocationOrderCostDetailList.Count(); var dbPurchaserOrder = dbPurchaseOrderList.FirstOrDefault(x => x.PurchaseOrderId == purchaseOrder.PurchaserOrderId); if (dbPurchaserOrder == null) { + dbPurchaserOrder = new OrderPurchaseInfo() + { + Id = idGenerator.NewLong(), + OrderId = request.OrderId, + PurchaseAccountId = purchaseOrder.PurchaseAccountId, + PurchaseAccountName = purchaseOrder.PurchaseAccountName, + IsEnabled = true, + BelongSkuIds = string.Join(",", purchaseOrder.AssocationOrderCostDetailList.Select(x => x.SkuId)), + CreateTime = DateTime.Now, + PurchaseMethod = Enums.PurchaseMethod.线下采购, + PurchaseOrderId = purchaseOrder.PurchaserOrderId, + PurchasePlatform = purchaseOrder.PurchasePlatform, + PurchaserId = purchaseOrder.PurchaserId, + PurchaserName = purchaseOrder.PurchaserName, + ShopId = request.ShopId + }; + insertOrderPurchaseInfoList.Add(dbPurchaserOrder); + foreach (var assOrderCostDetail in purchaseOrder.AssocationOrderCostDetailList) + { + var dbOrderSku = dbOrderSkuList.FirstOrDefault(osku => osku.SkuId == assOrderCostDetail.SkuId); + var orderCostDetail = new OrderCostDetail() + { + Id = idGenerator.NewLong(), + CreateTime = DateTime.Now, + DeductionQuantity = assOrderCostDetail.PurchaseQuantity, + IsEnabled = true, + OrderId = request.OrderId, + ProductId = dbOrderSku.ProductId, + SkuId = assOrderCostDetail.SkuId, + PurchaseAmount = assOrderCostDetail.SkuAmount, + PurchaseFreight = avgFreight, + TotalCost = assOrderCostDetail.SkuAmount + avgFreight + }; + insertOrderCostDetailList.Add(orderCostDetail); + } } else { diff --git a/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssocationOrderCostDetailRequest.cs b/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssocationOrderCostDetailRequest.cs index e6d4f2b..bec6e2e 100644 --- a/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssocationOrderCostDetailRequest.cs +++ b/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssocationOrderCostDetailRequest.cs @@ -14,19 +14,19 @@ /// public decimal SkuAmount { get; set; } - /// - /// 采购运费 - /// - public decimal PurchaseFreight { get; set; } + ///// + ///// 采购运费 + ///// + //public decimal PurchaseFreight { get; set; } /// /// 采购数量 /// public int PurchaseQuantity { get; set; } - /// - /// 采购单价 - /// - public decimal PurchasePrice { get; set; } + ///// + ///// 采购单价 + ///// + //public decimal PurchasePrice { get; set; } } } diff --git a/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssociationOrderRequest.cs b/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssociationOrderRequest.cs index 33d3ba1..e303045 100644 --- a/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssociationOrderRequest.cs +++ b/BBWYB.Server.Model/Dto/Request/PurchaseOrder/AssociationOrderRequest.cs @@ -7,6 +7,11 @@ /// public string OrderId { get; set; } + /// + /// 店铺Id (Shop对象的ShopId) + /// + public long ShopId { get; set; } + /// /// 采购单列表 ///