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; }
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); } }
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); } }
public PendenciaRegistroIndividualAluno(long codigoAluno, PendenciaRegistroIndividual pendenciaRegistroIndividual) { SetCodigoAluno(codigoAluno); SetPendenciaRegistroIndividual(pendenciaRegistroIndividual); Situacao = SituacaoPendenciaRegistroIndividualAluno.Pendente; }