| | |
| | | throw new NotImplementedException(); |
| | | } |
| | | } |
| | | public static TaskStateGroup GetTaskStateGroup(this int taskState) |
| | | { |
| | | if (!int.TryParse(Enum.Parse<TaskOutStatusEnum>(taskState.ToString()).ToString(), out int result)) |
| | | { |
| | | return TaskStateGroup.OutbondGroup; |
| | | } |
| | | else if (!int.TryParse(Enum.Parse<TaskInStatusEnum>(taskState.ToString()).ToString(), out result)) |
| | | { |
| | | return TaskStateGroup.InboundGroup; |
| | | } |
| | | else if (!int.TryParse(Enum.Parse<TaskRelocationStatusEnum>(taskState.ToString()).ToString(), out result)) |
| | | { |
| | | return TaskStateGroup.RelocationGroup; |
| | | } |
| | | else if (!int.TryParse(Enum.Parse<TaskOtherStateEnum>(taskState.ToString()).ToString(), out result)) |
| | | { |
| | | return TaskStateGroup.OtherGroup; |
| | | } |
| | | else if (!int.TryParse(Enum.Parse<TaskAGVCarryStatusEnum>(taskState.ToString()).ToString(), out result)) |
| | | { |
| | | return TaskStateGroup.CarryGroup; |
| | | } |
| | | else if (!int.TryParse(Enum.Parse<TaskAcrossFloorStatusEnum>(taskState.ToString()).ToString(), out result)) |
| | | { |
| | | return TaskStateGroup.AcrossFloorGroup; |
| | | } |
| | | else |
| | | { |
| | | throw new NotImplementedException(); |
| | | } |
| | | } |
| | | |
| | | public static int GetNextNotCompletedStatus<T>(this int currentStatus) where T : Enum |
| | | { |
| | |
| | | { |
| | | return type.GetEnumIndexList().Where(x => x > currentStatus && x < (int)TaskOutStatusEnum.OutFinish).OrderBy(x => x).FirstOrDefault(); |
| | | } |
| | | else if (type == typeof(TaskAGVCarryStatusEnum)) |
| | | { |
| | | return type.GetEnumIndexList().Where(x => x > currentStatus && x < (int)TaskAGVCarryStatusEnum.CarryFinish).OrderBy(x => x).FirstOrDefault(); |
| | | } |
| | | else |
| | | { |
| | | throw new NotImplementedException(); |
| | |
| | | CarryGroup, |
| | | AcrossFloorGroup |
| | | } |
| | | public enum TaskStateGroup |
| | | { |
| | | InboundGroup, |
| | | OutbondGroup, |
| | | RelocationGroup, |
| | | OtherGroup, |
| | | CarryGroup, |
| | | AcrossFloorGroup, |
| | | } |
| | | } |