private void DidLoad(object sender, RoutedEventArgs e) { //show the boat information BoatAmount.Content = $" {SelectionList.Count}"; if (AccessLevel == 1) { AccessLevelButton.Content = "Lid"; } else if (AccessLevel == 2) { AccessLevelButton.Content = "Wedstrijdcommissaris"; } else if (AccessLevel == 3) { AccessLevelButton.Content = "Materiaalcommissaris"; } else if (AccessLevel == 4) { AccessLevelButton.Content = "Administrator"; } //check which dates are not possible to reserve because of maintenance or other reservations foreach (var boat in SelectionList) { dates = reservation.CheckDates(boat.boatId); var bm = new BoatInMaintenances(); //Get dates when boat is in maintenance var maintenanceDates = BoatInMaintenances.CheckMaintenanceDates(boat.boatId); foreach (var d in maintenanceDates) { //adding dates to list if (!dates.Contains(d)) { dates.Add(d); } } foreach (var date in dates) { //disable the dates that are not possible to reserve DatePicker.BlackoutDates.Add(new CalendarDateRange(date)); } } }
private void DidLoad(object sender, RoutedEventArgs e) { //show the boat information BoatName.Content = $" {boatName}"; BoatDescription.Content = $" {BoatTypeDescription}"; if (AccessLevel == 1) { AccessLevelButton.Content = "Lid"; } else if (AccessLevel == 2) { AccessLevelButton.Content = "Wedstrijdcommissaris"; } else if (AccessLevel == 3) { AccessLevelButton.Content = "Materiaalcommissaris"; } else if (AccessLevel == 4) { AccessLevelButton.Content = "Administrator"; } //check which dates are not possible to reserve Dates = Reservation.CheckDates(BoatId); //getting dates when boat is in maintenance var bm = new BoatInMaintenances(); var maintancesDates = BoatInMaintenances.CheckMaintenanceDates(BoatId); foreach (var d in maintancesDates) { //adding dates to list Dates.Add(d); } foreach (var date in Dates) { //disable the dates that are not possible to reserve DatePicker.BlackoutDates.Add(new CalendarDateRange(date)); } }
private void InMaintenance_Click(object sender, RoutedEventArgs e) { var valid = true; var from = DatePicker.SelectedDate; var until = DatePickerUntil.SelectedDate; //start date is not empty if (from == null) { valid = false; MessageBox.Show("Vult u de start datum in."); } else if (until == null) //end date is not empty { valid = false; MessageBox.Show("Vult u de eind datum in."); } else if (from > until) //startDate > endDates { valid = false; MessageBox.Show("Start datum mag niet voorbij eind datum zijn."); } //save to boatMaintenance if (!valid) { return; } int insertId; //set endDate time to 23:59:59 from day var now = (DateTime)until; var newUntil = now.AddHours(23).AddMinutes(59).AddSeconds(59); using (var context = new BootDB()) { var inmain = new BoatInMaintenances() { boatId = this.BoatID, startDate = @from, endDate = newUntil }; //save to boat in maintenances context.BoatInMaintenances.Add(inmain); context.SaveChanges(); insertId = inmain.boatInMaintenanceId; //find reservation id int reservId; var query = context.Reservations .FirstOrDefault(x => x.memberId == MemberId && x.date >= @from && x.date <= newUntil); if (query != null) { reservId = query.reservationId; //remove records from reservations context.Reservations.RemoveRange(context.Reservations.Where(x => x.reservationId == reservId && x.memberId == MemberId)); //remove records from Resevervation_boats context.Reservation_Boats.RemoveRange(context.Reservation_Boats.Where(x => x.reservationId == reservId)); context.SaveChanges(); } } MessageBox.Show($"Boot \"{BoatName}\" is in onderhoud genomen van {@from?.ToString("dd-MM-yyyy")} t/m {until?.ToString("dd-MM-yyyy")}."); Switcher.Switch(new DamageReportsScreen(FullName, AccessLevel, MemberId)); }