private void _vista_UsuarioDeseaGrabarPoligonoTipoRuta(object sender, PoligonoArgumento e)
        {
            try
            {
                var resultado = PoligonoServicio.GrabarPoligono(e);

                if (resultado.Resultado == ResultadoOperacionTipo.Error)
                {
                    _vista.EstablecerError(resultado.Mensaje, sender);
                }
                else
                {
                    _vista.ClientesDePoligono = ClienteServicio.ObtenerClientePorPoligono(new PoligonoArgumento {
                        Poligono = new Poligono {
                            POLYGON_ID = e.Poligono.POLYGON_ID_PARENT
                        }
                    });
                    _vista.TerminoDeGrabar("cpCargarPoligonos", sender);
                    _vista.TerminoDeGrabar("cpCargarClientes", sender);
                    _vista.TerminoDeGrabar("cpCargarVendedores", sender);
                }
            }
            catch (Exception ex)
            {
                _vista.EstablecerError(ex.Message, sender);
            }
        }
 private void _vista_UsuarioDeseaObtenerClientesDePoligono(object sender, PoligonoArgumento e)
 {
     try
     {
         _vista.ClientesDeVendedor = ClienteServicio.ObtenerClientePorPoligono(e);
     }
     catch (Exception ex)
     {
         _vista.EstablecerError(ex.Message, sender);
     }
 }
 private void _vista_UsuarioDeseaOptenerPoligonosTipoRuta(object sender, PoligonoArgumento e)
 {
     try
     {
         _vista.PoligonosTipoRuta  = PoligonoServicio.ObtenerPoligonoPorTipo(e);
         e.Poligono.POLYGON_ID     = e.Poligono.POLYGON_ID_PARENT;
         _vista.ClientesDePoligono = ClienteServicio.ObtenerClientePorPoligono(e);
     }
     catch (Exception ex)
     {
         _vista.EstablecerError(ex.Message, sender);
     }
 }
 private void _vista_UsuarioDeseaObtenerPuntosDePoligono(object sender, PoligonoArgumento e)
 {
     try
     {
         var lstTemp =
             PoligonoServicio.ObtenerPuntosDePoligono(e);
         var listaDividida = new List <IList <PoligonoPuntos> >();
         var lista         = new List <PoligonoPuntos>();
         var idActual      = 0;
         foreach (var item in lstTemp)
         {
             if (idActual != item.POLYGON_ID)
             {
                 if (lista.Count > 2)
                 {
                     listaDividida.Add(lista);
                 }
                 lista = new List <PoligonoPuntos>();
                 lista.Add(item);
                 idActual = item.POLYGON_ID;
             }
             else
             {
                 lista.Add(item);
             }
         }
         if (lista.Count > 2)
         {
             listaDividida.Add(lista);
         }
         foreach (var poligono in _vista.PoligonosTipoRuta)
         {
             poligono.IS_MODIFIABLE = 0; foreach (var puntosDePoligono in listaDividida.Where(puntosDePoligono => puntosDePoligono[0].POLYGON_ID == poligono.POLYGON_ID))
             {
                 poligono.Puntos = puntosDePoligono;
             }
         }
         e.Poligono.POLYGON_ID     = e.Poligono.POLYGON_ID_PARENT;
         _vista.ClientesDePoligono = ClienteServicio.ObtenerClientePorPoligono(e);
     }
     catch (Exception ex)
     {
         _vista.EstablecerError(ex.Message, sender);
     }
 }
        private void _vista_UsuarioDeseaAsociarPoligonos(object sender, PoligonoArgumento e)
        {
            var resultado = PoligonoServicio.AsociarPolignoAVendedor(e);

            if (resultado.Resultado == ResultadoOperacionTipo.Error)
            {
                _vista.EstablecerError(resultado.Mensaje, sender);
            }
            else
            {
                _vista.ClientesDePoligono = ClienteServicio.ObtenerClientePorPoligono(new PoligonoArgumento {
                    Poligono = new Poligono {
                        POLYGON_ID = e.ListaDePoligonos[0].POLYGON_ID_PARENT
                    }
                });
                _vista.TerminoDeGrabar("cpCargarPoligonos", sender);
                _vista.TerminoDeGrabar("cpCargarClientes", sender);
                _vista.TerminoDeGrabar("cpCargarVendedores", sender);
            }
        }