//Asks user for entry
        public static void ChooseOption()
        {
            Console.WriteLine("Enter 1 : Add Hotel\nEnter 2 : Show Cheapest Hotels\nEnter 3 : Book Best Hotel\nEnter 4 : Book Highest Rating Hotel\nEnter 5 : Exit");
            Console.Write("Your Entry : ");
            int enteredKey = default(int);

            try
            {
                try
                {
                    enteredKey = Convert.ToInt32(Console.ReadLine());
                }
                catch
                {
                    ColouredPrint.PrintInMagenta("Wrong key entered\nTry Again");
                    ChooseOption();
                }
                switch (enteredKey)
                {
                case 1:
                    CallingMethodsClass.CallAddHotel();
                    ChooseOption();
                    break;

                case 2:
                    CallingMethodsClass.GetCheapestHotels();
                    ChooseOption();
                    break;

                case 3:
                    CallingMethodsClass.GetBestHotel();
                    ChooseOption();
                    break;

                case 4:
                    CallingMethodsClass.GetHighestRatedHotel();
                    ChooseOption();
                    break;

                case 5:
                    break;

                default:
                    ColouredPrint.PrintInMagenta("Wrong key entered\nTry Again");
                    ChooseOption();
                    break;
                }
            }
            //Catches exception if hotelName is Invalid
            catch (HotelReservationException e)
            {
                ColouredPrint.PrintInMagenta($"{e.Message}\nTry Again");
                ChooseOption();
            }
        }
        //private method to ask detail about customer type to user
        private static CustomerType AskCustomerType()
        {
label7:
            CustomerType custType;

            Console.WriteLine("Enter REGULAR for Regular Customer\nEnter REWARD for Reward Customer");
            Console.Write("Your Entry : ");
            int custTypeValidity = ValidateCustType(Console.ReadLine());

            if (custTypeValidity == 0)
            {
                custType = CustomerType.REGULAR_CUST;
            }
            else if (custTypeValidity == 1)
            {
                custType = CustomerType.REWARD_CUST;
            }
            else
            {
                ColouredPrint.PrintInMagenta("Entered Customer type is INVALID\nTry Again");
                goto label7;
            }
            return(custType);
        }
        //private method or calling AddHotel Method
        private static void CallAddHotel()
        {
            Console.Write("Enter the Hotel Name : ");
            string hotelName = Console.ReadLine();

label2:
            Console.Write("Enter the Hotel Rating : ");
            int hotelRating;

            try
            {
                hotelRating = Convert.ToInt32(Console.ReadLine());
            }
            catch
            {
                ColouredPrint.PrintInMagenta("Wrong value");
                goto label2;
            }
label3:
            Console.Write("Enter the Weekday Rate For Regular Customer : ");
            int weekdayRateForRegularCust;
            int weekendRateForRegularCust;
            int weekdayRateForRewardCust;
            int weekendRateForRewardCust;

            try
            {
                weekdayRateForRegularCust = Convert.ToInt32(Console.ReadLine());
            }
            catch
            {
                ColouredPrint.PrintInMagenta("Wrong value");
                goto label3;
            }
label4:
            Console.Write("Enter the Weekend Rate For Regular Customer : ");
            try
            {
                weekendRateForRegularCust = Convert.ToInt32(Console.ReadLine());
            }
            catch
            {
                ColouredPrint.PrintInMagenta("Wrong value");
                goto label4;
            }
label5:
            Console.Write("Enter the Weekday Rate For Reward Customer : ");
            try
            {
                weekdayRateForRewardCust = Convert.ToInt32(Console.ReadLine());
            }
            catch
            {
                ColouredPrint.PrintInMagenta("Wrong value");
                goto label5;
            }
label6:
            Console.Write("Enter the Weekend Rate For Reward Customer : ");
            try
            {
                weekendRateForRewardCust = Convert.ToInt32(Console.ReadLine());
            }
            catch
            {
                ColouredPrint.PrintInMagenta("Wrong value");
                goto label6;
            }
            HotelDetails hotelDetailsObj = new HotelDetails();

            hotelDetailsObj.AddHotel(hotelName, hotelRating, weekdayRateForRegularCust, weekendRateForRegularCust, weekdayRateForRewardCust, weekendRateForRewardCust);
        }