From 263dd633bf3db259c187e9b959f6e80d031a63ff Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期四, 26 三月 2026 11:29:56 +0800
Subject: [PATCH] 1

---
 Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineNewJob/ConveyorLineDispatchHandler.cs |   25 ++++++++++++++-----------
 1 files changed, 14 insertions(+), 11 deletions(-)

diff --git a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineNewJob/ConveyorLineDispatchHandler.cs b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineNewJob/ConveyorLineDispatchHandler.cs
index 5ece693..048b49a 100644
--- a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineNewJob/ConveyorLineDispatchHandler.cs
+++ b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineNewJob/ConveyorLineDispatchHandler.cs
@@ -86,17 +86,14 @@
             {
                 return;
             }
-
-            _targetAddressSelector.HandleInboundNextAddress(conveyorLine, task.NextAddress, childDeviceCode);
-
-            Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress);
-            if (newTask != null)
+            if (task.TaskType != (int)TaskOutboundTypeEnum.OutEmpty)
             {
-                if (_taskService.UpdateTaskStatusToNext(newTask).Status && newTask.TaskStatus == (int)TaskInStatusEnum.Line_InFinish)
-                {
-                    conveyorLine.SetValue(ConveyorLineDBNameNew.WCS_STB, 1, childDeviceCode);
-                }
+                _targetAddressSelector.HandleInboundNextAddress(conveyorLine, task.NextAddress, childDeviceCode);
             }
+
+            _ = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress);
+
+            conveyorLine.SetValue(ConveyorLineDBNameNew.WCS_STB, 1, childDeviceCode);
         }
 
         /// <summary>
@@ -123,7 +120,7 @@
             {
                 conveyorLine.SetValue(ConveyorLineDBNameNew.TaskNo, task.TaskNum, childDeviceCode);
                 conveyorLine.SetValue(ConveyorLineDBNameNew.Barcode, task.PalletCode, childDeviceCode);
-                conveyorLine.SetValue(ConveyorLineDBNameNew.Target, task.TargetAddress, childDeviceCode);
+                conveyorLine.SetValue(ConveyorLineDBNameNew.Target, task.NextAddress, childDeviceCode);
                 conveyorLine.SetValue(ConveyorLineDBNameNew.WCS_ACK, 1, childDeviceCode);
 
                 _taskService.UpdateTaskStatusToNext(task);
@@ -141,9 +138,15 @@
                 return;
             }
 
-            _targetAddressSelector.HandleOutboundNextAddress(conveyorLine, task.NextAddress, childDeviceCode);
+            if (task.TaskType != (int)TaskOutboundTypeEnum.OutEmpty)
+            {
+                _targetAddressSelector.HandleOutboundNextAddress(conveyorLine, task.NextAddress, childDeviceCode);
+            }
 
             _ = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress);
+
+
+            conveyorLine.SetValue(ConveyorLineDBNameNew.WCS_ACK, 1, childDeviceCode);
         }
 
         /// <summary>

--
Gitblit v1.9.3