예제 #1
0
        public async Task <JogoViewModel> Inserir(JogoImputModel jogo)
        {
            var entidadeJogo = await _jogoRepository.Obter(jogo.Nome, jogo.Produtora);

            if (entidadeJogo.Count > 0)
            {
                throw new JogoJaCadastradoException();
            }

            var jogoinsert = new Jogo
            {
                Id        = Guid.NewGuid(),
                Nome      = jogo.Nome,
                Produtora = jogo.Produtora,
                Preco     = jogo.Preco
            };

            await _jogoRepository.Inserir(jogoinsert);

            return(new JogoViewModel
            {
                Id = jogoinsert.Id,
                Nome = jogoinsert.Nome,
                Produtora = jogoinsert.Produtora,
                Preco = jogoinsert.Preco
            });
        }
예제 #2
0
        public async Task <ActionResult> AtualizarJogo([FromRoute] Guid idJogo, [FromBody] JogoImputModel jogoImputModel)
        {
            try
            {
                await _jogoService.Atualizar(idJogo, jogoImputModel);

                return(Ok());
            }
            catch (JogoNaoCadastradoException ex)
            {
                return(NotFound("Não existe este jogo"));
            }
        }
예제 #3
0
        public async Task <ActionResult <JogoViewModel> > InserirJogo([FromBody] JogoImputModel jogoImputModel)
        {
            try
            {
                var jogo = await _jogoService.Inserir(jogoImputModel);

                return(Ok(jogo));
            }
            catch (JogoJaCadastradoException ex)
            {
                return(UnprocessableEntity("Já existe um jogo com este nome para essa produtora."));
            }
        }
예제 #4
0
        public async Task Atualizar(Guid id, JogoImputModel jogo)
        {
            var entidadejogo = await _jogoRepository.Obter(id);

            if (entidadejogo == null)
            {
                throw new JogoNaoCadastradoException();
            }
            entidadejogo.Nome      = jogo.Nome;
            entidadejogo.Produtora = jogo.Produtora;
            entidadejogo.Preco     = jogo.Preco;

            await _jogoRepository.Atualizar(entidadejogo);
        }