Пример #1
0
        public bool Check()
        {
            if (Room.isEmpty == false)
            {
                MessageBox.Show("This room is not empty!");
                return(false);
            }
            else if (Room.Room_Capacity < Number_of_Guests)
            {
                MessageBox.Show("Sorry, there is not enough space for " + Number_of_Guests + " people!");
                return(false);
            }

            DataTable reservations = Room.GetReservations();

            foreach (DataRow row in reservations.Rows)
            {
                DateTime reserv_entry;
                DateTime.TryParse(row["entry_date"].ToString(), out reserv_entry);
                DateTime reserv_departure;
                DateTime.TryParse(row["departure_date"].ToString(), out reserv_departure);
                //These should be -1
                int entry_result_ent     = Entry_Date.Date.CompareTo(reserv_entry.Date);
                int departure_result_ent = Departure_Date.Date.CompareTo(reserv_entry.Date);
                // OR

                //These should be 1
                int entry_result_dep     = Entry_Date.Date.CompareTo(reserv_departure.Date);
                int departure_result_dep = Departure_Date.Date.CompareTo(reserv_departure.Date);


                if (!((entry_result_ent == -1 && departure_result_ent == -1) || (entry_result_dep == 1 && departure_result_dep == 1)))
                {
                    MessageBox.Show("Sorry, room is not empty during these dates!");
                    return(false);
                }
            }



            return(true);
        }