Exemplo n.º 1
0
        public IHttpActionResult Post([FromBody] Models.Produtos produto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                //Apenas uma simulacao de inclusao na base via EF ou qualquer outra forma e considerando que o ID seja incremental
                List <Models.Produtos> produtos = ObterProdutos();

                //Validar se o produto ja existe
                if (produtos.Any(p => p.Name.Equals(produto.Name, StringComparison.OrdinalIgnoreCase)))
                {
                    return(Content(HttpStatusCode.Conflict, "Produto já cadastrado na base de dados"));
                }

                produtos.Add(produto);

                //Simulando ID gerado no insert
                produto.ID = 4;

                return(CreatedAtRoute("DefaultApi", new
                {
                    id = produto.ID
                }, produto));
            }
            catch (Exception ex)
            {
                return(InternalServerError(new Exception($"Erro ao cadastrar o produto na base de dados: {ex.InnerException}")));
            }
        }
Exemplo n.º 2
0
 public Produtos GetProduto(int?codProduto)
 {
     try
     {
         var model = new Models.Produtos();
         if (codProduto != null)
         {
             OpenConnection();
             var sql = this.Search(codProduto, null, null);
             SqlQuery = new SqlCommand(sql, con);
             reader   = SqlQuery.ExecuteReader();
             while (reader.Read())
             {
                 model.codigo      = Convert.ToInt32(reader["Produto_ID"]);
                 model.situacao    = Convert.ToString(reader["Produto_Situacao"]);
                 model.nomeProduto = Convert.ToString(reader["Produto_Nome"]);
                 model.unidade     = Convert.ToString(reader["Produto_Unidade"]);
                 model.largura     = Convert.ToString(reader["Produto_Largura"]);
                 model.Grupo       = new Select.Grupos.Select
                 {
                     id   = Convert.ToInt32(reader["Produto_Grupo_ID"]),
                     text = Convert.ToString(reader["Produto_Grupo_Nome"])
                 };
                 model.Fornecedor = new Select.Fornecedores.Select
                 {
                     id   = Convert.ToInt32(reader["Produto_Fornecedor_ID"]),
                     text = Convert.ToString(reader["Produto_Fornecedor_Nome"])
                 };
                 model.ncm            = Convert.ToString(reader["Produto_NCM"]);
                 model.cfop           = Convert.ToString(reader["Produto_CFOP"]);
                 model.qtEstoque      = Convert.ToDecimal(reader["Produto_QtEstoque"]);
                 model.vlCusto        = Convert.ToDecimal(reader["Produto_VlCusto"]);
                 model.vlUltCompra    = Convert.ToDecimal(reader["Produto_VlUltimaCompra"]);
                 model.vlVenda        = Convert.ToDecimal(reader["Produto_VlVenda"]);
                 model.observacao     = Convert.ToString(reader["Produto_Observacao"]);
                 model.dtCadastro     = Convert.ToDateTime(reader["Produto_DataCadastro"]);
                 model.dtUltAlteracao = Convert.ToDateTime(reader["Produto_DataUltAlteracao"]);
             }
         }
         return(model);
     }
     catch (Exception error)
     {
         throw new Exception(error.Message);
     }
     finally
     {
         CloseConnection();
     }
 }
Exemplo n.º 3
0
        public bool Insert(Models.Produtos produto)
        {
            try
            {
                var sql = string.Format("INSERT INTO tbprodutos ( situacao, nomeproduto, unidade, largura, codgrupo, codfornecedor, ncm, qtestoque, vlcusto, vlultcompra, vlvenda, observacao, cfop, dtcadastro, dtultalteracao )" +
                                        " VALUES ('{0}', '{1}', '{2}', '{3}', {4}, {5}, '{6}', {7}, {8}, {9}, {10}, '{11}', '{12}', '{13}', '{14}' )",
                                        this.FormatString(produto.situacao),
                                        this.FormatString(produto.nomeProduto),
                                        produto.unidade,
                                        produto.largura,
                                        produto.Grupo.id,
                                        produto.Fornecedor.id,
                                        produto.ncm,
                                        produto.qtEstoque != null ? produto.qtEstoque : 0,
                                        0,
                                        produto.vlUltCompra != null ? produto.vlUltCompra : 0,
                                        produto.vlVenda.ToString().Replace(",", "."),
                                        !string.IsNullOrWhiteSpace(produto.observacao) ? this.FormatString(produto.observacao) : "",
                                        produto.cfop,
                                        DateTime.Now.ToString("yyyy-MM-dd"),
                                        DateTime.Now.ToString("yyyy-MM-dd")
                                        );
                OpenConnection();
                SqlQuery = new SqlCommand(sql, con);
                int i = SqlQuery.ExecuteNonQuery();

                if (i > 1)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception error)
            {
                throw new Exception(error.Message);
            }
            finally
            {
                CloseConnection();
            }
        }
Exemplo n.º 4
0
        public bool Update(Models.Produtos produto)
        {
            try
            {
                //string sql = "teste";
                var sql = "UPDATE tbprodutos SET situacao = '"
                          + this.FormatString(produto.situacao) + "', " +
                          " nomeproduto = '" + this.FormatString(produto.nomeProduto) + "', " +
                          " unidade = '" + produto.unidade + "', " +
                          " largura = '" + produto.largura + "', " +
                          " codgrupo = " + produto.Grupo.id + ", " +
                          " codfornecedor = " + produto.Fornecedor.id + ", " +
                          " ncm = '" + produto.ncm + "', " +
                          " vlcusto = " + produto.vlCusto.ToString().Replace(",", ".") + ", " +
                          " vlvenda = " + produto.vlVenda.ToString().Replace(",", ".") + ", " +
                          " observacao = '" + this.FormatString(produto.observacao) + "', " +
                          " cfop = '" + produto.cfop + "', " +
                          " dtultalteracao = '" + DateTime.Now.ToString("yyyy-MM-dd") + "'" +
                          " WHERE codproduto = " + produto.codigo;
                OpenConnection();
                SqlQuery = new SqlCommand(sql, con);

                int i = SqlQuery.ExecuteNonQuery();

                if (i > 1)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception error)
            {
                throw new Exception(error.Message);
            }
            finally
            {
                CloseConnection();
            }
        }