Пример #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            // Variável para impedir execuções desecessárias da busca de SEs com filtro de categoria.
            ViewState["buscouCategorias"] = true;

            if (IsPostBack)
            {
                return;
            }

            using (var rel = new RelatorioMonitoramentotrilhas())
            {
                var ls = rel.ObterTrilhasComParticipacao();

                if (ls != null)
                {
                    WebFormHelper.PreencherLista(ls.Select(x => new { x.ID, x.Nome }).ToList(), cbxTrilha, true);
                }

                WebFormHelper.PreencherLista(
                    new List <object> {
                    new { ID = 0, Nome = "-- TSelecione um Nível da Trilha --" }
                }, cbxMonitor);
            }
        }
Пример #2
0
        protected void cbxNivelTrilha_OnSelectedIndexChanged(object sender, EventArgs e)
        {
            var idTrilha = 0;

            if (!int.TryParse(cbxTrilha.SelectedValue, out idTrilha))
            {
                return;
            }
            var idTrilhaNivel = 0;

            if (!int.TryParse(cbxNivelTrilha.SelectedValue, out idTrilhaNivel))
            {
                return;
            }

            using (var rel = new RelatorioMonitoramentotrilhas())
            {
                WebFormHelper.PreencherLista(rel.ObterMonitores(idTrilha, idTrilhaNivel), cbxMonitor, true);
            }
        }
Пример #3
0
        protected void btnPesquisar_Click(object sender, EventArgs e)
        {
            using (var rel = new RelatorioMonitoramentotrilhas())
            {
                DateTime?dataInicio;
                DateTime?dataFim;

                DateTime dataTmp;

                if (string.IsNullOrWhiteSpace(txtDataInicio.Text))
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Data inicial obrigatória");
                    return;
                }

                if (string.IsNullOrWhiteSpace(txtDataFinal.Text))
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Data final obrigatória");
                    return;
                }

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

                if (DateTime.TryParse(txtDataFinal.Text, out dataTmp))
                {
                    dataFim = dataTmp;
                }
                else
                {
                    WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Data final inválida");
                    return;
                }

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

                int idTrilha;
                int idTrilhaNivel;
                int idMonitor;
                int tipoParticipacao;

                int.TryParse(cbxTrilha.SelectedValue, out idTrilha);
                int.TryParse(cbxNivelTrilha.SelectedValue, out idTrilhaNivel);
                int.TryParse(cbxMonitor.SelectedValue, out idMonitor);
                int.TryParse(cbxTipoParticipacao.SelectedValue, out tipoParticipacao);

                var lst = rel.ConsultarMonitoramentoTrilhas(idTrilha, idTrilhaNivel, idMonitor, tipoParticipacao,
                                                            dataInicio.Value, dataFim.Value);

                var totalizadores = new List <DTOTotalizador>();

                if (lst.Any())
                {
                    // Converter os resultados em dados totalizadores.
                    totalizadores.AddRange(new List <DTOTotalizador>
                    {
                        TotalizadorUtil.GetTotalizador(lst, "Total da quantidade de Monitores", "CPF",
                                                       enumTotalizacaoRelatorio.ContarDistintos, false),
                        TotalizadorUtil.GetTotalizador(lst, "Total da quantidade de Trilhas", "IdTrilha",
                                                       enumTotalizacaoRelatorio.ContarDistintos, false),
                        TotalizadorUtil.GetTotalizador(lst, "Total da quantidade de Níveis da Trilha", "IdTrilhaNivel",
                                                       enumTotalizacaoRelatorio.ContarDistintos, false),
                    });

                    ucTotalizadorRelatorio.PreencherTabela(totalizadores);
                }
                else
                {
                    ucTotalizadorRelatorio.LimparTotalizadores();
                }

                // Insere a lista completa na sessão para não levar somente os resultados da página atual para a impressão.
                Session["dsRelatorio"] = lst;

                var resultado = SelecionarPagina();

                if (resultado.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;
                }

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