From 1eefa557cb1f0292e31b4d005d03f251694ed408 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期二, 14 一月 2025 10:04:29 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn

---
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/板材仓/StackerCraneJob_BC.cs |   32 +++++++++++++++++++++++++++-----
 1 files changed, 27 insertions(+), 5 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs"
index b688792..1725ca9 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs"
@@ -135,14 +135,25 @@
         /// <param name="e"></param>
         private void CommonStackerCrane_StackerCraneTaskCompletedEventHandler(object? sender, WIDESEAWCS_QuartzJob.StackerCrane.StackerCraneTaskCompletedEventArgs e)
         {
-            CommonStackerCrane? commonStackerCrane = sender as CommonStackerCrane;
-            if (commonStackerCrane != null)
+            try
             {
-                if (commonStackerCrane.GetValue<StackerCraneDBName, short>(StackerCraneDBName.WorkType) != 5)
+                CommonStackerCrane? commonStackerCrane = sender as CommonStackerCrane;
+                if (commonStackerCrane != null)
                 {
-                    StackerCraneTaskCompleted(e.TaskNum, commonStackerCrane.DeviceCode);
-                    commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5);
+                    //if (commonStackerCrane.GetValue<StackerCraneDBName, short>(StackerCraneDBName.WorkType) != 5)
+                    {
+                        if (e.TaskNum != 0)
+                        {
+                            WriteDebug(commonStackerCrane.DeviceCode, $"璇诲彇鍒颁换鍔″畬鎴�,浠诲姟鍙�:{e.TaskNum}");
+                            StackerCraneTaskCompleted(e.TaskNum, commonStackerCrane.DeviceCode);
+                            commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5);
+                        }
+                    }
                 }
+            }
+            catch (Exception ex)
+            {
+                WriteError(nameof(StackerCraneJob_BC), "浠诲姟瀹屾垚澶辫触", ex);
             }
         }
 
@@ -160,6 +171,7 @@
                         {
                             _taskExecuteDetailService.AddTaskExecuteDetail(taskNum, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
                             _taskService.UpdateTaskExceptionMessage(taskNum, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
+                            WriteInfo(deviceCode, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
                             return WebResponseContent.Instance.Error($"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}");
                         }
                         Dt_Router router = _routerRepository.QueryFirst(x => x.InOutType == task.TaskType && x.StartPosi == stationManger.StationCode);
@@ -205,6 +217,16 @@
         /// <returns></returns>
         private Dt_Task? GetTask(CommonStackerCrane commonStackerCrane)
         {
+            try
+            {
+                Dt_Task oldTask = _taskRepository.QueryFirst(x => x.DeviceCode == commonStackerCrane.DeviceCode && x.TaskState == TaskStatusEnum.SC_Executing.ObjToInt());
+                if (oldTask != null)
+                {
+                    StackerCraneTaskCompleted(oldTask.TaskNum, commonStackerCrane.DeviceCode);
+                }
+            }
+            catch { }
+
             Dt_Task task;
             if (commonStackerCrane.LastTaskType == null)
             {

--
Gitblit v1.9.3