Esempio n. 1
0
 public BookingController(PaymentController paymentController, CustomerController customerController)
 {
     dataAccessFacade        = DataAccessFacade.GetInstance();
     bookingCollection       = new BookingCollection(dataAccessFacade);
     this.paymentController  = paymentController;
     this.customerController = customerController;
 }
Esempio n. 2
0
 /// <summary>
 /// For testing against a specified DataAccessFacade
 /// </summary>
 /// <param name="dataAccessFacade"></param>
 public BookingController(PaymentController paymentController, CustomerController customerController,
                          IDataAccessFacade dataAccessFacade)
 {
     this.dataAccessFacade   = dataAccessFacade;
     bookingCollection       = new BookingCollection(dataAccessFacade);
     this.paymentController  = paymentController;
     this.customerController = customerController;
 }
Esempio n. 3
0
 public void AddVoyage(Voyage voyage)
 {
     if (voyage != null && !HasVoyage(voyage))
     {
         BookingCollection.Add(
             new Booking()
         {
             Passenger = this,
             Voyage    = voyage
         }
             );
     }
 }
Esempio n. 4
0
 public void AddPerson(Passenger Passenger)
 {
     if (Passenger != null && !HasPerson(Passenger) && !Gone())
     {
         BookingCollection.Add(
             new Booking()
         {
             Passenger = Passenger,
             Voyage    = this
         }
             );
         RemainingSeat--;
     }
 }
Esempio n. 5
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            var context = new HotelContext();

            IUserRepository        userRepository        = new UserRepository(context);
            IManagerRepository     managerRepository     = new ManagerRepository(context);
            IVisitorRepository     visitorRepository     = new VisitorRepository(context);
            IManagerInfoRepository managerInfoRepository = new ManagerInfoRepository(context);
            IVisitorInfoRepository visitorInfoRepository = new VisitorInfoRepository(context);
            IRoomRepository        roomRepository        = new RoomRepository(context);
            IBookingRepository     bookingRepository     = new BookingRepository(context);

            UserCollection        userCollection        = new UserCollection(userRepository);
            ManagerCollection     managerCollection     = new ManagerCollection(managerRepository);
            VisitorCollection     visitorCollection     = new VisitorCollection(visitorRepository);
            ManagerInfoCollection managerInfoCollection = new ManagerInfoCollection(managerInfoRepository);
            VisitorInfoCollection visitorInfoCollection = new VisitorInfoCollection(visitorInfoRepository);
            RoomCollection        roomCollection        = new RoomCollection(roomRepository);
            BookingCollection     bookingCollection     = new BookingCollection(bookingRepository);

            IHotelSystem hotel = new HotelSystem(userCollection, managerCollection, visitorCollection,
                                                 managerInfoCollection, visitorInfoCollection, roomCollection, bookingCollection);

            if (hotel.GetUser("root") is null)
            {
                hotel.AddUser(new Manager
                {
                    Login       = "******",
                    Password    = "******",
                    Salary      = 123,
                    ManagerInfo = new ManagerInfo {
                        Name = "lola", Surname = "brown", Email = "www@fw", StartDate = new DateTime(1999, 12, 12)
                    }
                });
            }

            Window mainWindow = new MainWindow();

            IDialogService dialogService = new DialogService.DialogService(mainWindow);

            dialogService.Register <RoomAboutDialogWindowModel, RoomAboutDialogWindow>();
            dialogService.Register <RoomBookingsDialogWindowModel, RoomBookingsDialogWindow>();
            dialogService.Register <AddBookingDialogWindowModel, AddBookingDialogWindow>();

            MainController mainController = new MainController(hotel, mainWindow, dialogService);

            mainController.LoadLoginDashboard();
        }
Esempio n. 6
0
        public static BookingCollection GetAllBookings()
        {
            BookingCollection bookings = new BookingCollection();

            try
            {
                using (DatabaseEntities context = new DatabaseEntities())
                {
                    IQueryable <Booking> query = from booking in context.Bookings
                                                 where (booking.confirmed == false)
                                                 select booking;

                    foreach (Booking booking in query)
                    {
                        Client client = GetClient(booking.clientID);
                        if (client == null)
                        {
                            throw new Exception("Null returned for client");
                        }
                        booking.client = client;

                        IActivity activity = GetActivity(booking.activityID);
                        if (activity == null)
                        {
                            throw new Exception("Null returned for activity");
                        }
                        booking.activity = activity;

                        IVenue venue = GetVenue(booking.venueID);
                        if (venue == null)
                        {
                            throw new Exception("Null returned for venue");
                        }
                        booking.venue = venue;
                        booking.SetDateAndTime();

                        bookings.Add(booking);
                    }
                }
            }
            catch (Exception exception)
            {
                ShowErrorMessage(exception);
            }

            return(bookings);
        }
        public void BookingCollectionGetByIDReturnsNullOnNoBookingFound()
        {
            BookingCollection testCollection = new BookingCollection();

            Date   mockDate   = Substitute.For <Date>(12, 9, 2019);
            Time   mockTime   = Substitute.For <Time>(12, 54);
            IVenue mockVenue  = Substitute.For <IVenue>();
            Client mockClient = Substitute.For <Client>("123", "CompanyName1", "CompanyAddress1");

            Booking booking1 = new Booking("1", BookingType.FACILITATED,
                                           mockClient, mockDate, mockTime, mockVenue);
            Booking booking2 = new Booking("2", BookingType.FACILITATED,
                                           mockClient, mockDate, mockTime, mockVenue);

            testCollection.Add(booking1);
            testCollection.Add(booking2);

            Assert.AreEqual <Booking>(null, testCollection.GetByID("3"));
        }
        public BookingPresenter(IBookingGUI screen)
        {
            if (screen == null)
            {
                throw new ArgumentNullException("Screen reference null");
            }

            currentClientIndex = 0;
            activeBooking      = null;
            this.screen        = screen;
            screen.Register(this);
            screen.DisableButtons();
            this.clients  = DatabaseQueries.GetAllClients();
            this.bookings = DatabaseQueries.GetAllBookings();
            PopulateClientList();
            screen.HideDateSelector();
            screen.HideTimeSelector();
            screen.DisableSelectBookingButton();
        }
        public void BookingCollectionDeleteIDSuccess()
        {
            BookingCollection testCollection = new BookingCollection();

            Date   mockDate   = Substitute.For <Date>(12, 9, 2019);
            Time   mockTime   = Substitute.For <Time>(12, 54);
            IVenue mockVenue  = Substitute.For <IVenue>();
            Client mockClient = Substitute.For <Client>("123", "CompanyName1", "CompanyAddress1");

            Booking booking1 = new Booking("1", BookingType.FACILITATED,
                                           mockClient, mockDate, mockTime, mockVenue);
            Booking booking2 = new Booking("2", BookingType.FACILITATED,
                                           mockClient, mockDate, mockTime, mockVenue);

            testCollection.Add(booking1);
            testCollection.Add(booking2);

            testCollection.DeleteID("1");

            Assert.AreEqual <int>(1, testCollection.GetSize());
            Assert.IsTrue(testCollection.Contains(booking2));
        }
        public void BookingCollectionGetClientBookingsReturnsEmptyList()
        {
            BookingCollection testCollection = new BookingCollection();

            Date   mockDate  = Substitute.For <Date>(12, 9, 2019);
            Time   mockTime  = Substitute.For <Time>(12, 54);
            IVenue mockVenue = Substitute.For <IVenue>();

            Client client1 = new Client("123", "CompanyName1", "CompanyAddress1");
            Client client2 = new Client("456", "CompanyName2", "CompanyAddress2");

            Booking booking1 = new Booking("1", BookingType.FACILITATED,
                                           client1, mockDate, mockTime, mockVenue);
            Booking booking2 = new Booking("2", BookingType.FACILITATED,
                                           client1, mockDate, mockTime, mockVenue);

            testCollection.Add(booking1);
            testCollection.Add(booking2);

            Assert.AreEqual(0, testCollection.GetClientBookings(client2).Count);
            Assert.IsInstanceOfType(testCollection.GetClientBookings(client1), typeof(BookingCollection));
        }
Esempio n. 11
0
 public Player()
 {
     Book = new BookingCollection();
 }
Esempio n. 12
0
 public bool HasPerson(Passenger Passenger) =>
 BookingCollection.Any(
     op => op.Passenger != null && op.Passenger.Id == Passenger.Id);
Esempio n. 13
0
 public bool HasVoyage(Voyage voyage) =>
 BookingCollection.Any(
     r => r.Voyage != null &&
     r.Voyage.Id == voyage.Id);