示例#1
0
        public IActionResult Put(Guid id, [FromBody] ProfessoresAlunosTurma professoresAlunosTurma)
        {
            try
            {
                _turmaRepository.Editar(id, professoresAlunosTurma);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message + ". Envie um email para a nossa equipe de suporte: [email protected]"));
            }
        }
        public void Editar(Guid id, ProfessoresAlunosTurma professoresAlunosTurma)
        {
            try
            {
                Turma turmaAlterar = BuscarPorId(id);

                if (turmaAlterar == null)
                {
                    throw new Exception("Impossível alterar Turma pois faltam dados.");
                }

                //ANTES DE ADICIONAR OS NOVOS OBJETOS PRIMEIRO REMOVEMOS OS JÁ EXISTENTES

                /*turmaAlterar.ProfessoresTurmas.Clear();
                 * turmaAlterar.AlunosTurmas.Clear();
                 *
                 * turmaAlterar.AlunosTurmas.AddRange(professoresAlunosTurma.alunos);
                 * turmaAlterar.ProfessoresTurmas.AddRange(professoresAlunosTurma.professores);*/

                /*foreach (ProfessorTurma item in professoresAlunosTurma.professores)
                 * {
                 *  turmaAlterar.ProfessoresTurmas.Add(new ProfessorTurma
                 *  {
                 *      Descricao = item.Descricao,
                 *      IdUsuario = item.IdUsuario,
                 *      IdTurma = turmaAlterar.Id
                 *  });
                 * }*/

                /*foreach (AlunoTurma item in professoresAlunosTurma.alunos)
                 * {
                 *  turmaAlterar.AlunosTurmas.Add(new AlunoTurma
                 *  {
                 *      Matricula = Guid.NewGuid().ToString(),
                 *      IdUsuario = item.IdUsuario,
                 *      IdTurma = turmaAlterar.Id
                 *  });
                 * }*/

                turmaAlterar.IdCurso   = professoresAlunosTurma.turma.IdCurso;
                turmaAlterar.Descricao = professoresAlunosTurma.turma.Descricao;

                _ctx.SaveChanges();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
示例#3
0
        public IActionResult Post([FromBody] ProfessoresAlunosTurma professoresAlunosTurma)
        {
            try
            {
                //NOVO APRENDIZADO
                //Aqui eu fiz uma classe para juntar todos os alunos, professores e a turma, mas não precisava, era só criar a turma no front, e como cada turma tem uma lista de professoresTurmas e alunosTurmas, era só ir colocando os idUsuarios e os idTurmas pra cada lista dessas. Assim, quando eu adicionasse a turma aqui, o EF Core já ia cadastrar todos os alunosTurmas e professoresTurmas automaticamente. E quando vc busca por exemplo uma turma com include AlunoTurma, vai aparecer a turma, com uma lista de alunosTurmas q incluem, no idTurma do AlunoTurma, o id da turma q vc buscou.
                _turmaRepository.Adicionar(professoresAlunosTurma);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message + ". Envie um email para a nossa equipe de suporte: [email protected]"));
            }
        }
        public void Adicionar(ProfessoresAlunosTurma professoresAlunosTurma)
        {
            try
            {
                Turma turmaJuntar = new Turma();

                foreach (ProfessorTurma item in professoresAlunosTurma.professores)
                {
                    turmaJuntar.ProfessoresTurmas.Add(new ProfessorTurma
                    {
                        Descricao = item.Descricao,
                        IdUsuario = item.IdUsuario,
                        IdTurma   = turmaJuntar.Id
                    });
                }

                foreach (AlunoTurma item in professoresAlunosTurma.alunos)
                {
                    turmaJuntar.AlunosTurmas.Add(new AlunoTurma
                    {
                        Matricula = Guid.NewGuid().ToString(),
                        IdUsuario = item.IdUsuario,
                        IdTurma   = turmaJuntar.Id
                    });
                }

                turmaJuntar.Descricao = professoresAlunosTurma.turma.Descricao;
                turmaJuntar.Curso     = professoresAlunosTurma.turma.Curso;
                turmaJuntar.IdCurso   = professoresAlunosTurma.turma.IdCurso;

                _ctx.Turmas.Add(turmaJuntar);

                _ctx.SaveChanges();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }