From 8d08b978884f1102bd09ce393d13e0e3c731daf5 Mon Sep 17 00:00:00 2001 From: tongfei <244188119@qq.com> Date: Tue, 12 Mar 2024 18:05:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InStockTaskRepositories.cs | 35 +++++++++---------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/src/WMS.Web.Repositories/InStockTaskRepositories.cs b/src/WMS.Web.Repositories/InStockTaskRepositories.cs index 9d21f18e..4b99331d 100644 --- a/src/WMS.Web.Repositories/InStockTaskRepositories.cs +++ b/src/WMS.Web.Repositories/InStockTaskRepositories.cs @@ -175,30 +175,29 @@ namespace WMS.Web.Repositories DeliveredQty = s.detail.DeliveredQty, ReceiveQty = s.detail.ReceiveQty, //采购:可入库数量=应入库数量-收货数量-已交数量+该明细的入库数量之和; - AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty- s.detail.DeliveredQty+s.detail.RealityQty, + //AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty- s.detail.DeliveredQty+s.detail.RealityQty, + AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty - s.detail.DeliveredQty, Remark = s.detail.Remark, ErpDetailId=s.detail.ErpDetailId }).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 && t.MaterialId==x.MaterialId && t.Qty!=0).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(s => s.Qty); - // x.AvailableQty = x.AvailableQty + instock_qty; - // } - // }); - //} - - + 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 && t.MaterialId == x.MaterialId && t.Qty != 0).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(s => s.Qty); + x.AvailableQty = x.AvailableQty + instock_qty; + } + }); + } return list;