public bool ValiderReservation(int idReservation, DateTime dateDebut, DateTime dateFin, int keyClient, int keyChambre) { try { ReservationSet reservation; if (idReservation != 0) //si id!=0 alors l'hotel existe déjà { reservation = GetReservation(idReservation); } else { reservation = new ReservationSet(); } reservation.DateDebut = dateDebut; reservation.DateFin = dateFin; reservation.KeyClient = keyClient; reservation.KeyChambre = keyChambre; if (idReservation == 0) //nouvel hotel { this.ReservationsSet.Add(reservation); } this.SaveChanges(); return(true); } catch (Exception ex) { throw; } }
//TODO : pour les ajouts penser à l'objet en plus de la foreign key private void BtValiderReservation_Click(object sender, RoutedEventArgs e) { try { if (CbChambres.SelectedValue == null) { MessageBox.Show("Veuillez choisir un hotel puis une chambre"); return; } using (var db = new ModelBooking()) { bool isNewReservation; ReservationSet reservation; if ((string)this.LbIdReservation.Content != "" && this.LbIdReservation.Content != null) { isNewReservation = false; int idReservation = Convert.ToInt32(this.LbIdReservation.Content); var resultQuery = (from reservations in db.ReservationsSet where reservations.Id == idReservation select reservations); if (resultQuery.Any()) { reservation = resultQuery.First(); } else { return; } } else { isNewReservation = true; reservation = new ReservationSet(); } reservation.dateDebut = (DateTime)this.DtDebutReservation.SelectedDate; reservation.dateFin = (DateTime)this.DtFinReservation.SelectedDate; reservation.keyClient = Convert.ToInt32(this.CbClient.SelectedValue); reservation.keyChambre = Convert.ToInt32(this.CbChambres.SelectedValue); if (isNewReservation) { db.ReservationsSet.Add(reservation); } db.SaveChanges(); } MessageBox.Show("Enregistré !"); LoadReservations(); ActiverDesactiverControlesReservations(false); } catch (Exception ex) { throw; } }
private void ReservationDataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { if (this.ReservationDataGrid.SelectedItem == null) { return; } ReservationSet reservation = (ReservationSet)ReservationDataGrid.SelectedItem; if (reservation == null) { return; } ChargementComboHotels(this.CbHotels_TabReservations); ChargementComboClients(this.CbClient); this.BtNouvelleReservation.IsEnabled = true; this.BtSupprimerReservation.IsEnabled = true; this.LbIdReservation.Content = reservation.Id.ToString(); this.DtDebutReservation.SelectedDate = reservation.dateDebut; this.DtFinReservation.SelectedDate = reservation.dateFin; this.CbClient.SelectedItem = reservation.keyClient; this.CbChambres.SelectedItem = reservation.keyChambre; using (var db = new ModelBooking()) { var resultQuery = (from chambre in db.ChambresSet where chambre.Id == reservation.keyChambre select chambre.keyHotel); if (resultQuery.Any()) { this.CbHotels_TabReservations.SelectedItem = resultQuery.First(); } } ActiverDesactiverControlesReservations(true); } catch (Exception ex) { throw new Exception(ex.Message); } }
public bool SupprimerReservation(ReservationSet reservation) { try { var resultQuery = (from reservations in this.ReservationsSet where reservations.Id == reservation.Id select reservations); if (resultQuery.Any()) { this.ReservationsSet.Remove(resultQuery.First()); this.SaveChanges(); return(true); } return(false); } catch (Exception ex) { throw; } }