Exemple #1
0
        public static void NextStepVehicleMenu(Garage i_Garage, Vehicle i_Vehicle)
        {
            UserConsole   outputUser = new UserConsole();
            int           userChoise;
            string        licenseNumber;
            Vehicle       vehicle;
            VehicleAction vehicleAction = null;
            bool          inputAnswer   = true;

            if (i_Vehicle != null)
            {
                while (true)
                {
                    try
                    {
                        inputAnswer = InputValidation.GetBool("Do you want to switch vehicle?");
                        break;
                    }
                    catch (Exception ex)
                    {
                        UserConsole.ExceptionOutput(ex);
                    }
                }

                if (!inputAnswer)
                {
                    vehicleAction = new VehicleAction(i_Vehicle, i_Garage);
                }
            }

            if (inputAnswer)
            {
                while (true)
                {
                    try
                    {
                        licenseNumber = InputValidation.GetString("Enter License number");
                        vehicle       = i_Garage.GetVehicle(licenseNumber);
                        break;
                    }
                    catch (Exception ex)
                    {
                        UserConsole.ExceptionOutput(ex);
                    }
                }

                vehicleAction = new VehicleAction(vehicle, i_Garage);
            }

            while (true)
            {
                try
                {
                    UserConsole.VehicleMenu();
                    userChoise = InputValidation.GetInt(string.Empty, 1, 6);
                    break;
                }
                catch (Exception ex)
                {
                    UserConsole.ExceptionOutput(ex);
                }
            }

            UserConsole.SleepAndClear();
            switch (userChoise)
            {
            case 1:
                vehicleAction.ChangeVehicleStatus();
                break;

            case 2:
                vehicleAction.FillAirWheels();
                break;

            case 3:
                vehicleAction.FillFuelVehicle();
                break;

            case 4:
                vehicleAction.FillElectricVehicle();
                break;

            case 5:
                vehicleAction.VehicleInfo();
                break;

            case 6:
                NextStepMainMenu(i_Garage);
                break;
            }
        }