public async Task Salvar(NotaConceitoListaDto notaConceitoLista)
        {
            var notasConceitosDto = notaConceitoLista.NotasConceitos;

            var alunos = notasConceitosDto.Select(x => x.AlunoId).ToList();

            var avaliacoes = notasConceitosDto.Select(x => x.AtividadeAvaliativaId).ToList();

            var notasBanco = repositorioNotasConceitos.ObterNotasPorAlunosAtividadesAvaliativas(avaliacoes, alunos, notaConceitoLista.DisciplinaId);

            var professorRf = servicoUsuario.ObterRf();

            if (notasBanco == null || !notasBanco.Any())
            {
                await IncluirTodasNotas(notasConceitosDto, professorRf, notaConceitoLista.TurmaId, notaConceitoLista.DisciplinaId);
            }
            else
            {
                await TratarInclusaoEdicaoNotas(notasConceitosDto, notasBanco, professorRf, notaConceitoLista.TurmaId, notaConceitoLista.DisciplinaId);
            }


            var atividadeAvaliativa = await repositorioAtividadeAvaliativa.ObterPorIdAsync(notasConceitosDto.Select(x => x.AtividadeAvaliativaId).FirstOrDefault());

            var aula = await mediator.Send(new ObterAulaPorComponenteCurricularIdTurmaIdEDataQuery(notaConceitoLista.DisciplinaId, notaConceitoLista.TurmaId, atividadeAvaliativa.DataAvaliacao));

            if (aula != null)
            {
                await mediator.Send(new ExcluirPendenciaAulaCommand(aula.Id, TipoPendencia.Avaliacao));
            }
        }
Exemplo n.º 2
0
        public async Task Salvar(NotaConceitoListaDto notaConceitoLista)
        {
            var notasConceitosDto = notaConceitoLista.NotasConceitos;

            var alunos = notasConceitosDto.Select(x => x.AlunoId).ToList();

            var avaliacoes = notasConceitosDto.Select(x => x.AtividadeAvaliativaId).ToList();

            var notasBanco = repositorioNotasConceitos.ObterNotasPorAlunosAtividadesAvaliativas(avaliacoes, alunos, notaConceitoLista.DisciplinaId);

            var professorRf = servicoUsuario.ObterRf();

            var notasSalvar = new List <NotaConceito>();

            if (notasBanco == null || !notasBanco.Any())
            {
                await IncluirTodasNotas(notasConceitosDto, notasSalvar, professorRf, notaConceitoLista.TurmaId, notaConceitoLista.DisciplinaId);
            }
            else
            {
                await TratarInclusaoEdicaoNotas(notasConceitosDto, notasBanco, notasSalvar, professorRf, notaConceitoLista.TurmaId, notaConceitoLista.DisciplinaId);
            }
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Post([FromBody] NotaConceitoListaDto notaConceitoListaDto, [FromServices] IComandosNotasConceitos comandosNotasConceitos)
        {
            await comandosNotasConceitos.Salvar(notaConceitoListaDto);

            return(Ok());
        }