private void CreateTestData(ref PucTccContext context) { var curso = new Curso() { Id = 1, Nome = "Curso" }; var turma = new Turma() { Id = 10, Nome = "Curso.Turma1", IdCurso = curso.Id, Curso = curso, Vagas = 2, }; for (int i = 0; i < 3; i++) { context.Alunos.Add(new Aluno() { Id = 100 + i, Nome = "Aluno" + i, IdCurso = curso.Id, Curso = curso }); } context.Cursos.Add(curso); context.Turmas.Add(turma); context.SaveChanges(); }
public ActionResult <AlunoTurma> MatricularAluno(long id, [FromBody] long idAluno) { var turma = _context.Turmas.FirstOrDefault(f => f.Id == id); if (turma.Vagas < 1) { throw new ApplicationException("Turma sem vagas!"); } var turmasAluno = _context.AlunosTurmas.Where(w => w.IdAluno == idAluno && w.IdTurma == id); if (turmasAluno.Any()) { throw new ApplicationException("Aluno já matriculado na turma!"); } turma.Vagas--; var matricula = new AlunoTurma() { IdAluno = idAluno, IdTurma = id }; _context.AlunosTurmas.Add(matricula); _context.SaveChanges(); return(matricula); }
public ActionResult Put(long id, [FromBody] Curso curso) { var cursodb = _context.Cursos.FirstOrDefault(f => f.Id == id); try { if (cursodb != null) { cursodb.Nome = curso.Nome; _context.SaveChanges(); return(Ok()); } } catch (System.Exception ex) { return(StatusCode(500, ex)); } return(NotFound()); }