private IActionResult IncluirProduto(Produto produto, bool validaEstoque) { try { if (!produto.ValidaQuantidadeEstoque() && validaEstoque) { return(BadRequest("A quantidade não pode ser negativa ou zero.")); } produto.Situacao = true; _produtoRepositorio.Incluir(produto); if (produto.QuantidadeEstoque > 0) { Estoque estoque = new Estoque() { Produto = produto, Data = DateTime.Now, Quantidade = produto.QuantidadeEstoque, TipoEstoque = EnumTipoEstoque.ENTRADA }; _estoqueRepositorio.Incluir(estoque); } return(Ok("Produto incluído com sucesso.")); } catch { return(StatusCode(StatusCodes.Status500InternalServerError)); } }
public async Task CriarProdutoRetornoComSucesso() { // Arrange _produtoRepositorio.Incluir(_produto); // Act var resultado = await _produtoServico.Adicionar(_produto); // Assert Assert.False(resultado.HasErrors()); }
public async Task <Resultado> Adicionar(Produto produto) { var resultado = new Resultado(); produto.Validar(); if (!produto.IsValid) { AddNotifications(produto.Notifications); } if (IsValid) { _produtoRepositorio.Incluir(produto); await _unitOfWork.Commit(); } else { resultado.AddErrors(Notifications); } return(resultado); }
public long Incluir(IProdutoRepositorio repositorio) { return(repositorio.Incluir(this)); }
public Produto Incluir(Produto produto) { _repositorio.Incluir(produto); _repositorio.Commit(); return(ObterPorId(produto.Id.ToString())); }