예제 #1
0
        public void GetAvailableCampgroundsTest()
        {
            int siteId;

            using (SqlConnection conn = new SqlConnection(connectionstring))
            {
                conn.Open();
                SqlCommand cmd = new SqlCommand("insert into site (accessible, max_occupancy, campground_id, site_number, utilities) values ('true', 100, 1, 1000, 'false');", conn);
                cmd.ExecuteNonQuery();
                cmd    = new SqlCommand("SELECT CAST(SCOPE_IDENTITY() as int);", conn);
                siteId = Convert.ToInt32(cmd.ExecuteScalar());
            }

            Reservation r = new Reservation();

            r.Name        = "Peter";
            r.Site_id     = siteId;
            r.From_date   = Convert.ToDateTime("01/01/01");
            r.To_date     = Convert.ToDateTime("01/05/01");
            r.Create_date = DateTime.Now;

            SiteDAL dal = new SiteDAL(connectionstring);

            List <Site> output = dal.GetAvailableCampsites(1, Convert.ToDateTime("01/02/01"), Convert.ToDateTime("01/03/01"));

            Assert.IsTrue(output.Count > 0);
        }
        private void CheckAvailability()
        {
            GetAllCampgrounds();

            int      campgroundId = CLIHelper.GetInteger("Please select which Campground Id you would like to check the availability of : ");
            DateTime startDate    = CLIHelper.GetDateTime("When would you like start your reservation?");
            DateTime endDate      = CLIHelper.GetDateTime("When would you like end your reservation?");

            CampgroundDAL cdal = new CampgroundDAL(DatabaseConnection);
            Campground    reservedCampground = cdal.GetCampground(campgroundId);

            if (startDate.Month < reservedCampground.OpenFromMM)
            {
                Console.WriteLine("The campground is not open yet.");
                return;
            }
            if (endDate.Month > reservedCampground.OpenToMM)
            {
                Console.WriteLine("The campground is closed for the year.");
                return;
            }


            Console.WriteLine();

            SiteDAL     sdal = new SiteDAL(DatabaseConnection);
            List <Site> site = sdal.GetAvailableCampsites(campgroundId, startDate, endDate);

            PrintSites(site);

            Console.ReadLine();
            string input = CLIHelper.GetString(" Would you Like to confirm your reservation?").ToLower();

            if (input == "yes" || input == "y")
            {
                HelpMakeReservation(campgroundId, startDate, endDate);
            }
            else
            {
                Console.WriteLine("Returning to Main Menu");
                Console.ReadLine();
            }
        }