public async static Task <FlightOfferSearch> ReadByUrl(string reqUrl) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { FlightOfferSearch fos = db.FlightOfferSearches.Where(f => f.URLQuery == reqUrl) .Include(f => f.Airport) .Include(f => f.Airport1) .Include(f => f.FlightOfferResults) .Include(f => f.FlightOfferResults.Select(s => s.FlightsForOffers)) .Include(f => f.FlightOfferResults.Select(ffo => ffo.FlightsForOffers.Select(fl => fl.Flights))) .Include(f => f.FlightOfferResults.Select(ffo => ffo.FlightsForOffers.Select(fl => fl.Flights.Select(a => a.Airport)))) .Include(f => f.FlightOfferResults.Select(ffo => ffo.FlightsForOffers.Select(fl => fl.Flights.Select(a => a.Airport1)))) .FirstOrDefault(); //foreach(var fOfferResult in fos.FlightOfferResults) //{ // foreach(var flightForOffer in fOfferResult.FlightsForOffers) // { // foreach(var flight in flightForOffer.Flights) // { // flight.Airport = await AirportsRepo.ReadById(flight.DepartureAirportId); // flight.Airport1 = await AirportsRepo.ReadById(flight.ArrivalAirportId); // } // } //} return(fos); } }
public static async Task <int> Count() { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { int count = await db.Airports.CountAsync(); return(count); } }
public static async Task <List <Airport> > ReadAll() { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { List <Airport> airports = new List <Airport>(); airports = await db.Airports.ToListAsync(); return(airports); } }
public static async void CreateRange(List <Airport> airports) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { if (airports == null) { throw new Exception("Airport instance was not set."); } db.Airports.AddRange(airports); await db.SaveChangesAsync(); } }
public static async Task <List <Airport> > ReadByName(string name) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { List <Airport> airports = new List <Airport>(); airports = await db.Airports.Where(a => a.Name.Contains(name)).ToListAsync(); if (airports == null) { throw new Exception(name + " was not found."); } return(airports); } }
public static async Task <int> ReadByIATA(string IATA) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { Airport airport = new Airport(); airport = await db.Airports.Where(a => a.IATA == IATA).FirstOrDefaultAsync(); if (airport == null) { throw new Exception("Airport with " + IATA + " IATA was not found."); } return(airport.Id); } }
public static async Task <Airport> ReadById(int id) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { Airport airport = new Airport(); airport = await db.Airports.FindAsync(id); if (airport == null) { throw new Exception("Airport with " + id + " ID was not found."); } return(airport); } }
public async static Task <FlightOfferSearch> ReadById(int id) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { FlightOfferSearch fos = db.FlightOfferSearches.Where(f => f.Id == id) .Include(f => f.Airport) .Include(f => f.Airport1) .Include(f => f.FlightOfferResults) .Include(f => f.FlightOfferResults.Select(s => s.FlightsForOffers)) .Include(f => f.FlightOfferResults.Select(or => or.FlightsForOffers.Select(fl => fl.Flights))) .Include(f => f.FlightOfferResults.Select(ffo => ffo.FlightsForOffers.Select(fl => fl.Flights.Select(a => a.Airport)))) .Include(f => f.FlightOfferResults.Select(ffo => ffo.FlightsForOffers.Select(fl => fl.Flights.Select(a => a.Airport1)))) .FirstOrDefault(); return(fos); } }
public static async Task <bool> DeleteAll() { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { try { db.FlightOfferSearches.RemoveRange(db.FlightOfferSearches); await db.SaveChangesAsync(); return(true); } catch (Exception ex) { throw new Exception("Greška kod brisanja pretraga."); } } }
public async static Task <int> Create(FlightOfferSearch fos) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { try { db.FlightOfferSearches.Add(fos); await db.SaveChangesAsync(); return(fos.Id); } catch (Exception ex) { throw new Exception("Greška kod spremanja FlightOfferSearch u bazu podataka."); } } }
public static async Task <int> Create(FlightOfferResult flightOfferResult) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { try { db.FlightOfferResults.Add(flightOfferResult); await db.SaveChangesAsync(); return(flightOfferResult.Id); } catch { throw new Exception("Greška kod dodavanja FlightOfferResult u bazu"); } } }
public static async Task <bool> DeleteAll() { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { try { db.Airports.RemoveRange(db.Airports); await db.SaveChangesAsync(); return(true); } catch (Exception ex) { throw new Exception("Prvo je potrebno obrisati pretrage!"); } } }
public static async Task <int> Create(FlightsForOffer ffo) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { try { db.FlightsForOffers.Add(ffo); await db.SaveChangesAsync(); return(ffo.Id); } catch (Exception ex) { throw new Exception("Greška kod dodavanja FlightsForOffers u bazu"); } } }
public static async Task <int> Create(Airport airport) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { if (airport == null) { throw new Exception("Airport instance was not set."); } if (db.Airports != null && db.Airports.Where(a => a.IATA == airport.IATA).Count() > 0) { return(db.Airports.Where(a => a.IATA == airport.IATA).FirstOrDefault().Id); } db.Airports.Add(airport); await db.SaveChangesAsync(); return(airport.Id); } }
public async static Task <bool> DeleteAllSearches() { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { try { await FlightsRepo.DeleteAll(); await FlightsForOfferRepo.DeleteAll(); await FlightOfferResultsRepo.DeleteAll(); await DeleteAll(); return(true); } catch (Exception ex) { throw ex; } } }
public static async Task <List <Airport> > Search(string search, string otherSearch) { using (AirlineTicketsDBEntities db = new AirlineTicketsDBEntities()) { if (otherSearch != "") { otherSearch = GetIATA(otherSearch); } List <Airport> airports = new List <Airport>(); if (search.Count() <= 3) { airports = await db.Airports.Where(a => a.IATA.StartsWith(search.ToUpper()) && a.IATA != otherSearch).Take(10).ToListAsync(); } else if (airports.Count == 0) { airports = await db.Airports.Where(a => (a.Location.ToLower().Contains(search.ToLower()) || a.Name.ToLower().Contains(search.ToLower())) && a.IATA != otherSearch).Take(10).ToListAsync(); } return(airports); } }