| | |
| | | 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; |
| | |
| | | // _taskService.Repository ä»å¨å±ï¼è¿è¡æ°æ®åºè®¿é®- |
| | | try |
| | | { |
| | | #region ååè½¦ä»»å¡ |
| | | List<Dt_Task> Uptasks = new List<Dt_Task>(); |
| | | var taskList = _taskService.Repository.QueryData(x => x.TaskType == TaskTypeEnum.CPInbound.ObjToInt() && x.TaskState == TaskStatusEnum.CheckShapeing.ObjToInt()); |
| | | var AGVtaskList = _taskService.Repository.QueryData(x => x.TaskState == TaskStatusEnum.AGV_WaitToExecute.ObjToInt()&& (x.TaskType == TaskTypeEnum.Q3RK.ObjToInt() || x.TaskType == TaskTypeEnum.Q3CK.ObjToInt()));//1-6å6-1æ¥¼ä»»å¡ |
| | | //ä»»å¡çç®æ å°å对äºç«å°å·ï¼ |
| | | foreach (var task in taskList) |
| | | { |
| | |
| | | Uptasks.Add(task); |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | var AGVtaskList = _taskService.Repository.QueryData(x => x.TaskState == TaskStatusEnum.AGV_WaitToExecute.ObjToInt() && (x.TaskType == TaskTypeEnum.Q3RK.ObjToInt() || x.TaskType == TaskTypeEnum.Q3CK.ObjToInt()));//1-6å6-1æ¥¼ä»»å¡ |
| | | foreach (var item in AGVtaskList) |
| | | { |
| | | |
| | | if (device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_StockAvailableSymbol, item.SourceAddress)) |
| | | var address = item.TaskType == TaskTypeEnum.Q3RK.ObjToInt() ? item.TargetAddress : item.SourceAddress; |
| | | var stationManger = _stationMangerService.Repository.QueryFirst(x => x.StationCode == address); |
| | | if (stationManger == null) |
| | | { |
| | | item.ExceptionMessage = $"{item.SourceAddress}ç«å°æè´§,æ æ³è¿å
¥"; |
| | | item.ExceptionMessage = $"æªæ¾å°ã{address}ãç«å°ä¿¡æ¯"; |
| | | Uptasks.Add(item); |
| | | continue; |
| | | } |
| | | //intoè¿å
¥ä¸æ¥¼ä½ç½®çæ¶åï¼åå
¥è¿å
¥ä¿¡å· |
| | | device.SetValue(QualityInspectionCommandEnum.RequestToEnter, true, item.SourceAddress); |
| | | if (!device.GetValue<QualityInspectionCommandEnum,bool>(QualityInspectionCommandEnum.Blocking)==true) |
| | | var StockAvailableSymbol = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_StockAvailableSymbol, address); |
| | | if (item.TaskType == TaskTypeEnum.Q3RK.ObjToInt()) |
| | | { |
| | | item.ExceptionMessage = $"{item.TargetAddress}ç«å°å
æ
ä¸ä¸ºtrueï¼1ï¼!"; |
| | | if (StockAvailableSymbol) |
| | | { |
| | | item.ExceptionMessage = $"{address}ç«å°å
çµæ£æµæè´§ï¼"; |
| | | Uptasks.Add(item); |
| | | continue; |
| | | } |
| | | if (stationManger.IsOccupied == (int)LocationStatusEnum.Lock) |
| | | { |
| | | item.ExceptionMessage = $"ç«å°æè´§ï¼"; |
| | | Uptasks.Add(item); |
| | | continue; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | if (!StockAvailableSymbol) |
| | | { |
| | | item.ExceptionMessage = $"{address}ç«å°å
çµæ£æµæ è´§ï¼"; |
| | | Uptasks.Add(item); |
| | | continue; |
| | | } |
| | | if (stationManger.IsOccupied == (int)LocationStatusEnum.Free) |
| | | { |
| | | item.ExceptionMessage = $"ç«å°æ è´§ï¼"; |
| | | Uptasks.Add(item); |
| | | continue; |
| | | } |
| | | } |
| | | //intoè¿å
¥ä¸æ¥¼ä½ç½®çæ¶åï¼åå
¥è¿å
¥ä¿¡å· |
| | | device.SetValue(QualityInspectionCommandEnum.RequestToEnter, true, address); |
| | | if (!device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.Blocking, address)) |
| | | { |
| | | item.ExceptionMessage = $"{address}ç«å°å
æ
ä¸ä¸ºtrueï¼1ï¼!"; |
| | | Uptasks.Add(item); |
| | | continue; |
| | | } |
| | | var result = _taskService.Hikvisiontaskscontinue(item.WMSTaskNum); |
| | | if (result.Status == false) |
| | |
| | | item.TaskState = (int)TaskStatusEnum.AGV_ToExecute; |
| | | item.ExceptionMessage = ""; |
| | | Uptasks.Add(item); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | _taskService.UpdateData(Uptasks); |
| | | WriteInfo(device.DeviceName, "infoLog"); |
| | | //WriteInfo(device.DeviceName, "infoLog"); |
| | | |
| | | WriteDebug(device.DeviceName, "debugLog"); |
| | | //WriteDebug(device.DeviceName, "debugLog"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | { |
| | | WriteError(nameof(TestJob), "åæ°é误,æªä¼ é设å¤åæ°æè®¾å¤ç±»åé误"); |
| | | } |
| | | |
| | | |
| | | return Task.CompletedTask; |
| | | } |
| | | } |