Browse Source

合并重复的采购sku

qianyi
shanji 3 years ago
parent
commit
5b36d36c8c
  1. 21
      BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs

21
BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs

@ -232,6 +232,27 @@ namespace BBWY.Server.Business
if (dbOrder.OrderState != Model.Enums.OrderState.)
throw new BusinessException("只能为等待采购的订单进行采购");
#region 合并重复的采购sku
var repeatPurchaseSkuGroups = createOnlinePurchaseOrderRequest.CargoParamList.GroupBy(p => p.SkuId).ToList();
foreach (var group in repeatPurchaseSkuGroups)
{
if (group.Count() > 1)
{
var repeatSkus = group.ToList();
foreach (var repeatSku in repeatSkus)
createOnlinePurchaseOrderRequest.CargoParamList.Remove(repeatSku);
createOnlinePurchaseOrderRequest.CargoParamList.Add(new CargoParamRequest()
{
BelongSkuId = repeatSkus[0].BelongSkuId,
ProductId = repeatSkus[0].ProductId,
SkuId = repeatSkus[0].SkuId,
SpecId = repeatSkus[0].SpecId,
Quantity = repeatSkus.Sum(s => s.Quantity)
});
}
}
#endregion
var orderSkus = fsql.Select<OrderSku>().Where(osku => osku.OrderId == createOnlinePurchaseOrderRequest.OrderId).ToList();
var createOrderResponse = platformSDKBusinessList.FirstOrDefault(p => p.Platform == createOnlinePurchaseOrderRequest.Platform)

Loading…
Cancel
Save