From c6d9d8e2c8c5a0dea829164e4a1a5c3ed9703521 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周日, 08 12月 2024 11:19:47 +0800 Subject: [PATCH] 2 --- LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs | 78 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 77 insertions(+), 1 deletions(-) diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs index 66cd5c8..6c51f54 100644 --- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs @@ -227,7 +227,7 @@ /// <summary> - /// NG鍖呬笅绾� + /// NG鍖呬笅绾�-鎵弿鍖呭彿 /// </summary> /// <param name="input"></param> /// <returns></returns> @@ -300,5 +300,81 @@ } + /// <summary> + /// NG鍖呬笅绾�-鎵弿浠跺彿 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost] + [ApiDescriptionSettings(Name = "SetNG")] + [Description("WmsOperationTask/SetNG")] + [UnitOfWork] + public async Task SetNG(SetNGInput input) + { + if (input == null) + { + throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖"); + } + if (string.IsNullOrEmpty(input.Upi)) + { + throw Oops.Oh("閮ㄤ欢鏉$爜涓嶈兘涓虹┖"); + } + //if (string.IsNullOrEmpty(input.Reason)) + //{ + // throw Oops.Oh("鍘熷洜涓嶈兘涓虹┖"); + //} + + var singleUpi = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.UPI == input.Upi).FirstAsync(); + if (singleUpi == null) + { + throw Oops.Oh($"娌℃湁鎵惧埌閮ㄤ欢鏉$爜{input.Upi}鐨勬暟鎹�"); + } + var packageCode = singleUpi.PackageCode; + var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == packageCode).FirstAsync(); + if (singlePackage == null) + { + throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{packageCode}鐨勬眹鎬绘暟鎹�"); + } + + singlePackage.UpiFlag = UpiFlagEnum.NG; + singlePackage.UpdateTime = DateTime.Now; + + var upiLineQueueList = await _mes_Upi_LineQueueRep.AsQueryable().Where(x => x.PackageCode == packageCode).ToListAsync(); + if (upiLineQueueList?.Count > 0) + { + await _mes_Upi_LineQueueRep.DeleteAsync(upiLineQueueList); + } + + var upiList = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.PackageCode == packageCode).ToListAsync(); + if (upiList == null) + { + throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{packageCode}鐨勬澘浠舵暟鎹�"); + } + foreach (var item in upiList) + { + item.UpiFlag = UpiFlagEnum.NG; + item.UpdateTime = DateTime.Now; + + WmsRecordUpiProcess wmsRecordUpi = new WmsRecordUpiProcess(); + wmsRecordUpi = item.Adapt<WmsRecordUpiProcess>(); + wmsRecordUpi.CreateTime = DateTime.Now; + wmsRecordUpi.Location = ""; + wmsRecordUpi.OperRemark = "鏍囪NG"; + await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi); + } + + + WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess(); + wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>(); + wmsRecordPackage.Location = ""; + wmsRecordPackage.OperRemark = "鏍囪NG"; + await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage); + + + await _mesPackageGatherRep.UpdateAsync(singlePackage); + await _mesBatchOrderUpiRep.UpdateRangeAsync(upiList); + + } + } -- Gitblit v1.9.3