示例#1
0
        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();
            }
        }
示例#2
0
        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();
            }
        }