From 87cc1c0d71fe6c6000ac6523bbb367d5ac29b5d2 Mon Sep 17 00:00:00 2001 From: 肖洋 <cathay_xy@163.com> Date: 星期六, 11 一月 2025 16:40:51 +0800 Subject: [PATCH] 更新设备通讯超时设置及优化代码结构 --- Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs | 52 +++++++++++++++++++++++++++++----------------------- 1 files changed, 29 insertions(+), 23 deletions(-) diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs index b6d195c..c3c0fc5 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs @@ -58,15 +58,10 @@ { try { - // speStackerCrane.GetStackerCraneStatus<StackerCraneAutoStatus>(); - // speStackerCrane.GetStackerCraneStatus<StackerCraneWorkStatus>(); - // speStackerCrane.GetStackerCraneStatus<StackerCraneStatus>(); CommonStackerCrane commonStackerCrane = (CommonStackerCrane)context.JobDetail.JobDataMap.Get("JobParams"); if (commonStackerCrane != null) { - //EqptAlive(commonStackerCrane); - //Console.Out.WriteLine(commonStackerCrane.DeviceName); if (!commonStackerCrane.IsEventSubscribed) { commonStackerCrane.StackerCraneTaskCompletedEventHandler += CommonStackerCrane_StackerCraneTaskCompletedEventHandler;//璁㈤槄浠诲姟瀹屾垚浜嬩欢 @@ -86,10 +81,10 @@ { var taskNum = commonStackerCrane.GetValue<StackerCraneDBName, int>(StackerCraneDBName.TaskNum); //var taskBarCode = commonStackerCrane.GetValue<StackerCraneDBName, string>(StackerCraneDBName.Barcode); - ConsoleHelper.WriteColorLine($"銆恵commonStackerCrane.DeviceName}銆戝爢鍨涙満浠诲姟鍙凤細銆恵taskNum}銆戜换鍔′换鍔″彿锛氥�恵task.TaskNum}", ConsoleColor.DarkBlue); + ConsoleHelper.WriteColorLine($"銆恵commonStackerCrane.DeviceName}銆戝爢鍨涙満浠诲姟鍙凤細銆恵taskNum}銆戜换鍔′换鍔″彿锛氥�恵task.TaskNum}銆�", ConsoleColor.DarkBlue); if (taskNum == 0) { - ConsoleHelper.WriteColorLine($"銆恵commonStackerCrane.DeviceName}銆戜换鍔″彿涓恒�恵0}銆�,鎵樼洏鍙蜂笉涓�鑷村彲浠ヤ笅鍙戜换鍔�", ConsoleColor.DarkBlue); + ConsoleHelper.WriteColorLine($"銆恵commonStackerCrane.DeviceName}銆戜换鍔″彿涓恒�恵0}銆�,浠诲姟鍙蜂笉涓�鑷村彲浠ヤ笅鍙戜换鍔�", ConsoleColor.DarkBlue); bool sendFlag = commonStackerCrane.SendCommand(stackerCraneTaskCommand); if (sendFlag) { @@ -161,8 +156,9 @@ { if (commonStackerCrane.GetValue<StackerCraneDBName, short>(StackerCraneDBName.WorkType) != 5) { - //Console.Out.WriteLine("TaskCompleted" + e.TaskNum); - ConsoleHelper.WriteColorLine($"銆恵commonStackerCrane.DeviceName}銆戜换鍔″畬鎴�,浠诲姟鍙凤細銆恵e.TaskNum}銆�", ConsoleColor.Blue); + string str = $"銆恵commonStackerCrane.DeviceName}銆戜换鍔″畬鎴�,浠诲姟鍙凤細銆恵e.TaskNum}銆�"; + WriteInfo(commonStackerCrane.DeviceName, str); + ConsoleHelper.WriteColorLine(str, ConsoleColor.Blue); var task = _taskRepository.QueryFirst(x => x.TaskNum == e.TaskNum); if (task == null) commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5); @@ -189,7 +185,7 @@ return; } - _taskService.StackCraneTaskCompleted(e.TaskNum); + var content = _taskService.StackCraneTaskCompleted(e.TaskNum); if (commonStackerCrane.DeviceCode.Contains("CH") && task.TaskType == (int)TaskOutboundTypeEnum.Outbound) { task = _taskRepository.QueryFirst(x => x.TaskNum == e.TaskNum); @@ -201,7 +197,10 @@ _taskRepository.DeleteData(task); _htyRepository.AddData(TASKHTY); } - commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5); + var isWorkType = commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5); + str = $"WMS|WCS浠诲姟瀹屾垚锛氥�恵content.Status}銆�,鍫嗗灈鏈哄畬鎴愪俊鍙峰啓鍏ワ細銆恵isWorkType}銆�,浠诲姟鍙凤細銆恵e.TaskNum}銆�,鎵樼洏鍙凤細銆恵task.PalletCode}銆�"; + WriteInfo(commonStackerCrane.DeviceName, str); + ConsoleHelper.WriteColorLine(str, ConsoleColor.Blue); } } } @@ -312,26 +311,33 @@ } else { - //Dt_Router? router = _routerService.QueryNextRoutes(task.Roadway, task.NextAddress).FirstOrDefault(); - if (router != null) + if ((task.NextAddress == ("002-021-001") || task.NextAddress == ("001-021-001")) && task.Roadway.Contains("JZ")) { - IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == router.ChildPosiDeviceCode); - if (device != null) + return task; + } + else + { + //Dt_Router? router = _routerService.QueryNextRoutes(task.Roadway, task.NextAddress).FirstOrDefault(); + if (router != null) { - CommonConveyorLine conveyorLine = (CommonConveyorLine)device; - if (conveyorLine.IsOccupiedx(router.ChildPosi))//鍑哄簱绔欏彴鏈鍗犵敤 + IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == router.ChildPosiDeviceCode); + if (device != null) { - return task; + CommonConveyorLine conveyorLine = (CommonConveyorLine)device; + if (conveyorLine.IsOccupiedx(router.ChildPosi))//鍑哄簱绔欏彴鏈鍗犵敤 + { + return task; + } + } + else + { + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒板嚭搴撶珯鍙般�恵router.ChildPosiDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤"); } } else { - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒板嚭搴撶珯鍙般�恵router.ChildPosiDeviceCode}銆戝搴旂殑閫氳瀵硅薄锛屾棤娉曞垽鏂嚭搴撶珯鍙版槸鍚﹁鍗犵敤"); + _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴"); } - } - else - { - _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"鏈壘鍒扮珯鍙般�恵task.NextAddress}銆戜俊鎭紝鏃犳硶鏍¢獙绔欏彴"); } } return null; -- Gitblit v1.9.3