From 6ff7cbed707a5bbc6a97f44257285bc8fdb2c9c9 Mon Sep 17 00:00:00 2001
From: qinchulong <qinchulong@hnkhzn.com>
Date: 星期五, 28 二月 2025 21:22:25 +0800
Subject: [PATCH] 1

---
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs |   72 +++++++++++++++++++++++++++++++----
 1 files changed, 63 insertions(+), 9 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 7b60067..db1ebc6 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"
@@ -15,7 +15,9 @@
 using System.Reflection;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEAWCS_Common.TaskEnum;
 using WIDESEAWCS_Communicator;
+using WIDESEAWCS_Core;
 using WIDESEAWCS_Core.Helper;
 using WIDESEAWCS_ITaskInfoService;
 using WIDESEAWCS_Model.Models;
@@ -52,21 +54,19 @@
                     //_taskService.Repository; //浠撳偍灞傦紝杩涜鏁版嵁搴撹闂�
                     OHTReadData oHTReadData = new OHTReadData();
                     #region 璇诲彇澶╄溅璁惧鏁版嵁
-                    oHTReadData.R_HeartBeat = device.GetValue<DeviceDBName, short>(DeviceDBName.R_HeartBeat);
+                    oHTReadData.R_HeartBeat = device.GetValue<DeviceDBName, bool>(DeviceDBName.R_HeartBeat);
                     oHTReadData.R_RunMode = device.GetValue<DeviceDBName, short>(DeviceDBName.R_RunMode);
                     oHTReadData.R_RunState = device.GetValue<DeviceDBName, short>(DeviceDBName.R_RunState);
                     oHTReadData.R_AlarmCode = device.GetValue<DeviceDBName, short>(DeviceDBName.R_AlarmCode);
                     oHTReadData.R_TaskState = device.GetValue<DeviceDBName, short>(DeviceDBName.R_TaskState);
-                    oHTReadData.R_CurrentLine = device.GetValue<DeviceDBName, short>(DeviceDBName.R_CurrentLine);
-                    oHTReadData.R_CurrentColumn = device.GetValue<DeviceDBName, short>(DeviceDBName.R_CurrentColumn);
-                    oHTReadData.R_RiseUp_Position = device.GetValue<DeviceDBName, short>(DeviceDBName.R_RiseUp_Position);
-                    oHTReadData.R_TaskNumber = device.GetValue<DeviceDBName, short>(DeviceDBName.R_TaskNumber);
+                    oHTReadData.R_CurrentLine = device.GetValue<DeviceDBName, int>(DeviceDBName.R_CurrentLine);
+                    oHTReadData.R_CurrentColumn = device.GetValue<DeviceDBName, int>(DeviceDBName.R_CurrentColumn);
+                    oHTReadData.R_RiseUp_Position = device.GetValue<DeviceDBName, int>(DeviceDBName.R_RiseUp_Position);
+                    oHTReadData.R_TaskNumber = device.GetValue<DeviceDBName, int>(DeviceDBName.R_TaskNumber);
                     oHTReadData.R_Loaded_1 = device.GetValue<DeviceDBName, short>(DeviceDBName.R_Loaded_1);
                     oHTReadData.R_Loaded_2 = device.GetValue<DeviceDBName, short>(DeviceDBName.R_Loaded_2);
-                    oHTReadData.R_Code_1 = device.GetValue<DeviceDBName, string>(DeviceDBName.R_Code_1);
-                    oHTReadData.R_Code_2 = device.GetValue<DeviceDBName, string>(DeviceDBName.R_Code_2);
-                    oHTReadData.R_Load_Requst_1 = device.GetValue<DeviceDBName, bool>(DeviceDBName.R_Load_Requst_1);
-                    oHTReadData.R_Load_Requst_2 = device.GetValue<DeviceDBName, bool>(DeviceDBName.R_Load_Requst_2);
+                    oHTReadData.weight = device.GetValue<DeviceDBName, float>(DeviceDBName.weight);
+                    
                     #region 娴嬭瘯鐢�
                     //oHTReadData.R_HeartBeat = 1;
                     //oHTReadData.R_RunMode = 2;
@@ -91,6 +91,60 @@
                     string ohtData = JsonConvert.SerializeObject(oHTReadData);
                     _webSocketServer.PublishAllClientPayload(ohtData);
 
+                    //鍥犱负澶╃殑浠诲姟闇�瑕佸垎娈靛彂閫侊紝鎵�浠ュ彇璐у畬鎴愪笌鏀捐揣瀹屾垚闇�瑕佸崟鐙仛閫昏緫鎺у埗
+                    //鍒ゆ柇澶╄溅褰撳墠鏈夋病鏈夊彇璐у畬鎴愪换鍔′俊鍙�
+                    if (oHTReadData.R_RunState == (int)RunStateEnum.PickUpCompleted && oHTReadData.R_TaskState==(int)TaskStateEnum.TaskComplete)
+                    {
+                        //澶╄溅鍙栬揣瀹屾垚閫昏緫
+                        var nawtask = _taskService.QueryTakNnmTask(oHTReadData.R_TaskNumber);
+                        if (nawtask==null)
+                        {
+                            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) 
+                                {
+                                    device.SetValue(DeviceDBName.W_ConfirmSignal, 3);
+                                }
+                            }
+                        }
+                        else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.Outbound)
+                        {
+                            //濡傛灉浠诲姟鐘舵�佹槸澶╄溅鍑哄簱鍙栬揣鎵ц涓�
+                            if (nawtask.TaskState == (int)TaskOutStatusEnum.Line_OutGrabExecuting)
+                            {
+                                WebResponseContent result = _taskService.UpdateTaskStatusToLine_Outgrab(nawtask);
+                                if (result.Status)
+                                {
+                                    device.SetValue(DeviceDBName.W_ConfirmSignal, 3);
+                                }
+                            }
+                        }
+                    }
+                    else if (oHTReadData.R_RunState == (int)RunStateEnum.PutCompleted && oHTReadData.R_TaskState == (int)TaskStateEnum.TaskComplete)
+                    {
+                        //澶╄溅鏀捐揣瀹屾垚閫昏緫
+                        var nawtask = _taskService.QueryTakNnmTask(oHTReadData.R_TaskNumber);
+                        if (nawtask == null)
+                        {
+                            throw new Exception(string.Format("澶╄溅鏀捐揣瀹屾垚浠诲姟鏈煡璇㈠埌浠诲姟鍙穥0}", oHTReadData.R_TaskNumber));
+                        }
+                        if (nawtask.TaskType == (int)TaskInboundTypeEnum.Inbound)
+                        {
+                            
+                        }
+                        else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.Outbound)
+                        {
+                            
+                        }
+                    }
+
+
                     if (oHTReadData.R_RunMode == (int)RunModeEnum.Automatic && oHTReadData.R_AlarmCode == (int)AlarmCodeEnum.Normal)
                     {
                         if (oHTReadData.R_RunState == (int)RunStateEnum.Standby)

--
Gitblit v1.9.3