public IActionResult Nova([FromBody] TurmaInputModel novaTurma) { try { var turma = Turma.Nova(novaTurma.Descricao, novaTurma.LimiteIdade, novaTurma.LimiteAlunos); _turmasRepositorio.AdicionarESalvar(turma); return(CreatedAtAction(nameof(Recuperar), new { turma.Id }, new TurmaViewModel(turma.Id, turma.Descricao, novaTurma.LimiteIdade, turma.VagasDisponiveis))); } catch (Exception e) { return(StatusCode(500, new { error = e.Message })); } }
public IActionResult Nova([FromBody] TurmaInputModel novaTurma) { try { if (Turma.Nova(novaTurma.Descricao, novaTurma.LimiteAlunos) is var turma && turma.EhFalha) { return(StatusCode(turma.Falha.Codigo, turma.Falha)); } _turmasRepositorio.AdicionarESalvar(turma.Sucesso); return(CreatedAtAction(nameof(Recuperar), new { turma.Sucesso.Id }, new TurmaViewModel(turma.Sucesso.Id, turma.Sucesso.Descricao, turma.Sucesso.VagasDisponiveis))); } catch (Exception e) { return(StatusCode(500, new { error = e.Message })); } }