| | |
| | | private static readonly Dictionary<string, bool> _deviceLastStatus = new Dictionary<string, bool>(); |
| | | public string urlWMSdeverror = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlWMSdeverror"]; |
| | | private static readonly StackerFault[] _stackerFaultEnumCache = Enum.GetValues(typeof(StackerFault)).Cast<StackerFault>().ToArray(); |
| | | // ç¨æ¥è®°å½åªäºä»»å¡å·²ç»ä¸æ¥è¿æ¾è´§ä¸ |
| | | private static readonly HashSet<int> _reportedPickupTaskIds = new HashSet<int>(); |
| | | |
| | | |
| | | |
| | |
| | | { |
| | | var dtTask = _taskRepository.QueryFirst(x => x.TaskNum == taskNum); |
| | | if (dtTask == null) return; |
| | | //å åæºæ¾è´§ä¸æ¯ä»»å¡ç¶æåè°æ¿pickup |
| | | if (dtTask.TaskType == 200 && stackerCraneWorkStatusDes == "æ¾è´§ä¸") |
| | | //å åæºæ¾è´§ä¸æ¯ä»»å¡ç¶æåè°æ¿pickup |
| | | // ===================== åºåºæ¾è´§ä¸ï¼åªä¸æ¥1次 ===================== |
| | | if (dtTask.TaskType == (int)TaskTypeEnum.Inbound && stackerCraneWorkStatusDes == "æ¾è´§ä¸") |
| | | { |
| | | // 夿æ¯å¦å·²ç»ä¸æ¥è¿ |
| | | if (_reportedPickupTaskIds.Contains(taskNum)) |
| | | { |
| | | return; // 已䏿¥ï¼ç´æ¥è·³è¿ |
| | | } |
| | | // ç¬¬ä¸æ¬¡ä¸æ¥ |
| | | string Result = WMSTaskStatusEnum.pickup.GetDescription(); |
| | | Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(dtTask.Roadway); |
| | | CommandResult command = _taskService.taskreturn(int.Parse(dtTask.WMStaskid), Result, roadwayinfo.WarehouseInvType, ""); |
| | | return; |
| | | |
| | | // æ è®°ä¸ºå·²ä¸æ¥ |
| | | _reportedPickupTaskIds.Add(taskNum); |
| | | } |
| | | // ä»»å¡å®ææ¶æ¸
çè®°å½ |
| | | if (stackerCraneWorkStatusDes == "ä»»å¡å®æ") |
| | | { |
| | | _reportedPickupTaskIds.Remove(taskNum); |
| | | } |
| | | string[] targets = { "G02", "G03", "G04", "C02", "C01" }; |
| | | if (dtTask.TaskType != 100 || !targets.Contains(dtTask.TargetAddress)) return; |