From fe5dd3d5e16980a1fe722712e488875e34bc7455 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 30 11月 2024 06:20:25 +0800
Subject: [PATCH] 22

---
 LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs |   72 +++++++++++++++++++++++++++++++++--
 1 files changed, 67 insertions(+), 5 deletions(-)

diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs
index c884e1d..f4a625a 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs
@@ -6,6 +6,7 @@
 using System.Text;
 using DocumentFormat.OpenXml.Office.CustomUI;
 using Microsoft.CodeAnalysis.Operations;
+using Admin.NET.Application.Service.WmsTask.WmsRbLineTask.Dto;
 
 namespace Admin.NET.Application;
 /// <summary>
@@ -18,15 +19,22 @@
     private readonly SqlSugarRepository<WmsStockQuan> _wmsStockQuanRep;
     private readonly SqlSugarRepository<Mes_Package_Gather> _mesPackageGatherRep;
     private readonly SqlSugarRepository<SysConfig> _sysConfigRep;
+    private readonly SqlSugarRepository<Mes_BatchOrderUPI_New> _mesBatchOrderUpiRep;
+    private readonly SqlSugarRepository<Mes_Order_Gather> _mesOrderGatherRep;
+
     public WmsOperationTaskService(SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep
         , SqlSugarRepository<Mes_Package_Gather> mesPackageGatherRep
         , SqlSugarRepository<SysConfig> sysConfigRep
+        , SqlSugarRepository<Mes_BatchOrderUPI_New> mesBatchOrderUpiRep
+        , SqlSugarRepository<Mes_Order_Gather> mesOrderGatherRep
         )
     {
         _sysConfigRep = sysConfigRep;
         _mesPackageGatherRep = mesPackageGatherRep;
         _rep = rep;
         _wmsStockQuanRep = wmsStockQuanRep;
+        _mesBatchOrderUpiRep = mesBatchOrderUpiRep;
+        _mesOrderGatherRep = mesOrderGatherRep;
     }
 
 
@@ -84,15 +92,28 @@
         {
             throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
         }
-        var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync();
-        if (singlePackage == null)
+
+        var package = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync();
+        if (package == null)
         {
             throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬眹鎬绘暟鎹�");
         }
 
+
+
+        var sysConfig = await _sysConfigRep.GetFirstAsync(x => x.Code == CommonConst.WmsBZ30_QiTao);
+        if (sysConfig == null)
+        {
+            throw Oops.Oh($"娌℃湁閰嶇疆 鍒ゆ柇榻愬 鍊�");
+        }
+        if (!string.IsNullOrEmpty(sysConfig.Value) && sysConfig.Value != "鏃�")
+        {
+            throw Oops.Oh($"鍒ゆ柇榻愬鍊煎凡缁忓瓨鍦ㄥ�納sysConfig.Value},涓嶅厑璁告搷浣�");
+        }
+
         var setValue = "";
         var _QiTaoReuslt = "";
-        var other_orderList = await _mesPackageGatherRep.AsQueryable().Where(x => x.Info5 == singlePackage.Info5 && x.PackageCode != input.PackageCode).ToListAsync();
+        var other_orderList = await _mesPackageGatherRep.AsQueryable().Where(x => x.Info5 == package.Info5 && x.PackageCode != input.PackageCode).ToListAsync();
         var num = other_orderList.Where(x => x.UpiStatus == UpiStatusEnum.鍒濆 || x.UpiStatus == UpiStatusEnum.涓嶉綈鍖�).Count();
         if (num > 0)
         {
@@ -106,13 +127,54 @@
             _QiTaoReuslt = "榻愬";
         }
 
-        var sysConfig = await _sysConfigRep.GetFirstAsync(x => x.Code == CommonConst.WmsBZ30_QiTao);
+
+
         sysConfig.Value = setValue;
         await _sysConfigRep.UpdateAsync(sysConfig);
 
-        output = singlePackage.Adapt<ValidateQiTaoOutput>();
+        //璁板綍宸ヤ綔鏃堕棿鍜屽伐浣滀汉
+
+
+        output = package.Adapt<ValidateQiTaoOutput>();
         output.QiTaoReuslt = _QiTaoReuslt;
         return output;
     }
+
+
+    /// <summary>
+    /// 鏍稿鏍囩
+    /// </summary>
+    /// <param name="input"></param>
+    /// <returns></returns>
+    [HttpPost]
+    [ApiDescriptionSettings(Name = "ValdateLabel")]
+    [Description("WmsOperationTask/ValdateLabel")]
+    public async Task<Mes_Package_Gather> ValdateLabel(ValidateLabelInput input)
+    {
+        if (input == null || input.PackageCode == null || input.Upi == null)
+        {
+            throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
+        }
+
+        var singleUpi = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.UPI == input.Upi).FirstAsync();
+        if (singleUpi == null)
+        {
+            throw Oops.Oh($"娌℃湁鎵惧埌閮ㄤ欢鏉$爜{input.Upi}鐨勬暟鎹�");
+        }
+        if (singleUpi.PackageCode != input.PackageCode)
+        {
+            throw Oops.Oh($"閮ㄤ欢鏉$爜{input.Upi}鎵�灞炲寘鏄瘂singleUpi.PackageCode},璺熸壂鎻忕殑鍖呭彿{input.PackageCode}涓嶇");
+        }
+
+        var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync();
+        if (singlePackage == null)
+        {
+            throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬眹鎬绘暟鎹�");
+        }
+        return singlePackage;
+    }
+
+
+   
 }
 

--
Gitblit v1.9.3