/// <summary> /// Criar /// </summary> /// <returns>Resultado do check</returns> public async Task CriarNaLista(ProdutoRequest model, int listaId) { using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled)) { // Verifica se o usuario tem permissao na lista var permissao = await ValidaParticipante(listaId); if (permissao == false) { throw new ApiExcecao(403, "Usuario não pode adicionar produto na lista pois não participa desta lista"); } // Cria o produto Produto entidade = await GaranteProduto(model); var produtoLista = new ProdutoLista() { ListaId = listaId, ProdutoId = entidade.Id }; // Atrela a lista com o produto await this.repositorioProdutoLista.InserirAsync(produtoLista); scope.Complete(); } }
public IActionResult Post(ProdutoLista produto) { try { //var produtoDom = new Produto() //{ // Descricao = produto.Descricao, // Id = produto.Id, // Nome = produto.Nome, // Preco = produto.Preco, //}; var produtoMap = mapper.Map <Produto>(produto); produtoMap.Validate(); if (!produtoMap.EhValido) { return(BadRequest(produtoMap.ObterMensagensValidacao())); } produtoRepositorio.Adicionar(produtoMap); produto = this.mapper.Map <ProdutoLista>(produtoMap); return(Created("produto", produto)); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } }
public ProdutoLista ConsultarProdutoNome(string nome) { try { //Consultar por Nome ProdutoLista produtoLista = new ProdutoLista(); string sql = @"Select @idProduto ,@nomeProduto ,@descProduto ,@precProduto ,@descontoPromocao ,@idCategoria ,@ativoProduto ,@idUsuario ,@qtdMinEstoque ,@imagem FROM PRODUTO WHERE nomeProduto LIKE '%' + @nomeProduto +'%' "; acessoBanco.LimparParametros(); acessoBanco.AdicionarParametros("@nomeProduto", nome); DataTable dataTableProduto = acessoBanco.ExecutarConsulta(CommandType.Text, sql); //Percorrer Tabela foreach (DataRow linha in dataTableProduto.Rows) { //Cria o produto Produto produto = new Produto(); //Pega as informações da linha no banco produto.idProduto = Convert.ToInt32(linha["idProduto"]); produto.nomeProduto = Convert.ToString(linha["nomeProduto"]); produto.descProduto = Convert.ToString(linha["descProduto"]); produto.precProduto = Convert.ToDouble(linha["precProduto"]); produto.descontoPromocao = Convert.ToDouble(linha["descontoPromocao"]); produto.idCategoria = Convert.ToInt32(linha["idCategoria"]); produto.ativoProduto = Convert.ToBoolean(linha["ativoProduto"]); produto.idUsuario = Convert.ToInt32(linha["idUsuario"]); produto.qtdMinEstoque = Convert.ToInt32(linha["qtdMinEstoque"]); produto.imagem = Convert.ToString(linha["imagem"]); //Adiciona o produto na lista de produto produtoLista.Add(produto); } return(produtoLista); } catch (Exception exception) { throw new Exception("Cliente não existe " + exception.Message); } }