private void AgregarActualizarVendedor(Vendedor vendedorMapa) { try { var v = Vendedores.FirstOrDefault(e => e.Codigo == vendedorMapa.Codigo); if (v == null) { var prev = ControladorVendedores.ObtenerVendedor(vendedorMapa.Codigo); if (prev != null) { vendedorMapa.Foto = prev.Foto; vendedorMapa.Nombre = prev.Nombre; vendedorMapa.Calle = prev.Calle; vendedorMapa.Numero = prev.Numero; vendedorMapa.CoordenadaDomicilio = new PointLatLng(prev.CoordenadaDomicilio.Lat, prev.CoordenadaDomicilio.Lng); } this.CalculaTiempoReporte(vendedorMapa); if (vendedorMapa.CoordenadaActual.Lat == 0 && vendedorMapa.CoordenadaActual.Lng == 0) //si lat y lng vienen 0, 0 es porque tiene gps apagado { vendedorMapa.CoordenadaActual = new PointLatLng(-38.002452, -57.601936); vendedorMapa.Estado = Estado.GPS_APAGADO; } this.Vendedores.Add(vendedorMapa); } else { if (v.Zonas.Count == 0) { ControladorZonas.CargarZonasDelVendedor(v, DateTime.Today); } ControladorVendedores.CalcularBultosYPesos(v, FechaDesde, FechaHasta); v.Estado = vendedorMapa.Estado; v.Fecha = vendedorMapa.Fecha; this.CalculaTiempoReporte(v); if (vendedorMapa.CoordenadaActual.Lat == 0 && vendedorMapa.CoordenadaActual.Lng == 0) { vendedorMapa.Estado = Estado.GPS_APAGADO; } else { v.CoordenadaActual = vendedorMapa.CoordenadaActual; } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void SeleccionarMarcador(Vendedor vendedor) { if (vendedor.Zonas.Count == 0) { ControladorZonas.CargarZonasDelVendedor(vendedor, diaSeleccionado.Value); } vendedor.CantidadClientes = 0; foreach (var zona in vendedor.Zonas) { ControladorZonas.CargarClientes(zona, this.ModoVerClientesConRuteo); vendedor.CantidadClientes += zona.Clientes.Count; } ControladorVendedores.CalcularBultosYPesos(vendedor, diaSeleccionado.Value, diaSeleccionado.Value.AddDays(1)); this.MostrarMarcador(vendedor, true); }