Ejemplo n.º 1
0
        private static async Task ConfirmarLeituraTurma(IMediator mediator, UsuarioNotificacaoDto usuarioMensagem, string cpfUsuario, IEnumerable <ListaEscola> listaEscolas, NotificacaoResposta notificacao)
        {
            List <Dominio.Entidades.Aluno> alunos = new List <Dominio.Entidades.Aluno>();

            listaEscolas.ForEach(x =>
            {
                var alunosturma = x.Alunos.Where(z => notificacao.Turmas.Any(y => y.CodigoTurma.Equals(z.CodigoTurma.ToString())));

                if (alunosturma != null && alunosturma.Any())
                {
                    alunos.AddRange(alunosturma);
                }
            });

            if (alunos == null || !alunos.Any())
            {
                throw new NegocioException("Nenhum Aluno está matriculado na turma notificada");
            }

            foreach (var aluno in alunos)
            {
                await ConfirmarLeitura(mediator, usuarioMensagem, cpfUsuario, aluno);
            }
        }
Ejemplo n.º 2
0
        private static async Task ConfirmarLeituraSME(IMediator mediator, UsuarioNotificacaoDto usuarioMensagem, string cpfUsuario, IEnumerable <ListaEscola> listaEscolas, NotificacaoResposta notificacao)
        {
            List <Dominio.Entidades.Aluno> alunos = new List <Dominio.Entidades.Aluno>();

            listaEscolas.ForEach(escola =>
            {
                var alunosAdicionar = notificacao.GruposId.Any(grupo => grupo.Equals(escola.CodigoGrupo.ToString())) ? escola.Alunos : default;

                if (alunosAdicionar == null || !alunosAdicionar.Any())
                {
                    return;
                }

                alunos.AddRange(alunosAdicionar);
            });

            if (alunos == null || !alunos.Any())
            {
                throw new NegocioException("Nenhum aluno deste usuário está matriculado no grupo desta Notificação");
            }

            foreach (var aluno in alunos)
            {
                await ConfirmarLeitura(mediator, usuarioMensagem, cpfUsuario, aluno);
            }
        }
Ejemplo n.º 3
0
        private static async Task ConfirmarLeituraUEMOD(IMediator mediator, UsuarioNotificacaoDto usuarioMensagem, string cpfUsuario, IEnumerable <ListaEscola> listaEscolas, NotificacaoResposta notificacao)
        {
            List <Dominio.Entidades.Aluno> alunos = new List <Dominio.Entidades.Aluno>();

            listaEscolas.ForEach(escola =>
            {
                if (notificacao.GruposId != null && notificacao.GruposId.Length > 0 && !notificacao.GruposId.Any(grupo => grupo.Equals(escola.CodigoGrupo.ToString())))
                {
                    return;
                }

                var alunosEscolaMod = escola.Alunos.Where(aluno => aluno.CodigoEscola.Equals(notificacao.CodigoUe.ToString()));

                if (alunosEscolaMod == null || !alunosEscolaMod.Any())
                {
                    return;
                }

                alunos.AddRange(alunosEscolaMod);
            });

            if (alunos == null || !alunos.Any())
            {
                throw new NegocioException("Nenhum Aluno está matriculado na modalidade da escola da notificação");
            }

            foreach (var aluno in alunos)
            {
                await ConfirmarLeitura(mediator, usuarioMensagem, cpfUsuario, aluno);
            }
        }
Ejemplo n.º 4
0
        private static async Task ConfirmarLeituraUE(IMediator mediator, UsuarioNotificacaoDto usuarioMensagem, string cpfUsuario, IEnumerable <ListaEscola> listaEscolas, NotificacaoResposta notificacao)
        {
            List <Dominio.Entidades.Aluno> alunos = new List <Dominio.Entidades.Aluno>();

            listaEscolas.ForEach(escola =>
            {
                var alunosAdicionar = escola.Alunos.Where(x => x.CodigoEscola.Equals(notificacao.CodigoUe.ToString()));

                if (alunosAdicionar == null || !alunosAdicionar.Any())
                {
                    return;
                }

                alunos.AddRange(alunosAdicionar);
            });

            if (alunos == null || !alunos.Any())
            {
                throw new NegocioException("Nenhum Aluno está matriculado na escola da notificação");
            }

            foreach (var aluno in alunos)
            {
                await ConfirmarLeitura(mediator, usuarioMensagem, cpfUsuario, aluno);
            }
        }
        private static async Task ConfirmarLeituraSME_ANO(IMediator mediator, UsuarioNotificacaoDto usuarioMensagem, string cpfUsuario, IEnumerable <ListaEscola> listaEscolas, NotificacaoResposta notificacao)
        {
            var seriesResumidas           = notificacao.SeriesResumidas.ToStringEnumerable();
            var seriesResumidasNaoExistem = !seriesResumidas.Any();
            var alunos =
                listaEscolas
                .Where(escola => notificacao.ModalidadesId.Contains(escola.ModalidadeCodigo.ToString()))
                .SelectMany(escola => escola.Alunos)
                .Where(alunos => (seriesResumidasNaoExistem || seriesResumidas.Contains(alunos.SerieResumida)));

            if (alunos == null || !alunos.Any())
            {
                throw new NegocioException("Nenhum aluno deste usuário está matriculado no grupo/ano desta Notificação");
            }

            foreach (var aluno in alunos)
            {
                await ConfirmarLeitura(mediator, usuarioMensagem, cpfUsuario, aluno);
            }
        }