Exemplo n.º 1
0
        public override bool execute( )
        {
            Registry("execute type_pf_base ");

            /// USER [ execute ]

            if (GravaNSU)
            {
                l_nsu.set_dt_log(GetDataBaseTime());

                if (!l_nsu.create_LOG_NSU())
                {
                    output_st_codResp = "80";
                    output_st_msg     = "Erro de aplicativo";
                    return(false);
                }

                var_nsu = l_nsu.get_identity();
            }

            /// USER [ execute ] END

            Registry("execute done type_pf_base ");

            return(true);
        }
Exemplo n.º 2
0
        public override bool finish( )
        {
            if (base.finish() == false)
            {
                return(false);
            }

            Registry("finish exec_depotEduImediato ");

            /// USER [ finish ]

            // ## Se falhou o authenticate (senha) não faz nada

            if (IsFail)
            {
                return(true);
            }

            // ## Busca empresa conveniada

            T_Empresa emp = new T_Empresa(this);

            if (!emp.select_rows_empresa(input_st_empresa))
            {
                return(false);
            }

            if (!emp.fetch())
            {
                return(false);
            }

            if (Convert.ToInt64(input_vr_valor) > 0)
            {
                // ## Atualiza valor atual do FUNDO EDUCACIONAL

                cart.set_vr_educacional((cart.get_int_vr_educacional()
                                         + Convert.ToInt64(input_vr_valor)).ToString());

                #region - obtem nsu -

                LOG_NSU l_nsu = new LOG_NSU(this);

                l_nsu.set_dt_log(GetDataBaseTime());

                if (!l_nsu.create_LOG_NSU())
                {
                    return(false);
                }

                #endregion

                string var_nu_nsuAtual = l_nsu.get_identity();

                // ## Cria transação representando este depósito

                LOG_Transacoes l_tr = new LOG_Transacoes(this);

                l_tr.set_fk_terminal("0");
                l_tr.set_fk_empresa(emp.get_identity());
                l_tr.set_fk_cartao(cart.get_identity());

                l_tr.set_vr_total((Convert.ToInt64(input_vr_valor)).ToString());

                l_tr.set_nu_parcelas("1");
                l_tr.set_nu_nsu(var_nu_nsuAtual);
                l_tr.set_dt_transacao(GetDataBaseTime());
                l_tr.set_nu_cod_erro("0");
                l_tr.set_tg_confirmada(TipoConfirmacao.Confirmada);
                l_tr.set_nu_nsuOrig("0");
                l_tr.set_en_operacao(OperacaoCartao.EDU_DEP_FUNDO);
                l_tr.set_st_msg_transacao("");
                l_tr.set_tg_contabil(Context.TRUE);
                l_tr.set_fk_loja("0");

                l_tr.set_vr_saldo_disp(cart.get_vr_disp_educacional());
                l_tr.set_vr_saldo_disp_tot(cart.get_vr_educacional());

                if (!l_tr.create_LOG_Transacoes())
                {
                    return(false);
                }
            }

            if (Convert.ToInt64(input_st_valor_imediato) > 0)
            {
                // ## Atualiza valor atual do DISPONIVEL IMEDIATO

                cart.set_vr_disp_educacional((cart.get_int_vr_disp_educacional() +
                                              Convert.ToInt64(input_st_valor_imediato)).ToString());

                #region - obtem nsu -

                LOG_NSU l_nsu = new LOG_NSU(this);

                l_nsu.set_dt_log(GetDataBaseTime());

                if (!l_nsu.create_LOG_NSU())
                {
                    return(false);
                }

                #endregion

                string var_nu_nsuAtual = l_nsu.get_identity();

                // ## Cria transação representando este depósito

                LOG_Transacoes l_tr = new LOG_Transacoes(this);

                l_tr.set_fk_terminal("0");
                l_tr.set_fk_empresa(emp.get_identity());
                l_tr.set_fk_cartao(cart.get_identity());

                l_tr.set_vr_total((Convert.ToInt64(input_st_valor_imediato)).ToString());

                l_tr.set_nu_parcelas("1");
                l_tr.set_nu_nsu(var_nu_nsuAtual);
                l_tr.set_dt_transacao(GetDataBaseTime());
                l_tr.set_nu_cod_erro("0");
                l_tr.set_tg_confirmada(TipoConfirmacao.Confirmada);
                l_tr.set_nu_nsuOrig("0");
                l_tr.set_en_operacao(OperacaoCartao.EDU_DEP_IMEDIATO);
                l_tr.set_st_msg_transacao("");
                l_tr.set_tg_contabil(Context.TRUE);
                l_tr.set_fk_loja("0");
                l_tr.set_vr_saldo_disp(cart.get_vr_disp_educacional());
                l_tr.set_vr_saldo_disp_tot(cart.get_vr_educacional());

                if (!l_tr.create_LOG_Transacoes())
                {
                    return(false);
                }
            }

            // ## Atualiza tabela

            if (!cart.synchronize_T_Cartao())
            {
                return(false);
            }

            PublishNote("Carga efetuada com sucesso");

            /// USER [ finish ] END

            Registry("finish done exec_depotEduImediato ");

            if (remoteTransaction == true)
            {
                return(true);
            }

            return(true);
        }
Exemplo n.º 3
0
        public override bool finish( )
        {
            Registry("finish exec_pos_desfazVendaEmpresarialSITEF ");

            /// USER [ finish ]

            // ## Copiar para saída cod de resposta

            LOG_NSU l_nsu = new LOG_NSU(this);

            l_nsu.set_dt_log(GetDataBaseTime());

            l_nsu.create_LOG_NSU();

            output_cont_pr.set_st_codResp(var_codResp);
            output_cont_pr.set_st_nsuBanco(l_nsu.get_identity());

            LOG_Transacoes l_tr_fin = new LOG_Transacoes(this);

            #region - registra a transação -

            l_tr_fin.set_fk_terminal(term.get_identity());
            l_tr_fin.set_dt_transacao(GetDataBaseTime());

            if (output_cont_pr.get_st_codResp() == "N3N3")
            {
                l_tr_fin.set_nu_cod_erro("1313");
            }
            else
            {
                l_tr_fin.set_nu_cod_erro(output_cont_pr.get_st_codResp());
            }

            l_tr_fin.set_nu_nsuOrig(l_tr.get_nu_nsu());
            l_tr_fin.set_nu_nsu(l_nsu.get_identity());
            l_tr_fin.set_st_msg_transacao("Registro: " + l_tr.get_nu_nsu());
            l_tr_fin.set_en_operacao(OperacaoCartao.VENDA_EMPRESARIAL_DESFAZ);
            l_tr_fin.set_fk_loja(term.get_fk_loja());
            l_tr_fin.set_tg_confirmada(TipoConfirmacao.Registro);
            l_tr_fin.set_tg_contabil(Context.FALSE);
            l_tr_fin.set_vr_saldo_disp(l_tr.get_vr_saldo_disp());
            l_tr_fin.set_vr_saldo_disp_tot(l_tr.get_vr_saldo_disp_tot());
            l_tr_fin.set_vr_total(l_tr.get_vr_total());
            l_tr_fin.set_fk_empresa(l_tr.get_fk_empresa());
            l_tr_fin.set_fk_loja(l_tr.get_fk_loja());
            l_tr_fin.set_fk_cartao(l_tr.get_fk_cartao());

            #endregion

            l_tr_fin.create_LOG_Transacoes();

            /// USER [ finish ] END

            Registry("finish done exec_pos_desfazVendaEmpresarialSITEF ");

            if (remoteTransaction == true)
            {
                return(true);
            }

            DataPortable dp_out = new DataPortable();

            dp_out.MapTagValue(COMM_OUT_EXEC_POS_DESFAZVENDAEMPRESARIAL.st_msg, output_st_msg);

            var_Comm.AddExitPortable(ref dp_out);

            DataPortable dp_cont_1 = new DataPortable();

            dp_cont_1.MapTagContainer(COMM_OUT_EXEC_POS_DESFAZVENDAEMPRESARIAL.pr, output_cont_pr as DataPortable);

            var_Comm.AddExitPortable(ref dp_cont_1);

            return(true);
        }
        public override bool finish( )
        {
            Registry("finish exec_pos_cancelaVendaEmpresarial ");

            /// USER [ finish ]

            #region - cria NSU -

            LOG_NSU l_nsu = new LOG_NSU(this);

            l_nsu.set_dt_log(GetDataBaseTime());

            l_nsu.create_LOG_NSU();

            #endregion

            var_nu_nsuAtual = l_nsu.get_identity();

            if (IsFail)
            {
                var_operacaoCartao = var_operacaoCartaoFail;
            }

            T_Empresa        emp  = new T_Empresa(this);
            T_Terminal       term = new T_Terminal(this);
            T_Loja           loj  = new T_Loja(this);
            T_Proprietario   prot = new T_Proprietario(this);
            T_InfoAdicionais info = new T_InfoAdicionais(this);

            // ## Busca outras tabelas

            emp.select_rows_empresa(cart.get_st_empresa());
            emp.fetch();

            term.selectIdentity(old_l_tr.get_fk_terminal());
            loj.selectIdentity(term.get_fk_loja());
            prot.selectIdentity(cart.get_fk_dadosProprietario());
            info.selectIdentity(cart.get_fk_infoAdicionais());

            // ## Copia dados para saída

            output_cont_pr.set_st_codResp(var_codResp);
            output_cont_pr.set_st_nsuRcb(var_nu_nsuAtual.PadLeft(6, '0'));

            output_cont_pr.set_st_nsuBanco(new StringBuilder().Append(DateTime.Now.Year.ToString())
                                           .Append(DateTime.Now.Month.ToString("00"))
                                           .Append(DateTime.Now.Day.ToString("00"))
                                           .Append(var_nu_nsuAtual.PadLeft(6, '0')).ToString());

            output_cont_pr.set_st_PAN(cart.get_st_empresa() +
                                      cart.get_st_matricula());

            output_cont_pr.set_st_mesPri(Context.EMPTY);

            output_cont_pr.set_st_loja(loj.get_st_loja());
            output_cont_pr.set_st_nomeCliente(prot.get_st_nome());

            if (cart.get_st_titularidade() != "01" &&
                cart.get_st_titularidade() != "")
            {
                T_Dependente dep_f = new T_Dependente(this);

                if (dep_f.select_rows_prop_tit(cart.get_fk_dadosProprietario(),
                                               cart.get_st_titularidade()))
                {
                    if (dep_f.fetch())
                    {
                        output_cont_pr.set_st_nomeCliente(dep_f.get_st_nome());
                    }
                }
            }

            output_cont_pr.set_st_variavel(info.get_st_empresaAfiliada());

            // ## Cria nova transacao de registro ou de erro
            // ## para cancelamento

            LOG_Transacoes l_tr = new LOG_Transacoes(this);

            if (IsFail)
            {
                l_tr.set_tg_confirmada(TipoConfirmacao.Erro);
            }
            else
            {
                l_tr.set_tg_confirmada(TipoConfirmacao.Cancelada);
            }

            l_tr.set_fk_terminal(term.get_identity());
            l_tr.set_fk_empresa(emp.get_identity());
            l_tr.set_fk_cartao(cart.get_identity());
            l_tr.set_vr_total(old_l_tr.get_vr_total());
            l_tr.set_nu_parcelas(old_l_tr.get_nu_parcelas());
            l_tr.set_nu_nsu(l_nsu.get_identity());
            l_tr.set_dt_transacao(GetDataBaseTime());
            l_tr.set_nu_cod_erro(output_cont_pr.get_st_codResp());
            l_tr.set_nu_nsuOrig("0");
            l_tr.set_en_operacao(var_operacaoCartao);

            // ajustado
            if (input_cont_pe.get_st_terminalSITEF().Length > 0)
            {
                l_tr.set_st_msg_transacao(input_cont_pe.get_st_terminalSITEF());
            }
            else
            {
                l_tr.set_st_msg_transacao(output_st_msg);
            }

            l_tr.set_tg_contabil(Context.FALSE);
            l_tr.set_fk_loja(term.get_fk_loja());
            l_tr.set_vr_saldo_disp(cart.get_vr_disp_educacional());
            l_tr.set_vr_saldo_disp_tot(cart.get_vr_educacional());

            // ## Cria registro

            l_tr.create_LOG_Transacoes();

            /// USER [ finish ] END

            Registry("finish done exec_pos_cancelaVendaEmpresarial ");

            if (remoteTransaction == true)
            {
                return(true);
            }

            DataPortable dp_out = new DataPortable();

            dp_out.MapTagValue(COMM_OUT_EXEC_POS_CANCELAVENDAEMPRESARIAL.st_msg, output_st_msg);

            var_Comm.AddExitPortable(ref dp_out);

            DataPortable dp_cont_1 = new DataPortable();

            dp_cont_1.MapTagContainer(COMM_OUT_EXEC_POS_CANCELAVENDAEMPRESARIAL.pr, output_cont_pr as DataPortable);

            var_Comm.AddExitPortable(ref dp_cont_1);

            return(true);
        }
        public override bool execute( )
        {
            Registry("execute exec_pos_vendaEmpresarialSITEF ");

            /// USER [ execute ]

            #region - atualizar senhas -

            cart.ExclusiveAccess();

            if (!cart.selectIdentity(cart.get_identity()))
            {
                output_st_msg = "Erro aplicativo";
                return(false);
            }

            if (!prot.selectIdentity(cart.get_fk_dadosProprietario()))
            {
                output_st_msg = "Erro aplicativo";
                return(false);
            }

            if (cart.get_st_titularidade() != "01")
            {
                T_Dependente dep = new T_Dependente(this);

                if (!dep.select_rows_prop_tit(cart.get_fk_dadosProprietario(), cart.get_st_titularidade()))
                {
                    output_st_msg = "Erro aplicativo";
                    return(false);
                }

                if (!dep.fetch())
                {
                    output_st_msg = "Erro aplicativo";
                    return(false);
                }

                var_nomeCliente = dep.get_st_nome();
            }
            else
            {
                var_nomeCliente = prot.get_st_nome();
            }

            if (IsDigitado)
            {
                string cod_acesso = new ApplicationUtil().calculaCodigoAcesso(cart.get_st_empresa(),
                                                                              cart.get_st_matricula(),
                                                                              cart.get_st_titularidade(),
                                                                              cart.get_nu_viaCartao(),
                                                                              prot.get_st_cpf());

                Trace(cod_acesso);

                if (cod_acesso != input_cont_pe.get_st_senha())
                {
                    output_st_msg = "Senha inválida";
                    var_codResp   = "4343";
                    return(false);
                }
            }
            else
            {
                if (cart.get_st_senha() != input_cont_pe.get_st_senha())
                {
                    long senhasErradas = cart.get_int_nu_senhaErrada() + 1;

                    cart.set_nu_senhaErrada(senhasErradas.ToString());

                    if (senhasErradas > 4)
                    {
                        cart.set_tg_status(CartaoStatus.Bloqueado);
                        cart.set_tg_motivoBloqueio(MotivoBloqueio.SENHA_ERRADA);
                        cart.set_dt_bloqueio(GetDataBaseTime());
                    }

                    if (!cart.synchronize_T_Cartao())
                    {
                        output_st_msg = "Erro aplicativo";
                        return(false);
                    }

                    output_st_msg = "Senha inválida";
                    var_codResp   = "4343";
                    return(false);
                }
                else
                {
                    cart.set_nu_senhaErrada(Context.NONE);
                }
            }

            if (cart.get_tg_tipoCartao() == TipoCartao.presente)
            {
                cart.set_vr_limiteTotal(cart.get_int_vr_limiteTotal() - vr_valor);

                if (!cart.synchronize_T_Cartao())
                {
                    output_st_msg = "Erro aplicativo";
                    return(false);
                }
            }

            cart.ReleaseExclusive();

            #endregion

            #region - busca informações extras -

            if (!info.selectIdentity(cart.get_fk_infoAdicionais()))
            {
                output_st_msg = "Erro aplicativo";
                return(false);
            }

            #endregion

            #region - Faz efetivamente a venda -

            int tmp_nu_parc = Convert.ToInt32(input_cont_pe.get_nu_parcelas());
            int index_pos   = 0;

            string tmp_variavel = input_cont_pe.get_st_valores();

            if (tmp_variavel.Length < tmp_nu_parc * 12)
            {
                output_st_msg = "formato incorreto";
                return(false);
            }

            if (cart.get_tg_tipoCartao() != TipoCartao.presente)
            {
                if (tmp_nu_parc > emp.get_int_nu_parcelas())
                {
                    output_st_msg = "excede max. parcelas";
                    var_codResp   = "1212";
                    return(false);
                }
            }

            #region - obtem nsu -

            l_nsu.set_dt_log(GetDataBaseTime());

            if (!l_nsu.create_LOG_NSU())
            {
                output_st_msg = "Erro aplicativo";
                return(false);
            }

            #endregion

            var_nu_nsuAtual    = l_nsu.get_identity();
            var_nu_nsuEntidade = var_nu_nsuAtual;

            var_dt_transacao = GetDataBaseTime();

            // ## Criar parcelas

            for (int t = 1; t <= tmp_nu_parc; ++t)
            {
                T_Parcelas parc = new T_Parcelas(this);

                string valor_unit_parc = tmp_variavel.Substring(index_pos, 12);

                index_pos += 12;

                #region - atribui valores e links à parcela -

                parc.set_nu_nsu(l_nsu.get_identity());
                parc.set_fk_empresa(emp.get_identity());
                parc.set_fk_cartao(cart.get_identity());
                parc.set_dt_inclusao(var_dt_transacao);
                parc.set_nu_parcela(t.ToString());
                parc.set_vr_valor(valor_unit_parc);
                parc.set_nu_indice(t.ToString());
                parc.set_tg_pago(TipoParcela.EM_ABERTO);
                parc.set_fk_loja(loj.get_identity());
                parc.set_nu_tot_parcelas(tmp_nu_parc.ToString());
                parc.set_fk_terminal(term.get_identity());

                #endregion

                if (!parc.create_T_Parcelas())
                {
                    output_st_msg = "erro aplicativo";
                    return(false);
                }

                lstParcs.Add(parc.get_identity());
            }

            #endregion

            var_codResp = "0000";

            /// USER [ execute ] END

            Registry("execute done exec_pos_vendaEmpresarialSITEF ");

            return(true);
        }
Exemplo n.º 6
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute schedule_educacional ");

            /// USER [ execute ]

            T_Cartao cart     = new T_Cartao(this);
            T_Cartao upd_cart = new T_Cartao(this);

            T_Empresa emp   = new T_Empresa(this);
            LOG_NSU   l_nsu = new LOG_NSU(this);

            DateTime t_today = DateTime.Now;

            bool fimdeSemana = false;

            if (t_today.DayOfWeek == DayOfWeek.Saturday ||
                t_today.DayOfWeek == DayOfWeek.Sunday)
            {
                fimdeSemana = true;
            }

            if (cart.select_rows_tipo(TipoCartao.educacional))
            {
                while (cart.fetch())
                {
                    if (cart.get_tg_semanaCompleta() != Context.TRUE)
                    {
                        if (fimdeSemana)
                        {
                            continue;
                        }
                    }

                    if (upd_cart.selectIdentity(cart.get_identity()))
                    {
                        long depot = upd_cart.get_int_vr_educacional();
                        long disp  = upd_cart.get_int_vr_disp_educacional();

                        long diario = upd_cart.get_int_vr_edu_diario();

                        if (diario == 0)
                        {
                            continue;
                        }

                        depot -= diario;
                        disp  += diario;

                        if (depot < 0)
                        {
                            disp += depot;
                            depot = 0;
                        }

                        upd_cart.set_vr_educacional(depot.ToString());
                        upd_cart.set_vr_disp_educacional(disp.ToString());

                        upd_cart.synchronize_T_Cartao();

                        emp.select_rows_empresa(upd_cart.get_st_empresa());
                        emp.fetch();

                        l_nsu.set_dt_log(GetDataBaseTime());

                        l_nsu.create_LOG_NSU();

                        LOG_Transacoes l_tr = new LOG_Transacoes(this);

                        l_tr.set_fk_terminal("0");
                        l_tr.set_fk_empresa(emp.get_identity());
                        l_tr.set_fk_cartao(upd_cart.get_identity());
                        l_tr.set_vr_total(diario.ToString());
                        l_tr.set_nu_parcelas("1");
                        l_tr.set_nu_nsu(l_nsu.get_identity());
                        l_tr.set_dt_transacao(GetDataBaseTime());
                        l_tr.set_nu_cod_erro("0");
                        l_tr.set_tg_confirmada(TipoConfirmacao.Confirmada);
                        l_tr.set_nu_nsuOrig("0");
                        l_tr.set_en_operacao(OperacaoCartao.EDU_DEP_DIARIO);
                        l_tr.set_st_msg_transacao("");
                        l_tr.set_tg_contabil(Context.TRUE);
                        l_tr.set_fk_loja("0");

                        l_tr.set_vr_saldo_disp(upd_cart.get_vr_disp_educacional());
                        l_tr.set_vr_saldo_disp_tot(upd_cart.get_vr_educacional());

                        l_tr.create_LOG_Transacoes();
                    }
                }
            }

            /// USER [ execute ] END

            Registry("execute done schedule_educacional ");

            return(true);
        }