From b06b33248bcc19f8ea6c574124d5c536b7fa6c49 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 16 七月 2025 19:22:27 +0800
Subject: [PATCH] 添加常温直接出库功能,增加实框入库存在任务发往异常口

---
 CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs |   43 ++++++++++++++++++++++++++++++++++---------
 1 files changed, 34 insertions(+), 9 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..d300996 100644
--- a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs
+++ b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs
@@ -153,6 +153,21 @@
         {
             if (command.Barcode != "NoRead")
             {
+                if (_taskRepository.QueryFirst(x => x.PalletCode == command.Barcode) != null)
+                {
+                    var taskExecuting = _taskRepository.QueryFirst(x => x.PalletCode == command.Barcode && (x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting || x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish));
+
+                    if (taskExecuting != null)
+                    {
+                        taskExecuting.ExceptionMessage = "鏈帴鏀跺埌绾夸綋瀹屾垚淇″彿绯荤粺鍐呴儴鑷姩瀹屾垚";
+                        _taskService.Delete(taskExecuting);
+                    }
+
+                    ConsoleHelper.WriteErrorLine($"褰撳墠鎵樼洏瀛樺湪浠诲姟锛氥�恵command.Barcode}銆�");
+
+                    WriteInfo(conveyorLine.DeviceName, $"褰撳墠鎵樼洏瀛樺湪浠诲姟{command.Barcode}");
+
+                }
                 string isTrue = string.Empty;
 
                 ResultTrayCellsStatus result = GetResultTrayCellsStatus(command, stationManager);
@@ -189,10 +204,6 @@
                     taskDTO = CreateEmptyTrayTaskDto(command.Barcode, childDeviceCode); ;
                 }
 
-                if (_taskRepository.QueryFirst(x => x.PalletCode == taskDTO.PalletCode) != null)
-                {
-                    WriteInfo(conveyorLine.DeviceName, "褰撳墠鎵樼洏瀛樺湪浠诲姟");
-                }
                 CreateEmptyTryTask(conveyorLine, command, childDeviceCode, ProtocalDetailValue, taskDTO);
             }
 
@@ -430,6 +441,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 +472,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