Example #1
0
        public void Produto_InfraData_Atualizar_ComValorInvalido_EsperadoFalha()
        {
            _produto = ProdutoObjetoMae.ObterValido();
            _produto.ValorUnitario = 0;

            Action action = () => _produtoRepositorio.Atualizar(_produto);

            action.Should().Throw <ExcecaoValorUnitarioInvalido>();
        }
Example #2
0
 public IActionResult Post([FromBody] Produto produto) //frombody significa q vai receber a instancia com td as propiedades preenchidas q vem por requisição
                                                       //ou seja, percorre td o corpo e na requisicao transforma essa formação q veio por json num objeto reconhecido
 {
     try
     {
         produto.Validate();
         if (!produto.EhValido)
         {
             return(BadRequest(produto.ObterMensagemValidacao()));
         }
         if (produto.Id > 0) //aqui o produto ja é cadastrado
         {
             _produtoRepositorio.Atualizar(produto);
         }
         else
         {
             _produtoRepositorio.Adicionar(produto);     //adicionando no banco de dados
         }
         return(Created("api/produto", produto));        //significa q foi adicionado sem erro e devolve um created q  devolve a api e o produto criado
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.ToString()));
     }
 }
        public IActionResult Post([FromBody] Produto produto)
        {
            try
            {
                produto.Validate();
                if (!produto.EhValido)
                {
                    return(BadRequest(produto.ObterMensageValidacao()));
                }

                if (produto.Id > 0)
                {
                    _produtoRepositorio.Atualizar(produto);
                    return(Ok(produto));
                }
                else
                {
                    _produtoRepositorio.Adicionar(produto);
                    return(Created("api/produto", produto));
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ObterListaErros(ex)));
            }
        }
        public IActionResult Post([FromBody] Produto obj)
        {
            try
            {
                obj.Validate();
                if (!obj.EhValido)
                {
                    return(BadRequest(obj.ObterMensagensValidação()));
                }

                if (obj.Id > 0)
                {
                    _repositorio.Atualizar(obj);
                }
                else
                {
                    _repositorio.Adicionar(obj);
                }
                return(Created("produto", obj));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
Example #5
0
        /*[FromBody]-> transforma objeto JSON enviado pela requisão em um objeto produto,
         * com isso não precisa fazer o mapeamento manualmente.*/
        public IActionResult Post([FromBody] Produto produto)
        {
            try
            {
                produto.Validate();

                if (!produto.EhValidado)
                {
                    return(BadRequest(produto.obterMensagemValidacao()));
                }

                // se o produto já existir, ele vai atualizar
                if (produto.id > 0)
                {
                    _produtoRepositorio.Atualizar(produto);
                }
                else
                {
                    _produtoRepositorio.Adicionar(produto);
                }

                return(Created("api/produto", produto));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
Example #6
0
        public IActionResult Post([FromBody] Produto produto)
        {
            try
            {
                produto.Validate();
                if (!produto.EhValido)
                {
                    return(BadRequest(produto.RetornarListaMensagem()));
                }

                if (produto.Id > 0)
                {
                    _produtoRepositorio.Atualizar(produto);
                }
                else
                {
                    _produtoRepositorio.Adicionar(produto);
                }

                return(Json(_produtoRepositorio.ObterTodos()));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
Example #7
0
        public IActionResult Atualizar([FromServices] IProdutoRepositorio produtoRepositorio,
                                       [FromBody] Produto produto, [FromServices] IHttpContextAccessor httpContextAccessor, [FromHeader] string Authorization)
        {
            try
            {
                var x = httpContextAccessor.HttpContext.Request.Headers["Authorization"];
                //var formFile = httpContextAccessor.HttpContext.Request.Headers["Authorization"];
                produto.Validate();
                if (!produto.EhValido)
                {
                    return(BadRequest(produto.ObterMensagensValidacao()));
                }

                if (produto.Id > 0)
                {
                    produtoRepositorio.Atualizar(produto);
                }

                return(Created("api/produto", produto));
            }
            catch (Exception erro)
            {
                return(BadRequest(erro.ToString()));
            }
        }
Example #8
0
        public IActionResult Post([FromBody] Produto produto)
        {
            try
            {
                produto.Validate();
                if (!produto.EhValido)
                {
                    return(BadRequest(produto.ObterMensagensValidacao()));
                }

                if (produto.Id > 0)
                {
                    produto.ProdutoCategoria = null;
                    _produtoRepositorio.Atualizar(produto);
                }
                else
                {
                    produto.ProdAtivo    = true;
                    produto.DataCadastro = System.DateTime.Now;
                    _produtoRepositorio.Adicionar(produto);
                }

                return(Created("api/produto", produto));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
Example #9
0
        public IActionResult Post([FromBody] Produto produto)
        {
            try
            {
                produto.Validate();

                if (!produto.IsValid)
                {
                    return(BadRequest(produto.ObterMensagensValidacao()));
                }

                if (produto.Id > 0)
                {
                    _produtoRepositorio.Atualizar(produto);
                }
                else
                {
                    _produtoRepositorio.Adicionar(produto);
                }

                return(Created("api/produto", produto));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Example #10
0
        public bool Atualizar(ProdutoEditarComando comando)
        {
            Produto produtoDb = _repositorioProduto.BuscarPorId(comando.Id) ?? throw new ExcecaoNaoEncontrado();

            Mapper.Map <ProdutoEditarComando, Produto>(comando, produtoDb);

            return(_repositorioProduto.Atualizar(produtoDb));
        }
Example #11
0
        public void Handle(ExcluirProdutoComando mensagem)
        {
            if (!ProdutoExistente(mensagem.Id, mensagem.TipoMensagem))
            {
                return;
            }
            var produtoAtual = _produtoRepositorio.BuscarPorId(mensagem.Id);


            produtoAtual.ExcluirProduto();
            _produtoRepositorio.Atualizar(produtoAtual);

            if (Commit())
            {
                _mediator.PublicarEvento(new ExcluidoProdutoEvento(mensagem.Id));
            }
        }
Example #12
0
        public void Atualizar(int id, string descricao, double preco)
        {
            var produto = Busca(id);

            produto.AlteraProduto(descricao, preco);
            produto.ValidaModelo();

            _repositorio.Atualizar(produto);
        }
        public async Task Atualizar(Produto produto)
        {
            if (!ExecutarValidacao(new ProdutoValidacao(), produto))
            {
                return;
            }

            await _produtoRepositorio.Atualizar(produto);
        }
Example #14
0
        public Produto Atualizar(Produto produto)
        {
            if (!produto.EstaConsistente())
            {
                return(produto);
            }

            return(_produtoRepositorio.Atualizar(produto));
        }
Example #15
0
        public Produto Atualizar(Produto produto)
        {
            if (produto.Id < 1)
            {
                throw new ExcecaoIdentificadorIndefinido();
            }

            produto.Validar();

            return(_produtoRepositorio.Atualizar(produto));
        }
Example #16
0
        public Produto Atualizar(Produto entidade)
        {
            if (entidade.Id < 1)
            {
                throw new IdentificadorInvalidoExcecao();
            }

            entidade.Validar();

            return(_produtoRepositorio.Atualizar(entidade));
        }
        public void Produto_InfraData_Atualizar_DeveAtualizarOk()
        {
            produto = ObjectMother.ObtemProdutoValido();
            produto = repositorio.Salvar(produto);
            var _novoNome = "Feijao";

            produto.Descricao = _novoNome;

            Produto _produtoAtualizado = repositorio.Atualizar(produto);

            _produtoAtualizado.Descricao.Should().Be(_novoNome);
        }
Example #18
0
 public IActionResult AtualizarProduto([FromBody] Produto produto)
 {
     try
     {
         _produtoRepositorio.Atualizar(produto);
         return(Created("api/v1/Produto", produto));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.ToString()));
     }
 }
Example #19
0
 public IActionResult AtualizarProduto(Produto model)
 {
     try
     {
         _produtoRepositorio.Atualizar(model);
     }
     catch (Exception ex)
     {
         return(BadRequest(ex));
     }
     return(Ok("Atualizado com sucesso"));
 }
Example #20
0
 public virtual void AlterarProduto(Produto Produto)
 {
     try
     {
         Produto.alteracao = DateTime.Now;
         _ProdutoRepositorio.Atualizar(Produto);
         _ProdutoRepositorio.Commit();
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Example #21
0
        public Produto Atualizar(Produto entidade)
        {
            entidade.Validar();

            if (entidade.Id == 0)
            {
                throw new IdentifierUndefinedException();
            }
            else
            {
                return(_repositorio.Atualizar(entidade));
            }
        }
Example #22
0
        public string Alugar(ItemPedido model)
        {
            Produto produto = _produtoRepositorio.ObterPorId(model.ProdutoId);

            int QtdEstoque = produto.QtdEstoque;

            if (model.Quantidade > QtdEstoque)
            {
                return("Quantidade excede quantidade de estoque!");
            }
            if (model.Quantidade == QtdEstoque)
            {
                produto.Status = 0;
                _produtoRepositorio.Atualizar(produto);
                return($"Sucesso, agora o produto não possui mais estoque");
            }
            else
            {
                produto.QtdEstoque = QtdEstoque - model.Quantidade;
                _produtoRepositorio.Atualizar(produto);
                return($@"Sucesso, agora o produto possui essa quantia de estoque: 
                        {produto.QtdEstoque}");
            }
        }
Example #23
0
        public void Produto_InfraData_Atualizar_Sucesso()
        {
            long idDoProdutoDaBaseSql = 1;

            Produto produtoResultadoDoBuscarParaAtualizar = _repositorio.BuscarPorId(idDoProdutoDaBaseSql);

            produtoResultadoDoBuscarParaAtualizar.Descricao = "Atualizado";

            _repositorio.Atualizar(produtoResultadoDoBuscarParaAtualizar);

            Produto resultado = _repositorio.BuscarPorId(produtoResultadoDoBuscarParaAtualizar.Id);

            resultado.Descricao.Should().Be(produtoResultadoDoBuscarParaAtualizar.Descricao);
            resultado.Codigo.Should().Be(produtoResultadoDoBuscarParaAtualizar.Codigo);
        }
Example #24
0
        public IConsulta Executar(ProdutoDominio entidade)
        {
            try
            {
                var produto = _produtoRepositorio.BuscarPorId(entidade.Id);
                produto.Atualizar(entidade.Id, entidade.Nome, entidade.Preco, entidade.TipoPromocao);

                _produtoRepositorio.Atualizar(produto);

                return(new ProdutoConsultaResultado(produto));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #25
0
        public async Task <IActionResult> Put(int id, [FromBody] Produto produto)
        {
            try
            {
                if (id != produto.Id)
                {
                    NotFound("Id não encontrado");
                }

                _produtoRepositorio.Atualizar(produto);
                return(Ok(produto));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
Example #26
0
        public Produto Atualizar(ComandoAtualizarProduto comando)
        {
            if (comando.Valido())
            {
                var produto = _produtoRepositorio.Obter(comando.Id);

                produto
                .InformarCodigo(comando.Codigo)
                .InformarDescricao(comando.Descricao)
                .InformarPreco(comando.Preco);

                _produtoRepositorio.Atualizar(produto);

                return(_produtoRepositorio.Obter(produto.Id));
            }

            return(new Produto());
        }
Example #27
0
        public bool Atualizar(Produto model)
        {
            if (!ExecutarValidacao(new ProdutoValidation(), model))
            {
                return(false);
            }

            try
            {
                _repository.Atualizar(model);
                return(true);
            }
            catch (Exception ex)
            {
                Notificar("Não foi possível atualizar o registro. Motivo: {0}", ex.Message);
                return(false);
            }
        }
 public IActionResult Put(Produto produto)
 {
     try
     {
         //var produtoMap = mapper.Map<Produto>(produto);
         //produtoMap.Validate();
         if (!produto.EhValido)
         {
             return(BadRequest(produto.ObterMensagensValidacao()));
         }
         produtoRepositorio.Atualizar(produto);
         //produto = this.mapper.Map<ProdutoLista>(produtoMap);
         return(Accepted(produto));
     }
     catch (Exception ex)
     {
         return(StatusCode(500, ex.Message));
     }
 }
Example #29
0
        public void Produto_InfraData_Atualizar_Sucesso()
        {
            Produto produtoParaAdicionar = ObjectMother.ObterProdutoValido();

            Produto produtoParaAtualizar = _repositorio.Adicionar(produtoParaAdicionar);

            produtoParaAtualizar.Valor     = 1000;
            produtoParaAtualizar.Descricao = "Alterado";
            produtoParaAtualizar.Codigo    = "123456";

            _repositorio.Atualizar(produtoParaAtualizar);

            Produto produtoAtualizado = _repositorio.BuscarPorId(produtoParaAtualizar.Id);

            produtoAtualizado.Should().NotBeNull();
            produtoAtualizado.Valor.Should().Be(produtoParaAtualizar.Valor);
            produtoAtualizado.Valor.Should().NotBe(ObjectMother.ObterProdutoValido().Valor);
            produtoAtualizado.Descricao.Should().Be(produtoParaAtualizar.Descricao);
            produtoAtualizado.Codigo.Should().Be(produtoParaAtualizar.Codigo);
        }
        public async Task <IActionResult> Atualizar(int ProdutoId, [FromBody] Produto produto)
        {
            try
            {
                var produtos = await ProdutoRepositorio.ObterProdutoPorId(ProdutoId);

                if (produtos == null)
                {
                    return(NotFound("Usuario não encontrado"));
                }

                ProdutoRepositorio.Atualizar(produto);

                return(Ok("Usuario atualizado com Sucesso"));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }