From 566c3580b7d8b9c753e713b7945242c4c73254a7 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 25 六月 2025 15:58:31 +0800
Subject: [PATCH] 新增查询静置空闲库位的常量和逻辑 在 `SysConfigKeyConst.cs` 文件中,新增常量`QueryLocationFreeJZ`,用于表示查询静置空闲库位的操作。 在 `RequestInbound.cs` 文件中,添加代码以获取 WMS IP 地址和查询静置空闲库位的配置,并在未配置时抛出异常。同时,修改了获取地址的逻辑,从查询 `QueryStockInfoForRealTrayJZAsync` 改为使用新添加的 `QueryLocationFreeJZ` 常量,以确保请求 WMS 时使用正确的地址。

---
 CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs |   24 +++++++++++++++++++-----
 1 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs
index 3f735b3..bcd1f7f 100644
--- a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs
+++ b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs
@@ -430,6 +430,22 @@
                     LogAndSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, logMessage, conveyorLineTaskCommand.TargetAddress.ToString());
                     return;
                 }
+
+                var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
+                var wmsbase = configz.Where(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE).FirstOrDefault()?.ConfigValue;
+                var address = configz.Where(x => x.ConfigKey == SysConfigKeyConst.QueryLocationFreeJZ).FirstOrDefault()?.ConfigValue;
+                if (wmsbase == null || address == null)
+                {
+                    throw new InvalidOperationException("WMS IP 鏈厤缃�");
+                }
+                var wmsIpAddrss = wmsbase + address;
+                var x = await HttpHelper.PostAsync(wmsIpAddrss, new { RoadwayNo = "JZSC" }.ToJsonString());
+                var LocationFree = JsonConvert.DeserializeObject<WebResponseContent>(x);
+                if (!LocationFree.Status)
+                {
+                    ConsoleHelper.WriteErrorLine(LocationFree.Message);
+                    return;
+                }
                 if (resultTrayCellsStatus.SerialNos.Count == 0)
                 {
                     var Traycontent = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode);
@@ -445,14 +461,12 @@
                 }
                 else
                 {
-                    var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
-                    var wmsbase = configz.Where(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE).FirstOrDefault()?.ConfigValue;
-                    var address = configz.Where(x => x.ConfigKey == SysConfigKeyConst.QueryStockInfoForRealTrayJZAsync).FirstOrDefault()?.ConfigValue;
-                    if (wmsbase == null || address == null)
+                    var QueryStockInfoForRealTrayJZ = configz.Where(x => x.ConfigKey == SysConfigKeyConst.QueryStockInfoForRealTrayJZAsync).FirstOrDefault()?.ConfigValue;
+                    if (wmsbase == null || QueryStockInfoForRealTrayJZ == null)
                     {
                         throw new InvalidOperationException("WMS IP 鏈厤缃�");
                     }
-                    var wmsIpAddrss = wmsbase + address;
+                    wmsIpAddrss = wmsbase + QueryStockInfoForRealTrayJZ;
                     var result = await HttpHelper.PostAsync(wmsIpAddrss, new { ProductLine = resultTrayCellsStatus.ProductionLine, PalletCode = command.Barcode }.ToJsonString());
                     var StockInfocontent = JsonConvert.DeserializeObject<WebResponseContent>(result);
                     if (StockInfocontent.Status)

--
Gitblit v1.9.3