From 157f0b8a78b200bf68ce96a163d8d59432e78283 Mon Sep 17 00:00:00 2001
From: zongzhibin <zongzhibin@weben-smart.com>
Date: 周四, 28 11月 2024 14:38:07 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/LA24030-LuLI_PackageLine

---
 LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs |  101 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 100 insertions(+), 1 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 10276d2..dc62396 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs
@@ -4,6 +4,9 @@
 using System.Data;
 using System.Web;
 using System.Text;
+using DocumentFormat.OpenXml.Office.CustomUI;
+using Microsoft.CodeAnalysis.Operations;
+
 namespace Admin.NET.Application;
 /// <summary>
 /// 鎿嶄綔浠诲姟鏈嶅姟
@@ -13,10 +16,20 @@
 {
     private readonly SqlSugarRepository<WmsRbLineTask> _rep;
     private readonly SqlSugarRepository<WmsStockQuan> _wmsStockQuanRep;
-    public WmsOperationTaskService(SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep)
+    private readonly SqlSugarRepository<Mes_Package_Gather> _mesPackageGatherRep;
+    private readonly SqlSugarRepository<SysConfig> _sysConfigRep;
+    private readonly SqlSugarRepository<Mes_BatchOrderUPI_New> _mesBatchOrderUpiRep;
+    public WmsOperationTaskService(SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep
+        , SqlSugarRepository<Mes_Package_Gather> mesPackageGatherRep
+        , SqlSugarRepository<SysConfig> sysConfigRep
+        , SqlSugarRepository<Mes_BatchOrderUPI_New> mesBatchOrderUpiRep
+        )
     {
+        _sysConfigRep = sysConfigRep;
+        _mesPackageGatherRep = mesPackageGatherRep;
         _rep = rep;
         _wmsStockQuanRep = wmsStockQuanRep;
+        _mesBatchOrderUpiRep = mesBatchOrderUpiRep;
     }
 
 
@@ -59,6 +72,92 @@
 
     }
 
+    /// <summary>
+    /// 鍒ゆ柇榻愬
+    /// </summary>
+    /// <param name="input"></param>
+    /// <returns></returns>
+    [HttpPost]
+    [ApiDescriptionSettings(Name = "ValdateQiTao")]
+    [Description("WmsOperationTask/ValdateQiTao")]
+    public async Task<ValidateQiTaoOutput> ValdateQiTao(ValidateQiTaoInput input)
+    {
+        ValidateQiTaoOutput output = new ValidateQiTaoOutput();
+        if (input == null || input.PackageCode == null)
+        {
+            throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
+        }
+        var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync();
+        if (singlePackage == null)
+        {
+            throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬眹鎬绘暟鎹�");
+        }
 
+        var setValue = "";
+        var _QiTaoReuslt = "";
+        var other_orderList = await _mesPackageGatherRep.AsQueryable().Where(x => x.Info5 == singlePackage.Info5 && x.PackageCode != input.PackageCode).ToListAsync();
+        var num = other_orderList.Where(x => x.UpiStatus == UpiStatusEnum.鍒濆 || x.UpiStatus == UpiStatusEnum.涓嶉綈鍖�).Count();
+        if (num > 0)
+        {
+            //涓嶉綈濂�
+            setValue = $"{input.PackageCode}|涓嶉綈濂�";
+            _QiTaoReuslt = "涓嶉綈濂�";
+        }
+        else
+        {
+            setValue = $"{input.PackageCode}|榻愬";
+            _QiTaoReuslt = "榻愬";
+        }
+
+        var sysConfig = await _sysConfigRep.GetFirstAsync(x => x.Code == CommonConst.WmsBZ30_QiTao);
+        if (sysConfig == null)
+        {
+            throw Oops.Oh($"娌℃湁閰嶇疆 鍒ゆ柇榻愬 鍊�");
+        }
+        if (!string.IsNullOrEmpty(sysConfig.Value))
+        {
+            throw Oops.Oh($"鍒ゆ柇榻愬鍊煎凡缁忓瓨鍦ㄥ�納sysConfig.Value},涓嶅厑璁告搷浣�");
+        }
+        sysConfig.Value = setValue;
+        await _sysConfigRep.UpdateAsync(sysConfig);
+
+        output = singlePackage.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