예제 #1
0
        protected void cbxTrilha_SelectedIndexChanged(object sender, EventArgs e)
        {
            List <DTOTrilhaNivel> niveis;

            var idTrilha = 0;

            if (int.TryParse(cbxTrilha.SelectedValue, out idTrilha))
            {
                niveis = new RelatorioStatusUsuariosTrilhas().ObterNivelTrilha().Where(x => x.Trilha.ID == idTrilha)
                         .Select(x => new DTOTrilhaNivel
                {
                    ID   = x.ID,
                    Nome = x.Nome
                }).ToList();
            }
            else
            {
                niveis = new RelatorioStatusUsuariosTrilhas().ObterNivelTrilha().Select(x => new DTOTrilhaNivel
                {
                    ID   = x.ID,
                    Nome = $"{x.Trilha.Nome} - {x.Nome}"
                }).ToList();
            }

            WebFormHelper.PreencherLista(niveis, cbxNivelTrilha, true);
        }
예제 #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                return;
            }

            using (RelatorioStatusUsuariosTrilhas relStat = new RelatorioStatusUsuariosTrilhas())
            {
                WebFormHelper.PreencherLista(relStat.ObterTrilhasTodas(), cbxTrilha, true);
                WebFormHelper.PreencherLista(relStat.ObterUFTodas(), cbxUF, true);
                WebFormHelper.PreencherLista(relStat.ObterNivelOcupacionalTodas(), cbxNivelOcupacional, true);

                ucListBoxStatus.PreencherItens(relStat.ObterStatusMatriculaTrilhas().Where(x => x.ID != 7).ToList(), "ID", "Nome");

                var niveis = relStat.ObterNivelTrilha().Select(x => new
                {
                    ID   = x.ID,
                    Nome = $"{x.Trilha.Nome} - {x.Nome}"
                }).ToList();

                WebFormHelper.PreencherLista(niveis, cbxNivelTrilha, true);
            }
        }
예제 #3
0
        protected void btnPesquisar_Click(object sender, EventArgs e)
        {
            using (var relStat = new RelatorioStatusUsuariosTrilhas())
            {
                DateTime?dataInicio      = null;
                DateTime?dataDeConclusao = null;
                DateTime?dataLimite      = null;

                DateTime dataTmp;

                if (!string.IsNullOrWhiteSpace(cbxDataInicio.Text))
                {
                    if (DateTime.TryParse(cbxDataInicio.Text, out dataTmp))
                    {
                        dataInicio = dataTmp;
                    }
                    else
                    {
                        WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Data inicial inválida");
                        return;
                    }
                }

                if (!string.IsNullOrWhiteSpace(cbxDataDeConclusao.Text))
                {
                    if (DateTime.TryParse(cbxDataDeConclusao.Text, out dataTmp))
                    {
                        dataDeConclusao = dataTmp;
                    }
                    else
                    {
                        WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Data final inválida");
                        return;
                    }
                }

                if (dataDeConclusao.HasValue && dataInicio.HasValue && dataDeConclusao < dataInicio)
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "A data final deve ser maior que a inicial");
                    return;
                }

                if (!string.IsNullOrWhiteSpace(cbxDataLimite.Text))
                {
                    if (DateTime.TryParse(cbxDataLimite.Text, out dataTmp))
                    {
                        dataLimite = dataTmp;
                    }
                    else
                    {
                        WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Data limite inválida");
                        return;
                    }
                }

                var trilhaId = string.IsNullOrWhiteSpace(cbxTrilha.SelectedValue)
                    ? null
                    : (int?)int.Parse(cbxTrilha.SelectedValue);

                var nivelTrilha = string.IsNullOrWhiteSpace(cbxNivelTrilha.SelectedValue)
                    ? null
                    : (int?)int.Parse(cbxNivelTrilha.SelectedValue);

                var nivelOcupacionalId = string.IsNullOrWhiteSpace(cbxNivelOcupacional.SelectedValue)
                    ? null
                    : (int?)int.Parse(cbxNivelOcupacional.SelectedValue);

                var ufId = string.IsNullOrWhiteSpace(cbxUF.SelectedValue)
                    ? null
                    : (int?)int.Parse(cbxUF.SelectedValue);

                var statusSelecionados = ucListBoxStatus.RecuperarIdsSelecionados <int>();

                var statusUsuariosTrilhaList = relStat.ObterStatusTrilhas(statusSelecionados, trilhaId, cbxNomeLupa.SelectedUser?.ID, nivelTrilha, nivelOcupacionalId,
                                                                          ufId, dataInicio, dataDeConclusao, dataLimite);

                Session.Add("dsRelatorio", statusUsuariosTrilhaList);

                dgRelatorio.DataSource = statusUsuariosTrilhaList;

                if (statusUsuariosTrilhaList != null && statusUsuariosTrilhaList.Count > 0)
                {
                    // Converter os resultados em dados totalizadores.
                    var totalizadores = new List <DTOTotalizador>
                    {
                        TotalizadorUtil.GetTotalizador(statusUsuariosTrilhaList,
                                                       "Total da quantidade de alunos por trilha", "Trilha",
                                                       enumTotalizacaoRelatorio.Contar),
                        TotalizadorUtil.GetTotalizador(statusUsuariosTrilhaList,
                                                       "Total da quantidade de alunos por nível de trilha", "NivelTrilha",
                                                       enumTotalizacaoRelatorio.Contar),
                        TotalizadorUtil.GetTotalizador(statusUsuariosTrilhaList,
                                                       "Total da quantidade por status (listando os status de matrícula e os números totais de cada status)",
                                                       "StatusMatricula",
                                                       enumTotalizacaoRelatorio.Contar),
                        TotalizadorUtil.GetTotalizador(statusUsuariosTrilhaList,
                                                       "Total da quantidade de alunos UF (listando as UF e os números totais de cada UF)", "UF",
                                                       enumTotalizacaoRelatorio.Contar)
                    };

                    ucTotalizadorRelatorio.PreencherTabela(totalizadores);

                    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);
            }
        }