/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_excluir_Click(object sender, EventArgs e) { try { if (!cbo_anoreferencia.Text.Equals("2021")) { throw new Exception("Não é permitido excluir solicitações de anos anteriores."); } controleSolicitacoes = new SolicitacaoControl(); if (MessageBox.Show(string.Format("Deseja excluir a solicitação de vaga do _aluno {0}?", dgv_solicitacoes[1, dgv_solicitacoes.CurrentCellAddress.Y].Value), "Siesc", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { if (controleSolicitacoes.Excluir((int)dgv_solicitacoes[0, dgv_solicitacoes.CurrentCellAddress.Y].Value)) { dgv_solicitacoes.Refresh(); MessageBox.Show("Solicitação excluída com sucesso!!!", "SIESC", MessageBoxButtons.OK, MessageBoxIcon.Information); } } GerenciaSolicitacao_Load(null, null); } catch (Exception exception) { Mensageiro.MensagemErro(exception, this); } }
/// <summary> /// Abre o formulário de solicitação de vaga com a solicitação escolhida /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_solicitacao_Click(object sender, EventArgs e) { try { controleAluno = new AlunoControl(); controleSolicitacao = new SolicitacaoControl(); aluno = controleAluno.RetornaAluno((int)dgv_solicitacoes["CodigoAluno", dgv_solicitacoes.CurrentCellAddress.Y].Value); solicitacao = controleSolicitacao.RetornaSolicitacao((int)dgv_solicitacoes["CodigoSolicitacao", dgv_solicitacoes.CurrentCellAddress.Y].Value); SolicitaVaga frm_solicitavaga = new SolicitaVaga(aluno, solicitacao, _principalUi) { MdiParent = _principalUi }; frm_solicitavaga.Show(); Close(); } catch (Exception exception) { Mensageiro.MensagemErro(exception, this); } }
/// <summary> /// Finaliza a Solicitação /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_finaliza_solicitacao_Click(object sender, EventArgs e) { try { if (!cbo_anoreferencia.Text.Equals("2021")) { throw new Exception("Não é permitido finalizar solicitações de anos anteriores."); } if (Mensageiro.MensagemPergunta($"Deseja finalizar a Solicitação?{Environment.NewLine}A solicitação será considerada como encaminhada.", this).Equals(DialogResult.Yes)) { controleSolicitacoes = new SolicitacaoControl(); int codigoSolicitacao; if (int.TryParse(dgv_solicitacoes.CurrentRow.Cells["Solicitacao"].Value.ToString(), out codigoSolicitacao)) { if (controleSolicitacoes.FinalizarSolicitacao(codigoSolicitacao, DateTime.Now, PrincipalUI.user.nomeusuario.ToUpper(), dgv_solicitacoes.CurrentRow.Cells["Observacoes"].Value + "- SOLICITAÇÃO FINALIZADA")) { Mensageiro.MensagemAviso("A solicitação foi finalizada com sucesso!", this); } } CarregaGridView(); dgv_solicitacoes.Update(); } } catch (Exception exception) { Mensageiro.MensagemErro(exception, this); } }
/// <summary> /// Carrega da GridView conforme a solicitação /// </summary> /// <param name="codigoSolicitacao"></param> private void CarregaGridViewByIdSolicitacao(string codigoSolicitacao) { solicitacaoControl = new SolicitacaoControl(); DataTable dt = solicitacaoControl.RetornaSolicitacaoById(Convert.ToInt32(codigoSolicitacao)); dgv_dados.DataSource = dt; dgv_dados.Refresh(); dgv_dados.EditMode = DataGridViewEditMode.EditOnF2; }
/// <summary> /// Retorno o endereço da solicitação /// </summary> private void RepassaLocalização() { try { controleSolicitacao = new SolicitacaoControl(); txt_endereço.Text = controleSolicitacao.RetornaEndereco((int)dgv_alunos[0, dgv_alunos.CurrentCellAddress.Y].Value); } catch (Exception e) { Mensageiro.MensagemErro(e, this); } }
/// <summary> /// Carrega da GridView conforme o nome do aluno /// </summary> /// <param name="nomeAluno"></param> private void CarregaGridViewByNomeAluno(string nomeAluno) { solicitacaoControl = new SolicitacaoControl(); DataTable dt = solicitacaoControl.LocalizarSolicitAluno(nomeAluno); dgv_dados.DataSource = dt; dgv_dados.Sort(dgv_dados.Columns[2], ListSortDirection.Ascending); dgv_dados.Refresh(); dgv_dados.EditMode = DataGridViewEditMode.EditOnF2; }
/// <summary> /// Zoneamento em lote /// </summary> private void DistanciaAlunoEncaminhado() { int idaluno; int idinstituicao; int idsolicitacao; int distancia = 0; InstituicaoControl controleInstituicao = new InstituicaoControl(); controleSolicitacao = new SolicitacaoControl(); string[] coordAluno = new string[2]; string[] coordInstituicao = new string[2]; MySqlConnection conexao = new MySqlConnection("server=localhost;user id=minafra;password=escrita;persistsecurityinfo=True;database=siesc"); string valores = string.Empty; MySqlCommand comando; DataTable dt = controleSolicitacao.Listar(1);//digitar a idsolicitação inicial devido ao limite do google conexao.Open(); foreach (DataRow row in dt.Rows) { idaluno = Convert.ToInt32(row["Aluno"].ToString()); idinstituicao = Convert.ToInt32(row["instituicaoEncaminhada"]); idsolicitacao = Convert.ToInt32(row["idSolicitacoesVagas"]); //coordAluno = controleAluno.RetornaCoordenadas(idaluno); coordInstituicao = controleInstituicao.RetornaCoordenasInstituicao(idinstituicao); distancia = Metrics.CalculaDistanciaCaminhando(coordAluno[0], coordAluno[1], coordInstituicao[0], coordInstituicao[1]); valores = idaluno + "," + idinstituicao + "," + idsolicitacao + "," + distancia; comando = new MySqlCommand("INSERT INTO distanciaalunoescola VALUES (" + valores + ");"); comando.Connection = conexao; comando.ExecuteNonQuery(); } conexao.Clone(); Mensageiro.MensagemAviso("Fim", this); }
/// <summary> /// Carrega um data GridView a partir de Datatable /// </summary> /// <returns></returns> private DataTable carregaAlunos() { try { controleSolicitacao = new SolicitacaoControl(); if (rdb_nome.Checked) { if (string.IsNullOrEmpty(txt_nomealuno.Text)) { throw new Exception("Digite o NOME do aluno para localizá-lo"); } return(controleSolicitacao.ViewAlunoByNome(txt_nomealuno.Text)); } if (rdb_codigo.Checked) { if (string.IsNullOrEmpty(txt_codigo.Text)) { throw new Exception("Digite o CÓDIGO do aluno para localizá-lo"); } return(controleSolicitacao.PesquisaIDAluno(Convert.ToInt32(txt_codigo.Text))); } if (rdb_data.Checked) { if (string.IsNullOrEmpty(txt_datanasc.Text)) { throw new Exception("Digite a DATA DE NASCIMENTO do aluno para localizá-lo."); } return(controleSolicitacao.ViewAlunoByDataNascimento(Convert.ToDateTime(txt_datanasc.Text))); } if (rdb_codigo_sol.Checked) { if (string.IsNullOrEmpty(txt_codigo.Text)) { throw new Exception("Digite o CÓDIGO DA SOLICITAÇÃO do aluno para localizá-lo."); } return(controleSolicitacao.RetornaSolicitacaoById(Convert.ToInt32(txt_codigo.Text))); } return(null); } catch (Exception exception) { throw exception; } }
/// <summary> /// Repassa o endereço a partir da solicitação /// </summary> private void RepassaEndereço() { try { controleSolicitacao = new SolicitacaoControl(); string[] coord = controleSolicitacao.RetornaCoordenadas((int)dgv_alunos[0, dgv_alunos.CurrentCellAddress.Y].Value); lbl_latitude.Text = coord[0]; lbl_longitude.Text = coord[1]; } catch (Exception e) { Mensageiro.MensagemErro(e, this); } }
/// <summary> /// Carrega o GridViewS /// </summary> private void CarregaGridView() { try { LimpaCampos(); controleSolicitacoes = new SolicitacaoControl(); dgv_solicitacoes.DataSource = controleSolicitacoes.ListarSolicitacoes(); dgv_solicitacoes.Refresh(); } catch (Exception exception) { Mensageiro.MensagemErro(exception, this); } }
/// <summary> /// Imprime a solicitação /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_imprimir_Click(object sender, EventArgs e) { if (!cbo_anoreferencia.Text.Equals("2021")) { throw new Exception("Não é permitido imprimir fichas de solicitações de anos anteriores."); } var t = CarregaProgressoThread(); try { solicitacao = new Solicitacao(); controleSolicitacoes = new SolicitacaoControl(); //todo ver método para acessar banco só uma vez para retornar solicitacao.AnoEnsino = Convert.ToInt32(controleSolicitacoes.PesquisaAnoEnsino((int)dgv_solicitacoes[0, dgv_solicitacoes.CurrentCellAddress.Y].Value)); solicitacao.Coordenadas = controleSolicitacoes.RetornaCoordenadas((int)dgv_solicitacoes[0, dgv_solicitacoes.CurrentCellAddress.Y].Value); frm_ficha_solicitacao frm_fichasolicitaco = new frm_ficha_solicitacao(solicitacao.Coordenadas[0], solicitacao.Coordenadas[1], solicitacao.AnoEnsino, (int)dgv_solicitacoes[0, dgv_solicitacoes.CurrentCellAddress.Y].Value) { MdiParent = PrincipalUI }; frm_fichasolicitaco.Show(); } catch (Exception exception) { if (t.IsAlive) { t.Abort(); } Mensageiro.MensagemErro(exception, this); } finally { if (t.IsAlive) { t.Abort(); } } }
/// <summary> /// Gera o Encaminhamento do aluno /// </summary> private void SelecionaEncaminhamento() { try { datasource = new ReportDataSource("dsRelatorios"); controleSolicitacao = new SolicitacaoControl(); dtSolicitacao = controleSolicitacao.EncaminhamentoAluno(_idSolicitacao); datasource.Value = dtSolicitacao; rpt_viewer.LocalReport.DataSources.Add(datasource); rpt_viewer.RefreshReport(); } catch (Exception e) { Mensageiro.MensagemErro(e, this); } }
/// <summary> /// Enveto do grid quando se clica em um checkbox /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dgv_dados_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { if (rdb_nao_sindicadas.Checked || rdb_codigo.Checked || rdb_nome.Checked) { if (e.ColumnIndex == dgv_dados.Columns["sindicar"].Index) //se clicou na coluna de seleção checkbox { var codigoSolicitacao = (int)dgv_dados.CurrentRow.Cells["codigo"].Value; if (rdb_codigo.Checked || rdb_nome.Checked) { sindicanciaControl = new SindicanciaControl(); if (sindicanciaControl.ContemSindicado(codigoSolicitacao)) { dgv_dados.CancelEdit(); throw new Exception("A solicitação já se encontra em processo de sindicância!"); } } foreach (var sindicado in listaOfSindicancias.Where(x => x.codigoSolicitacao == codigoSolicitacao)) { listaOfSindicancias.Remove(sindicado); return; } var solicitacaoControl = new SolicitacaoControl(); var solicitacao = solicitacaoControl.RetornaSolicitacao(codigoSolicitacao); var sindicancia = ConverteSindicancia(solicitacao); sindicancia.codigoAluno = (int)dgv_dados.CurrentRow.Cells["idAluno"].Value; listaOfSindicancias.Add(sindicancia); } } } catch (Exception ex) { Mensageiro.MensagemErro(ex, principalUi); } }
/// <summary> /// Repassa os dados do dataTable para os controles do formulário /// </summary> private void RepassaDadosControles() { try { controleSolicitacao = new SolicitacaoControl(); DataTable dt_solicitacao = controleSolicitacao.RetornaSolicitacaoById( (int)dgv_solicitacoes["CodigoSolicitacao", dgv_solicitacoes.CurrentCellAddress.Y].Value); txt_mae.Text = dt_solicitacao.Rows[0]["Mae"].ToString(); txt_datanasc.Text = dt_solicitacao.Rows[0]["DataNasc"].ToString(); txt_datasolicitacao.Text = dt_solicitacao.Rows[0]["Data Solicitacao"].ToString(); txt_endereco.Text = controleSolicitacao.RetornaEndereco((int)dgv_solicitacoes["CodigoSolicitacao", dgv_solicitacoes.CurrentCellAddress.Y].Value); txt_motivo.Text = dt_solicitacao.Rows[0]["Motivo"].ToString(); txt_origem_solicitacao.Text = dt_solicitacao.Rows[0]["Origem Solicitacao"].ToString(); txt_telefone.Text = $"{dt_solicitacao.Rows[0]["Telefone 1"]} {dt_solicitacao.Rows[0]["Telefone 2"]}"; } catch (Exception exception) { Mensageiro.MensagemErro(exception, this); } }
/// <summary> /// Gera ficha de encaminhamento do aluno /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_ficha_encaminhamento_Click(object sender, EventArgs e) { if (!cbo_anoreferencia.Text.Equals("2021")) { throw new Exception("Não é permitido imprimir fichas de solicitações de anos anteriores."); } var t = CarregaProgressoThread(); try { controleSolicitacoes = new SolicitacaoControl(); frm_ficha_encaminhamento frm_fichaEncaminhamento = new frm_ficha_encaminhamento((int)dgv_solicitacoes[0, dgv_solicitacoes.CurrentCellAddress.Y].Value) { MdiParent = PrincipalUI }; frm_fichaEncaminhamento.Show(); } catch (Exception exception) { if (t.IsAlive) { t.Abort(); } Mensageiro.MensagemErro(exception, this); } finally { if (t.IsAlive) { t.Abort(); } } }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_localizar_Click(object sender, EventArgs e) { try { if (!localizar.Equals(Localizar.aguardando) && cbo_anoreferencia.Text.Equals("2021")) { controleSolicitacoes = new SolicitacaoControl(); dgv_solicitacoes.DataSource = null; switch (localizar) { case Localizar.codigoSolicitacao: if (string.IsNullOrEmpty(txt_codigo.Text)) { throw new Exception("valor do código não digitado!"); } dgv_solicitacoes.DataSource = controleSolicitacoes.RetornaSolicitacaoById(Convert.ToInt32(txt_codigo.Text)); break; case Localizar.nomeMae: dgv_solicitacoes.DataSource = controleSolicitacoes.PesquisaMae(txt_mae.Text); break; case Localizar.nomeAluno: dgv_solicitacoes.DataSource = controleSolicitacoes.LocalizarSolicitAluno(txt_nomealuno.Text); break; case Localizar.codigoAluno: dgv_solicitacoes.DataSource = controleSolicitacoes.PesquisaIDAluno(Convert.ToInt32(txt_codigo.Text)); break; case Localizar.codigoExpedienteInterno: dgv_solicitacoes.DataSource = controleSolicitacoes.PesquisaCodigoExpedienteInterno(Convert.ToInt32(msk_codigoEI.Text)); break; case Localizar.motivo: if (cbo_motivos.Text.Equals(string.Empty)) { throw new Exception("Não foi selecionado motivo!"); } dgv_solicitacoes.DataSource = controleSolicitacoes.PesquisaMotivo(cbo_motivos.Text); break; } } else { if (!localizar.Equals(Localizar.aguardando)) { anosAnterioresControl = new AnosAnterioresControl(); dgv_solicitacoes.DataSource = anosAnterioresControl.carregaDados(cbo_anoreferencia.Text, SelecionaParametros(), localizar.ToString()); } } dgv_solicitacoes.Refresh(); } catch (Exception exception) { Mensageiro.MensagemErro(exception, this); } }