| | |
| | | } |
| | | if (task.PalletCode!= agvCallbackBox.ContainerCode) |
| | | { |
| | | string Address = task.CurrentAddress switch |
| | | string Address = task?.CurrentAddress switch |
| | | { |
| | | "5206" => "5105", |
| | | "5212" => "5111", |
| | | "5218" => "5117", |
| | | "8005" => "8001", |
| | | "5135" => "5236", |
| | | _ => throw new Exception("æªæ¾å°å°åä¿¡æ¯"), |
| | | }; |
| | | AgvCTUCancelDTO agvCTUCancel=new AgvCTUCancelDTO() |
| | | { |
| | |
| | | { |
| | | if (agvUpdateModel == null) throw new Exception("æªè·åå°è¯·æ±åæ°"); |
| | | agvResponseContent.ReqCode = agvUpdateModel.ReqCode; |
| | | var task = _taskRepository.QueryFirst(x => agvUpdateModel.TaskCode == x.AgvTaskNum); |
| | | //æ¯å¦åå¨è¾é线ä½å¾
AGVæ¬è¿ä»»å¡ |
| | | var taskExecutes = _taskRepository.QueryData(x => x.NextAddress == task.CurrentAddress && x.TaskState == TaskStatusEnum.Line_Executing.ObjToInt() && x.TaskType == TaskTypeEnum.InProduct.ObjToInt()); |
| | | var taskExecutesFL = _taskRepository.QueryData(x => x.TaskState == TaskStatusEnum.New.ObjToInt() && x.DeviceCode=="AGV_FL" && !string.IsNullOrEmpty(x.DeviceCode)); |
| | | if (task == null) throw new Exception($"æªæ¾å°ä»»å¡,ä»»å¡å·ã{agvUpdateModel.TaskCode}ã"); |
| | | |
| | | var task = _taskRepository.QueryFirst(x => agvUpdateModel.TaskCode == x.AgvTaskNum) ?? throw new Exception($"æªæ¾å°ä»»å¡,ä»»å¡å·ã{agvUpdateModel.TaskCode}ã"); |
| | | switch (agvUpdateModel.Method.ToUpper()) |
| | | { |
| | | case "END": |
| | |
| | | //æ´æ¹æåå
¥åºAGVåè´§ä»»å¡ç¶æ |
| | | if (task.TaskType == TaskTypeEnum.InProduct.ObjToInt() || task.TaskType == TaskTypeEnum.InProductBack.ObjToInt()) |
| | | { |
| | | //for (int i = 0; i < 100; i++) |
| | | //{ |
| | | // task.TaskState = TaskStatusEnum.AGV_WaitToExecute.ObjToInt(); |
| | | // task.Remark = task.TaskState.ToString(); |
| | | // _taskRepository.UpdateData(task); |
| | | // var taskOk = _taskRepository.QueryFirst(x => agvUpdateModel.TaskCode == x.AgvTaskNum); |
| | | // if (taskOk.TaskState==TaskStatusEnum.AGV_WaitToExecute.ObjToInt() || taskOk.Remark.Contains("320")) |
| | | // { |
| | | // agvResponseContent.Code = "0"; |
| | | // agvResponseContent.Message = ""+i; |
| | | // break; |
| | | // } |
| | | //} |
| | | |
| | | //æ¯å¦åå¨è¾é线ä½å¾
AGVæ¬è¿ä»»å¡ |
| | | var taskExecutes = _taskRepository.QueryData(x => x.NextAddress == task.CurrentAddress && x.TaskState == TaskStatusEnum.Line_Executing.ObjToInt() && x.TaskType == TaskTypeEnum.InProduct.ObjToInt()); |
| | | if (taskExecutes.Count > 0) |
| | | { |
| | | string address = task.CurrentAddress switch |
| | | { |
| | | "5206" => "5105", |
| | | "5212" => "5111", |
| | | "5218" => "5117", |
| | | "5218" => "5117" |
| | | }; |
| | | //è°ç¨AGVé¢è°åº¦æ¥å£ |
| | | AgvScheduleTaskDTO agvScheduleTask = new AgvScheduleTaskDTO() |
| | |
| | | else //æ´æ¹è¾
æåè´§ |
| | | { |
| | | //æ¯å¦åå¨è¾é线ä½å¾
AGVæ¬è¿ä»»å¡ |
| | | var taskExecutesFL = _taskRepository.QueryData(x => x.TaskState == TaskStatusEnum.New.ObjToInt() && x.DeviceCode == "AGV_FL" && !string.IsNullOrEmpty(x.DeviceCode)); |
| | | if (taskExecutesFL.Count > 0) |
| | | { |
| | | //è°ç¨AGVé¢è°åº¦æ¥å£ |
| | | AgvScheduleTaskDTO agvScheduleTask = new AgvScheduleTaskDTO() |
| | | { |
| | | PositionCode = "8001", |
| | | NextTask = "90", |
| | | NextTask = "60", |
| | | UseableLayers = "1", |
| | | CacheCount = "1", |
| | | Update = "0", |