From 17dc20c9c0c4d4e5e1d9e7c1663ae45150c7f839 Mon Sep 17 00:00:00 2001 From: tongfei <244188119@qq.com> Date: Thu, 14 Mar 2024 10:44:02 +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 --- .../Services/InStockTaskService.cs | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/src/WMS.Web.Domain/Services/InStockTaskService.cs b/src/WMS.Web.Domain/Services/InStockTaskService.cs index dd07f3db..0504134d 100644 --- a/src/WMS.Web.Domain/Services/InStockTaskService.cs +++ b/src/WMS.Web.Domain/Services/InStockTaskService.cs @@ -492,7 +492,7 @@ namespace WMS.Web.Domain.Services var erp_data = erp_list.Where(x => x.ErpDetailId == det.ErpDetailId).FirstOrDefault(); if (erp_data != null) { - + //2.1.2物料相同的,就改变数值 if (det.MaterialId == erp_data.MaterialId) { @@ -506,11 +506,13 @@ namespace WMS.Web.Domain.Services else { //老物料,应收数量修改为0 - det.AccruedQty = 0; + det.AccruedQty = 0; } //操作完后剔除 erp_removeList.Add(erp_data); } + + }); //2.1.1当物料相同,仓库不同或者物料不同,就新增一条明细 @@ -535,6 +537,8 @@ namespace WMS.Web.Domain.Services } }); + + //2.3遍历任务单:改变任务单的状态 data_list.ForEach(order => { @@ -547,6 +551,21 @@ namespace WMS.Web.Domain.Services else if(AccruedQtyTotal<= RealityQtyTotal) order.Status = InstockStatus.Already; }); + + //2.4金蝶删除的明细,要把任务单里的明细应入库数量改为0 + data_list.SelectMany(s => s.Details).ToList().ForEach(det => + { + + var order = data_list.Where(order => order.Id == det.Fid).FirstOrDefault(); + if (order != null) + { + var erp_list_details = erp_list.Where(erpData => erpData.BillNo == order.SourceBillNo).ToList(); + var ishaveNodetails = erp_list_details.Where(epd => epd.ErpDetailId != det.ErpDetailId).Any(); + if (ishaveNodetails) + det.AccruedQty = 0; + } + }); + } //2.3.提交任务单的修改