コード例 #1
0
        public async Task <IActionResult> RelatorioAnalise(int IdAnalise, int IdProjeto)
        {
            bool responsavel = _repoProjeto.VerificarResposavel(await ObterIdAsync(), IdProjeto);
            bool colaborador = _repoAnalise.VerificarColaborador(await ObterIdAsync(), IdAnalise);

            if (colaborador || responsavel)
            {
                try
                {
                    RelatorioDeAnaliseViewModel modelo = new RelatorioDeAnaliseViewModel()
                    {
                        DetalheProjeto         = await _repoProjeto.DetalhesProjeto(IdProjeto),
                        DetalheAnalise         = await _repoAnalise.DetalhesAnalise(IdAnalise),
                        Metricas               = _repoAnalise.DetalheMetricaAnalise(IdAnalise),
                        SujeitosPorExperimento = _repoAnalise.RelacaoSujeitosPorExperimento(IdAnalise),
                        SujeitosPorgrupo       = _grupoRepo.ObterQtdSujeitosPorGrupo(IdAnalise)
                    };
                    return(View(modelo));
                }
                catch (Exception ex)
                {
                    _logger.LogError($"Erro ao executar solicitação de relatório Projeto {IdProjeto}, Análise {IdAnalise} : execute : {ex.Message}");
                    throw;
                }
            }
            return(StatusCode(203));
        }