public DTOResponse <List <DTOPlace> > SearchPlaces(DTOPlaceSearch searchQuery) { return(_domain.SearchPlaces(searchQuery)); }
public DTOResponse <DTOPlace> GetPlaceDetail(DTOPlaceSearch searchPlaceInfo) { return(_domain.GetPlaceDetails(searchPlaceInfo.PlaceId)); }
public DTOResponse <List <DTOPlace> > SearchPlaces(DTOPlaceSearch searchQuery) { var result = new List <DTOPlace>(); var countryInformation = new Dictionary <string, Dictionary <string, List <string> > >() { { "brazil", new Dictionary <string, List <string> >() { { "são paulo", new List <string>() { "36", "-23.5475", "-46.63611", "br" } }, { "rio de janeiro", new List <string>() { "36", "-22.90278", "-43.2075", "br" } } } }, { "italy", new Dictionary <string, List <string> >() { { "rome", new List <string>() { "23", "41.89193", "12.51133", "it" } } } } }; var cityInfo = countryInformation[searchQuery.CountryName.ToLower()][searchQuery.CityName.ToLower()]; var placeSearchResult = _googlePlaces.TextSearch(double.Parse(cityInfo[1]), double.Parse(cityInfo[2]), int.Parse(cityInfo[0]), searchQuery.SearchTerms, 50000, searchQuery.PageToken); if (placeSearchResult.Code != 200) { return(new DTOResponse <List <DTOPlace> >() { Code = 400, Message = placeSearchResult.Message }); } foreach (var searchResult in placeSearchResult.Data.Results) { result.Add(new DTOPlace() { Name = searchResult.Name, FormatedAddress = searchResult.FormattedAddress, PlaceId = searchResult.PlaceId }); } return(new DTOResponse <List <DTOPlace> >() { Code = 200, Data = result, NextPageToken = placeSearchResult.Data.NextPageToken }); }