private bool IsValidAirport(AirportRequest airport) { return(airport != null && !string.IsNullOrEmpty(airport.Airport) && !string.IsNullOrEmpty(airport.City) && !string.IsNullOrEmpty(airport.Country)); }
private Airport ConvertAirportToDomain(AirportRequest airportRequest) { return(new Airport { City = airportRequest.City, Country = airportRequest.Country, AirportCode = airportRequest.Airport }); }
public IActionResult Search([FromBody] AirportRequest request) { if (!ModelState.IsValid || request == null) { return(BadRequest(ModelState)); } var results = manager.GetAirport(request); return(Ok(results)); }
public void testGetData() { var cookie = new Cookie("incap_ses_264_1276841", "zqTLGFJTOmAn/CN5P+2pA8RTRF4AAAAA55D7hroVG4lj6zw6nY4UMQ=="); var dataReceiver = new DataReceiver(cookie); var airportsRequest = new AirportRequest("", "", "LLBG"); var airlinesRrequest = new AirlineRequest("", "LLBG"); var countriesRequest = new CountryRequest("", "LLBG"); var citiesRequest = new CityRequest("", "", "LLBG"); var airlines = dataReceiver.GetData <Airline>(airlinesRrequest); var airports = dataReceiver.GetData <Airport>(airportsRequest); var countries = dataReceiver.GetData <Country>(countriesRequest); var cities = dataReceiver.GetData <City>(citiesRequest); }
public IEnumerable <Airport> GetAirport(AirportRequest request) { var searchCriterias = new SearchDescriptor <EsAirport>(); searchCriterias .From(request.StartingIndex) .Size(request.ResponseSize) .Source(src => src.Includes(i => i.Fields(EsHelpers.GenerateFields(request)))) .Query(q => q.Bool(b => b.Must(EsHelpers.QueryGenerator(request)))); var jsonResponse = dataAccess.AirportElasticClient.Search <object>(searchCriterias); return(CreateAirportResponse(jsonResponse.Documents)); }
public static string[] GenerateFields(AirportRequest request) { List <string> results = new List <string> { EsConstants.Id, EsConstants.Name, EsConstants.Type }; if (request?.Attributes.HasValue ?? false) { if (request.Attributes.Value.HasFlag(AirportAttributes.Coordinates)) { results.Add(EsConstants.Coordinates); } if (request.Attributes.Value.HasFlag(AirportAttributes.Elevation)) { results.Add(EsConstants.Coordinates); } if (request.Attributes.Value.HasFlag(AirportAttributes.Location)) { results.Add(EsConstants.Continent); results.Add(EsConstants.Country); results.Add(EsConstants.Municipality); results.Add(EsConstants.Region); } if (request.Attributes.Value.HasFlag(AirportAttributes.GpsCode)) { results.Add(EsConstants.GpsCode); } if (request.Attributes.Value.HasFlag(AirportAttributes.IataCode)) { results.Add(EsConstants.IataCode); } if (request.Attributes.Value.HasFlag(AirportAttributes.LocalCode)) { results.Add(EsConstants.LocalCode); } } return(results.ToArray()); }
private bool IsGoodAirports(AirportRequest to, AirportRequest from) { return(to.City.ToUpper() != from.City.ToUpper() && to.Airport.ToUpper() != from.Airport.ToUpper()); //to.Country.ToUpper() != from.Country.ToUpper(); }
private bool isDifferentAirport(AirportRequest airportFrom, AirportRequest airportTo) { return(airportFrom.Airport.ToLowerInvariant().Trim() != (airportTo.Airport.ToLowerInvariant()) && airportFrom.City.ToLowerInvariant().Trim() != (airportTo.City.ToLowerInvariant())); //airportFrom.Country.ToLowerInvariant().Trim() != (airportTo.Country.ToLowerInvariant()); }
public static Func <QueryContainerDescriptor <EsAirport>, QueryContainer>[] QueryGenerator(AirportRequest request) { List <Func <QueryContainerDescriptor <EsAirport>, QueryContainer> > results = new List <Func <QueryContainerDescriptor <EsAirport>, QueryContainer> >(); if (request.Ids?.Any() ?? false) { Func <QueryContainerDescriptor <EsAirport>, QueryContainer> funcIds = tmp => tmp.Terms(m => m.Field(f => f.id).Terms(request.Ids)); results.Add(funcIds); } if (request.Types?.Any() ?? false) { Func <QueryContainerDescriptor <EsAirport>, QueryContainer> funcZoneType = tmp => tmp.Terms(m => m.Field(f => f.type).Terms(request.Types)); results.Add(funcZoneType); } //if (!string.IsNullOrEmpty(request.IsoCode)) //{ // Func<QueryContainerDescriptor<EsAirport>, QueryContainer> funcIsoId = tmp => // tmp.Term(m => m.IsoId, request.IsoCode); // results.Add(funcIsoId); //} if (!string.IsNullOrEmpty(request.Name)) { Func <QueryContainerDescriptor <EsAirport>, QueryContainer> funcName = tmp => tmp.Term(m => m.name, request.Name); results.Add(funcName); } if (!string.IsNullOrEmpty(request.IataCode)) { Func <QueryContainerDescriptor <EsAirport>, QueryContainer> funcName = tmp => tmp.Term(m => m.iata_code, request.IataCode); results.Add(funcName); } if (request.Geometry != null) { Func <QueryContainerDescriptor <EsAirport>, QueryContainer> funcPolygon = tmp => tmp.GeoBoundingBox(g => g .Field(f => f.coordinates) .BoundingBox(request.Geometry.LatMax, request.Geometry.LngMin, request.Geometry.LatMin, request.Geometry.LngMax)); results.Add(funcPolygon); } return(results.ToArray()); }
private static bool IsDifferentAirport(AirportRequest airportFrom, AirportRequest airportTo) { return(!airportFrom.Airport.ToLower().Equals(airportTo.Airport.ToLower()) && !airportFrom.City.ToLower().Equals(airportTo.City.ToLower())); }
protected override bool isValid(out string exceptionMessage) { if (name.Length == 0) { return makeExceptionMessage (out exceptionMessage, "The name of the airport is invalid"); } if (code.Length != 3 || !code.All (char.IsUpper) || !code.All(char.IsLetter)) { return makeExceptionMessage (out exceptionMessage, "The code of the airport is invalid"); } foreach (int c in company) { if (!validAirline (c, out exceptionMessage)) { return false; } } AirportRequest ar = new AirportRequest (); if (ar.fetchAirportFromCode (code).Count () != 0) { return makeExceptionMessage(out exceptionMessage, "The code of the airport already exists for an airport"); } return validCity (city, out exceptionMessage) && validCountry(country, out exceptionMessage); }