Esempio n. 1
0
        public static string Gravar(TRegistro_ResgatePontos val, BancoDados.TObjetoBanco banco)
        {
            bool st_transacao         = false;
            TCD_ResgatePontos qtb_res = new TCD_ResgatePontos();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_res.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_res.Banco_Dados = banco;
                }
                val.Id_resgatestr = CamadaDados.TDataQuery.getPubVariavel(qtb_res.Gravar(val), "@P_ID_RESGATE");
                if (st_transacao)
                {
                    qtb_res.Banco_Dados.Commit_Tran();
                }
                return(val.Id_resgatestr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_res.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar resgate: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_res.deletarBanco_Dados();
                }
            }
        }
Esempio n. 2
0
        public static string Excluir(TRegistro_ResgatePontos val, BancoDados.TObjetoBanco banco)
        {
            bool st_transacao         = false;
            TCD_ResgatePontos qtb_res = new TCD_ResgatePontos();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_res.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_res.Banco_Dados = banco;
                }
                qtb_res.Excluir(val);
                if (st_transacao)
                {
                    qtb_res.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_res.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir resgate: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_res.deletarBanco_Dados();
                }
            }
        }
Esempio n. 3
0
        public static string Excluir(TRegistro_PontosFidelidade val, BancoDados.TObjetoBanco banco)
        {
            bool st_transacao = false;
            TCD_PontosFidelidade qtb_pontos = new TCD_PontosFidelidade();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_pontos.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_pontos.Banco_Dados = banco;
                }
                //Verificar se ja houve resgate para os pontos
                object obj = new TCD_ResgatePontos(qtb_pontos.Banco_Dados).BuscarEscalar(
                    new TpBusca[]
                {
                    new TpBusca()
                    {
                        vNM_Campo = "a.cd_empresa",
                        vOperador = "=",
                        vVL_Busca = "'" + val.Cd_empresa.Trim() + "'"
                    },
                    new TpBusca()
                    {
                        vNM_Campo = "a.id_ponto",
                        vOperador = "=",
                        vVL_Busca = val.Id_pontostr
                    },
                    new TpBusca()
                    {
                        vNM_Campo = "isnull(a.st_registro, 'A')",
                        vOperador = "<>",
                        vVL_Busca = "'C'"
                    }
                }, "1");
                if (obj != null)
                {
                    if (string.IsNullOrEmpty(val.LoginCanc))
                    {
                        throw new Exception("Não é permitido cancelar pontos resgatados.");
                    }
                    else
                    {
                        new TCD_ValeResgate(qtb_pontos.Banco_Dados).Select(
                            new TpBusca[]
                        {
                            new TpBusca()
                            {
                                vNM_Campo = "isnull(a.st_registro, 'A')",
                                vOperador = "<>",
                                vVL_Busca = "'C'"
                            },
                            new TpBusca()
                            {
                                vNM_Campo = string.Empty,
                                vOperador = "exists",
                                vVL_Busca = "(select 1 from tb_fat_resgatepontos x " +
                                            "where x.cd_empresa = a.cd_empresa " +
                                            "and x.id_vale = a.id_vale " +
                                            "and x.cd_empresa = '" + val.Cd_empresa.Trim() + "' " +
                                            "and x.id_ponto = " + val.Id_pontostr + ")"
                            }
                        }, 0, string.Empty).ForEach(p =>
                        {
                            p.Logincanc = val.LoginCanc;
                            TCN_ValeResgate.Excluir(p, qtb_pontos.Banco_Dados);
                        });
                    }
                }
                qtb_pontos.Excluir(val);
                if (st_transacao)
                {
                    qtb_pontos.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_pontos.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir registro: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_pontos.deletarBanco_Dados();
                }
            }
        }