| | |
| | | private readonly ITaskService _taskService; |
| | | private readonly Idt_ErrormsginfoService _ErrormsginfoService; |
| | | WebSocketServer _webSocketServer; |
| | | public OHTJob(ITaskService taskService, WebSocketServer webSocketServer,Idt_ErrormsginfoService errormsginfoService) |
| | | public OHTJob(ITaskService taskService, WebSocketServer webSocketServer, Idt_ErrormsginfoService errormsginfoService) |
| | | { |
| | | _taskService = taskService;//注å
¥ |
| | | _webSocketServer = webSocketServer; |
| | |
| | | var ZXJdevice = Storage.Devices.Find(v => v.DeviceName == "鳿æ´å½¢æº"); |
| | | //è§æ´æºPLC对象 |
| | | 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 å¤©è½¦å®æä»»å¡é»è¾ |
| | |
| | | } |
| | | return Task.CompletedTask; |
| | | } |
| | | else if (oHTReadData.R_RunState == (int)RunStateEnum.MoveCompleted && oHTReadData.R_TaskState == (int)TaskStateEnum.TaskComplete) |
| | | { |
| | | //天车移å¨å®æ |
| | | WebResponseContent result = _taskService.StackCraneTaskCompleted(oHTReadData.R_TaskNumber, oHTReadData.weight); |
| | | if (result.Status) |
| | | { |
| | | device.SetValue(DeviceDBName.W_ConfirmSignal, 3); |
| | | } |
| | | return Task.CompletedTask; |
| | | } |
| | | #endregion |
| | | |
| | | #region 天车åéä»»å¡é»è¾ |
| | | if (oHTReadData.R_RunMode == (int)RunModeEnum.Automatic ) |
| | | if (oHTReadData.R_RunMode == (int)RunModeEnum.Automatic) |
| | | { |
| | | if (oHTReadData.R_RunState == (int)RunStateEnum.Standby) |
| | | { |
| | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | _ErrormsginfoService.UpdateErrorMsg(ex.Message,1); |
| | | _ErrormsginfoService.UpdateErrorMsg(ex.Message, 1); |
| | | } |
| | | } |
| | | return Task.CompletedTask; |
| | |
| | | { |
| | | OHTTaskCommand oHtTaskCommand = new OHTTaskCommand(); |
| | | |
| | | if (task.TaskState==(int)TaskInStatusEnum.InNew || task.TaskState == (int)TaskOutStatusEnum.OutNew) |
| | | if (task.TaskState == (int)TaskInStatusEnum.InNew || task.TaskState == (int)TaskOutStatusEnum.OutNew) |
| | | { |
| | | oHtTaskCommand.W_Task_Type = 2; |
| | | string[] SourceCodes = task.SourceAddress.Split("-"); |
| | |
| | | oHtTaskCommand.W_Pick_Line = Convert.ToInt16(SourceCodes[0]); |
| | | oHtTaskCommand.W_Pick_Column = Convert.ToInt16(SourceCodes[1]); |
| | | oHtTaskCommand.W_Put_Line = 0; |
| | | oHtTaskCommand.W_Put_Column = 0; |
| | | oHtTaskCommand.W_Put_Column = 0; |
| | | } |
| | | else |
| | | { |
| | |
| | | } |
| | | oHtTaskCommand.W_CheckValue = 3 + Convert.ToInt16(SourceCodes[0]) + Convert.ToInt16(SourceCodes[1]); |
| | | } |
| | | else if(task.TaskState == (int)TaskMoveStatusEnum.OutNewMove ) |
| | | { |
| | | oHtTaskCommand.W_Task_Type = 4; |
| | | string[] SourceCodes = task.TargetAddress.Split("-"); |
| | | if (SourceCodes.Length == 3) |
| | | { |
| | | oHtTaskCommand.W_Pick_Line = 0; |
| | | oHtTaskCommand.W_Pick_Column = 0; |
| | | oHtTaskCommand.W_Put_Line = Convert.ToInt16(SourceCodes[0]); |
| | | oHtTaskCommand.W_Put_Column = Convert.ToInt16(SourceCodes[1]); |
| | | } |
| | | else |
| | | { |
| | | //æ°æ®é
ç½®é误 |
| | | _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"任塿ºå°åé
ç½®é误ï¼"); |
| | | return null; |
| | | } |
| | | oHtTaskCommand.W_CheckValue = 4 + Convert.ToInt16(SourceCodes[0]) + Convert.ToInt16(SourceCodes[1]); |
| | | } |
| | | |
| | | if (task.WMSId==1) |
| | | { |