public async Task <IEnumerable <AbrangenciaDreRetorno> > ObterDres() { var loginAtual = servicoUsuario.ObterLoginAtual(); var perfilAtual = servicoUsuario.ObterPerfilAtual(); if (perfilAtual == Perfis.PERFIL_CJ) { var codigosDres = new List <string>(); ObterAtribuicoesCjDre(loginAtual, codigosDres); ObterAtribuicoesEsporadicasDre(loginAtual, codigosDres); await ObterAtribuicoesEolDre(loginAtual, codigosDres); var dres = repositorioDre.ListarPorCodigos(codigosDres.Distinct().ToArray()); if (dres != null && dres.Any()) { return(TransformarDresEmDresDto(dres)); } else { return(null); } } else { return(await consultasAbrangencia.ObterDres(null, 0)); } }
private async Task ValidarAbrangenciaDre(ComunicadoDto filtroDto) { var abrangenciaDres = await consultasAbrangencia.ObterDres(null); var dre = abrangenciaDres.FirstOrDefault(x => x.Codigo.Equals(filtroDto.CodigoDre)); if (dre == null) { throw new NegocioException($"Usuário não possui permissão para visualizar comunicados da DRE com codigo {filtroDto.CodigoDre}"); } }
public async Task <IActionResult> ObterDres([FromQuery] Modalidade?modalidade, [FromQuery] int periodo = 0, [FromQuery] int anoLetivo = 0) { var dres = await consultasAbrangencia.ObterDres(modalidade, periodo, ConsideraHistorico, anoLetivo); if (dres.Any()) { return(Ok(dres)); } return(StatusCode(204)); }
private async Task ValidarAbrangenciaDre(SolicitarInclusaoComunicadoEscolaAquiCommand comunicado) { var abrangenciaDres = await _consultasAbrangencia.ObterDres(null); var dre = abrangenciaDres.FirstOrDefault(x => x.Codigo.Equals(comunicado.CodigoDre)); if (dre == null) { throw new NegocioException($"Usuário não possui permissão para enviar comunicados para a DRE com codigo {comunicado.CodigoDre}"); } }
public async Task <IActionResult> ObterDres([FromQuery] Modalidade?modalidade) { var dres = await consultasAbrangencia.ObterDres(modalidade); if (dres.Any()) { return(Ok(dres)); } else { return(StatusCode(204)); } }