/// <summary> /// Checks if the selected apartment is available within the selected dates. /// </summary> private void CheckApartmentAvailability() { if (Apartment == null) { return; } var start = fromDateTimePicker.Value.Date; var end = toDateTimePicker.Value.Date; var reservations = Apartment.GetAllReservationsForApartment().Except(new List <ReservationInfo> { Reservation }).ToList(); foreach (var reservation in reservations) { if ((reservation.From < start && reservation.To > start) || (reservation.From < end && reservation.To > end) || (start <= reservation.From && end >= reservation.To)) { infoLabel.Text = $@"Selected reservation dates for this room collide with another reservation. Reservation start: {reservation.From.Date:dd.MM.yyyy}, reservation end: {reservation.To.Date:dd.MM.yyyy}"; saveButton.Enabled = false; return; } infoLabel.Text = ""; saveButton.Enabled = true; } }
/// <summary> /// Checks if the selected apartment is available within the selected dates. /// </summary> private void CheckApartmentAvailability() { if (SelectedApartment == null) { return; } var start = fromDateTimePicker.Value.Date; var end = toDateTimePicker.Value.Date; var reservations = SelectedApartment.GetAllReservationsForApartment().ToList(); foreach (var reservation in reservations) { if (reservation.From < start && reservation.To > start || reservation.From < end && reservation.To > end || start <= reservation.From && end >= reservation.To) { infoLabel.Text = @"Selected reservation dates for this room collide with another reservation." + $@"Reservation start: {reservation.From.Date:dd.MM.yyyy}, reservation end: {reservation.To.Date:dd.MM.yyyy}"; proceedButton.Enabled = false; return; } infoLabel.Text = ""; proceedButton.Enabled = true; } }