예제 #1
0
        private void createSessionsToView()
        {
            SharedData.SessionsToView = new ObservableCollection <SessionToView>();
            foreach (Session session in SharedData.SessionsFromDatabase)
            {
                SessionToView sessionToView = new SessionToView();
                sessionToView.SessionId = session.SessionId;
                sessionToView.StartDate = Convert.ToDateTime(session.StartDate);
                sessionToView.EndDate   = Convert.ToDateTime(session.EndDate);
                sessionToView.Type      = session.Type;
                using (SQLiteConnection connection = new SQLiteConnection(SharedData.DatabaseLocation))
                {
                    connection.CreateTable <Movie>();
                    connection.CreateTable <Ticket>();
                    ///get all tickets to current session
                    List <Ticket> ticketsToSession = connection.Query <Ticket>("SELECT * FROM Ticket WHERE SessionNumber = ?", session.SessionId);

                    ///get all available tickets
                    List <Ticket> availableToSellTickets = (from t in ticketsToSession where t.SellDate == "" && t.IsBooked == 0 select t).ToList();
                    sessionToView.AvailableTickets = availableToSellTickets.Count;
                    Movie movie = connection.Query <Movie>("SELECT * FROM Movie WHERE MovieId = ?", ticketsToSession[0].MovieNumber)[0];
                    sessionToView.MovieTitle = movie.Title;
                }
                SharedData.SessionsToView.Add(sessionToView);
            }
        }
예제 #2
0
        private void buttonViewSessionDetails_Click(object sender, RoutedEventArgs e)
        {
            SessionToView        sessionToView        = listViewFutureSessions.SelectedItem as SessionToView;
            WindowObserveSession windowObserveSession = new WindowObserveSession(sessionToView);

            windowObserveSession.ShowDialog();
        }
        public WindowObserveSession(SessionToView sessionViewToSet)
        {
            InitializeComponent();
            sessionToView                 = sessionViewToSet;
            LabelMovieTitle.Content       = "Назва фільму: " + sessionToView.MovieTitle;
            LabelMovieDuration.Content    = "Триваість: " + (sessionToView.EndDate - sessionToView.StartDate);
            LabelTypeSession.Content      = "Тип: " + sessionToView.Type;
            LabelStartDate.Content        = "Дата початку: " + sessionToView.StartDate;
            LabelEndDate.Content          = "Дата кінця: " + sessionToView.EndDate;
            LabelAvailableTickets.Content = "Доступно квитків: " + sessionToView.AvailableTickets;

            ///Get the tickets to current session from database
            List <Ticket> ticketsToSession;

            using (SQLiteConnection connection = new SQLiteConnection(SharedData.DatabaseLocation))
            {
                connection.CreateTable <Ticket>();
                connection.CreateTable <Movie>();
                ticketsToSession         = connection.Query <Ticket>("SELECT * FROM Ticket WHERE SessionNumber = ?", sessionToView.SessionId);
                LabelReleaseYear.Content = "Рік виходу: " + connection.Query <Movie>("SELECT * FROM Movie WHERE MovieId = ?", ticketsToSession[0].MovieNumber).FirstOrDefault().ReleaseYear;
            }
            StackPanelOuter.Children.Add(new TicketsToSessionViewer(ticketsToSession, this));
        }