public bool dePedido(int idEmp, int idPed) { ItemPedidoService itemPedidoService = new ItemPedidoService(); CondicaoService condicaoService = new CondicaoService(); FreteService freteService = new FreteService(); //TB_CA_Pedidos_ped //ped_Pedido_int_PK ped_Empresa_int_FK ped_idCliente_int_FK ped_ValorTotal_mon ped_DataVenda_dtm string comandoSql = "delete from TB_CA_Pedidos_ped " + "where ped_Empresa_int_FK = " + idEmp + " AND " + "ped_Pedido_int_PK = " + idPed; //OleDbCommand commando = new OleDbCommand(comandoSql, DBService.conexao); OleDbCommand cmd = new OleDbCommand(comandoSql, DBService.conexao); try { //Abertura da conexão DBService.conexao.Open(); //Executar o comando e ler os dados retornados //cmd.ExecuteNonQuery(); int succ = cmd.ExecuteNonQuery(); if (succ == 0) { return(false); } else { bool succItem = itemPedidoService.deItensPedido(idEmp, idPed); if (!succItem) { //fazer o rotina de excluir o pedido, pois se caiu aqui, deu erro return(false); } bool succCond = condicaoService.deCondicaoPedido(idEmp, idPed); if (!succCond) { //fazer o rotina de excluir o pedido e os itensPedido, pois se caiu aqui, deu erro return(false); } bool succFret = freteService.deFretePedido(idEmp, idPed); if (!succFret) { //fazer o rotina de excluir o pedido, itensPedido e as CondicaoPedido, pois se caiu aqui, deu erro return(false); } return(true); } } catch (Exception exc) { throw new Exception(exc.Message); } finally { DBService.conexao.Close(); } }
public bool inPedido(int idEmp, PedidosModel pedido) { ItemPedidoService itemPedidoService = new ItemPedidoService(); CondicaoService condicaoService = new CondicaoService(); FreteService freteService = new FreteService(); int idNovo = 0; string comandoSql1 = "insert into TB_CA_Pedidos_ped " + "(ped_Empresa_int_FK," + "ped_idCliente_int_FK," + "ped_ValorTotal_mon," + "ped_DataVenda_dtm," + "ped_Observacao_chr," + "ped_Desconto_mon ) values ( " + idEmp.ToString() + ", " + pedido.cliente.idCliente.ToString() + ", '" + pedido.valorTotal + "', '" + pedido.dataVenda + "', '" + pedido.observacao + "', '" + pedido.desconto + "' )"; string comandoSql2 = "SELECT @@IDENTITY;"; OleDbCommand cmd = new OleDbCommand(comandoSql1, DBService.conexao); OleDbCommand cmd2 = new OleDbCommand(comandoSql2, DBService.conexao); try { //Abertura da conexão DBService.conexao.Open(); //Executar o comando e ler os dados retornados //cmd.ExecuteNonQuery(); int succ = cmd.ExecuteNonQuery(); if (succ == 0) { return(false); } else { idNovo = (int)cmd2.ExecuteScalar(); bool succItem = itemPedidoService.inItensPedido(idEmp, idNovo, pedido.Produtos); if (!succItem) { dePedido(idEmp, idNovo); itemPedidoService.deItensPedido(idEmp, idNovo); //fazer o rotina de excluir o pedido, pois se caiu aqui, deu erro return(false); } bool succCond = condicaoService.inCondicaoPedido(idEmp, idNovo, pedido.condicao); if (!succCond) { dePedido(idEmp, idNovo); itemPedidoService.deItensPedido(idEmp, idNovo); condicaoService.deCondicaoPedido(idEmp, idNovo); //fazer o rotina de excluir o pedido e os itensPedido, pois se caiu aqui, deu erro return(false); } bool succFret = freteService.inFretePedido(idEmp, idNovo, pedido.frete); if (!succFret) { dePedido(idEmp, idNovo); itemPedidoService.deItensPedido(idEmp, idNovo); condicaoService.deCondicaoPedido(idEmp, idNovo); freteService.deFretePedido(idEmp, idNovo); //fazer o rotina de excluir o pedido, itensPedido e as CondicaoPedido, pois se caiu aqui, deu erro return(false); } return(true); } } catch (Exception exc) { dePedido(idEmp, idNovo); itemPedidoService.deItensPedido(idEmp, idNovo); condicaoService.deCondicaoPedido(idEmp, idNovo); freteService.deFretePedido(idEmp, idNovo); throw new Exception(exc.Message); } finally { DBService.conexao.Close(); } }