| | |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEAWCS_Common; |
| | | using WIDESEAWCS_Common.LocationEnum; |
| | | using WIDESEAWCS_Common.TaskEnum; |
| | | using WIDESEAWCS_Communicator; |
| | | using WIDESEAWCS_Core.Helper; |
| | |
| | | namespace WIDESEAWCS_Tasks |
| | | { |
| | | [DisallowConcurrentExecution] |
| | | public class TestJob : JobBase, IJob |
| | | public partial class TestJob : JobBase, IJob |
| | | { |
| | | private readonly ITaskService _taskService; |
| | | private readonly IStationMangerService _stationMangerService; |
| | |
| | | // _taskService.Repository ä»å¨å±ï¼è¿è¡æ°æ®åºè®¿é®- |
| | | try |
| | | { |
| | | List<Dt_Task> Uptasks = new List<Dt_Task>(); |
| | | var taskList = _taskService.Repository.QueryData(x => x.TaskType == TaskTypeEnum.CPInbound.ObjToInt() && x.TaskState == TaskStatusEnum.CheckShapeing.ObjToInt()); |
| | | //ä»»å¡çç®æ å°å对äºç«å°å·ï¼ |
| | | foreach (var task in taskList) |
| | | { |
| | | if (device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_QualityInspection, task.SourceAddress)) |
| | | { |
| | | device.SetValue(QualityInspectionCommandEnum.StartqualityInspection, false, task.SourceAddress); |
| | | //å读åè´¨æ£ç»æ |
| | | var qualityResult = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_QualityInspectionInProgress, task.SourceAddress); |
| | | //å·¦è¶
宽è¦å |
| | | var R_LeftOverWidthWarning = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_LeftOverWidthWarning, task.SourceAddress); |
| | | //å³è¶
宽è¦å |
| | | var R_RightWideWarning = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_RightWideWarning, task.SourceAddress); |
| | | //è¶
é«è¦å |
| | | var R_ExtremeWarning = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_ExtremeWarning, task.SourceAddress); |
| | | //åå
¥åæ¢è´¨æ£ä¿¡å· |
| | | device.SetValue(QualityInspectionCommandEnum.StopqualityInspection, true, task.SourceAddress); |
| | | Thread.Sleep(500); |
| | | device.SetValue(QualityInspectionCommandEnum.StopqualityInspection, false, task.SourceAddress); |
| | | if (qualityResult) |
| | | { |
| | | //å¦æè´¨æ£éè¿äºï¼å°±æä»»å¡ç¶ææ¹ä¸ºè´¨æ£å®æ |
| | | task.TaskState = TaskStatusEnum.CheckShapeingOk.ObjToInt(); |
| | | task.ExceptionMessage = ""; |
| | | Uptasks.Add(task); |
| | | } |
| | | else |
| | | { |
| | | task.TaskState = TaskStatusEnum.CheckShapeingNG.ObjToInt(); |
| | | task.ExceptionMessage = "夿£å¤±è´¥"; |
| | | if (R_LeftOverWidthWarning) task.ExceptionMessage += ",å·¦è¶
宽"; |
| | | if (R_RightWideWarning) task.ExceptionMessage += ",å³è¶
宽"; |
| | | if (R_ExtremeWarning) task.ExceptionMessage += ",è¶
é«"; |
| | | Uptasks.Add(task); |
| | | //åå
¥å¤ä½ä¿¡å· |
| | | //device.SetValue(QualityInspectionCommandEnum.FaultReset, true, task.SourceAddress); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | //åå
¥åæ¢è´¨æ£ä¿¡å· |
| | | device.SetValue(QualityInspectionCommandEnum.StopqualityInspection, false, task.SourceAddress); |
| | | device.SetValue(QualityInspectionCommandEnum.StartqualityInspection, true, task.SourceAddress); |
| | | } |
| | | } |
| | | _taskService.UpdateData(Uptasks); |
| | | WriteInfo(device.DeviceName, "infoLog"); |
| | | SXCTasks(device); |
| | | |
| | | WriteDebug(device.DeviceName, "debugLog"); |
| | | KHTasks(device); |
| | | |
| | | |
| | | //WriteInfo(device.DeviceName, "infoLog"); |
| | | |
| | | //WriteDebug(device.DeviceName, "debugLog"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | { |
| | | WriteError(nameof(TestJob), "åæ°é误,æªä¼ é设å¤åæ°æè®¾å¤ç±»åé误"); |
| | | } |
| | | |
| | | |
| | | return Task.CompletedTask; |
| | | } |
| | | } |