From 68ffdb50f5c39d09a11e83bbb415784cde1b6c3e Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <1247017146@qq.com>
Date: 星期一, 07 四月 2025 14:31:17 +0800
Subject: [PATCH] 优化静置入库出库口交管

---
 CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs |   44 +++++++++++++++++++++++++++++---------------
 1 files changed, 29 insertions(+), 15 deletions(-)

diff --git a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs
index 3e55872..6e71fa4 100644
--- a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs
+++ b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs
@@ -1,9 +1,7 @@
 锘縰sing Mapster;
 using Masuit.Tools;
-using Newtonsoft.Json;
 using Quartz;
 using System.Diagnostics.CodeAnalysis;
-using System.Text;
 using WIDESEAWCS_BasicInfoRepository;
 using WIDESEAWCS_Common;
 using WIDESEAWCS_Common.TaskEnum;
@@ -75,7 +73,20 @@
 
                         if (commonStackerCrane.StackerCraneWorkStatusValue == StackerCraneWorkStatus.Standby)
                         {
-                            Dt_Task? task = GetTask(commonStackerCrane);
+                            Dt_Task? task = null;
+                            if (commonStackerCrane.DeviceName.Contains("闈欑疆"))
+                            {
+                                if (StaticVariable.isLineRun)
+                                {
+                                    StaticVariable.isStackerRun = false;
+                                    task = GetTask(commonStackerCrane);
+                                }
+                            }
+                            else
+                            {
+                                task = GetTask(commonStackerCrane);
+                            }
+                             
                             if (task != null)
                             {
                                 StackerCraneTaskCommand? stackerCraneTaskCommand = ConvertToStackerCraneTaskCommand(task);
@@ -92,15 +103,15 @@
                                         bool sendFlag = commonStackerCrane.SendCommand(stackerCraneTaskCommand);
                                         if (sendFlag)
                                         {
-                                            StringBuilder builder = new StringBuilder();
-                                            builder.AppendLine();
-                                            builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戝爢鍨涙満鐘舵�侊細銆恵commonStackerCrane.StackerCraneStatusDes}銆�,鏃堕棿锛氥�恵DateTime.Now}銆�");
-                                            builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戞墜鑷姩鐘舵�侊細銆恵commonStackerCrane.StackerCraneAutoStatusDes}銆�,鏃堕棿锛氥�恵DateTime.Now}銆�");
-                                            builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戜綔涓氱姸鎬侊細銆恵commonStackerCrane.StackerCraneWorkStatusDes}銆�,鏃堕棿锛氥�恵DateTime.Now}銆�");
-                                            builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戜笅鍙戜换鍔℃垚鍔�,銆恵JsonConvert.SerializeObject(stackerCraneTaskCommand, Formatting.Indented)}銆�");
-                                            builder.AppendLine($"鏃堕棿锛氥�恵DateTime.Now}銆�");
-                                            builder.AppendLine();
-                                            ConsoleHelper.WriteColorLine(builder, ConsoleColor.Blue);
+                                            //StringBuilder builder = new StringBuilder();
+                                            //builder.AppendLine();
+                                            //builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戝爢鍨涙満鐘舵�侊細銆恵commonStackerCrane.StackerCraneStatusDes}銆�,鏃堕棿锛氥�恵DateTime.Now}銆�");
+                                            //builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戞墜鑷姩鐘舵�侊細銆恵commonStackerCrane.StackerCraneAutoStatusDes}銆�,鏃堕棿锛氥�恵DateTime.Now}銆�");
+                                            //builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戜綔涓氱姸鎬侊細銆恵commonStackerCrane.StackerCraneWorkStatusDes}銆�,鏃堕棿锛氥�恵DateTime.Now}銆�");
+                                            //builder.AppendLine($"銆恵commonStackerCrane.DeviceName}銆戜笅鍙戜换鍔℃垚鍔�,銆恵JsonConvert.SerializeObject(stackerCraneTaskCommand, Formatting.Indented)}銆�");
+                                            //builder.AppendLine($"鏃堕棿锛氥�恵DateTime.Now}銆�");
+                                            //builder.AppendLine();
+                                            //ConsoleHelper.WriteColorLine(builder, ConsoleColor.Blue);
                                             commonStackerCrane.LastTaskType = task.TaskType;
                                             _taskService.UpdateTaskStatusToNext(task.TaskNum);
                                         }
@@ -144,7 +155,10 @@
                 ConsoleHelper.WriteErrorLine($"{ex.Message}");
                 //Console.WriteLine(nameof(CommonStackerCraneJob) + ":" + ex.ToString());
             }
-            //WriteDebug("CommonConveyorLineJob", "test");
+            finally
+            {
+                StaticVariable.isStackerRun = true;
+            }
             return Task.CompletedTask;
         }
 
@@ -192,7 +206,7 @@
                     }
 
                     var content = _taskService.StackCraneTaskCompleted(e.TaskNum);
-                    if (commonStackerCrane.DeviceCode.Contains("CH") && task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
+                    if ((commonStackerCrane.DeviceCode.Contains("CH") || commonStackerCrane.DeviceCode.Contains("JZ")) && task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
                     {
                         task = _taskRepository.QueryFirst(x => x.TaskNum == e.TaskNum);
                         Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress);
@@ -430,7 +444,7 @@
             {
                 var value = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_InStation, SysConfigKeyConst.JZNGInBoundStation).ConfigValue;
                 var valueList = value.Split(',').ToList();
-                if ((valueList.Contains(task.SourceAddress)) && task.Roadway.Contains("CH") || task.Roadway.Contains("JZ"))
+                if ((valueList.Contains(task.SourceAddress)) && (task.Roadway.Contains("CH") || task.Roadway.Contains("JZ")))
                 {
                     string[] souredCodes = task.CurrentAddress.Split("-");
                     if (souredCodes.Length == 3)

--
Gitblit v1.9.3