예제 #1
0
        private bool ValidateAddFlightDuration()
        {
            if (SelectedAircraft == null)
            {
                MessageBox.Show("Please select an aircraft to add.", "Aircraft required");
                return(false);
            }

            if (FlightDurations.Any(fd => fd.Aircraft.IcaoTypeCode == SelectedAircraft.IcaoTypeCode))
            {
                MessageBox.Show("You can't add the same aircraft twice.", "Invalid input");
                return(false);
            }

            if (DurationHours == null)
            {
                MessageBox.Show("Please enter a value for hours.", "Value required");
                return(false);
            }

            if (DurationMinutes == null)
            {
                MessageBox.Show("Please enter a value for minutes.", "Value required");
                return(false);
            }

            if (DurationMinutes > 59)
            {
                MessageBox.Show("Minutes cannot be greater than 59.", "Invalid input");
                return(false);
            }

            return(true);
        }
예제 #2
0
        public async Task Confirm(object o)
        {
            if (!ValidateConfirm())
            {
                return;
            }

            try
            {
                UiState = UiState.Wait;

                await m_crudManager.AddRoute(SelectedAirline.IataAirlineCode, SelectedOrigin.IataAirportCode, SelectedDestination.IataAirportCode,
                                             FlightDurations.ToList(), ClassPricingSchemes.ToList());

                UiState = UiState.Normal;

                MessageBoxResult result = MessageBox.Show("Route added successfully. Add another?", "Success", MessageBoxButton.YesNo);

                if (result == MessageBoxResult.Yes)
                {
                    m_pageController.AddRoute();
                }
                else
                {
                    m_pageController.Home();
                }
            }
            catch (InvalidOperationException ex)
            {
                MessageBox.Show(ex.Message, "Error");
            }
        }
예제 #3
0
        public void AddFlightDuration(object o)
        {
            if (!ValidateAddFlightDuration())
            {
                return;
            }

            FlightDuration flightDuration = new FlightDuration
            {
                Aircraft        = SelectedAircraft,
                DurationHours   = DurationHours.Value,
                DurationMinutes = DurationMinutes.Value
            };

            FlightDurations.Add(flightDuration);

            SelectedAircraft = null;
            DurationHours    = null;
            DurationMinutes  = null;
        }
예제 #4
0
 public void RemoveFlightDuration(FlightDuration flightDuration)
 {
     FlightDurations.Remove(flightDuration);
 }