public IActionResult Atualizar([FromBody] ProdutoDois produto) { if (ModelState.IsValid) { var produtosAtualizados = _repositorio.Atualizar(produto); return(Ok(produtosAtualizados)); } return(BadRequest("Falha ao atualizar o produto." + ModelState)); }
public IActionResult ObterValorPrecoVenda([FromBody] ProdutoDois produto) { if (ModelState.IsValid) { var precoVenda = new ProdutoDois(produto); return(Ok(precoVenda)); } else { return(BadRequest(ModelState)); } }
public IActionResult Criar([FromBody] ProdutoDois produto) { if (ModelState.IsValid) { var idProdutoCadastrado = _repositorio.Criar(produto); int resultado; if (!int.TryParse(idProdutoCadastrado, out resultado)) { return(BadRequest("Falha no cadastro do produto. Mensagem original: " + idProdutoCadastrado)); } return(Ok("Identificador: " + idProdutoCadastrado)); } return(BadRequest(ModelState)); }
public string Atualizar(ProdutoDois produto) { using (TransactionScope transaction = new TransactionScope()) { try { var produtosAtualizados = _connection .Execute( ProdutoScripts.UPDATE_PRODUTO, new { identificador = produto.Identificador, descricao = produto.Descricao, valorVenda = produto.ValorVenda, tempoMontagem = produto.TempoMontagem, valorCustoMontagem = produto.ValorCustoMontagem, valorTotalCustoMontagem = produto.ValorTotalCustoMontagem, possuiComposicao = produto.PossuiComposicao }); if (produto.PossuiComposicao) { _connection.Execute(ProdutoScripts.DELETE_INSUMO, new { identificador = produto.Identificador }); _connection.Execute(ProdutoScripts.INSERT_INSUMO, produto.Insumos); } if (produtosAtualizados > 0) { transaction.Complete(); return("Produto atualizado com sucesso."); } return("Nenhum produto foi localizado com o identificador informado."); } catch (SqlException ex) { return(ex.Message); } } }
public string Criar(ProdutoDois produto) { using (var transaction = new TransactionScope()) { try { var identificadorProdutoCadastrado = _connection.QuerySingle <string>(ProdutoScripts.INSERT_PRODUTO, produto); if (produto.PossuiComposicao) { foreach (Insumo insumo in produto.Insumos) { insumo.IdentificadorProdutoPrincipal = identificadorProdutoCadastrado; } _connection.Execute(ProdutoScripts.INSERT_INSUMO, produto.Insumos); } if (produto.CustoReposicao != null) { // foreach (CustoReposicaoProduto custoReposicaoItem in produto.CustoReposicao) // { produto.CustoReposicao.IdentificadorProduto = identificadorProdutoCadastrado; // } _connection.Execute(ProdutoScripts.INSERT_CUSTO_REPOSICAO, produto.CustoReposicao); } transaction.Complete(); return(identificadorProdutoCadastrado); } catch (SqlException ex) { return(ex.Message); } } }