| | |
| | | public Dt_Task QueryStackerCraneRelocationTask(string deviceNo, string currentAddress = "") |
| | | { |
| | | Dt_Task task = null; |
| | | List<Dt_Task> tasks = new List<Dt_Task>(); |
| | | if (string.IsNullOrEmpty(currentAddress)) |
| | | task = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskRelocationTypes.Contains(x.TaskType), TaskOrderBy); |
| | | tasks = BaseDal.QueryData(x => x.Roadway == deviceNo && TaskRelocationTypes.Contains(x.TaskType) && x.TaskState < TaskRelocationStatusEnum.SC_RelocationExecuting.ObjToInt()).OrderBy(x => x.TaskNum).ToList(); |
| | | else |
| | | task = BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.CurrentAddress == currentAddress && TaskRelocationTypes.Contains(x.TaskType), TaskOrderBy); |
| | | if (task != null) |
| | | tasks = BaseDal.QueryData(x => x.Roadway == deviceNo && x.CurrentAddress == currentAddress && TaskRelocationTypes.Contains(x.TaskType) && x.TaskState < TaskRelocationStatusEnum.SC_RelocationExecuting.ObjToInt()).OrderBy(x => x.TaskNum).ToList(); |
| | | if (tasks != null && tasks.Count > 0) |
| | | { |
| | | if (task.SourceIsPickPlace && task.TaskState == (int)TaskRelocationStatusEnum.RelocationNew || !task.SourceIsPickPlace && task.TaskState == (int)TaskRelocationStatusEnum.CarSource_Finish) |
| | | return task; |
| | | else |
| | | return null; |
| | | task = tasks.First(); |
| | | } |
| | | return task; |
| | | } |
| | |
| | | } |
| | | |
| | | int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskOutStatusEnum>(); |
| | | |
| | | task.TaskState = nextStatus; |
| | | if (task.SourceIsPickPlace && task.TaskState == TaskOutStatusEnum.OutNew.ObjToInt()) |
| | | task.TaskState = TaskOutStatusEnum.SC_OutExecuting.ObjToInt(); |
| | | } |
| | | else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) |
| | | { |
| | |
| | | } |
| | | int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskRelocationStatusEnum>(); |
| | | task.TaskState = nextStatus; |
| | | if (task.SourceIsPickPlace && task.TaskState == TaskRelocationStatusEnum.RelocationNew.ObjToInt()) |
| | | task.TaskState = TaskRelocationStatusEnum.SC_RelocationExecuting.ObjToInt(); |
| | | } |
| | | else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OtherGroup)//åºå
移车 |
| | | { |
| | | if (task.TaskState >= (int)TaskCarStatusEnum.RelocationCarFinish) |
| | | if (task.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt()) |
| | | { |
| | | return content = WebResponseContent.Instance.Error($"该任å¡ç¶æä¸å¯è·³è½¬å°ä¸ä¸æ¥,ä»»å¡å·:ã{task.TaskNum}ã,ä»»å¡ç¶æ:ã{task.TaskState}ã"); |
| | | if (task.TaskState >= (int)TaskCarStatusEnum.RelocationCarFinish) |
| | | { |
| | | return content = WebResponseContent.Instance.Error($"该任å¡ç¶æä¸å¯è·³è½¬å°ä¸ä¸æ¥,ä»»å¡å·:ã{task.TaskNum}ã,ä»»å¡ç¶æ:ã{task.TaskState}ã"); |
| | | } |
| | | int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskCarStatusEnum>(); |
| | | task.TaskState = nextStatus; |
| | | } |
| | | int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskCarStatusEnum>(); |
| | | task.TaskState = nextStatus; |
| | | else if (task.TaskType == TaskOtherTypeEnum.RelocationCarCharging.ObjToInt()) |
| | | { |
| | | if (task.TaskState >= (int)CarChargingTaskEnum.RelocationCarFinish) |
| | | { |
| | | return content = WebResponseContent.Instance.Error($"该任å¡ç¶æä¸å¯è·³è½¬å°ä¸ä¸æ¥,ä»»å¡å·:ã{task.TaskNum}ã,ä»»å¡ç¶æ:ã{task.TaskState}ã"); |
| | | } |
| | | int nextStatus = task.TaskState.GetNextNotCompletedStatus<CarChargingTaskEnum>(); |
| | | task.TaskState = nextStatus; |
| | | } |
| | | } |
| | | else |
| | | { |
| | |
| | | /// <exception cref="NotImplementedException"></exception> |
| | | public WebResponseContent AddRelocationCarTask(string SourceAddress, string TargetAddress, string ShuttleCarCode = "", string remark = "") |
| | | { |
| | | if (!string.IsNullOrEmpty(SourceAddress) && SourceAddress != "") |
| | | { |
| | | Dt_Task? task = BaseDal.QueryFirst(x => x.SourceAddress == SourceAddress && x.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt()); |
| | | if (task != null) return WebResponseContent.Instance.Error(); |
| | | } |
| | | if (!string.IsNullOrEmpty(TargetAddress) && TargetAddress != "") |
| | | { |
| | | Dt_Task? task = BaseDal.QueryFirst(x => x.SourceAddress == TargetAddress && x.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt()); |
| | | if (task != null) return WebResponseContent.Instance.Error(); |
| | | } |
| | | #region å建å åæºç§»è½¦ä»»å¡ |
| | | Dt_Task dt_Task = new Dt_Task() |
| | | { |