Exemplo n.º 1
0
        public static string Gravar(TRegistro_PreVenda_Item val, BancoDados.TObjetoBanco banco)
        {
            bool st_transacao         = false;
            TCD_PreVenda_Item qtb_orc = new TCD_PreVenda_Item();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_orc.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_orc.Banco_Dados = banco;
                }

                if (val.tapTransactions != null)
                {
                    val.Ch_torneira = val.tapTransactions.cardId.ToString() + "|" + val.tapTransactions.tstStart.ToString() + "|" + val.tapTransactions.plu.ToString();
                }
                string ret = qtb_orc.Gravar(val);
                val.id_prevenda = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(ret, "@P_ID_PREVENDA"));
                val.id_item     = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(ret, "@P_ID_ITEM"));

                val.lSabores.ForEach(p =>
                {
                    p.Cd_Empresa  = val.Cd_empresa;
                    p.Id_PreVenda = val.id_prevenda;
                    p.Id_Item     = val.id_item;

                    if (!string.IsNullOrEmpty(p.ID_Sabor.ToString()))
                    {
                        TCN_SaboresItens.Gravar(p, qtb_orc.Banco_Dados);
                    }
                });

                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.Commit_Tran();
                }
                return(val.id_prevenda.ToString());
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar pre venda: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_orc.deletarBanco_Dados();
                }
            }
        }
Exemplo n.º 2
0
        public static string ExcluirC(TRegistro_PreVenda_Item val, BancoDados.TObjetoBanco banco)
        {
            bool st_transacao         = false;
            TCD_PreVenda_Item qtb_orc = new TCD_PreVenda_Item();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_orc.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_orc.Banco_Dados = banco;
                }
                //Verificar se existir itens filhos
                new TCD_PreVenda_Item(qtb_orc.Banco_Dados).Select(
                    new TpBusca[]
                {
                    new TpBusca()
                    {
                        vNM_Campo = "a.cd_empresa",
                        vOperador = "=",
                        vVL_Busca = "'" + val.Cd_empresa.Trim() + "'"
                    },
                    new TpBusca()
                    {
                        vNM_Campo = "a.ID_PreVenda",
                        vOperador = "=",
                        vVL_Busca = val.id_prevenda.ToString()
                    },
                    new TpBusca()
                    {
                        vNM_Campo = "a.ID_ItemPaiAdic",
                        vOperador = "=",
                        vVL_Busca = val.id_item.ToString()
                    }    //Excluir Itens Filhos
                }, 0, string.Empty).ForEach(p =>
                {
                    p.st_registro = "C";
                    qtb_orc.Gravar(p);
                });
                val.lSabores.ForEach(p =>
                {
                    TCN_SaboresItens.Excluir(p, qtb_orc.Banco_Dados);
                });

                //Cancelamento das movimentações boliche
                TList_MovBoliche _MovBoliches = TCN_MovBoliche.Buscar(val.Cd_empresa,
                                                                      string.Empty,
                                                                      string.Empty,
                                                                      string.Empty,
                                                                      val.id_prevenda.ToString(),
                                                                      val.id_item.ToString(),
                                                                      null);
                _MovBoliches.ForEach(r =>
                {
                    r.Cancelado = true;
                    r.LoginCanc = val.LoginCanc;
                    new TCD_MovBoliche(qtb_orc.Banco_Dados).Gravar(r);
                });

                qtb_orc.Gravar(val);
                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir pre venda item: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_orc.deletarBanco_Dados();
                }
            }
        }
Exemplo n.º 3
0
        public static string Gravar(TRegistro_PreVenda val, BancoDados.TObjetoBanco banco)
        {
            bool         st_transacao = false;
            TCD_PreVenda qtb_orc      = new TCD_PreVenda();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_orc.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_orc.Banco_Dados = banco;
                }
                string ret = qtb_orc.Gravar(val);
                val.id_prevenda = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(ret, "@P_ID_PREVENDA"));

                //Comentado pos item já esta sendo cancelado pela tela de pre-venda do restaurante,
                //Código poderá ser reaproveitado quando item não for gravado na hora do lançamento.
                //val.lDelItens.ForEach(p =>
                //{
                //    p.id_prevenda = val.id_prevenda;
                //    TCN_PreVenda_Item.Excluir(p, qtb_orc.Banco_Dados);
                //});

                val.lItens.ForEach(p =>
                {
                    p.id_prevenda = val.id_prevenda;
                    TCN_PreVenda_Item.Gravar(p, qtb_orc.Banco_Dados);
                    p.lSabores.ForEach(o =>
                    {
                        o.Id_PreVenda = val.id_prevenda;
                        o.Cd_Empresa  = val.Cd_empresa;
                        if (!string.IsNullOrEmpty(o.Id_ItemStr))
                        {
                            TCN_SaboresItens.Gravar(o, qtb_orc.Banco_Dados);
                        }
                    });
                });

                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.Commit_Tran();
                }
                return(val.id_prevenda.ToString());
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar pre venda: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_orc.deletarBanco_Dados();
                }
            }
        }