protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                return;
            }

            using (var bp = new RelatorioInscricoesPorStatusENivel())
            {
                var listaUfs = bp.ObterUFs();
                WebFormHelper.PreencherLista(listaUfs, cbxUf, listaUfs.Count > 1);

                var usuarioLogado = new ManterUsuario().ObterUsuarioLogado();

                ViewState["_SE"] = Helpers.Util.ObterListaAutocomplete(bp.ObterSolucaoEducacionalTodos());

                CheckboxesStatus.PreencherItens(bp.ObterStatusMatriculaTodos(), "ID", "Nome", true);
                CheckboxesNiveis.PreencherItens(bp.ObterNivelOcupacionalTodos(), "ID", "Nome", true);

                ListBoxesUFResponsavel.PreencherItens(listaUfs, "ID", "Nome");
            }
        }
        protected void btnPesquisar_Click(object sender, EventArgs e)
        {
            using (var bp = new RelatorioInscricoesPorStatusENivel())
            {
                DateTime dtIni, dtFim;
                DateTime?dtIniConvertido = null, dtFimConvertido = null;
                if (DateTime.TryParse(txtDataInicio.Text, out dtIni))
                {
                    dtIniConvertido = dtIni;
                }

                if (DateTime.TryParse(txtDataFim.Text, out dtFim))
                {
                    dtFimConvertido = dtFim;
                }

                var statuses = CheckboxesStatus.RecuperarIdsSelecionados <int>().ToList();

                var niveis = CheckboxesNiveis.RecuperarIdsSelecionados <int>().ToList();

                var pStatus = statuses.Any() ? string.Join(",", statuses) : null;

                var pNiveis = niveis.Any() ? string.Join(",", niveis) : null;

                var pUf = string.IsNullOrWhiteSpace(cbxUf.SelectedValue)
                    ? null
                    : int.Parse(cbxUf.SelectedValue) == 0 ? null : (int?)int.Parse(cbxUf.SelectedValue);

                var pSe = string.IsNullOrWhiteSpace(txtSolucaoEducacional.Text)
                    ? null
                    : int.Parse(txtSolucaoEducacional.Text) == 0 ? null : (int?)int.Parse(txtSolucaoEducacional.Text);

                var pUfResponsavel = ListBoxesUFResponsavel.RecuperarIdsSelecionados <int>();

                var consulta = bp.ConsultarRelatorio(
                    pStatus,
                    pNiveis,
                    pUf,
                    pSe,
                    dtIniConvertido,
                    dtFimConvertido,
                    pUfResponsavel);

                if (consulta != null && consulta.Any())
                {
                    componenteGeracaoRelatorio.Visible = true;
                    ucFormatoSaidaRelatorio.Visible    = true;
                    btnPesquisar.CssClass = "btn btn-default mostrarload";
                    Filtros.CssClass      = "panel-collapse collapse";
                }
                else
                {
                    componenteGeracaoRelatorio.Visible = false;
                    ucFormatoSaidaRelatorio.Visible    = false;
                }

                lblQuantidadeEncontrada.Text = string.Format("<b>Total Encontrado:</b> {0}",
                                                             (consulta != null && consulta.Any() ? consulta.Sum(r => r.Total) : 0));

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

                WebFormHelper.ValidarVisibilidadeCamposGrid(dgRelatorio, CheckboxesNiveis.Items);
            }
        }