コード例 #1
0
        public async Task <IEnumerable <ObjetivoAprendizagemDto> > Filtrar(FiltroObjetivosAprendizagemDto filtroObjetivosAprendizagemDto)
        {
            IEnumerable <ObjetivoAprendizagemDto> objetivos = await Listar();

            IEnumerable <long> componentesJurema = ObterComponentesJuremaPorIdEOL(filtroObjetivosAprendizagemDto.ComponentesCurricularesIds);

            IEnumerable <ObjetivoAprendizagemDto> result = null;

            if (filtroObjetivosAprendizagemDto.ComponentesCurricularesIds.Contains(138))
            {
                result = objetivos?.Where(c => c.IdComponenteCurricular == (filtroObjetivosAprendizagemDto.EnsinoEspecial ? 11 : 6));
            }
            else
            {
                result = objetivos?.Where(c => componentesJurema.Contains(c.IdComponenteCurricular));
            }

            var listResult = result.ToList();

            foreach (var item in listResult)
            {
                item.ComponenteCurricularEolId = filtroObjetivosAprendizagemDto.ComponentesCurricularesIds.FirstOrDefault();
            }

            IEnumerable <int> anos = Enumerable.Range(1, 9);

            if (filtroObjetivosAprendizagemDto.EnsinoEspecial && !anos.Select(a => a.ToString()).Contains(filtroObjetivosAprendizagemDto.Ano))
            {
                return(listResult.OrderBy(o => o.Ano).ThenBy(x => x.Codigo));
            }

            listResult = listResult.Where(x => x.Ano == filtroObjetivosAprendizagemDto.Ano).ToList();
            return(listResult.OrderBy(o => o.Codigo));
        }
コード例 #2
0
        public async Task <IEnumerable <ObjetivoAprendizagemDto> > Filtrar(FiltroObjetivosAprendizagemDto filtroObjetivosAprendizagemDto)
        {
            var objetivos = await Listar();

            var componentesJurema = ObterComponentesJuremaPorIdEOL(filtroObjetivosAprendizagemDto.ComponentesCurricularesIds);

            return(objetivos?
                   .Where(c => componentesJurema.Contains(c.IdComponenteCurricular) &&
                          c.Ano == filtroObjetivosAprendizagemDto.Ano));
        }
コード例 #3
0
        public void Deve_Consultar_Objetivos_Aprendizagem()
        {
            _fixture._clientApi.DefaultRequestHeaders.Clear();

            _fixture._clientApi.DefaultRequestHeaders.Authorization =
                new AuthenticationHeaderValue("Bearer", _fixture.GerarToken(new Permissao[] { Permissao.PA_C, Permissao.PA_A, Permissao.PA_I, Permissao.PA_E }));

            var filtros = new FiltroObjetivosAprendizagemDto();

            filtros.ComponentesCurricularesIds.Add(139);
            filtros.Ano = "3";

            var jsonParaPost = new StringContent(TransformarEmJson(filtros), UnicodeEncoding.UTF8, "application/json");

            var getResult = _fixture._clientApi.PostAsync("api/v1/objetivos-aprendizagem/", jsonParaPost).Result;

            Assert.True(getResult.IsSuccessStatusCode);
            var disciplinas = JsonConvert.DeserializeObject <IEnumerable <ObjetivoAprendizagemDto> >(getResult.Content.ReadAsStringAsync().Result);

            Assert.True(disciplinas != null);
        }
コード例 #4
0
 public async Task <IActionResult> Filtrar([FromBody] FiltroObjetivosAprendizagemDto filtroObjetivosAprendizagemDto)
 {
     return(Ok(await consultasObjetivoAprendizagem.Filtrar(filtroObjetivosAprendizagemDto)));
 }