示例#1
0
        public virtual void SearchAvailableSitesInCampGround(int parkSelection, int camp_id, string arrival, string departure)
        {
            Console.Clear();
            SiteSqlDAL  reservationAvailibility = new SiteSqlDAL(databaseconnectionString);
            List <Site> availableSites          = new List <Site>();

            try
            {
                availableSites = reservationAvailibility.ReservationAvailable(camp_id, arrival, departure);
            }
            catch (SqlException ex)
            {
                Console.WriteLine();
                Console.WriteLine("Invalid input.  Please try again.");
                Console.WriteLine();
                return;
            }

            Console.WriteLine();
            if (reservationAvailibility.AnyAvailable(availableSites))
            {
                Console.WriteLine("Results Matching Your Search Criteria");
                Console.WriteLine("Site No.".PadRight(15) + "Max Occup.".PadRight(15) + "Accessible?".PadRight(15) + "Max RV Length".PadRight(15) + "Utility".PadRight(15) + "Cost".PadRight(15));

                foreach (Site s in availableSites)
                {
                    Console.WriteLine(s.ToString() + reservationAvailibility.PrintCost(s, arrival, departure));
                }
                ReservationConfirmation(camp_id, arrival, departure, parkSelection);
            }
            else
            {
                Console.Write("No Available Sites. Would you like to enter alternate dates? (Y / N)  ");
                string answer = Console.ReadLine();
                if (answer.ToUpper() == "N")
                {
                    menuInComplete = false;
                    return;
                }
                else if (answer.ToUpper() == "Y")
                {
                    return;
                }
                else
                {
                    Console.WriteLine("Sorry I don't understand.");
                    return;
                }
            }
        }