private object VerCaminoDelVendedor(object vendedorMapa)
        {
            if (vendedorMapa == null)
            {
                return(false);
            }
            try
            {
                var v = vendedorMapa as Vendedor;
                v.VerTodasLasPosiciones = true;

                this.mapa.Markers.Add(ControladorMapa.CrearRuta(v.Posiciones.Where(p => p.Latitud != 0 && p.Longitud != 0).Select(x => new PointLatLng(x.Latitud, x.Longitud)).ToList(), Brushes.Red));
                foreach (var pos in v.Posiciones)
                {
                    if (pos.Latitud != 0 && pos.Longitud != 0)
                    {
                        this.mapa.Markers.Add(ControladorMapa.CrearPuntoPosicion(pos));
                    }
                }

                ControladorMapa.RefrescarVista(this.mapa);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(true);
        }
Ejemplo n.º 2
0
        private object VerCaminoDelVendedor(object fleteroMapa)
        {
            if (fleteroMapa == null)
            {
                return(false);
            }
            try
            {
                var f = fleteroMapa as Fletero;
                f.VerTodasLasPosiciones = true;
                if (f.Posiciones.Count == 0)
                {
                    ControladorFleteros.CargarPosiciones(f, FechaDesde, FechaHasta);
                }
                this.mapa.Markers.Add(ControladorMapa.CrearRuta(f.Posiciones.Where(p => p.Latitud != 0 && p.Longitud != 0).Select(x => new PointLatLng(x.Latitud, x.Longitud)).ToList(), Brushes.Red));
                foreach (var pos in f.Posiciones)
                {
                    if (pos.Latitud != 0 && pos.Longitud != 0)
                    {
                        this.mapa.Markers.Add(ControladorMapa.CrearPuntoPosicion(pos));
                    }
                }

                ControladorMapa.RefrescarVista(this.mapa);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(true);
        }
Ejemplo n.º 3
0
 private void VerCaminoDelVendedor(Vendedor v)
 {
     this.mapa.Markers.Add(ControladorMapa.CrearRuta(v.Posiciones.Where(p => p.Latitud != 0 && p.Longitud != 0).Select(x => new PointLatLng(x.Latitud, x.Longitud)).ToList(), Brushes.Red));
     foreach (var pos in v.Posiciones)
     {
         if (pos.Latitud != 0 && pos.Longitud != 0)
         {
             this.mapa.Markers.Add(ControladorMapa.CrearPuntoPosicion(pos));
         }
     }
 }
Ejemplo n.º 4
0
        private void dgPosiciones_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (sender != null)
            {
                var dg       = (DataGrid)sender;
                var posicion = (ItemReporte)dg.SelectedItem;
                if (posicion != null)
                {
                    var vendedor   = this.Vendedores.FirstOrDefault(x => x.Codigo == posicion.CodigoVendedor);
                    var posiciones = vendedor.Posiciones.Where(x => x.Fecha >= posicion.CheckIn && x.Fecha <= posicion.CheckOut).Select(p => new PointLatLng(p.Latitud, p.Longitud)).ToList();

                    this.mapa.Markers.Clear();

                    this.mapa.Markers.Add(ControladorMapa.CrearRuta(posiciones, Brushes.Green));
                    foreach (var punto in posiciones)
                    {
                        this.mapa.Markers.Add(ControladorMapa.CrearPuntoPosicion(punto, Brushes.PaleVioletRed));
                    }

                    if (posicion.Cliente != "VIAJE") //muestro el pin del cliente
                    {
                        foreach (var zona in vendedor.Zonas)
                        {
                            var cli = zona.Clientes.FirstOrDefault(c => c.Codigo == posicion.Cliente);
                            if (cli != null)
                            {
                                var marcador = new GMapMarker(cli.Coordenada.Value);

                                var pin = ControladorMapa.CrearPinCliente(null, cli);

                                marcador.Shape = pin;
                                marcador.Shape.IsHitTestVisible = true;
                                marcador.Offset = new Point(-pin.Width / 2, -pin.Height);
                                marcador.ZIndex = 3;

                                this.mapa.Markers.Add(marcador);
                                break;
                            }
                        }
                    }
                    ControladorMapa.RefrescarVista(this.mapa);
                }
            }
        }