/// <summary> /// Carrega a estrutura do relatório /// </summary> /// <param name="rea_id"></param> /// <param name="usu_id"></param> /// <param name="appMinutosCacheLongo"></param> /// <returns></returns> public static RelatorioAtendimento SelecionaRelatorio(int rea_id, Guid usu_id, int appMinutosCacheLongo = 0) { Func <RelatorioAtendimento> retorno = delegate() { RelatorioAtendimento rel = new RelatorioAtendimento(); using (DataSet ds = new CLS_RelatorioAtendimentoDAO().SelecionaRelatorio(rea_id, usu_id)) { using (DataTable dtRelatorio = ds.Tables[0], dtGrupoPermissao = ds.Tables[1], dtCargoPermissao = ds.Tables[2], dtQuestionario = ds.Tables[3], dtQuestionarioConteudo = ds.Tables[4], dtQuestionarioResposta = ds.Tables[5]) { if (dtRelatorio.Rows.Count > 0) { rel = dtRelatorio.Rows[0].ToEntity <RelatorioAtendimento>(); rel.lstGrupoPermissao = dtGrupoPermissao.ToEntityList <CLS_RelatorioAtendimentoGrupo>(); rel.lstCargoPermissao = dtCargoPermissao.ToEntityList <CLS_RelatorioAtendimentoCargo>(); List <Questionario> lstQuestionario = dtQuestionario.ToEntityList <Questionario>(); List <QuestionarioConteudo> lstQuestionarioConteudo = dtQuestionarioConteudo.ToEntityList <QuestionarioConteudo>(); List <CLS_QuestionarioResposta> lstQuestionarioResposta = dtQuestionarioResposta.ToEntityList <CLS_QuestionarioResposta>(); lstQuestionarioConteudo.ForEach(c => c.lstRepostas = lstQuestionarioResposta.Where(r => r.qtc_id == c.qtc_id).OrderBy(r => r.qtr_ordem).ToList()); lstQuestionario.ForEach(q => q.lstConteudo = lstQuestionarioConteudo.Where(c => c.qst_id == q.qst_id).OrderBy(c => c.qtc_ordem).ToList()); rel.lstQuestionario = lstQuestionario.OrderBy(q => q.raq_ordem).ToList(); } return(rel); } } }; return(CacheManager.Factory.Get ( string.Format(ModelCache.RELATORIO_ATENDIMENTO_BUSCA_ESTRUTURA_RELATORIO_KEY, rea_id, usu_id) , retorno , appMinutosCacheLongo )); }
private void UCCRelatorioAtendimento_IndexChanged() { if (UCCRelatorioAtendimento.Valor > 0) { try { // Desabilita o combo UCCRelatorioAtendimento.PermiteEditar = false; litLancamento.Text = UCCRelatorioAtendimento.Texto; // Seleciona as permissões do usuário no relatório MSTech.GestaoEscolar.BLL.RelatorioAtendimento relatorioAtendimento = CLS_RelatorioAtendimentoBO.SelecionaRelatorio(UCCRelatorioAtendimento.Valor, __SessionWEB.__UsuarioWEB.Usuario.usu_id, ApplicationWEB.AppMinutosCacheLongo); sPermissoesNAAPA permissoesNaapa = new sPermissoesNAAPA(); permissoesNaapa.permissaoEdicao = relatorioAtendimento.lstCargoPermissao.Any(p => p.rac_permissaoEdicao) || relatorioAtendimento.lstGrupoPermissao.Any(p => p.rag_permissaoEdicao); permissoesNaapa.permissaoConsulta = relatorioAtendimento.lstCargoPermissao.Any(p => p.rac_permissaoConsulta) || relatorioAtendimento.lstGrupoPermissao.Any(p => p.rag_permissaoConsulta) || permissoesNaapa.permissaoEdicao; permissoesNaapa.permissaoExclusao = relatorioAtendimento.lstCargoPermissao.Any(p => p.rac_permissaoExclusao) || relatorioAtendimento.lstGrupoPermissao.Any(p => p.rag_permissaoExclusao); VS_permissoesNAAPA = permissoesNaapa; SetarTelaPermissao(); grvLancamentos.DataSource = CLS_RelatorioPreenchimentoAlunoTurmaDisciplinaBO.SelecionaPorAlunoTurmaRelatorio(VS_alu_id, VS_tur_id, UCCRelatorioAtendimento.Valor); grvLancamentos.DataBind(); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); lblMensagem.Text = UtilBO.GetErroMessage("Erro ao tentar carregar lançamentos.", UtilBO.TipoMensagem.Erro); } } else { fdsLancamento.Visible = false; btnNovo.Visible = false; } }
private void UCCRelatorioAtendimento_IndexChanged() { if (UCCRelatorioAtendimento.Valor > 0) { try { CLS_RelatorioAtendimento relatorio = CLS_RelatorioAtendimentoBO.GetEntity(new CLS_RelatorioAtendimento { rea_id = UCCRelatorioAtendimento.Valor }); // Seleciona as permissões do usuário no relatório MSTech.GestaoEscolar.BLL.RelatorioAtendimento relatorioAtendimento = CLS_RelatorioAtendimentoBO.SelecionaRelatorio(relatorio.rea_id, __SessionWEB.__UsuarioWEB.Usuario.usu_id, ApplicationWEB.AppMinutosCacheLongo); sPermissoesRP permissoesRP = new sPermissoesRP(); permissoesRP.permissaoEdicao = relatorioAtendimento.lstCargoPermissao.Any(p => p.rac_permissaoEdicao) || relatorioAtendimento.lstGrupoPermissao.Any(p => p.rag_permissaoEdicao); permissoesRP.permissaoConsulta = relatorioAtendimento.lstCargoPermissao.Any(p => p.rac_permissaoConsulta) || relatorioAtendimento.lstGrupoPermissao.Any(p => p.rag_permissaoConsulta) || permissoesRP.permissaoEdicao; permissoesRP.permissaoExclusao = relatorioAtendimento.lstCargoPermissao.Any(p => p.rac_permissaoExclusao) || relatorioAtendimento.lstGrupoPermissao.Any(p => p.rag_permissaoExclusao); VS_permissoesRP = permissoesRP; VS_periodicidadePreenchimento = relatorio.rea_periodicidadePreenchimento; //SetarTelaPermissao(); long tur_id, tud_id; RetornaTurTudIDCombo(out tur_id, out tud_id); if (VS_periodicidadePreenchimento == (byte)CLS_RelatorioAtendimentoPeriodicidade.Periodico) { // Carrega o combo de períodos do calendário UCCPeriodoCalendario.CarregarPorTurma(tur_id); } else { UCCPeriodoCalendario.CarregarPorRelatorioAtendimento(UCCRelatorioAtendimento.Valor, tur_id); } UCCPeriodoCalendario.Visible = true; UCCPeriodoCalendario.PermiteEditar = true; if (VS_Tpc_id_TelaAnterior > 0 && UCCPeriodoCalendario.QuantidadeItensCombo > 1) { UCCPeriodoCalendario.Tpc_ID = VS_Tpc_id_TelaAnterior; } // Desabilita o combo UCCRelatorioAtendimento.PermiteEditar = (UCCPeriodoCalendario.QuantidadeItensCombo <= 1); UCCPeriodoCalendario_IndexChanged(); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); lblMensagem.Text = UtilBO.GetErroMessage("Erro ao tentar carregar anotações.", UtilBO.TipoMensagem.Erro); } } else { fdsLancamento.Visible = false; btnNovo.Visible = false; } }