public async Task <bool> Executar(long?turmaId, long?componenteCurricularId) { FiltroObterCursosCadastradosDto filtro = new FiltroObterCursosCadastradosDto { TurmaId = turmaId, ComponenteCurricularId = componenteCurricularId, PaginaNumero = 1, RegistrosQuantidade = 500000 }; var cursosCadastrados = await obterCursosCadastradosUseCase.Executar(filtro); foreach (var cursoGoogle in cursosCadastrados.Items) { try { var alunosCurso = await obterCursosAlunosParaIncluirGoogleUseCase.Executar(cursoGoogle.TurmaId, cursoGoogle.ComponenteCurricularId); foreach (var aluno in alunosCurso) { var alunoDto = new AtribuirAlunoCursoDto { CodigoAluno = aluno.CodigoAluno, TurmaId = aluno.TurmaId, ComponenteCurricularId = aluno.ComponenteCurricularId }; await enviarRequisicaoAtribuirAlunoCursoUseCase.Executar(alunoDto); } } catch (Exception ex) { throw new ArgumentException($"Erro ao enviar a atualização de alunos do curso: [ID:{cursoGoogle.Id}] - Nome:{cursoGoogle.Nome} -- Erro:{ex.Message} -- {ex.StackTrace}."); } } return(true); }
public async Task <IActionResult> EnviarRequisicaoAtribuirAlunoCurso([FromBody] AtribuirAlunoCursoDto atribuirAlunoCurso, [FromServices] IEnviarRequisicaoAtribuirAlunoCursoUseCase atribuirAlunoCursoUseCase) { var retorno = await atribuirAlunoCursoUseCase.Executar(atribuirAlunoCurso); return(Ok(retorno)); }