예제 #1
0
    /// <summary>
    /// Pesquisa se já existem reuniões cadastradas para o Curso e o Calendário escolhidos.
    /// </summary>
    private void Pesquisar()
    {
        try
        {
            if ((_UCComboCursoCurriculo.Valor[0] > 0) && (_UCComboCalendario.Valor > 0) && (UCComboPeriodoCalendario.Cap_ID > 0 || !cadastroReunioesPorPeriodo))
            {
                _lblQtde.Visible   = true;
                _txtQtde.Visible   = true;
                _divBotoes.Visible = true;

                // Desabilita quantidade de reuniões por período do calendário se existe outros registros ligados a ele.
                _txtQtde.Enabled = !CLS_FrequenciaReuniaoResponsaveisBO.VerificaFrequenciaPorCalendario(_UCComboCalendario.Valor, UCComboPeriodoCalendario.Cap_ID, _UCComboCursoCurriculo.Valor[0], _UCComboCursoCurriculo.Valor[1], cadastroReunioesPorPeriodo);

                ACA_CursoReunioes entityCursoReunioes = ACA_CursoReunioesBO.SelecionaPorCursoCalendarioPeriodo
                                                        (
                    _UCComboCursoCurriculo.Valor[0]
                    ,
                    _UCComboCursoCurriculo.Valor[1]
                    ,
                    _UCComboCalendario.Valor
                    ,
                    cadastroReunioesPorPeriodo ? UCComboPeriodoCalendario.Cap_ID : -1
                                                        );

                VS_crn_id = entityCursoReunioes.crn_id;

                _txtQtde.Text    = entityCursoReunioes.crn_id <= 0 ? string.Empty : entityCursoReunioes.crn_qtde.ToString();
                _txtQtde.Enabled = _btnSalvar.Visible = usuarioPermissao;
            }
            else
            {
                _lblQtde.Visible   = false;
                _txtQtde.Visible   = false;
                _divBotoes.Visible = false;
                UCComboPeriodoCalendario.PermiteEditar = false;
                UCComboPeriodoCalendario.Valor         = new[] { -1, -1 };

                if (_UCComboCursoCurriculo.Valor[0] > 0 && _UCComboCalendario.Valor > 0 && cadastroReunioesPorPeriodo)
                {
                    UCComboPeriodoCalendario.PermiteEditar = true;
                    UCComboPeriodoCalendario.CarregarTipoPeriodoCalendarioPorCalendario_Cap_id(_UCComboCalendario.Valor);
                }
            }
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar o sistema.", UtilBO.TipoMensagem.Erro);
        }
    }
예제 #2
0
    /// <summary>
    /// Checa as frequencias dos alunos
    /// </summary>
    private void ChecharFrequencias()
    {
        foreach (RepeaterItem itemAluno in rptAlunos.Items)
        {
            Repeater rptReunioes = (Repeater)itemAluno.FindControl("rptReunioes");
            Int64    alu_id      = Convert.ToInt64(((Label)itemAluno.FindControl("lblalu_id")).Text);
            CheckBox checkAll    = (CheckBox)itemAluno.FindControl("checkAll");
            int      count       = 0;

            // Adiciona itens na lista de TurmaNota - só pra alterar o tnt_efetivado.
            foreach (RepeaterItem alunos in rptReunioes.Items)
            {
                int      reu_id        = Convert.ToInt32(((Label)alunos.FindControl("lblreu_id")).Text);
                CheckBox chkFrequencia = (CheckBox)alunos.FindControl("chkFrequencia");

                CLS_FrequenciaReuniaoResponsaveis ent = new CLS_FrequenciaReuniaoResponsaveis
                {
                    alu_id = alu_id
                    ,
                    cal_id = VS_cal_id
                    ,
                    cap_id = VS_cap_id
                    ,
                    frp_id = reu_id
                };
                CLS_FrequenciaReuniaoResponsaveisBO.GetEntity(ent);

                if (ent.frp_frequencia)
                {
                    chkFrequencia.Checked = true;
                    count++;
                }
                checkAll.Checked = (count == rptReunioes.Items.Count);
            }
        }
    }
예제 #3
0
    /// <summary>
    /// Salva no banco as frequências.
    /// </summary>
    public bool Salvar(bool PermaneceTela)
    {
        try
        {
            if (!periodoAberto)
            {
                throw new ValidationException(String.Format("Lançamento de frequência em reunião de pais e responsáveis {0} disponível apenas para consulta.", GestaoEscolarUtilBO.nomePadraoPeriodo_Calendario(__SessionWEB.__UsuarioWEB.Usuario.ent_id)));
            }

            List <CLS_FrequenciaReuniao>             listfr  = new List <CLS_FrequenciaReuniao>();
            List <CLS_FrequenciaReuniaoResponsaveis> listfrp = new List <CLS_FrequenciaReuniaoResponsaveis>();

            RepeaterItem header      = (RepeaterItem)rptAlunos.Controls[0];
            Repeater     rptReunioes = (Repeater)header.FindControl("rptReunioes");

            bool pCadastroPorPeriodo = cadastroReunioesPorPeriodo;

            // Adiciona itens na lista de TurmaAula - só pra alterar o tau_efetivado.
            foreach (RepeaterItem itemAtividade in rptReunioes.Items)
            {
                CheckBox chkEfetivado = (CheckBox)itemAtividade.FindControl("chkEfetivado");
                int      reu_id       = Convert.ToInt32(((Label)itemAtividade.FindControl("lblreu_id")).Text);

                CLS_FrequenciaReuniao ent = new CLS_FrequenciaReuniao
                {
                    tur_id = VS_tur_id,
                    cal_id = VS_cal_id,
                    cap_id = VS_cap_id,
                    frp_id = reu_id
                };
                CLS_FrequenciaReuniaoBO.GetEntity(ent);

                ent.frr_efetivado = chkEfetivado.Checked;

                listfr.Add(ent);
            }

            foreach (RepeaterItem itemAluno in rptAlunos.Items)
            {
                rptReunioes = (Repeater)itemAluno.FindControl("rptReunioes");
                Int64 alu_id = Convert.ToInt64(((Label)itemAluno.FindControl("lblalu_id")).Text);

                // Adiciona itens na lista de TurmaNota - só pra alterar o tnt_efetivado.
                foreach (RepeaterItem alunos in rptReunioes.Items)
                {
                    int      reu_id        = Convert.ToInt32(((Label)alunos.FindControl("lblreu_id")).Text);
                    CheckBox chkFrequencia = (CheckBox)alunos.FindControl("chkFrequencia");
                    CheckBox chkEfetivado  = (CheckBox)alunos.FindControl("chkEfetivado");
                    bool     frequencia    = chkFrequencia.Checked;

                    if (reu_id > 0)
                    {
                        CLS_FrequenciaReuniaoResponsaveis ent = new CLS_FrequenciaReuniaoResponsaveis
                        {
                            alu_id = alu_id
                            ,
                            cal_id = VS_cal_id
                            ,
                            cap_id = pCadastroPorPeriodo ? VS_cap_id : UCComboPeriodoCalendario1.Cap_ID
                            ,
                            frp_id = reu_id
                            ,
                            frp_frequencia = frequencia
                        };

                        listfrp.Add(ent);
                    }
                }
            }

            if (CLS_FrequenciaReuniaoResponsaveisBO.Salvar(listfrp, listfr))
            {
                if (PermaneceTela)
                {
                    CarregarTelaLancametoFrequencia();
                    _lblMessage.Text = UtilBO.GetErroMessage("Lançamento de frequências salvo com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }
                else
                {
                    __SessionWEB.PostMessages = UtilBO.GetErroMessage("Lançamento de frequências salvo com sucesso.", UtilBO.TipoMensagem.Sucesso);
                    Response.Redirect("~/Classe/ReunioesResponsaveisFrequencia/Busca.aspx", false);
                    HttpContext.Current.ApplicationInstance.CompleteRequest();
                }

                try
                {
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "tur_id: " + VS_tur_id + "; cal_id: " + VS_cal_id + "; cap_id: " + VS_cap_id);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                }

                return(true);
            }

            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar as frequências.", UtilBO.TipoMensagem.Erro);
            return(false);
        }
        catch (ValidationException ex)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            return(false);
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar as frequências.", UtilBO.TipoMensagem.Erro);
            _uppMessage.Update();
            return(false);
        }
    }