Exemplo n.º 1
0
        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 }));
            }
        }
Exemplo n.º 2
0
        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 }));
            }
        }