private ParkDistance GetParkDistance(ParkCoordinates park, ZipCoordinates visitor) { var parkCoordinates = new GeoCoordinate((double)park.Latitude, (double)park.Longitude); var visitorCoordinates = new GeoCoordinate((double)visitor.Latitude, (double)visitor.Longitude); var distance = parkCoordinates.GetDistanceTo(visitorCoordinates); distance = Math.Round(distance, 2) / 1000; return(new ParkDistance { Park = park, Distance = distance }); }
private async Task <IEnumerable <ParkDistance> > GetParkDistancesAsync(int?total, ZipCoordinates visitorCoordinates) { var parksCoordinates = await _parksLocatorRepository.GetAll(); var parksDistances = _distanceService.GetParksDistance(parksCoordinates, visitorCoordinates); return(parksDistances); }
public IEnumerable <ParkDistance> GetParksDistance(IEnumerable <ParkCoordinates> parksCoordinates, ZipCoordinates visitorCoordinates) { return(parksCoordinates.Select(p => GetParkDistance(p, visitorCoordinates))); }