public IQueryResult Handle(BuscarAlunoTurmaQuery command)
        {
            command.Validate();

            if (command.Invalid)
            {
                return(new GenericQueryResult(false, "Dados inválidos", command.Notifications));
            }

            var procurarAlunoTurma = _repositorio.BuscarAlunoTurmaPorId(command.Id);

            if (procurarAlunoTurma == null)
            {
                return(new GenericQueryResult(false, "Aluno turma não encontrado", null));
            }

            var aluno = _repositorioAluno.BuscarPorId(procurarAlunoTurma.IdAluno);

            var turma = _repositorioTurma.BuscarTurmaPorId(procurarAlunoTurma.IdTurma);

            var result = new BuscarAlunoTurmaResult
            {
                Id    = procurarAlunoTurma.Id,
                Aluno = new BuscarAlunoResult
                {
                    Id          = aluno.Id,
                    NomeUsuario = aluno.NomeUsuario,
                    Email       = aluno.Email,
                    Telefone    = aluno.Telefone,
                    Rg          = aluno.Rg,
                    FotoAluno   = aluno.FotoAluno
                },
                Turma = new BuscarTurmaResult
                {
                    Id        = turma.Id,
                    Titulo    = turma.Titulo,
                    Descricao = turma.Descricao,
                    Semestre  = turma.Semestre.ToString(),
                    Horarios  = turma.Horarios.Select(hrr =>

                                                      new ListarHorarioResult()
                    {
                        Id          = hrr.Id,
                        DiaSemana   = hrr.DiaSemana.ToString(),
                        HoraInicio  = hrr.HoraInicio,
                        HoraTermino = hrr.HoraTermino
                    }

                                                      ).ToList()
                },
                Anotacao = procurarAlunoTurma.AnotacaoProfessor
            };

            return(new GenericQueryResult(true, "Dados do aluno turma", result));
        }
        public ICommandResult Handler(ExcluirAlunoTurmaCommand command)
        {
            command.Validar();

            if (command.Invalid)
            {
                return(new GenericCommandResult(false, "Dados Inválidos!", command.Notifications));
            }

            var AlunoTurma = _repositorio.BuscarAlunoTurmaPorId(command.Id);

            if (AlunoTurma == null)
            {
                return(new GenericCommandResult(true, "Turma do Aluno não encontrada", null));
            }

            _repositorio.ExcluirAlunoTurma(AlunoTurma);

            return(new GenericCommandResult(true, "Turma do aluno excluida com sucesso", AlunoTurma));
        }
Exemplo n.º 3
0
        public ICommandResult Handler(AlterarAlunoTurmaCommand command)
        {
            command.Validar();

            if (command.Invalid)
            {
                return(new GenericCommandResult(false, "Dados Inválidos!", command.Notifications));
            }

            var AlunoTurma = _repositorio.BuscarAlunoTurmaPorId(command.Id);

            if (AlunoTurma == null)
            {
                return(new GenericCommandResult(true, "Turma do Aluno não encontrada", null));
            }

            var Aluno = _repositorioAluno.BuscarPorId(command.IdAluno);

            if (Aluno == null)
            {
                return(new GenericCommandResult(false, "Aluno não encontrado", null));
            }

            var turma = _repositorioTurma.BuscarTurmaPorId(command.IdTurma);

            if (turma == null)
            {
                return(new GenericCommandResult(false, "Turma não encontrada", null));
            }

            AlunoTurma.AlterarAlunoTurma(command.IdTurma, command.IdAluno, command.AnotacaoProfessor);

            if (AlunoTurma.Valid)
            {
                _repositorio.AlterarAlunoTurma(AlunoTurma);
            }

            return(new GenericCommandResult(true, "Turma do Aluno", AlunoTurma));
        }