private void Modyfikuj_Rezerwacje(object sender, RoutedEventArgs e) { ListViewItem selected = (ListViewItem)ListViewMyReservations.SelectedItem; if (selected != null) { MyReservationList selectedObj = (MyReservationList)selected.Content; int selectedId = selectedObj.ReservationId - 1; var db = new AEiI_2020_BD2_Drynda_FlotaEntities(); Reservation reservationChange = null; var reservation = (from reserv in db.Reservations where reserv.id == selectedId select reserv).FirstOrDefault(); if (reservation != null) { reservationChange = reservation; } if (reservationChange.ended == false) { System.Windows.Window glowneOkno = System.Windows.Application.Current.MainWindow; glowneOkno.DataContext = new ZmienRezerwacjePracownik(reservationChange); } else { MessageBox.Show("Rezerwacja się zakończyła!", "Komunikat"); } } else { MessageBox.Show("Niczego nie wybrano !", "Komunikat"); } }
private void GridViewColumnHeader_Click(object sender, RoutedEventArgs e) { { GridViewColumnHeader column = (sender as GridViewColumnHeader); string sortBy = column.Tag.ToString(); if (listViewSortCol != null) { AdornerLayer.GetAdornerLayer(listViewSortCol).Remove(listViewSortAdorner); ListViewMyReservations.Items.SortDescriptions.Clear(); } ListSortDirection newDir = ListSortDirection.Ascending; if (listViewSortCol == column && listViewSortAdorner.Direction == newDir) { newDir = ListSortDirection.Descending; } listViewSortCol = column; listViewSortAdorner = new SortAdorner(listViewSortCol, newDir); AdornerLayer.GetAdornerLayer(listViewSortCol).Add(listViewSortAdorner); var tempItems = items.ToArray(); if (sortBy == "ReservationId") { if (newDir.ToString() == "Ascending") { Array.Sort(tempItems, CompareReservationByIdAscending); } else { Array.Sort(tempItems, CompareReservationByIdDescending); } } else if (sortBy == "DateStart") { if (newDir.ToString() == "Ascending") { Array.Sort(tempItems, CompareReservationByDateStartAscending); } else { Array.Sort(tempItems, CompareReservationByDateStartDescending); } } else if (sortBy == "DateEnd") { if (newDir.ToString() == "Ascending") { Array.Sort(tempItems, CompareReservationByDateEndAscending); } else { Array.Sort(tempItems, CompareReservationByDateEndDescending); } } else if (sortBy == "DateReservation") { if (newDir.ToString() == "Ascending") { Array.Sort(tempItems, ComparePeopleByDateReservationAscending); } else { Array.Sort(tempItems, ComparePeopleByDateReservationDescending); } } else if (sortBy == "Car") { if (newDir.ToString() == "Ascending") { Array.Sort(tempItems, CompareCarAscending); } else { Array.Sort(tempItems, CompareCarDescending); } } ListViewMyReservations.ItemsSource = tempItems; CollectionView view = (CollectionView)CollectionViewSource.GetDefaultView(ListViewMyReservations.ItemsSource); view.Filter += UserFilter; } int CompareReservationByIdAscending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; return(first.ReservationId.CompareTo(second.ReservationId)); } int CompareReservationByIdDescending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; return(second.ReservationId.CompareTo(first.ReservationId)); } int CompareCarAscending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; return(String.Compare(first.Vehicle, second.Vehicle)); } int CompareCarDescending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; return(String.Compare(second.Vehicle, first.Vehicle)); } int CompareReservationByDateStartAscending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; DateTime firstDate; DateTime secondDate; if (first.ReservationStart.CompareTo("") != 0) { firstDate = Convert.ToDateTime(first.ReservationStart); } else { firstDate = DateTime.MinValue; } if (second.ReservationStart.CompareTo("") != 0) { secondDate = Convert.ToDateTime(second.ReservationStart); } else { secondDate = DateTime.MinValue; } return(DateTime.Compare(firstDate, secondDate)); } int CompareReservationByDateStartDescending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; DateTime firstDate; DateTime secondDate; if (first.ReservationStart.CompareTo("") != 0) { firstDate = Convert.ToDateTime(first.ReservationStart); } else { firstDate = DateTime.MinValue; } if (second.ReservationStart.CompareTo("") != 0) { secondDate = Convert.ToDateTime(second.ReservationStart); } else { secondDate = DateTime.MinValue; } return(DateTime.Compare(secondDate, firstDate)); } int CompareReservationByDateEndAscending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; DateTime firstDate; DateTime secondDate; if (first.ReservationEnd.CompareTo("") != 0) { firstDate = Convert.ToDateTime(first.ReservationEnd); } else { firstDate = DateTime.MinValue; } if (second.ReservationEnd.CompareTo("") != 0) { secondDate = Convert.ToDateTime(second.ReservationEnd); } else { secondDate = DateTime.MinValue; } return(DateTime.Compare(firstDate, secondDate)); } int CompareReservationByDateEndDescending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; DateTime firstDate; DateTime secondDate; if (first.ReservationEnd.CompareTo("") != 0) { firstDate = Convert.ToDateTime(first.ReservationEnd); } else { firstDate = DateTime.MinValue; } if (second.ReservationEnd.CompareTo("") != 0) { secondDate = Convert.ToDateTime(second.ReservationEnd); } else { secondDate = DateTime.MinValue; } return(DateTime.Compare(secondDate, firstDate)); } int ComparePeopleByDateReservationAscending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; DateTime firstDate; DateTime secondDate; if (first.ReservationDate.CompareTo("") != 0) { firstDate = Convert.ToDateTime(first.ReservationDate); } else { firstDate = DateTime.MinValue; } if (second.ReservationDate.CompareTo("") != 0) { secondDate = Convert.ToDateTime(second.ReservationDate); } else { secondDate = DateTime.MinValue; } return(DateTime.Compare(firstDate, secondDate)); } int ComparePeopleByDateReservationDescending(ListViewItem a, ListViewItem b) { MyReservationList first = (MyReservationList)a.Content; MyReservationList second = (MyReservationList)b.Content; DateTime firstDate; DateTime secondDate; if (first.ReservationDate.CompareTo("") != 0) { firstDate = Convert.ToDateTime(first.ReservationDate); } else { firstDate = DateTime.MinValue; } if (second.ReservationDate.CompareTo("") != 0) { secondDate = Convert.ToDateTime(second.ReservationDate); } else { secondDate = DateTime.MinValue; } return(DateTime.Compare(secondDate, firstDate)); } }
private void Zakoncz_Rezerwacje(object sender, RoutedEventArgs e) { ListViewItem selected = (ListViewItem)ListViewMyReservations.SelectedItem; if (selected != null) { MyReservationList selectedObj = (MyReservationList)selected.Content; int selectedId = selectedObj.ReservationId - 1; var db = new AEiI_2020_BD2_Drynda_FlotaEntities(); Reservation reservationChange = null; var reservation = (from reserv in db.Reservations where reserv.id == selectedId select reserv).FirstOrDefault(); if (reservation != null) { reservationChange = reservation; } if (reservationChange.ended == true) { MessageBox.Show("Rezerwacja się zakończyła!", "Komunikat"); } else { DialogResult result = MessageBox.Show("Czy chcesz zakonczyc rezerwację ?" , "Komunikat", MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { reservationChange.ended = true; var lend = (from lends in db.Lends where lends.reservationId == reservationChange.id select lends).FirstOrDefault(); if (lend != null) { lend.returnDate = DateTime.Now.Date; lend.comments += "Zakończono przez zakończenie\nrezerwacji przez pracownika " + Logowanie.actualUser.id + ") " + Logowanie.actualUser.firstName + " " + Logowanie.actualUser.lastName + " - " + DateTime.Now.ToString() + "\n"; } db.SaveChanges(); ListViewMyReservations.ItemsSource = null; items.Clear(); UpdateView(); } else if (result == DialogResult.No) { } } } else { MessageBox.Show("Nic nie wybrano !", "Komunikat"); } }