Example #1
0
 private void atualizandoStatusSolicitacoes()
 {
     var dataAtual = DateTime.Now;
     var ssDAO = new SolicitacaoSaidaDAO();
     var solicitacoesSaida = getSolicitacaoesHoje();
     //verificando se solicitação está expirada, se sim, atualiza seu status
     foreach (SolicitacaoSaida solicitacao in solicitacoesSaida)
     {
         //verificando se solicitacao ja estourou o tempo de expiração
         if (solicitacao.status == StatusSolicitacao.aberto &&
             solicitacao.abertura.AddMinutes(tempoExpiraçãoSolicitacao) < dataAtual)
         {
             try
             {
                 solicitacao.status = StatusSolicitacao.expirado;
                 ssDAO.atualizar(solicitacao);
             }
             catch (Exception)
             {
                 return;
             }
         }
     }
 }
Example #2
0
        private void relatorioSolicitacaoSaida_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            int eixoX = 105;
            string expirado;
            // titulo
            e.Graphics.DrawString("Relatório mensal de solicitações de saída antecipada de aluno", new Font("Arial", 12, FontStyle.Bold), new SolidBrush(Color.Black), new Point(20, 30));
            //headers
            e.Graphics.DrawString("Prontuário", new Font("Arial", 11, FontStyle.Bold), new SolidBrush(Color.Black), new Point(20, 85));
            e.Graphics.DrawString("Nome", new Font("Arial", 11, FontStyle.Bold), new SolidBrush(Color.Black), new Point(107, 85));
            e.Graphics.DrawString("Abertura", new Font("Arial", 11, FontStyle.Bold), new SolidBrush(Color.Black), new Point(325, 85));
            e.Graphics.DrawString("Encerramento", new Font("Arial", 11, FontStyle.Bold), new SolidBrush(Color.Black), new Point(490, 85));
            e.Graphics.DrawString("Saida. Sup.", new Font("Arial", 11, FontStyle.Bold), new SolidBrush(Color.Black), new Point(640, 85));
            e.Graphics.DrawString("Status", new Font("Arial", 11, FontStyle.Bold), new SolidBrush(Color.Black), new Point(740, 85));

            string encerramento = "";
            string saidaSupervisionada = "Não";
            IQueryable<SolicitacaoSaida> solicitacoes = null;
            try
            {
                var sDAO = new SolicitacaoSaidaDAO();
                solicitacoes = sDAO.get(s => s.abertura.Year.ToString() == cmbRelAno.SelectedItem.ToString() && s.abertura.Month.ToString() == cmbRelMes.SelectedItem.ToString());
            }
            catch (Exception)
            {
                mensagem("Erro ao gerar relatório");
            }
            foreach (SolicitacaoSaida s in solicitacoes)
            {
                if (s.encerramento != null)
                {
                    encerramento = s.encerramento.Value.ToString("dd/mm/yyy hh:mm:ss");
                }
                else
                {
                    encerramento = "";
                }
                if (s.saidaSupervisionada == true)
                {
                    saidaSupervisionada = "Sim";
                }
                else
                {
                    saidaSupervisionada = "Não";
                }
                e.Graphics.DrawString(s.aluno.prontuario.prontuario, new Font("Arial", 11, FontStyle.Regular), new SolidBrush(Color.Black), new Point(20, eixoX));
                e.Graphics.DrawString(s.aluno.nome, new Font("Arial", 11, FontStyle.Regular), new SolidBrush(Color.Black), new Point(107, eixoX));
                e.Graphics.DrawString(s.abertura.ToString("dd/mm/yyy hh:mm:ss"), new Font("Arial", 11, FontStyle.Regular), new SolidBrush(Color.Black), new Point(325, eixoX));
                e.Graphics.DrawString(encerramento, new Font("Arial", 11, FontStyle.Regular), new SolidBrush(Color.Black), new Point(490, eixoX));
                e.Graphics.DrawString(saidaSupervisionada, new Font("Arial", 11, FontStyle.Regular), new SolidBrush(Color.Black), new Point(640, eixoX));
                e.Graphics.DrawString(s.status.ToString(), new Font("Arial", 11, FontStyle.Regular), new SolidBrush(Color.Black), new Point(740, eixoX));
                eixoX += 15;
            }
        }
Example #3
0
 private static IQueryable<SolicitacaoSaida> getSolicitacaoesHoje()
 {
     var ssDAO = new SolicitacaoSaidaDAO();
     var dataAtual = DateTime.Now;
     //buscando todas as solicitações de hoje
     return ssDAO.get(s => s.abertura.DayOfYear == dataAtual.DayOfYear && s.abertura.Year == dataAtual.Year);
 }
Example #4
0
 private void preencherGridsSolicitacoes()
 {
     dgvSolicitacoesAbertas.Rows.Clear();
     dgvSolicitacoesAbertas.Refresh();
     dgvSolicitacoesExpiradas.Rows.Clear();
     dgvSolicitacoesExpiradas.Refresh();
     dgvSolicitacoesFinalizadas.Rows.Clear();
     dgvSolicitacoesFinalizadas.Refresh();
     atualizandoStatusSolicitacoes();
     var ssDAO = new SolicitacaoSaidaDAO();
     //buscando todas as solicitações de hoje
     IQueryable<SolicitacaoSaida> solicitacoesSaida = getSolicitacaoesHoje();
     //inserindo cada uma em seu devido grid de acordo com seu status (aberto, experida, expirado)
     foreach (SolicitacaoSaida solicitacao in solicitacoesSaida)
     {
         if (solicitacao.status == StatusSolicitacao.aberto)
         {
             string saidaSupervisionada = null;
             if (solicitacao.saidaSupervisionada == true)
             {
                 saidaSupervisionada = "Sim";
             }
             else
             {
                 saidaSupervisionada = "Não";
             }
             dgvSolicitacoesAbertas.Rows.Add(solicitacao.idSolicitacao, solicitacao.aluno.prontuario.prontuario,
                 solicitacao.aluno.nome, saidaSupervisionada, solicitacao.assistenteAluno.nome);
         }
         else if (solicitacao.status == StatusSolicitacao.expirado)
         {
             dgvSolicitacoesExpiradas.Rows.Add(solicitacao.idSolicitacao, solicitacao.aluno.prontuario.prontuario,
                 solicitacao.aluno.nome, solicitacao.assistenteAluno.nome);
         }
         else if (solicitacao.status == StatusSolicitacao.encerrado)
         {
             dgvSolicitacoesFinalizadas.Rows.Add(solicitacao.idSolicitacao, solicitacao.aluno.prontuario.prontuario,
                 solicitacao.aluno.nome, solicitacao.assistenteAluno.nome);
         }
     }
 }
Example #5
0
        private void btnGerarSolicitacaoAluno_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Deseja realmete gerar solicitação?", "Dúvida", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                if (String.IsNullOrEmpty(txtMotivoAluno.Text))
                {
                    mensagem("Por favor. Insirar o Motivo");
                }
                else
                {
                    if (ckbSolicitacaoSaida.Checked == true)
                    {
                        try
                        {
                            bool saidaSupervisionada = true;
                            if (rdbSimSaidaSupervisionada.Checked == true)
                            {
                                saidaSupervisionada = true;
                            }
                            else
                            {
                                saidaSupervisionada = false;
                            }
                            var s = new SolicitacaoSaida()
                            {
                                abertura = DateTime.Now,
                                aluno = aluno,
                                assistenteAluno = (Funcionario)acessoPessoa,
                                motivo = txtMotivoAluno.Text,
                                status = StatusSolicitacao.aberto,
                                saidaSupervisionada = saidaSupervisionada
                            };
                            var solicitacaoSaidaDao = new SolicitacaoSaidaDAO();
                            if (solicitacaoSaidaDao.adicionar(s))
                            {
                                mensagem("Solicitação de saída gerada com sucesso!");
                                gerarSolicitacoes1();
                                preencherGridsSolicitacoes();
                            }
                            else
                            {
                                mensagem("Falha ao gerar solicitação de saida. Tente novamente");
                                gerarSolicitacoes1();
                            }

                        }
                        catch (Exception ex)
                        {
                            mensagem("Falha ao gerar solicitação. Detalhes: " + ex);
                        }
                    }
                    else
                    {
                        var s = new SolicitacaoEntrada()
                        {
                            abertura = DateTime.Now,
                            aluno = aluno,
                            assistenteAluno = (Funcionario)acessoPessoa,
                            motivo = txtMotivoAluno.Text
                        };
                        var sDao = new SolicitacaoEntradaDAO();
                        if (sDao.adicionar(s))
                        {
                            mensagem("Solicitação de entrada concedida com sucesso!");
                            gerarSolicitacoes1();
                        }
                        else
                        {
                            mensagem("Falha ao conceder solicitação de entrada. Tente novamente!");
                            gerarSolicitacoes1();
                        }
                    }
                }
            }
            else
            {
                return;
            }
        }
Example #6
0
 private void btnFinalizarSolicitacao_Click(object sender, EventArgs e)
 {
     if (MessageBox.Show("Deseja realmente finalizar essa solicitação?", "Dúvida", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
     {
         if (dgvSolicitacoesAbertas.SelectedRows.Count == 0)
         {
             mensagem("Por favor selecione a linha que corresponde a solicitação desejada");
         }
         else
         {
             var ssDAO = new SolicitacaoSaidaDAO();
             var ss = ssDAO.find(Convert.ToInt32(dgvSolicitacoesAbertas.CurrentRow.Cells[0].Value));
             ss.encerramento = DateTime.Now;
             ss.status = StatusSolicitacao.encerrado;
             ss.porteiro = (PessoaFisica)acessoPessoa;
             try
             {
                 if (ssDAO.atualizar(ss))
                 {
                     mensagem("Solicitação finalizada com sucesso! Agora o aluno pode ser dispensado!");
                     preencherGridsSolicitacoes();
                 }
                 else
                 {
                     mensagem("Falha ao finalizar solicitação");
                 }
             }
             catch (Exception ex)
             {
                 mensagem("Falhar ao finalizar solicitação. Detalhes: " + ex);
             }
         }
     }
     else
     {
         return;
     }
 }