public async Task <IActionResult> Put(int id, [FromBody] ProdutoPost model) { var categoria = await _categoriaRepository.GetAsync(model.CategoriaId); if (categoria == null) { ModelState.AddModelError("CategoriaId", "Categoria inválida"); } var produto = await _produtoRepository.GetAsync(id); if (produto == null) { ModelState.AddModelError("Id", "Produto não localizado"); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } produto.Update(model.Nome, model.Preco, model.CategoriaId); _produtoRepository.Update(produto); return(Ok()); }
public void CadastraCarrinho() { string token = RetornaToken(); ProdutoApi produtoApi = RetornaProdutos(); ProdutoPost produtoPost = new ProdutoPost(); produtoPost.idProduto = produtoApi.produtos.FirstOrDefault()._id; produtoPost.quantidade = 10; List <ProdutoPost> listaProdutoPost = new List <ProdutoPost>(); listaProdutoPost.Add(produtoPost); var clientePost = new RestClient("http://localhost:3000/carrinhos"); var requisicaoPost = new RestRequest(Method.POST) { RequestFormat = DataFormat.Json }; requisicaoPost.AddHeader("Authorization", token); requisicaoPost.AddJsonBody(new { produtos = listaProdutoPost }); var respostas = clientePost.Execute(requisicaoPost); Assert.Fail(); }
public async Task <IActionResult> Add([FromBody] ProdutoPost model) { var categoria = await _categoriaRepository.GetAsync(model.CategoriaId); if (categoria == null) { ModelState.AddModelError("CategoriaId", "Categoria inválida"); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var data = model.ToProdutoEntity(); _produtoRepository.Add(data); var produto = data.ToProdutoGet(); produto.CategoriaNome = categoria.Nome; //return Ok(produto); //Retorna objeto batendo na rota GetById return(CreatedAtRoute("GetProductById", new { data.Id }, produto)); }