From 2905c63ec884f531152a4e97a4d67034e8149d6d Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 17 12月 2024 10:28:43 +0800
Subject: [PATCH] 22

---
 LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs |   37 +++++++++++++++++++++++++++----------
 1 files changed, 27 insertions(+), 10 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 0b0d55e..05fade2 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
@@ -117,7 +117,7 @@
 
 
             //涓嬬嚎鏇存柊 璁㈠崟琛ㄦ暟鎹� _mesOrderGatherRep
-            await UpdateOrderGather(packageObj);
+            await UpdateOrderGather(packageObj, true);
 
             foreach (var quan in quanList)
             {
@@ -397,7 +397,7 @@
 
 
     /// <summary>
-    /// NG鍖呬笅绾�-鎵弿鍖呭彿
+    /// NG鍖呬笅绾挎垨 姝e父鍖� 涓嬬嚎 -鎵弿鍖呭彿
     /// </summary>
     /// <param name="input"></param>
     /// <returns></returns>
@@ -419,6 +419,13 @@
         //{
         //    throw Oops.Oh("鍘熷洜涓嶈兘涓虹┖");
         //}
+        string _OperRemark = "姝e父浜哄伐涓嬬嚎";
+        UpiFlagEnum upiFlagEnum = UpiFlagEnum.姝e父;
+        if (input.IsNG)
+        {
+            upiFlagEnum = UpiFlagEnum.NG;
+            _OperRemark = "NG涓嬬嚎";
+        }
 
         var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync();
         if (singlePackage == null)
@@ -431,7 +438,7 @@
             throw Oops.Oh($"鍖呭彿{input.PackageCode}宸茬粡涓嬬嚎");
         }
 
-        singlePackage.UpiFlag = UpiFlagEnum.NG;
+        singlePackage.UpiFlag = upiFlagEnum;
         singlePackage.UpdateTime = DateTime.Now;
         singlePackage.UpiStatus = UpiStatusEnum.宸蹭笅绾�;
         singlePackage.AreaCode = AreaCodeEnum.涓嬬嚎鍖哄煙;
@@ -462,7 +469,7 @@
             wmsRecordUpi.CreateTime = DateTime.Now;
             wmsRecordUpi.CreateUserName = _cretaorName;
             wmsRecordUpi.Location = "";
-            wmsRecordUpi.OperRemark = "NG涓嬬嚎";
+            wmsRecordUpi.OperRemark = _OperRemark;
             await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi);
 
             WmsRecordUpiNg wmsRecordUpiNg = new WmsRecordUpiNg();
@@ -470,7 +477,7 @@
             wmsRecordUpiNg.Id = Yitter.IdGenerator.YitIdHelper.NextId();
             wmsRecordUpiNg.CreateTime = DateTime.Now;
             wmsRecordUpiNg.CreateUserName = _cretaorName;
-            wmsRecordUpiNg.OperRemark = "NG涓嬬嚎";
+            wmsRecordUpiNg.OperRemark = _OperRemark;
             await _wmsRecordUpiNgRep.InsertAsync(wmsRecordUpiNg);
 
 
@@ -492,14 +499,14 @@
         }
 
         //涓嬬嚎鏇存柊 璁㈠崟琛ㄦ暟鎹� _mesOrderGatherRep
-        await UpdateOrderGather(singlePackage);
+        await UpdateOrderGather(singlePackage, input.IsNG);
 
 
         WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess();
         wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>();
         wmsRecordPackage.Id = Yitter.IdGenerator.YitIdHelper.NextId();
         wmsRecordPackage.Location = "";
-        wmsRecordPackage.OperRemark = "NG涓嬬嚎";
+        wmsRecordPackage.OperRemark = _OperRemark;
         wmsRecordPackage.CreateTime = DateTime.Now;
         wmsRecordPackage.CreateUserName = _cretaorName;
         await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage);
@@ -515,7 +522,7 @@
     /// </summary>
     /// <param name="singlePackage"></param>
     /// <returns></returns>
-    private async Task UpdateOrderGather(Mes_Package_Gather singlePackage)
+    private async Task UpdateOrderGather(Mes_Package_Gather singlePackage, bool isNG)
     {
         //涓嬬嚎鏇存柊 璁㈠崟琛ㄦ暟鎹� _mesOrderGatherRep
         bool isAdd = false;
@@ -533,11 +540,22 @@
         var packageList = await _mesPackageGatherRep.AsQueryable().Where(x => x.Info5 == singlePackage.Info5).ToListAsync();
         order.PackageNum = packageList.Count();
         order.UnLinePackageNum = packageList.Where(x => x.UpiStatus == UpiStatusEnum.宸蹭笅绾�).Count() + 1;
-        order.NgPackageNum = packageList.Where(x => x.UpiStatus == UpiStatusEnum.宸蹭笅绾� && x.UpiFlag == UpiFlagEnum.NG).Count() + 1;
+
+        order.NgPackageNum = packageList.Where(x => x.UpiStatus == UpiStatusEnum.宸蹭笅绾� && x.UpiFlag == UpiFlagEnum.NG).Count();
+        if (isNG)
+        {
+            order.NgPackageNum = order.NgPackageNum + 1;
+        }
+
         order.NoUnLinePackageNum = order.PackageNum - order.UnLinePackageNum;
 
         order.AllPackageArea = packageList.Sum(x => Convert.ToDecimal(x.Info13));
         order.ScanPackageArea = packageList.Where(x => x.UpiStatus == UpiStatusEnum.宸蹭笅绾� && x.UpiFlag == (int)UpiFlagEnum.姝e父).Sum(x => Convert.ToDecimal(x.Info13));
+        if (isNG == false)
+        {
+            order.ScanPackageArea = order.ScanPackageArea + Convert.ToDecimal(singlePackage.Info13);
+        }
+
         order.NoScanPackageArea = order.AllPackageArea - order.ScanPackageArea;
         if (isAdd)
         {
@@ -733,7 +751,6 @@
     [HttpPost]
     [ApiDescriptionSettings(Name = "PartClear")]
     [Description("WmsOperationTask/PartClear")]
-    [UnitOfWork]
     public async Task PartClear()
     {
         //妯″紡鍒ゆ柇

--
Gitblit v1.9.3