/// <summary>
        /// Cria uma nova Sindicância
        /// </summary>
        /// <returns>O Objeto sindicância</returns>
        private Sindicancia CriarSindicancia()
        {
            var sindicancia = new Sindicancia()
            {
                Bairro                 = (int)cbo_bairro.SelectedValue,
                Cep                    = msk_cep.Text,
                Complemento            = txt_complemento.Text,
                Logradouro             = txt_logradouro.Text,
                NumResidencia          = txt_numresidencia.Text,
                TipoLogradouro         = cbo_tipologradouro.Text,
                anoEnsino              = (int)cbo_anosolicitado.SelectedValue,
                codigoSolicitacao      = null,
                dataSindicancia        = DateTime.Now,
                instituicaoEncaminhada = (int?)cbo_instituicao_encaminhada.SelectedValue,
                instituicaoSolicitada  = (int)cbo_instituicao_inscricao.SelectedValue,
                usuarioResponsavel     = principalUi.user.nomeusuario.ToUpper(),
                status                 = true,
                observacoes            = txt_observacoes.Text,
                nomeSindicado          = txt_nomealuno.Text,
                origemSindicancia      = "CADASTRO"
            };

            sindicancia.Coordenadas = Zoneador.Georreferenciar(msk_cep.Text, txt_numresidencia.Text);

            sindicancia.distanciaEscolaSolicitada  = CalculaDistanciaEscola(sindicancia.Coordenadas, sindicancia.instituicaoSolicitada);
            sindicancia.distanciaEscolaEncaminhada = CalculaDistanciaEscola(sindicancia.Coordenadas, (int)sindicancia.instituicaoEncaminhada);

            return(sindicancia);
        }
        /// <summary>
        /// Localiza Latitude e Longitude
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_localizar_coord_Click(object sender, EventArgs e)
        {
            var t = CarregaProgressoThread();

            try
            {
                if (string.IsNullOrEmpty(txt_mumresidencia.Text) || string.IsNullOrEmpty(msk_cep.Text))
                {
                    throw new Exception("O campo CEP ou número da residência está em branco");
                }

                lbl_aviso_coordenadas.Visible = false;

                coordenadas = new string[2];
                coordenadas = Zoneador.Georreferenciar(msk_cep.Text, txt_mumresidencia.Text); //Georreferencia o aluno pelo SISGEO

                lbl_latitude.Text  = coordenadas[0];
                lbl_longitude.Text = coordenadas[1];
            }
            catch (Exception exception)
            {
                if (t.IsAlive)
                {
                    t.Abort();
                }
                Mensageiro.MensagemErro(exception, this);
            }
            finally
            {
                if (t.IsAlive)
                {
                    t.Abort();
                }
            }
        }
Exemple #3
0
        /// <summary>
        /// Localiza as coordenadas da escola
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_localizarcoord_Click(object sender, EventArgs e)
        {
            try
            {
                if (string.IsNullOrEmpty(txt_numero_resid.Text) || string.IsNullOrEmpty(msk_cep.Text))
                {
                    throw new Exception("CEP ou Nº DO Logradouro não podem estar vazios.");
                }

                if (!string.IsNullOrEmpty(txt_numero_resid.Text) && !string.IsNullOrEmpty(msk_cep.Text))
                {
                    string[] coord = new string[2];

                    coord = Zoneador.Georreferenciar(msk_cep.Text, txt_numero_resid.Text);

                    msk_latitude.Text  = coord[0];
                    msk_longitude.Text = coord[1];

                    if (!string.IsNullOrEmpty(lbl_codigo.Text))
                    {
                        if (Mensageiro.MensagemPergunta("Deseja salvar as coordenadas atualizadas da escola?", principalUi).Equals(DialogResult.Yes))
                        {
                            if (controleInstituicao.AtualizaCoordenadas(coord[0], coord[1], Convert.ToInt32(lbl_codigo.Text)))
                            {
                                Mensageiro.MensagemConfirmaAtualizacao(principalUi);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Mensageiro.MensagemErro(ex, this);
            }
        }
        /// <summary>
        /// Evento do botão zonear
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_zonearAluno_Click(object sender, EventArgs e)
        {
            var t = CarregaProgressoThread();

            try
            {
                LimpaGridView();

                coordenadas = Zoneador.Georreferenciar(msk_cep.Text, txt_mumresidencia.Text); //Georreferencia o aluno pelo SISGEO
                lbl_aviso_coordenadas.Visible   = true;
                lbl_aviso_coordenadas.Text      = $@"Coordenadas localizadas pelo SISGEO!";
                lbl_aviso_coordenadas.ForeColor = Color.Navy;

                if (coordenadas[0] == null || coordenadas[0].Equals("0"))
                {
                    //Georreferencia o aluno pelo GOOGLE
                    coordenadas = Zoneador.Locate($"{txt_mumresidencia.Text}+{txt_logradouro.Text.Replace(" ","+")},+{cbo_bairro.Text.Replace(" ","+")},+betim,+brasil");
                    lbl_aviso_coordenadas.Text      = @"Coordenadas localizadas pelo GOOGLE!";
                    lbl_aviso_coordenadas.ForeColor = Color.Firebrick;
                }

                lbl_latitude.Text  = coordenadas[0];
                lbl_longitude.Text = coordenadas[1];

                zoneamentoControl = new ZoneamentoControl();

                if (rdb_ens_fundamental.Checked)
                {
                    dgv_zoneamento.DataSource = zoneamentoControl.RetornaEscolasEndereco(coordenadas[0], coordenadas[1], mantenedor: 1, raio: Convert.ToInt32(nud_raioBusca.Value));
                }
                else
                {
                    dgv_zoneamento.DataSource = zoneamentoControl.RetornaCrechesEndereco(coordenadas[0], coordenadas[1], Convert.ToInt32(nud_raioBusca.Value));
                }

                for (int i = 0; i < dgv_zoneamento.Rows.Count; i++)
                {
                    dgv_zoneamento["DistanciaCaminhando", i].Value = Metrics.CalculaDistanciaCaminhando(coordenadas[0], coordenadas[1], dgv_zoneamento["latitude", i].Value.ToString(), dgv_zoneamento["longitude", i].Value.ToString());
                }

                dgv_zoneamento.Sort(dgv_zoneamento.Columns[4], ListSortDirection.Ascending);
            }
            catch (Exception exception)
            {
                if (t.IsAlive)
                {
                    t.Abort();
                }
                Mensageiro.MensagemErro(exception, this);
            }
            finally
            {
                if (t.IsAlive)
                {
                    t.Abort();
                }
            }
        }
        /// <summary>
        /// Evento do botão buscar CEP
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_buscarcep_Click(object sender, EventArgs e)
        {
            var t = CarregaProgressoThread();

            try
            {
                LimpaGridView();
                txt_logradouro.ResetText();

                if (string.IsNullOrEmpty(msk_cep.Text))
                {
                    throw new Exception("O CEP está vazio!");
                }

                lbl_aviso_coordenadas.Visible = false;
                lbl_latitude.Text             = string.Empty;
                lbl_longitude.Text            = string.Empty;

                coordenadas = new string[2];

                coordenadas = Zoneador.Georreferenciar(msk_cep.Text, "0"); //Georreferencia o aluno pelo SISGEO

                if (!coordenadas[0].Equals(string.Empty) && !coordenadas[0].Equals("0"))
                {
                    lbl_aviso_coordenadas.Visible = true;
                    lbl_latitude.Text             = coordenadas[0];
                    lbl_longitude.Text            = coordenadas[1];
                }

                this.bairrosTableAdapter.Fill(this.siescDataSet.bairros);

                var cep = new BuscaCep();

                cep.buscadorCEP(msk_cep.Text, cbo_bairro, txt_logradouro, cbo_tipologradouro);

                txt_mumresidencia.ResetText();
                txt_mumresidencia.Focus();
            }
            catch (Exception exception)
            {
                if (t.IsAlive)
                {
                    t.Abort();
                }
                Mensageiro.MensagemErro(exception, this);
            }
            finally
            {
                if (t.IsAlive)
                {
                    t.Abort();
                }
            }
        }
Exemple #6
0
        /// <summary>
        /// Localiza as coordenadas de acordo com o endereço
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_localizarcoordenadas_Click(object sender, EventArgs e)
        {
            //if(string.IsNullOrEmpty(txt_codigo.Text))
            //		throw new Exception("Selecione um aluno antes de buscar suas coodenadas");

            var t = CarregaProgressoThread();

            try
            {
                #region localizar coord aluno

                string[] coord;

                coord = Zoneador.Georreferenciar(dgv_alunos[10, dgv_alunos.CurrentCellAddress.Y].Value.ToString(),
                                                 dgv_alunos[7, dgv_alunos.CurrentCellAddress.Y].Value.ToString());

                if (coord.Equals(null) || coord[0].Equals("0"))
                {
                    var endereco = Zoneador.TransformacaoEndereco(dgv_alunos[5, dgv_alunos.CurrentCellAddress.Y].Value.ToString(),
                                                                  dgv_alunos[6, dgv_alunos.CurrentCellAddress.Y].Value.ToString(),
                                                                  dgv_alunos[7, dgv_alunos.CurrentCellAddress.Y].Value.ToString(),
                                                                  dgv_alunos[9, dgv_alunos.CurrentCellAddress.Y].Value.ToString(), "Betim", "Brasil");

                    coord = Zoneador.Locate(endereco);
                }

                if (!string.IsNullOrEmpty(coord[0]) || !coord[0].Equals("0"))
                {
                    //controleAluno.atualizaCoordenadas(Convert.ToInt32(txt_codigo.Text), coord[0], coord[1]);
                }

                #endregion

                if (t.IsAlive)
                {
                    t.Abort();
                }
            }
            catch (Exception exception)
            {
                if (t.IsAlive)
                {
                    t.Abort();
                }
                Mensageiro.MensagemErro(exception, this);
            }
        }