Ejemplo n.º 1
0
        public void DeleteReservation(int customerID)
        {
            var reservationToDelete      = new Reservation();
            var paymentInfoToDelete      = new Payment();
            var reservationRoomsToDelete = new ReservationRoom();
            var customerToDelete         = new Customer();

            using (HotelDBContext context = new HotelDBContext())
            {
                try
                {
                    reservationToDelete      = context.Reservations.SingleOrDefault(r => r.CustomerID == customerID);
                    reservationRoomsToDelete = context.ReservationRooms.SingleOrDefault(r => r.ReservationRoomsID == reservationToDelete.ReservationRoomsID);
                    customerToDelete         = context.Customers.SingleOrDefault(r => r.CustomerID == reservationToDelete.CustomerID);

                    paymentInfoToDelete = context.Payments.SingleOrDefault(p => p.PaymentID == reservationToDelete.PaymentID);

                    context.Entry(reservationToDelete).State      = System.Data.Entity.EntityState.Deleted;
                    context.Entry(reservationRoomsToDelete).State = System.Data.Entity.EntityState.Deleted;
                    context.Entry(paymentInfoToDelete).State      = System.Data.Entity.EntityState.Deleted;
                    context.SaveChanges();
                }
                catch (Exception ex)
                {
                    MessageBox.Show("An error occurred: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                finally
                {
                }
            }
        }
Ejemplo n.º 2
0
        public void DeleteCustomer(int customerID)
        {
            var reservationsToDelete     = new List <Reservation>();
            var paymentsInfoToDelete     = new Payment();
            var reservationRoomsToDelete = new ReservationRoom();

            using (HotelDBContext context = new HotelDBContext())
            {
                var customer = context.Customers.FirstOrDefault(c => c.CustomerID == customerID);
                try
                {
                    reservationsToDelete = context.Reservations.Where(r => r.CustomerID == customer.CustomerID).ToList();

                    foreach (var reservation in reservationsToDelete)
                    {
                        context.Entry(reservation).State = System.Data.Entity.EntityState.Deleted;
                        reservationRoomsToDelete         = context.ReservationRooms.SingleOrDefault(r => r.ReservationRoomsID == reservation.ReservationRoomsID);
                        context.Entry(reservationRoomsToDelete).State = System.Data.Entity.EntityState.Deleted;
                        paymentsInfoToDelete = context.Payments.FirstOrDefault(p => p.PaymentID == reservation.PaymentID);
                        context.Entry(paymentsInfoToDelete).State = System.Data.Entity.EntityState.Deleted;
                    }
                    context.Entry(customer).State = System.Data.Entity.EntityState.Deleted;
                    context.SaveChanges();
                }
                catch (Exception ex)
                {
                    MessageBox.Show("An error occurred: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                finally
                {
                }
                MessageBox.Show("Customer Have been Deleted");
            }
        }
Ejemplo n.º 3
0
        public void RemoveAllBookingsWichIsntPayedIn10Days()
        {
            var reservationToDelete      = new Reservation();
            var paymentInfoToDelete      = new Payment();
            var reservationRoomsToDelete = new ReservationRoom();
            var customerToDelete         = new Customer();
            var anwser = "Yes";

            using (HotelDBContext context = new HotelDBContext())
            {
                var payment = context.Payments.Where(r => r.LastDayToPay < DateTime.Now).ToList();
                foreach (var payed in payment)
                {
                    if (payed.Paid == "No")
                    {
                        try
                        {
                            reservationToDelete      = context.Reservations.SingleOrDefault(r => r.PaymentID == payed.PaymentID);
                            reservationRoomsToDelete = context.ReservationRooms.SingleOrDefault(r => r.ReservationRoomsID == reservationToDelete.ReservationRoomsID);
                            customerToDelete         = context.Customers.SingleOrDefault(r => r.CustomerID == reservationToDelete.CustomerID);

                            paymentInfoToDelete = payed;
                            anwser = "No";



                            context.Entry(reservationToDelete).State      = System.Data.Entity.EntityState.Deleted;
                            context.Entry(reservationRoomsToDelete).State = System.Data.Entity.EntityState.Deleted;
                            context.Entry(paymentInfoToDelete).State      = System.Data.Entity.EntityState.Deleted;
                            context.Entry(reservationToDelete).State      = System.Data.Entity.EntityState.Deleted;
                            context.SaveChanges();
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("An error occurred: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        finally
                        {
                        }
                    }
                }
                if (anwser == "No")
                {
                    MessageBox.Show("Customers who haven't payed for 10 days since there booking have been removed");
                }
            }
        }