private async Task <ConselhoClasseAluno> MapearParaEntidade(ConselhoClasseAlunoAnotacoesDto conselhoClasseAlunoDto)
        {
            var conselhoClasseAluno = await consultasConselhoClasseAluno.ObterPorConselhoClasseAsync(conselhoClasseAlunoDto.ConselhoClasseId, conselhoClasseAlunoDto.AlunoCodigo);

            if (conselhoClasseAluno == null)
            {
                ConselhoClasse conselhoClasse = conselhoClasseAlunoDto.ConselhoClasseId == 0 ?
                                                new ConselhoClasse()
                {
                    FechamentoTurmaId = conselhoClasseAlunoDto.FechamentoTurmaId
                } :
                consultasConselhoClasse.ObterPorId(conselhoClasseAlunoDto.ConselhoClasseId);

                conselhoClasseAluno = new ConselhoClasseAluno()
                {
                    ConselhoClasse   = conselhoClasse,
                    ConselhoClasseId = conselhoClasse.Id,
                    AlunoCodigo      = conselhoClasseAlunoDto.AlunoCodigo
                };
            }

            conselhoClasseAluno.AnotacoesPedagogicas = conselhoClasseAlunoDto.AnotacoesPedagogicas;
            conselhoClasseAluno.RecomendacoesAluno   = conselhoClasseAlunoDto.RecomendacaoAluno;
            conselhoClasseAluno.RecomendacoesFamilia = conselhoClasseAlunoDto.RecomendacaoFamilia;

            return(conselhoClasseAluno);
        }
Ejemplo n.º 2
0
        private async Task <ConselhoClasseAluno> ObterConselhoClasseAluno(long conselhoClasseId, long fechamentoTurmaId, string alunoCodigo)
        {
            ConselhoClasseAluno conselhoClasseAluno = await repositorioConselhoClasseAluno.ObterPorConselhoClasseAlunoCodigoAsync(conselhoClasseId, alunoCodigo);

            if (conselhoClasseAluno == null)
            {
                ConselhoClasse conselhoClasse = null;
                if (conselhoClasseId == 0)
                {
                    conselhoClasse = new ConselhoClasse()
                    {
                        FechamentoTurmaId = fechamentoTurmaId
                    };
                    await repositorioConselhoClasse.SalvarAsync(conselhoClasse);
                }
                else
                {
                    conselhoClasse = repositorioConselhoClasse.ObterPorId(conselhoClasseId);
                }

                conselhoClasseAluno = new ConselhoClasseAluno()
                {
                    AlunoCodigo = alunoCodigo, ConselhoClasse = conselhoClasse, ConselhoClasseId = conselhoClasse.Id
                };
                await repositorioConselhoClasseAluno.SalvarAsync(conselhoClasseAluno);
            }
            conselhoClasseAluno.ConselhoClasse.FechamentoTurma = await ObterFechamentoTurma(fechamentoTurmaId);

            return(conselhoClasseAluno);
        }
Ejemplo n.º 3
0
        private async Task <long> SalvarConselhoClasseAlunoResumido(long conselhoClasseId, string alunoCodigo)
        {
            var conselhoClasseAluno = new ConselhoClasseAluno()
            {
                AlunoCodigo      = alunoCodigo,
                ConselhoClasseId = conselhoClasseId
            };

            return(await repositorioConselhoClasseAluno.SalvarAsync(conselhoClasseAluno));
        }
Ejemplo n.º 4
0
        public async Task <AuditoriaConselhoClasseAlunoDto> SalvarConselhoClasseAluno(ConselhoClasseAluno conselhoClasseAluno)
        {
            var fechamentoTurma = await ObterFechamentoTurma(conselhoClasseAluno.ConselhoClasse.FechamentoTurmaId);

            if (!await VerificaNotasTodosComponentesCurriculares(conselhoClasseAluno.AlunoCodigo, fechamentoTurma.Turma, fechamentoTurma.PeriodoEscolarId))
            {
                throw new NegocioException("É necessário que todos os componentes tenham nota/conceito informados!");
            }

            // Se não existir conselho de classe para o fechamento gera
            if (conselhoClasseAluno.ConselhoClasse.Id == 0)
            {
                await GerarConselhoClasse(conselhoClasseAluno.ConselhoClasse, fechamentoTurma);

                conselhoClasseAluno.ConselhoClasseId = conselhoClasseAluno.ConselhoClasse.Id;
            }
            else
            {
                await repositorioConselhoClasse.SalvarAsync(conselhoClasseAluno.ConselhoClasse);
            }

            await repositorioConselhoClasseAluno.SalvarAsync(conselhoClasseAluno);

            return((AuditoriaConselhoClasseAlunoDto)conselhoClasseAluno);
        }
Ejemplo n.º 5
0
 private ConsultasConselhoClasseRecomendacaoConsultaDto TransformaEntidadeEmConsultaDto(ConselhoClasseAluno conselhoClasseAluno,
                                                                                        IEnumerable <FechamentoAlunoAnotacaoConselhoDto> anotacoesAluno, bool emFechamento)
 {
     return(new ConsultasConselhoClasseRecomendacaoConsultaDto()
     {
         RecomendacaoAluno = conselhoClasseAluno.RecomendacoesAluno,
         RecomendacaoFamilia = conselhoClasseAluno.RecomendacoesFamilia,
         AnotacoesAluno = anotacoesAluno,
         AnotacoesPedagogicas = conselhoClasseAluno.AnotacoesPedagogicas,
         SomenteLeitura = !emFechamento,
         Auditoria = (AuditoriaDto)conselhoClasseAluno
     });
 }
Ejemplo n.º 6
0
        private async Task <ConsultasConselhoClasseRecomendacaoConsultaDto> ObterRecomendacoesIniciais(ConselhoClasseAluno conselhoClasseAluno, IEnumerable <FechamentoAlunoAnotacaoConselhoDto> anotacoesAluno, bool emFechamento)
        {
            (string recomendacoesAluno, string recomendacoesFamilia)recomendacoes = (string.Empty, string.Empty);
            if (conselhoClasseAluno == null || string.IsNullOrEmpty(conselhoClasseAluno?.RecomendacoesAluno) || string.IsNullOrEmpty(conselhoClasseAluno?.RecomendacoesFamilia))
            {
                recomendacoes = await mediator.Send(new ObterTextoRecomendacoesAlunoFamiliaQuery());
            }

            return(new ConsultasConselhoClasseRecomendacaoConsultaDto()
            {
                RecomendacaoAluno = conselhoClasseAluno?.RecomendacoesAluno ?? recomendacoes.recomendacoesAluno,
                RecomendacaoFamilia = conselhoClasseAluno?.RecomendacoesFamilia ?? recomendacoes.recomendacoesFamilia,
                AnotacoesAluno = anotacoesAluno,
                SomenteLeitura = !emFechamento,
                Auditoria = conselhoClasseAluno != null ? (AuditoriaDto)conselhoClasseAluno : null
            });
        }