public void SelectXYTest() { FlightList expected = new FlightList(); expected.Add(new Flight(5, "КМ-608", "Мюнхен", TimeSpan.Parse("15:30:00"), 2)); expected.Add(new Flight(8, "КМ-602", "Мюнхен", TimeSpan.Parse("07:35:00"), 32)); var target = new MainWindow(); object sender = target; RoutedEventArgs e = null; target.InitializeComponent(); target.InfoFlightForm_Loaded(sender, e); target.SelectXYMenuItem_Click(sender, e); string cityX = "Мюнхен"; TimeSpan time = TimeSpan.Parse("20:00:00"); List <Flight> actual = SelectData.SelectXY(expected, cityX, time); if (expected.Flights_list.Count != actual.Count) { Assert.Fail(); } for (int i = 0; i < actual.Count; i++) { Assert.AreEqual(expected.Flights_list.ElementAt(i), actual.ElementAt(i)); } }
//member functions public override IList <Flight> GetFilterResult() { IList <Flight> resultFlights = new List <Flight>(); if (FlightList != null) { resultFlights = FlightList .Where(a => (a.Segments.Any(b => b.DepartureDate < searchDate))).ToList(); #region foreach loop //foreach (Flight flight in FlightList) //{ // foreach (Segment segment in flight.Segments) // { // if (segment.DepartureDate < searchDate) // { // resultFlights.Add(flight); // break; // } // } //} #endregion } return(resultFlights); }
public void SelectXTest() { FlightList expected = new FlightList(); expected.Add(new Flight(7, "КА-199", "Київ", TimeSpan.Parse("00:55:00"), 6)); expected.Add(new Flight(12, "LL-000", "Київ", TimeSpan.Parse("07:22:00"), 3)); var target = new MainWindow(); object sender = target; RoutedEventArgs e = null; target.InitializeComponent(); target.InfoFlightForm_Loaded(sender, e); target.SelectXMenuItem_Click(sender, e); string cityX = "Київ"; List <Flight> actual = SelectData.SelectX(expected, cityX); if (expected.Flights_list.Count != actual.Count) { Assert.Fail(); } for (int i = 0; i < actual.Count; i++) { Assert.AreEqual(expected.Flights_list.ElementAt(i), actual.ElementAt(i)); } }
public override IList <Flight> GetFilterResult() { IList <Flight> resultFlights = new List <Flight>(); if (FlightList != null) { resultFlights = FlightList.Where(a => a.Segments .Any(b => (a.Segments.Count != a.Segments.IndexOf(b) + 1) && (a.Segments[a.Segments.IndexOf(b) + 1].DepartureDate - b.ArrivalDate).Hours > noOfHours)).ToList(); #region foreach loop //foreach (Flight flight in FlightList) //{ // for (int i = 0; i < flight.Segments.Count; i++) // { // if (i + 1 < flight.Segments.Count) // { // if ((flight.Segments[i + 1].DepartureDate - flight.Segments[i].ArrivalDate).Hours > noOfHours) // { // resultFlights.Add(flight); // break; // } // } // } //} #endregion } return(resultFlights); }
private void OnShowFlight() { List <Airports> listaGradovafrom = new List <Airports>(); List <Airports> listaGradovato = new List <Airports>(); List <Routes> ListaRuta = new List <Routes>(); FlightList.Clear(); Airports c = new Airports(); Routes r = new Routes(); listaGradovafrom = c.GetInnerAllFrom(FlFrom); listaGradovato = c.GetInnerAllTo(FlTo); ListaRuta = r.ListOfRoutes(); foreach (var From in listaGradovafrom) { foreach (var To in listaGradovato) { foreach (var rute in ListaRuta) { if (rute.From == From.airIATA && rute.To == To.airIATA) { rute.From = FlFrom; rute.To = FlTo; FlightList.Add(rute); } } } } }
void DeleteFlight(FlightContent flight, UITableView tableView) { if (DatabaseHelper.DeleteFlight(flight)) { Console.WriteLine($"Flight with key: {flight.Key} was deleted"); FirebaseHelper.FireBaseHelper.DeleteFlightFromCloud(flight, ViewController.ActiveStation.Key); FlightList.RemoveAt(DeleteIndexPath.Row); tableView.BeginUpdates(); tableView.DeleteRows(new NSIndexPath[] { DeleteIndexPath }, UITableViewRowAnimation.Automatic); tableView.ReloadData(); tableView.EndUpdates(); } }
/// <summary> /// Retrieves a list of FlightList /// </summary> /// <param name="_aeroOri">Origin airport </param> /// <param name="_aeroDes">Destiny airport </param> /// <param name="listTrechos">List of Trechos </param> /// <returns>Return with List of flight Trechos</returns> internal FlightList FillFlightList(string _aeroOri, string _aeroDes, List <Trechos> listTrechos) { Logger?.LogDebug("'{0}' has been invoked", nameof(FillFlightList)); FlightList UniFlightList; try { UniFlightList = new FlightList(); UniFlightList.origem = _aeroOri; UniFlightList.destino = _aeroDes; UniFlightList.saida = listTrechos[0].saida.ToString(); UniFlightList.chegada = listTrechos[listTrechos.Count - 1].chegada.ToString(); UniFlightList.trechos = listTrechos; return(UniFlightList); } catch (Exception ex) { Logger?.LogCritical("There was an error on '{0}' invocation: {1}", nameof(FillFlightList), ex.Message); return(null); } }
/// <summary> /// Создаёт экземпляр класса с инициализацией полей /// </summary> public FlightSearchRSBody() { Flights = new FlightList(); }
public ActionResult CheckAvailablity(FlightViewModel viewModel) { try { var flights = db.FLIGHT_SCHEDULE.Where(f => f.AVAILABLE_FLIGHT_CITIES.Name.Contains(viewModel.OriginCity.ToUpper()) && f.AVAILABLE_FLIGHT_CITIES1.Name.Contains(viewModel.DestinationCity.ToUpper()) && f.DepartureDate > DateTime.Now).ToList(); if (flights?.Count() > 0) { foreach (var flight in flights) { var flightAvailablity = flight.FLIGHT_AVAILABLITY.Where(f => f.FlightId == flight.Id).FirstOrDefault(); var singleFlight = new FlightList() { FlightId = flight.Id, Mileage = flight.Mileage, DepartureDate = flight.DepartureDate.ToString(), FlightName = flight.Name, DestinationCity = flight.AVAILABLE_FLIGHT_CITIES1.Name, OriginCity = flight.AVAILABLE_FLIGHT_CITIES.Name, TotalSeats = flightAvailablity.TotalAvaliableSeats, AvailableSeats = (flightAvailablity.TotalAvaliableSeats - flightAvailablity.CurrentSeatsTaken) }; viewModel.FlightList.Add(singleFlight); } } else { //Look for Connecting Flights And then Suggest to the User var connectingFlight = db.FLIGHT_SCHEDULE.Where(f => f.AVAILABLE_FLIGHT_CITIES.Name.Contains(viewModel.OriginCity) && f.DepartureDate > DateTime.Now).ToList(); if (connectingFlight?.Count() > 0) { foreach (var flight in connectingFlight) { var flightAvailablity = flight.FLIGHT_AVAILABLITY.Where(f => f.FlightId == flight.Id).FirstOrDefault(); var singleFlight = new FlightList() { FlightId = flight.Id, Mileage = flight.Mileage, DepartureDate = flight.DepartureDate.ToString(), FlightName = flight.Name, DestinationCity = flight.AVAILABLE_FLIGHT_CITIES1.Name, OriginCity = flight.AVAILABLE_FLIGHT_CITIES.Name, TotalSeats = flightAvailablity.TotalAvaliableSeats, AvailableSeats = (flightAvailablity.TotalAvaliableSeats - flightAvailablity.CurrentSeatsTaken) }; viewModel.ConnectingFlightList.Add(singleFlight); } SetMessage(new Message() { MessageText = "No direct flights were found for your search. Consider taking a connecting flight", MessageCategory = (int)MessageCategory.INFO }); } if (viewModel.ConnectingFlightList?.Count() < 1 && viewModel.FlightList?.Count() < 1) { SetMessage(new Message() { MessageText = "No flights were found for your search. Consider searching using the Cities listed below", MessageCategory = (int)MessageCategory.INFO }); var availableCities = db.AVAILABLE_FLIGHT_CITIES.Where(c => c.Active).ToList(); if (availableCities?.Count() > 0) { List <string> cities = new List <string>(); foreach (var item in availableCities) { cities.Add(item.Name); } TempData["ValidCities"] = cities; TempData.Keep(); } } } return(View(viewModel)); } catch (Exception ex) { throw ex; } }
private void FlightListAdd(FlightListPageModel flight) { FlightList.Add(flight); }
private void FlightListClear() { FlightList.Clear(); }
private void findButton_Click(object sender, EventArgs e) { //date filter DateTime startDate = Convert.ToDateTime("1900-01-01"); DateTime endDate = DateTime.Today.AddYears(30); if (noBeginDateRadioButton.Checked == true) { startDate = Convert.ToDateTime("1900-01-01"); } else if (currentBeginDateRadioButton.Checked == true) { startDate = DateTime.Today; } else if (iWantToSelectBeginDateRadioButton.Checked == true) { startDate = startDateTimePicker.Value; } if (noEndDateRadioButton.Checked == true) { endDate = DateTime.Today.AddYears(30); } else if (iWantToSelectEndDateRadioButton.Checked == true) { endDate = endDateTimePicker.Value; endDate = endDate.AddHours(23); endDate = endDate.AddMinutes(59); } if (startDate > endDate) { MessageBox.Show("Введена дата початку не може бути більше кінцевої дати. Уточніть будь ласка умови пошуку.", "Введіть коректні дані", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else //if date is correct { //place filter int _countryID = 0; int _cityID = 0; int _airportID = 0; if (cityComboBox.Enabled == true) { _cityID = Convert.ToInt32(cityComboBox.SelectedValue); } if (airportComboBox.Enabled == true) { _airportID = Convert.ToInt32(airportComboBox.SelectedValue); } _countryID = Convert.ToInt32(countryComboBox.SelectedValue); //getting data FlightList fl = null; if (_countryID == 0 && _cityID == 0 && _airportID == 0) { fl = FlightList.GetAllFlights(startDate, endDate); } else if (_countryID != 0 && _cityID == 0 && _airportID == 0) { fl = FlightList.GetAllFlights(_countryID, startDate, endDate); } else if (_countryID != 0 && _cityID != 0 && _airportID == 0) { fl = FlightList.GetAllFlights(_countryID, _cityID, startDate, endDate); } else if (_countryID != 0 && _cityID != 0 && _airportID != 0) { fl = FlightList.GetAllFlights(_countryID, _cityID, _airportID, startDate, endDate); } //check if no errors if (fl == null) { MessageBox.Show("Не вдалось підключитись до бази даних.", "Помилка!", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (fl != null) { flightsDataGridView.DataSource = fl; } }//correct date }