public void InsertNewCustomer(string i_NumberOfCarLicense, Utilities.eTypeOfVehicle i_VehicleType, string i_ModelName, string i_NameOfManufacturer, float i_CurTirePressure, string i_NameOfVehicleOwner, string i_PhoneNumber) { Vehicle createdVehicle = VehicleCreator.CreateVehicle(i_VehicleType, i_ModelName, i_NumberOfCarLicense, i_NameOfManufacturer, i_CurTirePressure); Customer createdCustomer = new Customer(createdVehicle, i_NameOfVehicleOwner, i_PhoneNumber); m_CustomerList.Add(createdCustomer); }
private float getCurrentTirePressure(Utilities.eTypeOfVehicle i_Type) { float airPressure = 0; bool loop = true; Console.Clear(); Console.WriteLine("What is the current tire pressure?"); string input = Console.ReadLine(); do { try { airPressure = Utilities.GetCurrentAirPressure(i_Type, input); loop = false; } catch (Exception exception) { Console.WriteLine(exception.Message); continue; } }while (loop); return(airPressure); }
private void insertNewVehicle() { string licensePlate = getLicensePlateNumber(); bool vehicleExist = m_Garage.DoesVehicleExist(licensePlate); Utilities.eTypeOfVehicle vehicleType = Utilities.eTypeOfVehicle.ElectricCar; bool loop = true; if (!vehicleExist) { Console.Clear(); do { try { vehicleType = Utilities.AskForSpecificVehicleDetailes(Utilities.eTypeOfVehicle.ElectricCar, "What is the type of vecihle?(type option number)"); loop = false; } catch (ValueOutOfRangeException exception) { Console.WriteLine(exception.Message); continue; } }while (loop); Console.Clear(); Console.WriteLine("Enter owner name:"); string name = Console.ReadLine(); Console.Clear(); Console.WriteLine("Enter owner phone number:"); string PhoneNumber = Console.ReadLine(); Console.Clear(); Console.WriteLine("Enter vehicle model:"); string model = Console.ReadLine(); Console.Clear(); Console.WriteLine("Enter tire company name:"); string tireCompany = Console.ReadLine(); Console.Clear(); float currentTirePressure = getCurrentTirePressure(vehicleType); Console.Clear(); m_Garage.InsertNewCustomer(licensePlate, vehicleType, model, tireCompany, currentTirePressure, name, PhoneNumber); getSpecificVehicleInformtion(m_Garage.GetVehicle(licensePlate)); Console.Clear(); Console.WriteLine("The vehicle was entered successfully"); Console.WriteLine(k_BackToMenueMessage); Console.ReadLine(); } else { Console.Clear(); m_Garage.ChangeStatus(Utilities.eStatusOfVehicle.Repair, licensePlate); Console.WriteLine("The vehicle already exist in the garage, status was changed to in-repaire"); Console.WriteLine(k_BackToMenueMessage); Console.ReadLine(); } }
public static Vehicle CreateVehicle(Utilities.eTypeOfVehicle i_VehicleType, string i_ModelName, string i_NumberOfCarLicense, string i_NameOfManufacturer, float i_CurTirePressure) { Vehicle createdVehicle = null; switch (i_VehicleType) { case Utilities.eTypeOfVehicle.ElectricCar: { createdVehicle = new ElectricCar(i_ModelName, i_NumberOfCarLicense, i_NameOfManufacturer, i_CurTirePressure); break; } case Utilities.eTypeOfVehicle.ElectricMotorcycle: { createdVehicle = new ElectricMotorcycle(i_ModelName, i_NumberOfCarLicense, i_NameOfManufacturer, i_CurTirePressure); break; } case Utilities.eTypeOfVehicle.FuelBasedCar: { createdVehicle = new FuelBasedCar(i_ModelName, i_NumberOfCarLicense, i_NameOfManufacturer, i_CurTirePressure); break; } case Utilities.eTypeOfVehicle.FuelBasedMotorcycle: { createdVehicle = new FuelBasedMotorcycle(i_ModelName, i_NumberOfCarLicense, i_NameOfManufacturer, i_CurTirePressure); break; } case Utilities.eTypeOfVehicle.FuelBasedTruck: { createdVehicle = new FuelBasedTruck(i_ModelName, i_NumberOfCarLicense, i_NameOfManufacturer, i_CurTirePressure); break; } default: { throw new ArgumentException("Please enter a valid vehicle"); } } return(createdVehicle); }