From 73e0e7c3886bc88e7ed37db24d28d8f6d159f1c0 Mon Sep 17 00:00:00 2001 From: qinchulong <qinchulong@hnkhzn.com> Date: 星期六, 08 三月 2025 18:57:10 +0800 Subject: [PATCH] 优先级修改 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs | 73 +++++++++++++++++++++--------------- 1 files changed, 42 insertions(+), 31 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs" index e2590a8..4f6742d 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs" @@ -54,10 +54,10 @@ var ZXJdevice = Storage.Devices.Find(v => v.DeviceName == "闃虫瀬鏁村舰鏈�"); //瑙勬暣鏈篜LC瀵硅薄 var GZJevice = Storage.Devices.Find(v => v.DeviceName == "闃虫瀬瑙勬暣鏈�"); - if (!device.Communicator.IsConnected || !ZXJdevice.Communicator.IsConnected || !GZJevice.Communicator.IsConnected) - { - return Task.CompletedTask; - } + //if (!device.Communicator.IsConnected || !ZXJdevice.Communicator.IsConnected || !GZJevice.Communicator.IsConnected) + //{ + // return Task.CompletedTask; + //} try { #region 澶╄溅瀹屾垚浠诲姟閫昏緫 @@ -71,11 +71,13 @@ { throw new Exception(string.Format("澶╄溅鍙栬揣瀹屾垚浠诲姟鏈煡璇㈠埌浠诲姟鍙穥0}", oHTReadData.R_TaskNumber)); } + //鍏ュ簱 if (nawtask.TaskType == (int)TaskInboundTypeEnum.Inbound) { - //濡傛灉浠诲姟鐨勭姸鎬佹槸澶╄溅鍏ュ簱鍙栬揣鎵ц涓� + //濡傛灉浠诲姟鐨勭姸鎬佹槸鍚︽槸澶╄溅鍏ュ簱鍙栬揣鎵ц涓� if (nawtask.TaskState == (int)TaskInStatusEnum.Line_InGrabExecuting) { + //淇敼鐘舵�� WebResponseContent result = _taskService.UpdateTaskStatusToLine_Ingrab(nawtask); if (result.Status) { @@ -83,11 +85,13 @@ } } } + //鍑哄簱 else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.Outbound) { - //濡傛灉浠诲姟鐘舵�佹槸澶╄溅鍑哄簱鍙栬揣鎵ц涓� + //濡傛灉浠诲姟鐘舵�佹槸鍚︽槸澶╄溅鍑哄簱鍙栬揣鎵ц涓� if (nawtask.TaskState == (int)TaskOutStatusEnum.Line_OutGrabExecuting) { + //淇敼鐘舵�� WebResponseContent result = _taskService.UpdateTaskStatusToLine_Outgrab(nawtask); if (result.Status) { @@ -95,8 +99,10 @@ } } } + //鐩存帴鍑哄簱 else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.OutInventory) { + //淇敼鐘舵�� WebResponseContent result = _taskService.UpdateTaskStatusToLine_Outgrab(nawtask); if (result.Status) { @@ -132,35 +138,40 @@ { if (oHTReadData.R_RunState == (int)RunStateEnum.Standby) { - Dt_Task? task = GetTask(InorOut); - if (task != null) + //鏌ョ湅浠诲姟姹犱腑鏄惁瀛樺湪鎵ц涓殑浠诲姟 + var tasking = _taskService.QueryTasking(); + if (tasking==null) { - OHTTaskCommand? oHTTaskCommand = ConvertToOHTTaskCommand(task); - if (oHTTaskCommand != null) + Dt_Task? task = GetTask(InorOut); + if (task != null) { - //缁欏ぉ杞︿笅鍙戜换鍔′箣鍓嶅皢姝ゅ�煎啓0 - device.SetValue(DeviceDBName.W_ConfirmSignal, 0); - //todo锛氬啓鍏ヤ换鍔″懡浠� - device.SetValue(DeviceDBName.W_Task_Type, oHTTaskCommand.W_Task_Type); - device.SetValue(DeviceDBName.W_Pick_Line, oHTTaskCommand.W_Pick_Line); - device.SetValue(DeviceDBName.W_Pick_Column, oHTTaskCommand.W_Pick_Column); - device.SetValue(DeviceDBName.W_Put_Line, oHTTaskCommand.W_Put_Line); - device.SetValue(DeviceDBName.W_Put_Column, oHTTaskCommand.W_Put_Column); - device.SetValue(DeviceDBName.W_Catch_1, oHTTaskCommand.W_Catch_1); - device.SetValue(DeviceDBName.W_Catch_2, oHTTaskCommand.W_Catch_2); - device.SetValue(DeviceDBName.W_TaskNumber, oHTTaskCommand.W_TaskNumber); - device.SetValue(DeviceDBName.W_CheckValue, oHTTaskCommand.W_CheckValue); - //纭淇″彿鍐欏叆1锛屼换鍔′笅杈惧畬鎴� - device.SetValue(DeviceDBName.W_ConfirmSignal, 1); - Thread.Sleep(500); - //WCS妫�娴嬪埌澶╄溅鐨凴_TaskState=1锛岄�氳繃W_ConfirmSignal缃�2琛ㄧず璁╁ぉ杞﹀紑濮嬫墽琛屼换鍔� - int R_TaskState = device.GetValue<DeviceDBName, short>(DeviceDBName.R_TaskState); - if (R_TaskState == 1) + OHTTaskCommand? oHTTaskCommand = ConvertToOHTTaskCommand(task); + if (oHTTaskCommand != null) { - device.SetValue(DeviceDBName.W_ConfirmSignal, 2); + //缁欏ぉ杞︿笅鍙戜换鍔′箣鍓嶅皢姝ゅ�煎啓0 + device.SetValue(DeviceDBName.W_ConfirmSignal, 0); + //todo锛氬啓鍏ヤ换鍔″懡浠� + device.SetValue(DeviceDBName.W_Task_Type, oHTTaskCommand.W_Task_Type); + device.SetValue(DeviceDBName.W_Pick_Line, oHTTaskCommand.W_Pick_Line); + device.SetValue(DeviceDBName.W_Pick_Column, oHTTaskCommand.W_Pick_Column); + device.SetValue(DeviceDBName.W_Put_Line, oHTTaskCommand.W_Put_Line); + device.SetValue(DeviceDBName.W_Put_Column, oHTTaskCommand.W_Put_Column); + device.SetValue(DeviceDBName.W_Catch_1, oHTTaskCommand.W_Catch_1); + device.SetValue(DeviceDBName.W_Catch_2, oHTTaskCommand.W_Catch_2); + device.SetValue(DeviceDBName.W_TaskNumber, oHTTaskCommand.W_TaskNumber); + device.SetValue(DeviceDBName.W_CheckValue, oHTTaskCommand.W_CheckValue); + //纭淇″彿鍐欏叆1锛屼换鍔′笅杈惧畬鎴� + device.SetValue(DeviceDBName.W_ConfirmSignal, 1); + Thread.Sleep(500); + //WCS妫�娴嬪埌澶╄溅鐨凴_TaskState=1锛岄�氳繃W_ConfirmSignal缃�2琛ㄧず璁╁ぉ杞﹀紑濮嬫墽琛屼换鍔� + int R_TaskState = device.GetValue<DeviceDBName, short>(DeviceDBName.R_TaskState); + if (R_TaskState == 1) + { + device.SetValue(DeviceDBName.W_ConfirmSignal, 2); + } + //涓嬪彂鎴愬姛锛屼慨鏀逛换鍔$姸鎬� + _taskService.UpdateTaskStatus(task.TaskId, oHTTaskCommand.W_Task_Type); } - //涓嬪彂鎴愬姛锛屼慨鏀逛换鍔$姸鎬� - _taskService.UpdateTaskStatus(task.TaskNum, oHTTaskCommand.W_Task_Type); } } } -- Gitblit v1.9.3