Esempio n. 1
0
        public ViewWindow(User user, ParkingManager parkingManager)
        {
            this.parkingManager = parkingManager;
            this.user           = user;
            InitializeComponent();
            PhoneNumbLabel.Content = user.Phone;

            var pastSessions =
                (from ps in parkingManager.pastSessions
                 where ps.UserId == user.Id
                 select new
            {
                EntryDate = ps.EntryDt,
                ps.ExitDt,
                ps.TicketNumber,
                ps.TotalPayment
            });

            if (pastSessions.Count() == 0)
            {
                NotFoundSesLabel.Content    = "You do not have past parking sessions";
                NotFoundSesLabel.Background = new SolidColorBrush(Colors.Red);
            }

            else
            {
                PSgrid.ItemsSource = pastSessions;
            }


            var activeSession = parkingManager.activeSessions.Find(s => s.UserId == user.Id);

            if (activeSession != null)
            {
                EntryDTLabel.Content = activeSession.EntryDt;

                TicketNumLabel.Content = activeSession.TicketNumber;

                CurrentPayLabel.Content = parkingManager.GetRemainingCost(activeSession.TicketNumber);

                CarPlateNumLabel.Content = activeSession.CarPlateNumber;
            }
            else
            {
                EntryDTLabel.Content = null;

                TicketNumLabel.Content = null;

                CurrentPayLabel.Content = 0;

                CarPlateNumLabel.Content = user.CarPlateNumber;

                NotFoundLabel.Content = "Not Found";

                NotFoundLabel.Background = new SolidColorBrush(Colors.Red);
            }
        }
Esempio n. 2
0
        // Перевести вGoogleBingif the user has closed the
        // application it is necessary to download data from the
        // active sessionif the user has closed the application it is
        // necessary to download data from the active session
        private async void LoadActiveIfExists()
        {
            ResponseModel response1 = await _pk.GetActiveSessionForUser();

            _currentSession = (ParkingSession)response1.Data;

            if (_currentSession != null)
            {
                EnterEnabled   = false;
                CarPlateNumber = _currentSession.CarPlateNumber;
                EntryDate      = _currentSession.EntryDt;
                PayEnabled     = true;
                RenewEnabled   = true;
                ResponseModel response2 = await _pk.GetRemainingCost(_currentSession.TicketNumber);

                Cost = (decimal)response2.Data;
            }
        }
Esempio n. 3
0
        public MainWindow()
        {
            InitializeComponent();

            decimal percentage = (Convert.ToDecimal(parkingManager.activeSessions.Count) / Convert.ToDecimal(parkingManager.parkingCapacity)) * 100;

            PercentageLabel.Content = percentage;
            CapacityLabel.Content   = parkingManager.parkingCapacity;

            foreach (var s in parkingManager.activeSessions)
            {
                s.TotalPayment = parkingManager.GetRemainingCost(s.TicketNumber);
            }

            AsessionsDataGrid.ItemsSource =
                (from actS in parkingManager.activeSessions
                 select new
            {
                actS.EntryDt,
                actS.CarPlateNumber,
                actS.TicketNumber,
                actS.TotalPayment,
            });

            PsessionsDataGrid.ItemsSource =
                (from pS in parkingManager.pastSessions
                 select new
            {
                pS.EntryDt,
                pS.PaymentDt,
                pS.ExitDt,
                pS.TotalPayment,
                pS.TicketNumber,
                pS.CarPlateNumber
            });
        }
Esempio n. 4
0
 private void GetCost_Button_Click(object sender, RoutedEventArgs e)
 {
     parkingManager.GetRemainingCost(active.TicketNumber);
 }
        public ActiveSession(ParkingManager parking)
        {
            _park = parking;
            InitializeComponent();
            ParkingSession thisses = _park.ShowActive(_park.ActivePhoneNumber);

            if (thisses != null)
            {
                CurrentSessionText.Text = $"Start time: {thisses.EntryDt}\nNeed to pay: {_park.GetRemainingCost(thisses.TicketNumber)}";
            }
            else
            {
                CurrentSessionText.Text = "There is no active session";
            }
        }