public JsonResult Post([FromBody] IEnumerable <Amigo> amigos) { var parametro = Conversao.Transformar(amigos) as List <Core.DTO.Amigo>; var resultado = LocalizacaoCore.Executar(parametro); var retorno = Conversao.Transformar(resultado); return(Json(retorno)); }
public IEnumerable <Amigo> Executar(IEnumerable <Amigo> amigos) { amigos.ValidarDuplicidade(); var minhaLocalizacao = amigos.Where(amigo => amigo.EstouAqui).First(); var amigosMaisProximos = amigos.Where(amigo => amigo.Nome != minhaLocalizacao.Nome); amigosMaisProximos.ToList().ForEach(amigo => { amigo.Localizacao.CarregarCoordenadas(); amigo.Localizacao.CalcularDistancia(minhaLocalizacao.Localizacao.Latitude, minhaLocalizacao.Localizacao.Longitude); }); var resultado = amigosMaisProximos.OrderBy(amigo => amigo.Localizacao.Distancia); var parametro = (Repositorio.Collection.CalculoHistoricoLog)Conversao.Transformar(resultado); AmigoRepositorio.Incluir(parametro); return(resultado.Take(3)); }