public async Task <IHttpActionResult> GetLocation() { var user = GetUserInformationFromToken(); if (user == null || string.IsNullOrWhiteSpace(user.UserId)) { return(Ok(new ResponseModel <string>(ResponseStatus.BadRequest, null, "Invalid user."))); } var locations = await _userLocationRepository.GetUserLocation(user.UserId); return(Ok(new ResponseModel <List <UserLocation> >(ResponseStatus.Ok, locations, ""))); }
public async Task <IEnumerable <Distance> > GetShortestCoffeeShopDistances() { var userLocation = await _userLocationRepository.GetUserLocation(); var coffeeShopLocations = await _coffeeShopLocationRepository.GetCoffeeShopLocations(); var allDistances = new List <Distance>(); foreach (var coffeeShopLocation in coffeeShopLocations) { allDistances.Add(await _distanceCalculator.CalculateDistanceToDestination(userLocation, coffeeShopLocation)); } return(await _distanceSelector.SelectDistances(allDistances)); }