可入库数量-计算公式变更

This commit is contained in:
tongfei
2023-12-05 17:01:58 +08:00
parent e8017a1469
commit 167ddf02f6

View File

@@ -275,10 +275,30 @@ namespace WMS.Web.Repositories
Qty = s.detail.AccruedQty, Qty = s.detail.AccruedQty,
DeliveredQty = s.detail.DeliveredQty, DeliveredQty = s.detail.DeliveredQty,
ReceiveQty = s.detail.ReceiveQty, ReceiveQty = s.detail.ReceiveQty,
AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty, //可入库数量=应入库数量-收货数量-已交数量+该明细的入库数量之和;
AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty- s.detail.DeliveredQty,
Remark = s.detail.Remark, Remark = s.detail.Remark,
ErpDetailId=s.detail.ErpDetailId ErpDetailId=s.detail.ErpDetailId
}).ToListAsync(); }).ToListAsync();
//找到入库单通过erp明细ID
var erpDetIds = list.GroupBy(x => x.ErpDetailId).Select(x => x.Key).ToList();
var instockDets= await _context.InStockDetails.Where(x => erpDetIds.Contains(x.ErpDetailId)).ToListAsync();
if (instockDets != null && instockDets.Count != 0)
{
list.ForEach(x =>
{
var current_instock_dets= instockDets.Where(t => t.ErpDetailId == x.ErpDetailId).ToList();
if (current_instock_dets != null && current_instock_dets.Count != 0 && x.ErpDetailId==current_instock_dets.FirstOrDefault().ErpDetailId)
{
//+该明细的入库数量之和;在这里处理
var instock_qty = current_instock_dets.Sum(x => x.Qty);
x.AvailableQty = x.AvailableQty + instock_qty;
}
});
}
return list; return list;
@@ -332,10 +352,29 @@ namespace WMS.Web.Repositories
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialId), Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialId),
Qty = s.AccruedQty, Qty = s.AccruedQty,
DeliveredQty = s.DeliveredQty, DeliveredQty = s.DeliveredQty,
AvailableQty = s.AccruedQty - s.ReceiveQty, //可入库数量=应入库数量-收货数量-已交数量+该明细的入库数量之和;
AvailableQty = s.AccruedQty - s.ReceiveQty- s.DeliveredQty,
Remark = s.Remark, Remark = s.Remark,
ErpDetailId=s.ErpDetailId ErpDetailId=s.ErpDetailId
}).ToListAsync(); }).ToListAsync();
//找到入库单通过erp明细ID
var erpDetIds = task_details.GroupBy(x => x.ErpDetailId).Select(x => x.Key).ToList();
var instockDets = await _context.InStockDetails.Where(x => erpDetIds.Contains(x.ErpDetailId)).ToListAsync();
if (instockDets != null && instockDets.Count != 0)
{
task_details.ForEach(x =>
{
var current_instock_dets = instockDets.Where(t => t.ErpDetailId == x.ErpDetailId).ToList();
if (current_instock_dets != null && current_instock_dets.Count != 0 && x.ErpDetailId == current_instock_dets.FirstOrDefault().ErpDetailId)
{
//+该明细的入库数量之和;在这里处理
var instock_qty = current_instock_dets.Sum(x => x.Qty);
x.AvailableQty = x.AvailableQty + instock_qty;
}
});
}
//找箱 //找箱
var task_box = await _context.InstockTaskBox.Where(x => ids.Contains(x.TaskId)) var task_box = await _context.InstockTaskBox.Where(x => ids.Contains(x.TaskId))
.Select(s => new SourceBillNoNoPurchaseBoxQueryResponse() .Select(s => new SourceBillNoNoPurchaseBoxQueryResponse()