public static void NewVehicleInformation(string i_VehicleLicenseNumber)
        {
            string m_OwnerName;
            string m_OwnerPhoneNumber;

            OutPutMessages.NewVehicleInformationDisplayMenu();
            m_OwnerName = Console.ReadLine();
            Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn + 6, Constants.k_StartPrintingMenuLine + 5);
            m_OwnerPhoneNumber = Console.ReadLine();
            if ((UI.BackToPreviewScreen(m_OwnerName)) || (UI.BackToPreviewScreen(m_OwnerPhoneNumber)))
            {     //// case the user want to go back to preview menu
                if (UI.IOpenedNewGarage.LicenseNumberExist(i_VehicleLicenseNumber))
                { //// case we made a mistake and want to go back to main manu but already entered vehicle information
                    UI.IOpenedNewGarage.RemoveVehicle(i_VehicleLicenseNumber);
                }

                UI.CreateNewVehicleInTheGarage();
            }

            while (UI.IsTheInputCorrect(m_OwnerPhoneNumber, UI.eInputsToCheck.PhoneNumber, Constants.k_WrongInputPrintingLine) == Constants.k_WrongInput)
            {
                Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn, Constants.k_StartPrintingMenuLine + 5);
                Console.Write("|  =>                                                    |");
                Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn + 6, Constants.k_StartPrintingMenuLine + 5);
                m_OwnerPhoneNumber = Console.ReadLine();
            }

            ChooseNewVehicleType(i_VehicleLicenseNumber, m_OwnerName, m_OwnerPhoneNumber);
        }
        public static void ChooseNewVehicleType(string i_VehicleLicenseNumber, string i_OwnerName, string i_OwnerPhoneNumber)
        {
            char i_ChoosenVehicleType;

            OutPutMessages.ChooseNewVehicleTypeDisplayMenu();
            i_ChoosenVehicleType = Console.ReadKey().KeyChar;
            while (i_ChoosenVehicleType != Constants.k_Car && i_ChoosenVehicleType != Constants.k_Motorcycle && i_ChoosenVehicleType != Constants.k_Truck)
            {
                OutPutMessages.PrintWrongMessage();
                i_ChoosenVehicleType = Console.ReadKey().KeyChar;
            }

            Console.Clear();
            if (i_ChoosenVehicleType == Constants.k_Car)
            {
                EnterInformation(i_VehicleLicenseNumber, Constants.k_Car, i_OwnerName, i_OwnerPhoneNumber);
            }
            else if (i_ChoosenVehicleType == Constants.k_Motorcycle)
            {
                EnterInformation(i_VehicleLicenseNumber, Constants.k_Motorcycle, i_OwnerName, i_OwnerPhoneNumber);
            }
            else
            { //// if (i_ChoosenVehicleType == Constants.k_Truck)
                EnterInformation(i_VehicleLicenseNumber, Constants.k_Truck, i_OwnerName, i_OwnerPhoneNumber);
            }
        }
Beispiel #3
0
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        public static void CreateNewVehicleInTheGarage()
        {
            string licenseNumberToCreateVehicle;

            OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
            licenseNumberToCreateVehicle = Console.ReadLine();
            if (BackToPreviewScreen(licenseNumberToCreateVehicle))
            {
                WorkingInTheGarage();
            }

            else if (IsTheInputCorrect(licenseNumberToCreateVehicle, eInputsToCheck.LicenseNumber) == Constants.k_WrongInput)
            {
                CreateNewVehicleInTheGarage();
            }
            else if (!IOpenedNewGarage.LicenseNumberExist(licenseNumberToCreateVehicle))
            { //// case the license number doesn't exist--> we can enter new vehicle
                CreateNewVehicleUI.NewVehicleInformation(licenseNumberToCreateVehicle);
            }
            else
            {
                OutPutMessages.ChangeStatusForExistVehicle();
                IOpenedNewGarage.UpdateVehicleStatus(licenseNumberToCreateVehicle, Constants.k_InProgress);
                WorkingInTheGarage();
            }
        }
Beispiel #4
0
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        private static void ReceiveInformation()
        {
            OutPutMessages.ReceiveInformationDisplayMenu();
            char decision = Console.ReadKey().KeyChar;

            while (decision != Constants.k_AllVehiclesLicenseNumbers && decision != Constants.k_SpecificVehicleFullData && decision != Constants.k_PreviewMenu)
            {
                OutPutMessages.PrintWrongMessage();
                decision = Console.ReadKey().KeyChar;
            }

            Console.Clear();
            try
            {
                if (!BackToPreviewScreen(decision))
                {
                    if (decision == Constants.k_AllVehiclesLicenseNumbers)
                    {
                        PrintAllVehiclesLicenseNumber();
                    }
                    else
                    { //// decision == Constants.k_SpecificVehicleFullData
                        PrintAllDataForSpecificVehicle();
                    }
                }
            }
            finally
            {
                WorkingInTheGarage();
            }
        }
Beispiel #5
0
        //private static StringBuilder PrintAllWheelsInformationByVehicle(Vehicle i_Vehicle)
        //{
        //    StringBuilder wheelsList = new StringBuilder();
        //    int counter = 1;
        //    foreach (Wheel wheel in i_Vehicle.VehicleWheelsList)
        //    {
        //        wheelsList.AppendLine(counter + "." + "Wheel Model " + wheel.ModelName + ", Corrent PSI- " + wheel.CurrentAirPressure + ", Max PSI- " + wheel.MaxAirPressure);
        //    }
        //    return wheelsList;
        //}
        //private static void PrintCarInformation(Car i_car)
        //{
        //    Console.WriteLine("7.Car Color: " + i_car.ColorOfTheCar);
        //    Console.WriteLine("8.Number Of Doors:  " + i_car.NumberOfDoors);
        //}
        //private static void PrintMotorcycleInformation(Motorcycle i_Motorcycle)
        //{
        //    Console.WriteLine("7.Motorcycle License Type: " + i_Motorcycle.LicenseType);
        //    Console.WriteLine("8.Motorcycle Engine Capacity: " + i_Motorcycle.EngineCapacityInCC + " CC");
        //}
        //private static void PrintTruckInformation(Truck i_Truck)
        //{
        //    Console.Write("7.Is The Trunk Is Cooler -->> ");
        //    if (i_Truck.CoolerTrunk)
        //    {
        //        Console.WriteLine("YES ");
        //    }
        //    else
        //    {
        //        Console.WriteLine("NO ");
        //    }

        //    Console.WriteLine("8.Truck Trunk Capacity: " + i_Truck.TrunkCapacity);
        //}



        ////private static void PrintAllDataForSpecificVehicle()
        ////{
        ////    string licenseNumberToPrintData;
        ////    OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
        ////    licenseNumberToPrintData = Console.ReadLine();
        ////    while (IsTheInputCorrect(licenseNumberToPrintData, eInputsToCheck.LicenseNumber) == Constants.k_WrongInput)
        ////    { //// wrong license number input
        ////        OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
        ////        licenseNumberToPrintData = Console.ReadLine();
        ////    }

        ////    try
        ////    {
        ////        if (!BackToPreviewScreen(licenseNumberToPrintData))
        ////        {
        ////            //// license number not exist
        ////            while (!IOpenedNewGarage.LicenseNumberExist(licenseNumberToPrintData))
        ////            { //// OutPutMessages.LicenseNumberNotExistMessage();
        ////                Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn, Constants.k_StartPrintingMenuLine + 6);
        ////                Console.Write("|  THE LICENSE NUMBER YOU ENTERED NOT EXIST              |");
        ////                Thread.Sleep(1500);
        ////                licenseNumberToPrintData = Console.ReadLine();
        ////            }
        ////            //// license number exist- lets print its information
        ////            /////
        ////            //////

        ////        }
        ////    }
        ////    finally
        ////    {
        ////        ReceiveInformation();
        ////    }

        ////}
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        private static void UpdateVehicleData()
        {
            OutPutMessages.UpdateVehicleDataDisplayMenu();
            char decision = Console.ReadKey().KeyChar;

            while (decision != Constants.k_ChangeVehicleStatus && decision != Constants.k_InflateWheels && decision != Constants.k_FillEnergy && decision != Constants.k_PreviewMenu)
            {
                OutPutMessages.PrintWrongMessage();
                decision = Console.ReadKey().KeyChar;
            }

            Console.Clear();
            if (BackToPreviewScreen(decision))
            {
                WorkingInTheGarage();
            }
            else if (decision == Constants.k_ChangeVehicleStatus)
            {
                ChangeVehicleStatus();
            }
            else if (decision == Constants.k_InflateWheels)
            {
                InflateVehicleWheels();
            }
            else
            { //// decision == Constants.k_FillEnergy
                FillingEnergyInVehicle();
            }
        }
Beispiel #6
0
        public void ItemCommand(string[] userInput)
        {
            var item = new CommonItem(userInput);
            var hero = Inventory.GetHero(item.HeroName);

            hero._heroItems.Add(item);
            hero.IncreaseHeroPropertyByItem(item);
            OutPutMessages.AddedItemMessage(item);
        }
Beispiel #7
0
 public void HeroCommand(string heroName, string type)
 {
     foreach (var hero in Inventory.AvailableHeroes())
     {
         if (hero.GetType().ToString().Contains(type))
         {
             hero.Properties.Name = heroName;
             Inventory.ChosenHeroes.Add(hero);
             OutPutMessages.CreatedHeroMessage(hero);
         }
     }
 }
Beispiel #8
0
        private static void InflateVehicleWheels()
        {
            string licenseNumberToChangeStatus;

            OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
            licenseNumberToChangeStatus = Console.ReadLine();
            if (BackToPreviewScreen(licenseNumberToChangeStatus))
            {
                UpdateVehicleData();
            }
            else if (IsTheInputCorrect(licenseNumberToChangeStatus, eInputsToCheck.LicenseNumber) == Constants.k_WrongInput)
            {
                InflateVehicleWheels();
            }
            else
            {
                try
                {
                    while (!IOpenedNewGarage.LicenseNumberExist(licenseNumberToChangeStatus))
                    {
                        Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn, Constants.k_StartPrintingMenuLine + 6);
                        Console.Write("|  THE LICENSE NUMBER YOU ENTERED NOT EXIST              |");
                        Thread.Sleep(1500);
                        licenseNumberToChangeStatus = Console.ReadLine();
                    }

                    IOpenedNewGarage.InflateAirInWheels(licenseNumberToChangeStatus);
                    OutPutMessages.SuccessMessageForInflateAction();
                    Thread.Sleep(1500);
                    WorkingInTheGarage();
                    ////if (IOpenedNewGarage.LicenseNumberExist(licenseNumberToChangeStatus))
                    ////{
                    ////    IOpenedNewGarage.InflateAirInWheels(licenseNumberToChangeStatus);
                    ////    OutPutMessages.SuccessMessageForInflateAction();
                    ////    Thread.Sleep(2500);
                    ////    WorkingInTheGarage();
                    ////}
                    ////else
                    ////{

                    ////}
                }
                catch (ValueOutOfRangeException InflateFailed)
                {
                    Console.Clear();
                    Console.WriteLine("Catching ValueOutOfRangeException: ");
                    Console.WriteLine(InflateFailed.Message);
                    Thread.Sleep(4500);
                    Console.Clear();
                    InflateVehicleWheels();
                }
            }
        }
Beispiel #9
0
        private static void ChangeVehicleStatus()
        {
            string licenseNumberToChangeStatus;
            char   decision;

            OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
            licenseNumberToChangeStatus = Console.ReadLine();
            while (IsTheInputCorrect(licenseNumberToChangeStatus, eInputsToCheck.LicenseNumber) == Constants.k_WrongInput)
            { //// wrong license number input
                OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
                licenseNumberToChangeStatus = Console.ReadLine();
            }

            if (BackToPreviewScreen(licenseNumberToChangeStatus))
            {
                UpdateVehicleData();
            }
            else
            {
                if (!IOpenedNewGarage.LicenseNumberExist(licenseNumberToChangeStatus))
                {
                    Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn, Constants.k_StartPrintingMenuLine + 6);
                    Console.Write("|  THE LICENSE NUMBER YOU ENTERED NOT EXIST              |");
                    Thread.Sleep(1500);
                    ChangeVehicleStatus();
                }
                else
                {
                    OutPutMessages.ChangeVehicleStatusDisplayMenu();
                    decision = Console.ReadKey().KeyChar;
                    while (decision != Constants.k_InProgress && decision != Constants.k_WaitingToGetPayment && decision != Constants.k_PaidAndReadyToGo && decision != Constants.k_PreviewMenu)
                    {
                        OutPutMessages.PrintWrongMessage();
                        decision = Console.ReadKey().KeyChar;
                    }

                    if (BackToPreviewScreen(decision))
                    {
                        ChangeVehicleStatus();
                    }
                    else
                    { //// (decision == Constants.k_PaidAndReadyToGo)
                        IOpenedNewGarage.UpdateVehicleStatus(licenseNumberToChangeStatus, decision);
                        OutPutMessages.GarageUpdateStatusForExistVehicle();
                        Thread.Sleep(1500);
                        WorkingInTheGarage();
                    }
                }
            }
        }
Beispiel #10
0
        private static void PrintAllVehiclesLicenseNumber()
        {
            OutPutMessages.PrintAllVehiclesLicenseNumberDisplayMenu();
            VehicleInTheGarage.eVehicleStatus VehicleStatusToPrint;
            char decision = Console.ReadKey().KeyChar;

            while (decision != Constants.k_InProgress && decision != Constants.k_WaitingToGetPayment && decision != Constants.k_PaidAndReadyToGo && decision != Constants.k_AllTheVehicles && decision != Constants.k_PreviewMenu)
            {
                OutPutMessages.PrintWrongMessage();
                decision = Console.ReadKey().KeyChar;
            }

            Console.Clear();
            try
            {
                if (!BackToPreviewScreen(decision))
                {
                    VehicleStatusToPrint = GetVehicleStatusFromChar(decision);
                    if (VehicleStatusToPrint == VehicleInTheGarage.eVehicleStatus.AllStatus)
                    {
                        Console.WriteLine("ALL VEHICLES LICENSE NUMBER : \n");
                    }
                    else
                    {
                        Console.WriteLine("ALL VEHICLES LICENSE NUMBERS IN STATUS {0} : \n", VehicleStatusToPrint);
                    }

                    foreach (KeyValuePair <string, VehicleInTheGarage> i_PrintLicenseNumbers in IOpenedNewGarage.AllVehiclesInTheGarage)
                    {
                        if (VehicleStatusToPrint == VehicleInTheGarage.eVehicleStatus.AllStatus)
                        {
                            Console.WriteLine(i_PrintLicenseNumbers.Key + "\n");
                        }
                        else if (i_PrintLicenseNumbers.Value.StatusInTheGarage == VehicleStatusToPrint)
                        {
                            Console.WriteLine(i_PrintLicenseNumbers.Key + "\n");
                        }
                    }
                }
            }
            finally
            {
                ReceiveInformation();
            }

            Thread.Sleep(5000);
            WorkingInTheGarage();
            Console.Clear();
        }
Beispiel #11
0
        private static char ChooseWhatToDo()
        {
            ////int theDecisionIs;
            OutPutMessages.ChooseWhatToDoDisplayMenu();
            char decision = Console.ReadKey().KeyChar;

            while (decision != Constants.k_NewVehicle && decision != Constants.k_WantInformation && decision != Constants.k_UpdateVehicleData)
            {
                OutPutMessages.PrintWrongMessage();
                decision = Console.ReadKey().KeyChar;
            }

            Console.Clear();
            return(decision);
        }
Beispiel #12
0
        public void RecipeCommand(string[] userInput)
        {
            var hero = Inventory.GetHero(userInput[2]);

            if (hero._heroItems.Count > 1)
            {
                var isItemsPresent = IsItemsPresent(userInput, Inventory.GetHero(userInput[2]));
                if (isItemsPresent == 2)
                {
                    var recipe = new RecipeItem(userInput);
                    hero._heroItems.Add(new CommonItem(recipe));
                    hero.IncreaseHeroPropertyByItem(recipe);
                    OutPutMessages.AddedRecipeMessage(recipe);
                }
            }
        }
Beispiel #13
0
        private static void FillingEnergyInVehicle()
        {
            string licenseNumberToChangeStatus;

            OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
            licenseNumberToChangeStatus = Console.ReadLine();
            if (BackToPreviewScreen(licenseNumberToChangeStatus))
            {
                UpdateVehicleData();
            }
            else if (IsTheInputCorrect(licenseNumberToChangeStatus, eInputsToCheck.LicenseNumber) == Constants.k_WrongInput)
            {
                FillingEnergyInVehicle();
            }
            else
            {
                try
                {
                    while (!IOpenedNewGarage.LicenseNumberExist(licenseNumberToChangeStatus))
                    { //// case the license number not exist
                        Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn, Constants.k_StartPrintingMenuLine + 6);
                        Console.Write("|  THE LICENSE NUMBER YOU ENTERED NOT EXIST              |");
                        Thread.Sleep(1500);
                        licenseNumberToChangeStatus = Console.ReadLine();
                    }

                    FillinFuelOrElectricInVehicle(licenseNumberToChangeStatus);
                }
                catch (Exception FillingEnergyFailed)
                {
                    Console.Clear();
                    Console.WriteLine("Catching Exception : \n");
                    Console.WriteLine(FillingEnergyFailed.Message);
                    Thread.Sleep(4500);
                    Console.Clear();
                    FillingEnergyInVehicle();
                    ///////////////////////////////////////////////////////
                }
            }
        }
Beispiel #14
0
        private static void FillinFuelOrElectricInVehicle(string i_LicenseNumberOfVehicleToFill)
        {
            char FuelTypeSign;

            FuelEngine.eFuelType FuelTypeToFill;
            string EnergyAmountToAddSTR;
            float  EnergyAmountToAdd;

            if (IOpenedNewGarage.IsItAFuelEngine(i_LicenseNumberOfVehicleToFill))
            { //// this is a fuel engine
                OutPutMessages.ChooseFuelInVehicleTypeDisplayMenu();
                FuelTypeSign   = Console.ReadKey().KeyChar;
                FuelTypeToFill = GetFuelTypeFromChar(FuelTypeSign);
                OutPutMessages.FillingFuelInVehicleChooseAmountDisplayMenu();
            }
            else
            { //// this is an electric engine
                OutPutMessages.ChargingElectricInVehicleDisplayMenu();
                FuelTypeToFill = Engine.eFuelType.Electricity;
            }

            EnergyAmountToAddSTR = Console.ReadLine();
            if (BackToPreviewScreen(EnergyAmountToAddSTR))
            { //// case the user want to go back to preview menu
                FillingEnergyInVehicle();
            }
            else if (!(float.TryParse(EnergyAmountToAddSTR, out EnergyAmountToAdd)))
            { //// case the string input could not convert to float
                FillinFuelOrElectricInVehicle(i_LicenseNumberOfVehicleToFill);
            }
            else
            {
                IOpenedNewGarage.FillingEnergyInTheVehicle(EnergyAmountToAdd, FuelTypeToFill, i_LicenseNumberOfVehicleToFill);
                OutPutMessages.SuccessMessageForFillingEnergyAction();
                Thread.Sleep(1500);
                WorkingInTheGarage();
            }
        }
        public static void EnterInformation(string i_VehicleLicenseNumber, char i_VehicleType, string i_OwnerName, string i_OwnerPhoneNumber)
        {
            //// general members
            string i_VehicleModel;
            float  i_CurrentEnergyLevel;
            string i_CurrentEnergyLevelSTR;
            float  i_MaxEnergyLevel;
            char   i_FuelTypeSign;

            Engine.eFuelType i_FuelType;
            char             i_ChoosenVehicleEngineType;

            //// car members
            char i_CarColorChar;

            Car.eColorOfCar i_CarColor;
            int             i_NumberOfDoors;
            char            i_NumberOfDoorsChar;

            //// motorcycle members
            char i_MotorcycleLicenseTypeChar;

            Motorcycle.eLicenseType i_MotorcycleLicenseType;
            int    i_EngineCapacitiyCC;
            string i_EngineCapacitiyCCSTR;

            //// truck members
            bool   i_TrunkIsCool;
            char   i_TrunkIsCoolChar;
            float  i_TrunkCapacityCC;
            string i_TrunkCapacitySTR;

            //// play with functions
            OutPutMessages.VehicleModelDisplayMenu();
            i_VehicleModel = Console.ReadLine();
            OutPutMessages.ChooseEngineTypeDisplayMenu();
            i_ChoosenVehicleEngineType = Console.ReadKey().KeyChar;
            while (i_ChoosenVehicleEngineType != Constants.k_Fuel && i_ChoosenVehicleEngineType != Constants.k_Electric)
            {
                OutPutMessages.PrintWrongMessage();
                i_ChoosenVehicleEngineType = Console.ReadKey().KeyChar;
            }
            if (IsItAFuelEngine(i_ChoosenVehicleEngineType))
            { //// case it is a fuel engine
                OutPutMessages.ChooseFuelInVehicleTypeDisplayMenu();
                i_FuelTypeSign = Console.ReadKey().KeyChar;
                i_FuelType     = UI.GetEngineTypeFromChar(i_FuelTypeSign);
            }
            else
            { //// case it is an electric engine
                i_FuelType = Engine.eFuelType.Electricity;
            }

            OutPutMessages.VehicleEnergyLevelDisplayMenu();
            i_CurrentEnergyLevelSTR = Console.ReadLine();
            while (!(float.TryParse(i_CurrentEnergyLevelSTR, out i_CurrentEnergyLevel)))
            { //// case the string input could not convert to float
                OutPutMessages.VehicleEnergyLevelDisplayMenu();
                i_CurrentEnergyLevelSTR = Console.ReadLine();
            }

            if (i_VehicleType == Constants.k_Car)
            {
                OutPutMessages.CarColorsDisplayMenu();
                i_CarColorChar = Console.ReadKey().KeyChar;
                i_CarColor     = GetCarColorFromChar(i_CarColorChar);
                OutPutMessages.NumberOfDoorsDisplayMenu();
                i_NumberOfDoorsChar = Console.ReadKey().KeyChar;
                i_NumberOfDoors     = (i_NumberOfDoorsChar - Constants.k_ValueToDecreaseFromCharToGetInt);
                if (IsItAFuelEngine(i_ChoosenVehicleEngineType))
                { //// case it is a fuel engine
                    i_MaxEnergyLevel = Constants.k_CarFuelTankCapacity;
                }
                else
                { //// case it is an electric engine
                    i_MaxEnergyLevel = Constants.k_CarBatteryMaxHours;
                }

                CreateNewVehicle.AddNewCarCompleteInformation(i_VehicleLicenseNumber, i_VehicleModel, i_MaxEnergyLevel, i_CurrentEnergyLevel, i_CarColor, i_NumberOfDoors, i_FuelType, i_OwnerName, i_OwnerPhoneNumber);
            }
            else if (i_VehicleType == Constants.k_Motorcycle)
            {
                OutPutMessages.MotorcycleLicenseDisplayMenu();
                i_MotorcycleLicenseTypeChar = Console.ReadKey().KeyChar;
                i_MotorcycleLicenseType     = GetLicenseTypeFromChar(i_MotorcycleLicenseTypeChar);
                OutPutMessages.EngineCapacityCCDisplayMenu();
                i_EngineCapacitiyCCSTR = Console.ReadLine();
                i_EngineCapacitiyCC    = int.Parse(i_EngineCapacitiyCCSTR);
                if (IsItAFuelEngine(i_ChoosenVehicleEngineType))
                { //// case it is a fuel engine
                    i_MaxEnergyLevel = Constants.k_MotorcycleFuelTankCapacity;
                }
                else
                { //// case it is an electric engine
                    i_MaxEnergyLevel = Constants.k_MotorcycleBatteryMaxHours;
                }

                CreateNewVehicle.AddNewMotorcycleCompleteInformation(i_VehicleLicenseNumber, i_VehicleModel, i_MaxEnergyLevel, i_CurrentEnergyLevel, i_MotorcycleLicenseType, i_EngineCapacitiyCC, i_FuelType, i_OwnerName, i_OwnerPhoneNumber);
            }
            else
            { //// if (i_VehicleType == Constants.k_Truck)
                OutPutMessages.TruckDisplayMenu();
                i_TrunkCapacitySTR = Console.ReadLine();
                while (!float.TryParse(i_TrunkCapacitySTR, out i_TrunkCapacityCC))
                {
                    OutPutMessages.TruckDisplayMenu();
                    i_TrunkCapacitySTR = Console.ReadLine();
                }

                i_TrunkIsCoolChar = Console.ReadKey().KeyChar;
                i_TrunkIsCool     = IsTheTrunkIsColler(i_TrunkIsCoolChar);
                i_MaxEnergyLevel  = Constants.k_TruckFuelTankCapacity;
                CreateNewVehicle.AddNewTruckCompleteInformation(i_VehicleLicenseNumber, i_VehicleModel, i_MaxEnergyLevel, i_CurrentEnergyLevel, i_TrunkIsCool, i_TrunkCapacityCC, i_FuelType, i_OwnerName, i_OwnerPhoneNumber);
            }

            Console.Clear();
            OutPutMessages.SuccessMessageDisplayMenu();
            UI.WorkingInTheGarage();
        }
Beispiel #16
0
        private static void PrintAllDataForSpecificVehicle()
        {
            VehicleInTheGarage vehicleToPrint = null;
            string             licenseNumberToPrintData;

            OutPutMessages.AskingForVehicleLicenseNumberDisplayMenu();
            licenseNumberToPrintData = Console.ReadLine();
            if (BackToPreviewScreen(licenseNumberToPrintData))
            { //// return to preview menu
                ReceiveInformation();
            }
            else if (IsTheInputCorrect(licenseNumberToPrintData, eInputsToCheck.LicenseNumber) == Constants.k_WrongInput)
            { //// wrong license number input
                PrintAllDataForSpecificVehicle();
            }
            else
            { //// license number not exist
                while (!IOpenedNewGarage.LicenseNumberExist(licenseNumberToPrintData))
                {
                    //// OutPutMessages.LicenseNumberNotExistMessage();
                    Console.SetCursorPosition(Constants.k_StartPrintingMenuColumn, Constants.k_StartPrintingMenuLine + 6);
                    Console.Write("|  THE LICENSE NUMBER YOU ENTERED NOT EXIST              |");
                    Thread.Sleep(1500);
                    licenseNumberToPrintData = Console.ReadLine();
                }
                //// license number exist- lets print its information
            }

            IOpenedNewGarage.AllVehiclesInTheGarage.TryGetValue(licenseNumberToPrintData, out vehicleToPrint);
            vehicleToPrint.VehicleInTheGarageInfo();



            //string modelNameMessage = "1.Model Name " + vehicleToPrint.Vehicle.ModelName;
            //string licenseNumberMessage = "2.License Number " + vehicleToPrint.Vehicle.LicenseNumber;
            //string wheelsListSubjectMessage = "6.Wheels List: ";
            //string correntEnergyLevelMessage;
            //string maxEnergyLevelMessage;
            //string TypeEnergyMessage;
            //if (vehicleToPrint.Vehicle.VehicleEngine is FuelEngine)
            //{
            //    FuelEngine tempFuelEngine = (FuelEngine)vehicleToPrint.Vehicle.VehicleEngine;
            //    correntEnergyLevelMessage = "3.Corrent Energy Level " + tempFuelEngine.CurrentEnergyStatus + " Liters";
            //    maxEnergyLevelMessage = "4.Max Energy Level " + tempFuelEngine.MaxEnergyCapacity + " Liters";
            //    TypeEnergyMessage = "5.Fuel Type: " + tempFuelEngine.FuelType;
            //}
            //else
            //{

            //    correntEnergyLevelMessage = "3.Corrent Energy Level " + vehicleToPrint.Vehicle.VehicleEngine.CurrentEnergyStatus + " Hours";
            //    maxEnergyLevelMessage = "4.Max Energy Level " + vehicleToPrint.Vehicle.VehicleEngine.MaxEnergyCapacity + " Hours";
            //    TypeEnergyMessage = "5.Energy Engine ";
            //}

            //string OwnerNameMessage = "9.Owner Name: " + vehicleToPrint.OwnerName;
            //string StatusInTheGarage = "10.Garage Status: " + vehicleToPrint.StatusInTheGarage;
            //Console.WriteLine(string.Format("{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n", modelNameMessage, licenseNumberMessage, correntEnergyLevelMessage,
            //    maxEnergyLevelMessage, TypeEnergyMessage, wheelsListSubjectMessage, PrintAllWheelsInformationByVehicle(vehicleToPrint.Vehicle)));
            //if (vehicleToPrint.Vehicle is Car)
            //{
            //    PrintCarInformation((Car)vehicleToPrint.Vehicle);
            //}
            //else if (vehicleToPrint.Vehicle is Motorcycle)
            //{
            //    PrintMotorcycleInformation((Motorcycle)vehicleToPrint.Vehicle);
            //}
            //else
            //{
            //    PrintTruckInformation((Truck)vehicleToPrint.Vehicle);
            //}
        }