public static Vehicle.eVehicleGarageStatus GetStateFromUser()
        {
            m_UserDisplay.DisplayMessage("Please chose one of the following vehicle statuses:");
            Vehicle.eVehicleGarageStatus vehicleStatus = (Vehicle.eVehicleGarageStatus)InputIsInRangeOfEnum(typeof(Vehicle.eVehicleGarageStatus));

            return(vehicleStatus);
        }
        private void displayFilterdLicensesPlates()
        {
            Vehicle.eVehicleGarageStatus typeToFilterBy = ValidateUserInput.GetStateFromUser();
            List <string> licenseNumbersFilterd         = m_userInterface.Garage.GetLicenseNumberList(typeToFilterBy);

            Console.Clear();
            displayAccordingToSize(licenseNumbersFilterd);
        }
        public void ChangeVehicleStatus(string i_LicenseNumber, Vehicle.eVehicleGarageStatus i_VehicleStatus)
        {
            if (!IsVehicleInGarage(i_LicenseNumber))
            {
                throw new Exception("This vehicle's status cannot be changed, it's not in the garage!");
            }

            m_GarageVehicles[i_LicenseNumber].VehicleGarageStatus = i_VehicleStatus;
        }
Example #4
0
        /**
         * This method changes the wanted vehicles garage status
         * Throws ArgumentException if vehicle is not found
         */
        public void ChangeVehicleStatus(string i_LicenseNumber, Vehicle.eVehicleGarageStatus i_NewGarageStatus)
        {
            if (!IsVehicleInGarage(i_LicenseNumber))
            {
                throw new ArgumentException("The vehicle is not in the garage");
            }

            r_VehiclesInGarage[i_LicenseNumber].VehicleGarageStatus = i_NewGarageStatus;
        }
        /**
         * This method asks for the license number of the vehicle.
         */
        private void getDetailsForStatusChange()
        {
            ConsoleUtils.ClearConsoleAndWrite("Please enter the License number of the vehicle you would like to change the status:");
            this.m_LicenseNumber = ConsoleUtils.CheckForValidLicenseNumber(Console.ReadLine());
            ConsoleUtils.ClearConsoleAndWrite("Please enter the number of the status you would like");
            Console.WriteLine(@"1.In repair
2.Repaired
3.Payed for");
            m_NewVehicleStatus = checkForValidVehicleStatus(Console.ReadLine());
        }
        public List <string> GetLicenseNumberList(Vehicle.eVehicleGarageStatus i_VehicleStatus)
        {
            List <string> licenseNumbersList = new List <string>();

            Vehicle.eVehicleGarageStatus vehicleStatus = i_VehicleStatus;

            foreach (KeyValuePair <string, Vehicle> vehicle in this.m_GarageVehicles)
            {
                if (vehicle.Value.VehicleGarageStatus == vehicleStatus)
                {
                    licenseNumbersList.Add(vehicle.Key);
                }
            }

            return(licenseNumbersList);
        }
Example #7
0
        public void displayLicenseNumbersList()
        {
            Vehicle.eVehicleGarageStatus vehicleStatus = m_LicenseNumberFilter.GetFilter();
            List <string> licenseNumbers;

            if (vehicleStatus.Equals(Vehicle.eVehicleGarageStatus.Undefined))
            {
                licenseNumbers = m_Garage.GetLicenseNumberList();
            }
            else
            {
                licenseNumbers = m_Garage.GetLicenseNumberList(vehicleStatus);
            }

            m_UserDisplay.Clear();
            m_UserDisplay.DisplayAccordingToSize(licenseNumbers, "There are no vehicles for your choice in the garage", "The list of plates that you requested: ");
            Console.ReadLine();
        }
Example #8
0
        /**
         * This method prints a list of license numbers in the garage.
         */
        public void PrintGarageLicenseNumberList()
        {
            ConsoleUtils.ClearConsoleAndWrite("Would you like to filter the list by vehicle status? enter y / n");
            string needForFilter = checkForValidAnswer(Console.ReadLine());

            if (needForFilter.Equals("y"))
            {
                ConsoleUtils.ClearConsoleAndWrite("Please enter a valid number for a filter.");
                Console.WriteLine(@"The filters are:
1.In repair 
2.Repaired 
3.Payed for");
                Vehicle.eVehicleGarageStatus filter = checkForValidVehicleGarageStatus(Console.ReadLine());
                printList(r_Garage.GetLicenseList(filter));
            }
            else if (needForFilter.Equals("n"))
            {
                printList(r_Garage.GetLicenseList(null));
            }

            ConsoleUtils.PressAnyKeyToContinue();
        }