From 7b7018d1bf97e3704af40d8e4e7506259be2c96e Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Thu, 8 Aug 2024 14:19:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 | Bin 275060 -> 275060 bytes src/WMS.Web.Api/Controllers/TestController.cs | 23 ++++++----- src/WMS.Web.Domain/Entitys/InstockTask.cs | 6 +++ src/WMS.Web.Domain/Entitys/OutStockTask.cs | 7 ++++ .../Services/InStockTaskService.cs | 13 ++++-- .../Services/OutStockTaskService.cs | 37 +++++++++++++----- 6 files changed, 64 insertions(+), 22 deletions(-) diff --git a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 index 7411ce32402b457ae660173a87303315122660c7..f3a1efb51c3430b377a50c411e38d83dafd946e1 100644 GIT binary patch delta 26627 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 TestHJ() { - //await _inStockTaskService.ErpDel(DateTime.Now.AddDays(-100)); - // List boxIds = new List(); - // boxIds.Add(5324); - //var b= await _inStockService.UnBind(boxIds, true); - //var b= await _boxService.Sync(null); - //var list = await _outStockTaskRepositories.GetEntityList(new List { 14321 }); + //await _inStockTaskService.ErpDel(); + //await _outStockTaskService.BillQueryForMisDeliveryOutStock(true, new List() { "QTCK026812" }); + await _inStockTaskService.SysnMiscellaneous(new List() { "QTRK028204" }, true); + + + // List boxIds = new List(); + // boxIds.Add(5324); + //var b= await _inStockService.UnBind(boxIds, true); + //var b= await _boxService.Sync(null); + //var list = await _outStockTaskRepositories.GetEntityList(new List { 14321 }); //await _outStockRepositories.GetEntityListBySerialNumbers(new List() { "131VU-32C5A" }); //await _outStockRepositories.GetEntityListByBoxBillNos(new List() { "CTN0002187" }); @@ -431,7 +436,7 @@ namespace WMS.Web.Api.Controllers if (IscanAccess) return Result.ReFailure(ResultCodes.Concurrent_Instock); - Console.WriteLine("process..."+ IscanAccess); + Console.WriteLine("process..." + IscanAccess); _redisConcurrentProcessService.UpdateAccessStatus(cacheKey, true); var tt2 = _redisConcurrentProcessService.GetRedisKeyValue(cacheKey); Console.WriteLine("redis1:" + tt2); @@ -440,9 +445,9 @@ namespace WMS.Web.Api.Controllers [HttpGet] [Route("lst3")] - public async Task lst3() + public async Task lst3() { - var data=await _erpService.BillQueryForPurchaseInStockBy("1541693",null); + var data = await _erpService.BillQueryForPurchaseInStockBy("1541693", null); return true; } } diff --git a/src/WMS.Web.Domain/Entitys/InstockTask.cs b/src/WMS.Web.Domain/Entitys/InstockTask.cs index e2d05671..03f00e5f 100644 --- a/src/WMS.Web.Domain/Entitys/InstockTask.cs +++ b/src/WMS.Web.Domain/Entitys/InstockTask.cs @@ -183,6 +183,12 @@ namespace WMS.Web.Domain.Entitys //改变状态 public void ChangeInstockStatus() { + //明细都作废后 整个单据作废 + if (this.Details.Count() == this.Details.Where(w => w.IsRepeal == true).Count()) + { + this.Status = InstockStatus.Repeal; + return; + } //明细中:所有的应入数量之和 var totalAccruedQty = this.Details.Where(x => x.IsRepeal != true).Sum(x => x.AccruedQty); diff --git a/src/WMS.Web.Domain/Entitys/OutStockTask.cs b/src/WMS.Web.Domain/Entitys/OutStockTask.cs index e12214d9..1c79b792 100644 --- a/src/WMS.Web.Domain/Entitys/OutStockTask.cs +++ b/src/WMS.Web.Domain/Entitys/OutStockTask.cs @@ -161,6 +161,13 @@ namespace WMS.Web.Domain.Entitys { if (this.Status == OutStockStatus.Repeal) return; + //明细都作废后 整个单据作废 + if (this.Details.Count() == this.Details.Where(w => w.IsRepeal == true).Count()) + { + this.Status = OutStockStatus.Repeal; + return; + } + var details = this.Details.Where(w => w.IsRepeal != true).ToList(); if (details.Where(w => w.RealityQty <= 0).Count() == details.Count()) diff --git a/src/WMS.Web.Domain/Services/InStockTaskService.cs b/src/WMS.Web.Domain/Services/InStockTaskService.cs index 1451a463..33510611 100644 --- a/src/WMS.Web.Domain/Services/InStockTaskService.cs +++ b/src/WMS.Web.Domain/Services/InStockTaskService.cs @@ -527,7 +527,7 @@ namespace WMS.Web.Domain.Services { //老物料,应收数量修改为0 det.AccruedQty = 0; - + det.IsRepeal = true; } //操作完后剔除 erp_removeList.Add(erp_data); @@ -593,14 +593,21 @@ namespace WMS.Web.Domain.Services else if (details_Groups.Sum(x => x.RealityQtyTotal) >= details_Groups.Sum(x => x.AccruedQtyTotal)) order.Status = InstockStatus.Already; + //明细都作废后 整个单据作废 + if (order.Details.Count() == order.Details.Where(w => w.IsRepeal == true).Count()) + { + order.Status = InstockStatus.Repeal; + } }); //2.4金蝶删除的明细,要把任务单里的明细应入库数量改为0 - data_list.SelectMany(x => x.Details).Where(c => !erp_list.Any(a => a.ErpDetailId == c.ErpDetailId)).ToList().ForEach(x => { x.AccruedQty = 0; }); + data_list.SelectMany(x => x.Details).Where(c => !erp_list.Any(a => a.ErpDetailId == c.ErpDetailId)) + .ToList() + .ForEach(x => { x.AccruedQty = 0;x.IsRepeal = true; }); //过滤掉已经作废的单据 - data_list = data_list.Where(w => w.Status != InstockStatus.Repeal).ToList(); + //data_list = data_list.Where(w => w.Status != InstockStatus.Repeal).ToList(); //更新修改时间 data_list.ForEach(f => f.WmsUpdateTime = DateTime.Now); //2.3.提交任务单的修改 diff --git a/src/WMS.Web.Domain/Services/OutStockTaskService.cs b/src/WMS.Web.Domain/Services/OutStockTaskService.cs index e4ec2fa3..98d92927 100644 --- a/src/WMS.Web.Domain/Services/OutStockTaskService.cs +++ b/src/WMS.Web.Domain/Services/OutStockTaskService.cs @@ -170,16 +170,30 @@ namespace WMS.Web.Domain.Services isUpdate = SsynDateComparison(outStockTask, erps); foreach (var erp in erps) { - //仓库不同 拆分成不同的 - var detail = outStockTask.Details.FirstOrDefault(w => w.MaterialNumber == erp.MaterialNumber); - //如果该明细作废 则不修改了 - if (detail != null && detail.IsRepeal == true) + //仓库不同 拆分成不同的 //如果该明细作废 则不修改了 + var details = outStockTask.Details.Where(w => w.MaterialNumber == erp.MaterialNumber).ToList(); + bool isAdd = false; + if (details.Count() == 0) isAdd = true; + OutStockTaskDetails detail = null; + if (details.Where(w => w.IsRepeal != true).Count() > 0) { - //操作完后剔除 - erp_removeList.Add(erp); - continue; + detail = details.Where(w => w.IsRepeal != true).FirstOrDefault(); + isAdd = false; } - if (detail == null) + if (details.Count() != 0 && details.Count() == details.Where(w => w.IsRepeal == true).Count()) + { + //因为出库任务单有合并的情况 所以需要过滤一下 + //如果这个明细已经作废,同时金蝶的明细id对不上 则新增一条明细 + if (details.SelectMany(s => s.ErpDetails).Where(w => w.Erp_DetailId == erp.Erp_DetailId).Count() == 0) + isAdd = true; + else + { + //操作完后剔除 + erp_removeList.Add(erp); + continue; + } + } + if (isAdd == true) { //添加一条物料明细 detail = _mapper.Map(erp); @@ -218,8 +232,9 @@ namespace WMS.Web.Domain.Services outStockTask.GenerateStatus(); } } - //过滤掉已作废的单 - var update_date_list = data_list.Where(w => update_ids.Contains(w.Id) && w.Status != OutStockStatus.Repeal).ToList(); + // + //var update_date_list = data_list.Where(w => update_ids.Contains(w.Id) && w.Status != OutStockStatus.Repeal).ToList(); + var update_date_list = data_list.Where(w => update_ids.Contains(w.Id)).ToList(); //更新修改时间 update_date_list.ForEach(f => f.WmsUpdateTime = DateTime.Now); //2.2.提交修改 @@ -290,6 +305,8 @@ namespace WMS.Web.Domain.Services //金蝶删除明细数据后 wms对应数据修改为0 ed.AccruedQty = 0; d.AccruedQty = d.ErpDetails.Sum(s => s.AccruedQty); + if (d.AccruedQty == 0) + d.IsRepeal = true; isUpdate = true; } }