Exemplo n.º 1
0
        protected void btnPesquisar_Click(object sender, EventArgs e)
        {
            using (var relP = new RelatorioPrograma())
            {
                var id                 = string.IsNullOrEmpty(txtPrograma.Text) ? (int?)null : int.Parse(txtPrograma.Text);
                var idCapacitacao      = string.IsNullOrWhiteSpace(cbxOfertas.SelectedValue) ? (int?)null : int.Parse(cbxOfertas.SelectedValue);
                var idTurmaCapacitacao = string.IsNullOrWhiteSpace(cbxTurmas.SelectedValue) ? (int?)null : int.Parse(cbxTurmas.SelectedValue);
                var idModulos          = string.IsNullOrWhiteSpace(cbxModulos.SelectedValue) ? (int?)null : int.Parse(cbxModulos.SelectedValue);

                var lstResult = relP.ConsultarProgramas(id, idCapacitacao, idTurmaCapacitacao, idModulos);
                if (lstResult != null && lstResult.Rows.Count > 0)
                {
                    foreach (DataColumn item in lstResult.Columns)
                    {
                        item.Caption = (from ListItem i in _lsItens where i.Value == item.ColumnName select i.Text).FirstOrDefault() ?? item.Caption;
                    }

                    // Converter os resultados do DataTable em DTO para o totalizador ficar feliz da vida.
                    var resultadoConvertido = WebFormHelper.GetDictionaryFromDataTable(lstResult).Select(resultado => new DTORelatorioPrograma
                    {
                        Cpf             = resultado["Cpf"].ToString(),
                        UF              = resultado["UF"].ToString(),
                        StatusMatricula = resultado["StatusMatricula"].ToString()
                    }).ToList();

                    // Converter os resultados em dados totalizadores.
                    var totalizadores = new List <DTOTotalizador>
                    {
                        TotalizadorUtil.GetTotalizador(resultadoConvertido, "Total da quantidade de alunos", "Cpf",
                                                       enumTotalizacaoRelatorio.ContarDistintos, false),
                        TotalizadorUtil.GetTotalizador(resultadoConvertido, "Total da quantidade por status", "StatusMatricula",
                                                       enumTotalizacaoRelatorio.Contar),
                        TotalizadorUtil.GetTotalizador(resultadoConvertido, "Total da quantidade de alunos UF", "UF",
                                                       enumTotalizacaoRelatorio.ContarDistintos)
                    };

                    ucTotalizadorRelatorio.PreencherTabela(totalizadores);

                    Session.Add("dsRelatorio", lstResult);
                    dgRelatorio.DataSource = lstResult;
                    dgRelatorio.DataBind();

                    componenteGeracaoRelatorio.Visible = true;
                    ucFormatoSaidaRelatorio.Visible    = true;
                    btnPesquisar.CssClass = "btn btn-default mostrarload";
                    Filtros.CssClass      = "panel-collapse collapse";
                }
                else
                {
                    ucTotalizadorRelatorio.LimparTotalizadores();
                    componenteGeracaoRelatorio.Visible = false;
                    ucFormatoSaidaRelatorio.Visible    = false;
                }

                WebFormHelper.ValidarVisibilidadeCamposGrid(dgRelatorio, chkListaCamposVisiveis.Items);
            }
        }
Exemplo n.º 2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "Participante",
                Value    = "Participante"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "CPF",
                Value    = "CPF"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "E-mail",
                Value    = "Email"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "Status Matrícula",
                Value    = "StatusMatricula"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "UF",
                Value    = "UF"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "Programa",
                Value    = "Programa"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "Oferta",
                Value    = "Oferta"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "Turma",
                Value    = "Turma"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "Data de Inscrição",
                Value    = "DataInscricao"
            });
            _lsItens.Add(new ListItem
            {
                Selected = true,
                Text     = "Data da Mudança de Status de matrícula",
                Value    = "DataMudStatusMatric"
            });

            if (IsPostBack)
            {
                return;
            }
            using (var relP = new RelatorioPrograma())
            {
                ViewState["_Programas"] = Helpers.Util.ObterListaAutocomplete(relP.ObterProgramas());
                WebFormHelper.PreencherLista(new List <Capacitacao>(), cbxOfertas, true);
                WebFormHelper.PreencherLista(new List <TurmaCapacitacao>(), cbxTurmas, true);
                WebFormHelper.PreencherLista(new List <Modulo>(), cbxModulos, true);
            }

            Session["dsRelatorio"] = null;
            AtualizarListaCamposVisiveis();
        }