public static List <PedidoMapa> ObtenerPendientesApi() { using (TeloBuscoEntities db = new TeloBuscoEntities()) { try { int idPendiente = EstadosServicio.obtenerIdEstadoPedidoPorDescripcion("Pendiente"); var listaPedidos = db.Pedidos.Include("Estados") .Include("Localidades") .Include("Localidades1") .Include("AspNetUsers") .Include("Postulaciones") .Where(x => x.id_estado == idPendiente) .ToList(); List <PedidoMapa> pedidosPendientes = new List <PedidoMapa>(); foreach (var pedido in listaPedidos) { Coordenada origen = new Coordenada(); Coordenada destino = new Coordenada(); if (pedido.lat_origen != null && pedido.lng_origen != null) { origen.lat = Convert.ToDouble(pedido.lat_origen); origen.lng = Convert.ToDouble(pedido.lng_origen); } if (pedido.lat_destino != null && pedido.lng_destino != null) { destino.lat = Convert.ToDouble(pedido.lat_destino); destino.lng = Convert.ToDouble(pedido.lng_destino); } var rangoPrecios = Comunes.ObtenerRangoPrecios(origen, destino); //ver postulado PedidoMapa pedidoMapa = new PedidoMapa() { IdPedido = pedido.IdPedido, IdCliente = pedido.idCliente, NombreCliente = pedido.AspNetUsers.NombreApellido, DescripcionPedido = pedido.descripcion_pedido, ObservacionesPedido = pedido.observaciones_pedido != null? pedido.observaciones_pedido : "Ninguna", DireccionOrigen = pedido.calle_origen + " " + pedido.nro_calle_origen + ", " + pedido.Localidades.Nombre, DireccionDestino = pedido.calle_destino + " " + pedido.nro_calle_destino + ", " + pedido.Localidades1.Nombre, Distancia = Math.Round(Comunes.DistanciaEntreDosPuntosEnKM(origen, destino), 2), Precio = Math.Round(pedido.precio_predido, 2), LatOrigen = pedido.lat_origen != null?Convert.ToDouble(pedido.lat_origen) : 0, LngOrigen = pedido.lng_origen != null?Convert.ToDouble(pedido.lng_origen) : 0, Postulado = false, PrecioMinimo = rangoPrecios.PrecioMinimo, PrecioMaximo = rangoPrecios.PrecioMaximo }; pedidosPendientes.Add(pedidoMapa); } return(pedidosPendientes); } catch (Exception ex) { return(null); } } }