예제 #1
0
        public void ClientInput(string licenseNumber)
        {
            bool   isLegalInput = false;
            string phoneNumberInput;
            string nameInput;

            Console.WriteLine("please enter your name:");
            nameInput = GetNameInput();
            Console.WriteLine("please enter your phone number:");
            do
            {
                phoneNumberInput = Console.ReadLine();
                isLegalInput     = CheckIfInputIsANumber(phoneNumberInput);
                if (!isLegalInput)
                {
                    WrongInput();
                }
            }while (!isLegalInput);

            Client newClient = new Client(nameInput, phoneNumberInput);
            string msg       = string.Format(
                @"Select what type of vehicle you have (enter the number selection) :
1- gasoline car       2- electiric car       3- gasoline motorbike       4-electric motorbike       5- truck");

            Console.WriteLine(msg);
            int.TryParse(Console.ReadLine(), out int vehicleSelect);
            bool validInput = CheckInput(k_One, k_TypesOfVehicles, vehicleSelect);

            while (!validInput)
            {
                WrongInput();
                int.TryParse(Console.ReadLine(), out vehicleSelect);
                validInput = CheckInput(k_One, k_TypesOfVehicles, vehicleSelect);
            }

            Console.WriteLine("please enter your vehicle model");
            string vehicleModel = GetNameInput();

            switch (vehicleSelect)
            {
            case (int)eCarType.GasolineCar:
                Vehicle newCar      = FuelCarInput(licenseNumber, vehicleModel);
                Tire    fuelCarTire = TireInput(31f);
                newCar.UpdateTireList(fuelCarTire, 4);
                newCar.ClientDetails = newClient;
                m_Garage.AddToVehicleList(newCar);
                break;

            case (int)eCarType.ElectiricCar:
                Vehicle newElectricCar  = ElectricCarInput(licenseNumber, vehicleModel);
                Tire    electricCarTire = TireInput(31);
                newElectricCar.UpdateTireList(electricCarTire, 4);
                newElectricCar.ClientDetails = newClient;
                m_Garage.AddToVehicleList(newElectricCar);
                break;

            case (int)eCarType.GasolineMotorbike:
                Vehicle newMotorBike      = FuelMotorBikeInput(licenseNumber, vehicleModel);
                Tire    fuelMotorBikeTire = TireInput(33);
                newMotorBike.UpdateTireList(fuelMotorBikeTire, 2);
                newMotorBike.ClientDetails = newClient;
                m_Garage.AddToVehicleList(newMotorBike);
                break;

            case (int)eCarType.ElectricMotorbike:
                Vehicle newElectricMotorBike  = ElectricMotorBikeInput(licenseNumber, vehicleModel);
                Tire    electricMotorBikeTire = TireInput(33);
                newElectricMotorBike.UpdateTireList(electricMotorBikeTire, 2);
                newElectricMotorBike.ClientDetails = newClient;
                m_Garage.AddToVehicleList(newElectricMotorBike);
                break;

            case (int)eCarType.Truck:
                Vehicle newTruck  = TruckInput(licenseNumber, vehicleModel);
                Tire    truckTire = TireInput(26);
                newTruck.UpdateTireList(truckTire, 12);
                newTruck.ClientDetails = newClient;
                m_Garage.AddToVehicleList(newTruck);
                break;
            }
        }