public void Atualizar(Produto p) { try { AbrirConexao(); Cmd = new SqlCommand("update Produto set NM_PRODUTO = @v1," + " CD_CATEGORIA = @v2," + " DT_CADASTRO = @v3," + " DT_ATUALIZACAO = @v4," + " VL_COMPRA = @v5," + " PC_LUCRO = @v6," + " VL_VENDA = @v7," + " CD_UNIDADE = @v8," + " CD_GPO_TRIB_PRODUTO = @v9," + " CD_TIPO_PRODUTO=@v11," + " CD_SIS_ANTERIOR = @v12," + " CD_FABRICANTE = @v13, " + " CD_MARCA = @v14," + " CD_CEST = @v15, " + " CD_SITUACAO = @v16," + " IN_PRD_INVENTARIO = @v17," + " IN_CTR_LOTE = @v18," + " VL_VOLUME = @v19," + " VL_PESO = @v20," + " VL_FATOR_CUBAGEM = @v21, " + " DS_EMBALAGEM = @v22, " + " QT_EMBALAGEM = @v23, " + " CD_PRD_ASSOCIADO = @v24, " + " CD_BARRAS = @v25," + " CD_PIS = @v26," + " CD_COFINS = @v27," + " CD_NCM = @v28," + " CD_EX = @v29, " + " TX_LNK_PRODUTO = @v30, " + " IM_FOTO_PRINCIPAL = @v31, " + " IM_FOTO1 = @v32, " + " IM_FOTO2 = @v33, " + " IM_FOTO3 = @v34, " + " IM_FOTO4 = @v35, " + " IM_FOTO5 = @v36 " + "Where CD_Produto = @v10", Con); Cmd.Parameters.AddWithValue("@v10", p.CodigoProduto); Cmd.Parameters.AddWithValue("@v1", p.DescricaoProduto.ToUpper()); CategoriaDAL r = new CategoriaDAL(); Categoria p1 = new Categoria(); if (p1 != null) { Cmd.Parameters.AddWithValue("@v2", p1.CodigoIndice); } else { Cmd.Parameters.AddWithValue("@v2", 0); } //Cmd.Parameters.AddWithValue("@v2", p1.CodigoIndice); Cmd.Parameters.AddWithValue("@v3", p.DataCadastro); Cmd.Parameters.AddWithValue("@v4", p.DataAtualizacao); Cmd.Parameters.AddWithValue("@v5", p.ValorCompra); Cmd.Parameters.AddWithValue("@v6", p.PercentualLucro); Cmd.Parameters.AddWithValue("@v7", p.ValorVenda); Cmd.Parameters.AddWithValue("@v8", p.CodigoUnidade); Cmd.Parameters.AddWithValue("@v9", p.CodigoGpoTribProduto); Cmd.Parameters.AddWithValue("@v11", p.CodigoTipoProduto); if (string.IsNullOrEmpty(p.CodigoSisAnterior)) { Cmd.Parameters.AddWithValue("@v12", DBNull.Value); } else { Cmd.Parameters.AddWithValue("@v12", p.CodigoSisAnterior); } Cmd.Parameters.AddWithValue("@v13", p.CodigoFabricante); Cmd.Parameters.AddWithValue("@v14", p.CodigoMarca); Cmd.Parameters.AddWithValue("@v15", p.CodigoIndexCEST); Cmd.Parameters.AddWithValue("@v16", p.CodigoSituacao); Cmd.Parameters.AddWithValue("@v17", p.ProdutoInventario); Cmd.Parameters.AddWithValue("@v18", p.ControlaLote); Cmd.Parameters.AddWithValue("@v19", p.ValorVolume); Cmd.Parameters.AddWithValue("@v20", p.ValorPeso); Cmd.Parameters.AddWithValue("@v21", p.ValorFatorCubagem); Cmd.Parameters.AddWithValue("@v22", p.DsEmbalagem); //ds Cmd.Parameters.AddWithValue("@v23", p.QtEmbalagem); //qt Cmd.Parameters.AddWithValue("@v24", p.CodigoPrdAssociado); //ass Cmd.Parameters.AddWithValue("@v25", p.CodigoBarras); //br Cmd.Parameters.AddWithValue("@v26", p.CodigoPIS); Cmd.Parameters.AddWithValue("@v27", p.CodigoCOFINS); Cmd.Parameters.AddWithValue("@v28", p.CodigoNCM); Cmd.Parameters.AddWithValue("@v29", p.CodigoEX); Cmd.Parameters.AddWithValue("@v30", p.LinkProduto); if (p.FotoPrincipal != null) { Cmd.Parameters.AddWithValue("@v31", p.FotoPrincipal); } else { Cmd.Parameters.AddWithValue("@v31", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto1 != null) { Cmd.Parameters.AddWithValue("@v32", p.Foto1); } else { Cmd.Parameters.AddWithValue("@v32", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto2 != null) { Cmd.Parameters.AddWithValue("@v33", p.Foto2); } else { Cmd.Parameters.AddWithValue("@v33", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto3 != null) { Cmd.Parameters.AddWithValue("@v34", p.Foto3); } else { Cmd.Parameters.AddWithValue("@v34", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto4 != null) { Cmd.Parameters.AddWithValue("@v35", p.Foto4); } else { Cmd.Parameters.AddWithValue("@v35", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto5 != null) { Cmd.Parameters.AddWithValue("@v36", p.Foto5); } else { Cmd.Parameters.AddWithValue("@v36", System.Data.SqlTypes.SqlBinary.Null); } Cmd.ExecuteNonQuery(); } catch (Exception ex) { throw new Exception("Erro ao atualizar Produto: " + ex.Message.ToString()); } finally { FecharConexao(); } }
public void Inserir(Produto p) { try { AbrirConexao(); Cmd = new SqlCommand("insert into PRODUTO (NM_PRODUTO, " + "CD_CATEGORIA, " + " DT_CADASTRO," + " DT_ATUALIZACAO," + " VL_COMPRA," + " PC_LUCRO," + " VL_VENDA," + " CD_UNIDADE," + " CD_GPO_TRIB_PRODUTO," + " CD_TIPO_PRODUTO," + " CD_SIS_ANTERIOR," + " CD_FABRICANTE," + " CD_MARCA," + " CD_SITUACAO," + " IN_PRD_INVENTARIO," + " IN_CTR_LOTE," + " CD_CEST," + " VL_VOLUME," + " VL_PESO," + " VL_FATOR_CUBAGEM," + " DS_EMBALAGEM, " + " QT_EMBALAGEM," + " CD_BARRAS, " + " CD_PRD_ASSOCIADO," + " CD_PIS," + " CD_COFINS," + " CD_NCM," + " CD_EX ," + " TX_LNK_PRODUTO ," + " IM_FOTO_PRINCIPAL ," + " IM_FOTO1 ," + " IM_FOTO2 ," + " IM_FOTO3 ," + " IM_FOTO4 ," + " IM_FOTO5) values (@v1, @v2, @v3, @v4, @v5, @v6, @v7, @v8, @v9, @v10, @v11, @v12, @v13, @v14, @v15, @v16, @v17, @v18, @v19, @v20, @v21, @v22,'', 0, @v25, @v26, @v27, @v28, @v29, @v30, @v31, @v32, @v33, @v34, @v35); SELECT SCOPE_IDENTITY()", Con); Cmd.Parameters.AddWithValue("@v1", p.DescricaoProduto.ToUpper()); CategoriaDAL r = new CategoriaDAL(); Categoria p1 = new Categoria(); p1 = r.PesquisarCategoria(p.CodigoCategoria); if (p1 != null) { Cmd.Parameters.AddWithValue("@v2", p1.CodigoIndice); } else { Cmd.Parameters.AddWithValue("@v2", 0); } Cmd.Parameters.AddWithValue("@v3", p.DataCadastro); Cmd.Parameters.AddWithValue("@v4", p.DataAtualizacao); Cmd.Parameters.AddWithValue("@v5", p.ValorCompra); Cmd.Parameters.AddWithValue("@v6", p.PercentualLucro); Cmd.Parameters.AddWithValue("@v7", p.ValorVenda); Cmd.Parameters.AddWithValue("@v8", p.CodigoUnidade); Cmd.Parameters.AddWithValue("@v9", p.CodigoGpoTribProduto); Cmd.Parameters.AddWithValue("@v10", p.CodigoTipoProduto); if (string.IsNullOrEmpty(p.CodigoSisAnterior)) { Cmd.Parameters.AddWithValue("@v11", DBNull.Value); } else { Cmd.Parameters.AddWithValue("@v11", p.CodigoSisAnterior); } Cmd.Parameters.AddWithValue("@v12", p.CodigoFabricante); Cmd.Parameters.AddWithValue("@v13", p.CodigoMarca); Cmd.Parameters.AddWithValue("@v14", p.CodigoSituacao); Cmd.Parameters.AddWithValue("@v15", p.ProdutoInventario); Cmd.Parameters.AddWithValue("@v16", p.ControlaLote); Cmd.Parameters.AddWithValue("@v17", p.CodigoIndexCEST); Cmd.Parameters.AddWithValue("@v18", p.ValorVolume); Cmd.Parameters.AddWithValue("@v19", p.ValorPeso); Cmd.Parameters.AddWithValue("@v20", p.ValorFatorCubagem); Cmd.Parameters.AddWithValue("@v21", p.DsEmbalagem); Cmd.Parameters.AddWithValue("@v22", p.QtEmbalagem); Cmd.Parameters.AddWithValue("@v25", p.CodigoPIS); Cmd.Parameters.AddWithValue("@v26", p.CodigoCOFINS); Cmd.Parameters.AddWithValue("@v27", p.CodigoNCM); Cmd.Parameters.AddWithValue("@v28", p.CodigoEX); Cmd.Parameters.AddWithValue("@v29", p.LinkProduto); if (p.FotoPrincipal != null) { Cmd.Parameters.AddWithValue("@v30", p.FotoPrincipal); } else { Cmd.Parameters.AddWithValue("@v30", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto1 != null) { Cmd.Parameters.AddWithValue("@v31", p.Foto1); } else { Cmd.Parameters.AddWithValue("@v31", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto2 != null) { Cmd.Parameters.AddWithValue("@v32", p.Foto2); } else { Cmd.Parameters.AddWithValue("@v32", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto3 != null) { Cmd.Parameters.AddWithValue("@v33", p.Foto3); } else { Cmd.Parameters.AddWithValue("@v33", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto4 != null) { Cmd.Parameters.AddWithValue("@v34", p.Foto4); } else { Cmd.Parameters.AddWithValue("@v34", System.Data.SqlTypes.SqlBinary.Null); } if (p.Foto5 != null) { Cmd.Parameters.AddWithValue("@v35", p.Foto5); } else { Cmd.Parameters.AddWithValue("@v35", System.Data.SqlTypes.SqlBinary.Null); } p.CodigoProduto = Convert.ToInt64(Cmd.ExecuteScalar()); if (p.CodigoPrdAssociado == 0) { p.CodigoPrdAssociado = p.CodigoProduto; } if (p.CodigoBarras == "") { p.CodigoBarras = p.CodigoProduto.ToString(); } Atualizar(p); } catch (SqlException ex) { if (ex.Errors.Count > 0) // Assume the interesting stuff is in the first error { switch (ex.Errors[0].Number) { case 2601: // Primary key violation throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex); case 2627: // Primary key violation throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex); default: throw new Exception("Erro ao gravar Produto: " + ex.Message.ToString()); } } } catch (Exception ex) { throw new Exception("Erro ao gravar Produto: " + ex.Message.ToString()); } finally { FecharConexao(); } }