public async Task <IEnumerable <DisciplinaDto> > Handle(ObterComponentesCurricularesRegenciaPorTurmaCodigoQuery request, CancellationToken cancellationToken)
        {
            var turma = await mediator.Send(new ObterTurmaPorCodigoQuery(request.TurmaCodigo));

            if (turma == null)
            {
                throw new NegocioException("Turma não encontrada.");
            }

            var turno = turma.ModalidadeCodigo == Modalidade.Fundamental ? turma.QuantidadeDuracaoAula : 0;
            var ano   = turma.ModalidadeCodigo == Modalidade.Fundamental ? Convert.ToInt64(turma.Ano) : 0;

            var regencias = await repositorioComponenteCurricular.ObterComponentesCurricularesRegenciaPorAnoETurno(ano, turno);

            return(regencias.OrderBy(c => c.Nome));
        }
 public async Task <IEnumerable <DisciplinaDto> > Handle(ObterComponentesCurricularesRegenciaPorAnoETurnoQuery request, CancellationToken cancellationToken)
 {
     return((await repositorioComponenteCurricular.ObterComponentesCurricularesRegenciaPorAnoETurno(request.Ano, request.Turno)).OrderBy(c => c.Nome));
 }