示例#1
0
        private void SetPendenciaRegistroIndividual(PendenciaRegistroIndividual pendenciaRegistroIndividual)
        {
            if (pendenciaRegistroIndividual is null)
            {
                throw new NegocioException("A pendência de registro individual deve ser informada.");
            }

            PendenciaRegistroIndividual   = pendenciaRegistroIndividual;
            PendenciaRegistroIndividualId = pendenciaRegistroIndividual.Id;
        }
示例#2
0
        private async Task AdicionarPendenciaRegistroIndividualAsync(Pendencia pendencia, Turma turma, IEnumerable <AlunoPorTurmaResposta> alunosTurmaComAusenciaRegistroIndividualPorDias)
        {
            var pendenciaRegistroIndividual = new PendenciaRegistroIndividual(pendencia, turma);

            pendenciaRegistroIndividual.Id = await repositorioPendenciaRegistroIndividual.SalvarAsync(pendenciaRegistroIndividual);

            var codigosDosAlunos = alunosTurmaComAusenciaRegistroIndividualPorDias.Select(x => long.Parse(x.CodigoAluno));

            pendenciaRegistroIndividual.AdicionarAlunos(codigosDosAlunos);

            foreach (var pendenciaRegistroIndividualAluno in pendenciaRegistroIndividual.Alunos)
            {
                pendenciaRegistroIndividualAluno.Id = await repositorioPendenciaRegistroIndividualAluno.SalvarAsync(pendenciaRegistroIndividualAluno);
            }
        }
示例#3
0
        private async Task AlterarPendenciaAusenciaRegistroIndividualAsync(PendenciaRegistroIndividual pendenciaRegistroIndividual, IEnumerable <AlunoPorTurmaResposta> alunosTurmaComAusenciaRegistroIndividualPorDias)
        {
            var alunosParaSeremAdicionadosNaPendencia = alunosTurmaComAusenciaRegistroIndividualPorDias
                                                        .Where(x => !pendenciaRegistroIndividual.Alunos.Any(y => y.CodigoAluno.ToString() == x.CodigoAluno && y.Situacao == SituacaoPendenciaRegistroIndividualAluno.Pendente))
                                                        .ToList();

            if (!alunosParaSeremAdicionadosNaPendencia.Any())
            {
                return;
            }

            var codigosDosAlunos = alunosParaSeremAdicionadosNaPendencia.Select(x => long.Parse(x.CodigoAluno));

            pendenciaRegistroIndividual.AdicionarAlunos(codigosDosAlunos);

            foreach (var codigoAluno in codigosDosAlunos)
            {
                var pendenciaRegistroIndividualAluno = pendenciaRegistroIndividual.Alunos.First(x => x.CodigoAluno == codigoAluno);
                pendenciaRegistroIndividualAluno.Id = await repositorioPendenciaRegistroIndividualAluno.SalvarAsync(pendenciaRegistroIndividualAluno);
            }
        }
示例#4
0
 public PendenciaRegistroIndividualAluno(long codigoAluno, PendenciaRegistroIndividual pendenciaRegistroIndividual)
 {
     SetCodigoAluno(codigoAluno);
     SetPendenciaRegistroIndividual(pendenciaRegistroIndividual);
     Situacao = SituacaoPendenciaRegistroIndividualAluno.Pendente;
 }