Beispiel #1
0
        public override bool authenticate( )
        {
            if (base.authenticate() == false)
            {
                return(false);
            }

            Registry("authenticate exec_alteraCartao ");

            /// USER [ authenticate ]

            cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            // ## Busca cartão específico

            if (!cart.select_rows_empresa_matricula(input_cont_dc.get_st_empresa(),
                                                    input_cont_dc.get_st_matricula()))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            /// USER [ authenticate ] END

            Registry("authenticate done exec_alteraCartao ");

            return(true);
        }
        public override bool authenticate( )
        {
            Registry("authenticate web_fetch_edu_emp_hist ");

            /// USER [ authenticate ]

            input_st_cartao = input_st_cartao.PadLeft(14, '0');

            T_Cartao cart = new T_Cartao(this);

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            if (cart.get_st_senha() != input_st_senha)
            {
                PublishError("Senha aluno inválida");
                return(false);
            }

            /// USER [ authenticate ] END

            Registry("authenticate done web_fetch_edu_emp_hist ");

            return(true);
        }
Beispiel #3
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute exec_depotEduImediato ");

            /// USER [ execute ]

            // ## Busca cartão específico

            cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            if (!cart.select_rows_tudo(input_st_empresa, input_st_cartao, "01"))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            /// USER [ execute ] END

            Registry("execute done exec_depotEduImediato ");

            return(true);
        }
Beispiel #4
0
        public override bool execute( )
        {
            Registry("execute web_fetch_saldo_edu ");

            /// USER [ execute ]

            input_st_cartao = input_st_cartao.PadLeft(14, '0');

            T_Cartao cart = new T_Cartao(this);

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            if (input_tg_resp == Context.TRUE)
            {
                T_Proprietario prot = new T_Proprietario(this);

                if (!prot.selectIdentity(cart.get_fk_dadosProprietario()))
                {
                    return(false);
                }

                if (prot.get_st_senhaEdu() != input_st_senha)
                {
                    PublishError("Senha responsável inválida");
                    return(false);
                }
            }
            else
            {
                if (cart.get_st_senha() != input_st_senha)
                {
                    PublishError("Senha aluno inválida");
                    return(false);
                }
            }

            output_cont_dce.set_st_aluno(cart.get_st_aluno());
            output_cont_dce.set_vr_diario(cart.get_vr_edu_diario());
            output_cont_dce.set_vr_disp(cart.get_vr_disp_educacional());
            output_cont_dce.set_vr_depot(cart.get_vr_educacional());
            output_cont_dce.set_tg_semanaToda(cart.get_tg_semanaCompleta());

            /// USER [ execute ] END

            Registry("execute done web_fetch_saldo_edu ");

            return(true);
        }
        public override bool authenticate( )
        {
            if (base.authenticate() == false)
            {
                return(false);
            }

            Registry("authenticate ins_cartaoProprietario ");

            /// USER [ authenticate ]

            cart = new T_Cartao(this);
            prot = new T_Proprietario(this);

            string empresa   = input_cont_dc.get_st_empresa().PadLeft(6, '0');
            string matricula = input_cont_dc.get_st_matricula().PadLeft(6, '0');

            if (input_cont_dc.get_tg_tipoCartao() != TipoCartao.presente)
            {
                if (cart.select_rows_empresa_matricula(empresa, matricula))
                {
                    PublishError(Erro.CartaoExiste);
                    return(false);
                }
            }
            else
            {
                if (!cart.select_rows_empresa_matricula(empresa, matricula))
                {
                    PublishError("Cartão inexistente");
                    return(false);
                }

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

                if (cart.get_tg_emitido() != StatusExpedicao.Expedido)
                {
                    PublishError("Cartão não expedido");
                    return(false);
                }

                if (cart.get_fk_dadosProprietario() != Context.NONE)
                {
                    PublishError("Cartão previamente adquirido");
                    return(false);
                }
            }

            /// USER [ authenticate ] END

            Registry("authenticate done ins_cartaoProprietario ");

            return(true);
        }
Beispiel #6
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute exec_validGift ");

            /// USER [ execute ]

            T_Cartao cart = new T_Cartao(this);

            input_st_empresa   = input_st_empresa.PadLeft(6, '0');
            input_st_matricula = input_st_matricula.PadLeft(6, '0');

            if (!cart.select_rows_empresa_matricula(input_st_empresa,
                                                    input_st_matricula))
            {
                PublishError("Cartão não disponível");
                return(false);
            }

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

            ApplicationUtil util = new ApplicationUtil();

            string cod_acesso = util.calculaCodigoAcesso(cart.get_st_empresa(),
                                                         cart.get_st_matricula(),
                                                         cart.get_st_venctoCartao());

            Trace(cod_acesso);

            if (input_st_acesso != cod_acesso)
            {
                PublishError("Código de acesso inválido");
                return(false);
            }

            if (input_tg_recarga == Context.TRUE)
            {
                if (cart.get_fk_dadosProprietario() == Context.NONE)
                {
                    PublishError("Cartão previamente adquirido");
                    return(false);
                }
            }

            /// USER [ execute ] END

            Registry("execute done exec_validGift ");

            return(true);
        }
Beispiel #7
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute exec_edu_segundaVia ");

            /// USER [ execute ]

            // ## Busca cartão específico

            T_Cartao cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            // ## incrementa via de cartão e seta como não expedido,
            // ## ou seja, precisa vir da gráfica e ser testado

            cart.set_nu_viaCartao((cart.get_int_nu_viaCartao() + 1).ToString());
            cart.set_tg_emitido(StatusExpedicao.NaoExpedido);

            cart.set_st_venctoCartao(DateTime.Now.AddYears(5).Month.ToString().PadLeft(2, '0') +
                                     DateTime.Now.AddYears(5).Year.ToString().Substring(2, 2));

            // ## Atualiza

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

            PublishNote("Segunda via requerida ao cartao " + input_st_cartao + ".");

            /// USER [ execute ] END

            Registry("execute done exec_edu_segundaVia ");

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

            /// USER [ execute ]

            StringBuilder sb = new StringBuilder();

            T_Cartao  cart = new T_Cartao(this);
            T_Empresa emp  = new T_Empresa(this);

            if (cart.select_rows_ranking(TipoCartao.educacional))
            {
                while (cart.fetch())
                {
                    if (cart.get_int_nu_rankVirtual() > 0)
                    {
                        DadosRanking rnk = new DadosRanking();

                        string nome = "";

                        if (emp.select_rows_empresa(cart.get_st_empresa()))
                        {
                            if (emp.fetch())
                            {
                                nome += emp.get_st_fantasia() + " - ";
                            }
                        }

                        nome += cart.get_st_aluno();

                        rnk.set_st_pos(cart.get_nu_rankVirtual());
                        rnk.set_st_nome(nome);
                        rnk.set_vr_valor(cart.get_vr_edu_total_ranking());

                        DataPortable mem_rtc = rnk as DataPortable;

                        string index = MemorySave(ref mem_rtc);

                        sb.Append(index);
                        sb.Append(",");
                    }
                }

                output_st_csv = sb.ToString().TrimEnd(',');
            }

            /// USER [ execute ] END

            Registry("execute done web_fetch_edu_ranking ");

            return(true);
        }
Beispiel #9
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute fetch_empresasGrafica ");

            /// USER [ execute ]

            T_Cartao  cart = new T_Cartao(this);
            T_Empresa emp  = new T_Empresa(this);

            if (emp.selectAll())
            {
                while (emp.fetch())
                {
                    bool Found = false;

                    if (cart.select_rows_empresa(emp.get_st_empresa()))
                    {
                        while (cart.fetch())
                        {
                            if (cart.get_tg_emitido() == StatusExpedicao.NaoExpedido)
                            {
                                Found = true;
                                break;
                            }
                        }
                    }

                    if (Found)
                    {
                        DadosEmpresa de = new DadosEmpresa();

                        de.set_st_empresa(emp.get_st_empresa());
                        de.set_st_fantasia(emp.get_st_fantasia());

                        output_array_generic_lst.Add(de);
                    }
                }
            }

            /// USER [ execute ] END

            Registry("execute done fetch_empresasGrafica ");

            return(true);
        }
Beispiel #10
0
        public override bool authenticate( )
        {
            if (base.authenticate() == false)
            {
                return(false);
            }

            Registry("authenticate exec_alteraSenhaCartao ");

            /// USER [ authenticate ]

            // ## Prepara dados

            input_st_cart_empresa = input_st_cart_empresa.PadLeft(6, '0');
            input_st_cart_mat     = input_st_cart_mat.PadLeft(6, '0');
            input_st_cart_tit     = input_st_cart_tit.PadLeft(2, '0');

            cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            // ## Obtem cartão especifico

            if (!cart.select_rows_tudo(input_st_cart_empresa,
                                       input_st_cart_mat,
                                       input_st_cart_tit))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            // ## Confere senhas

            if (cart.get_st_senha() == input_st_novaSenha)
            {
                PublishError("Nova senha deve ser diferente da atual");
                return(false);
            }

            /// USER [ authenticate ] END

            Registry("authenticate done exec_alteraSenhaCartao ");

            return(true);
        }
Beispiel #11
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute fetch_listaCartoes ");

            /// USER [ execute ]

            T_Cartao       cart = new T_Cartao(this);
            T_Proprietario prot = new T_Proprietario(this);

            for (int t = 0; t < var_util.indexCSV(input_st_csv_cartoes); ++t)
            {
                if (!cart.selectIdentity(var_util.getCSV(t)))
                {
                    return(false);
                }

                if (!prot.selectIdentity(cart.get_fk_dadosProprietario()))
                {
                    return(false);
                }

                DadosCartao dc = new DadosCartao();

                dc.set_st_proprietario(prot.get_st_nome());

                dc.set_st_empresa(cart.get_st_empresa());
                dc.set_st_matricula(cart.get_st_matricula());
                dc.set_tg_status(cart.get_tg_status());
                dc.set_st_vencimento(cart.get_st_venctoCartao());

                dc.set_vr_limiteTotal(cart.get_vr_limiteTotal());
                dc.set_vr_limiteMensal(cart.get_vr_limiteMensal());
                dc.set_vr_limiteRotativo(cart.get_vr_limiteRotativo());
                dc.set_vr_extraCota(cart.get_vr_extraCota());

                output_array_generic_lst.Add(dc);
            }

            /// USER [ execute ] END

            Registry("execute done fetch_listaCartoes ");

            return(true);
        }
Beispiel #12
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute exec_edu_cancelaCartao ");

            /// USER [ execute ]

            // ## Busca cartão específico

            T_Cartao cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            // ## Bloqueia

            cart.set_tg_status(CartaoStatus.Bloqueado);

            // ## Atualiza

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

            PublishNote("Cartão " + input_st_cartao + " cancelado.");

            /// USER [ execute ] END

            Registry("execute done exec_edu_cancelaCartao ");

            return(true);
        }
Beispiel #13
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute exec_edu_alteraDiario ");

            /// USER [ execute ]

            input_st_cartao = input_st_cartao.PadLeft(14, '0');

            // ## busca cartão específico

            cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            // ## Atualiza valor diário para cartão educacional

            cart.set_vr_edu_diario(input_vr_diario);

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

            PublishNote("Limite diario alterado com sucesso");

            /// USER [ execute ] END

            Registry("execute done exec_edu_alteraDiario ");

            return(true);
        }
        public override bool authenticate( )
        {
            if (base.authenticate() == false)
            {
                return(false);
            }

            Registry("authenticate fetch_rel_edu_extrato ");

            /// USER [ authenticate ]


            T_Cartao cart = new T_Cartao(this);

            if (!cart.select_rows_tudo(input_st_emp,                    // empresa
                                       input_st_mat,                    // matricula
                                       "01"))                           // titularidade
            {
                PublishError("Cartão inválido");
                return(true);
            }
            else
            {
                if (!cart.fetch())
                {
                    return(false);
                }

                st_cart_id = cart.get_identity();
            }

            // ## Busca todas transações do cartão no período

            l_tr = new LOG_Transacoes(this);

            if (!l_tr.select_rows_dt_cart(input_st_dt_ini,
                                          input_st_dt_fim,
                                          st_cart_id))
            {
                PublishError("Nenhum registro encontrado");
                return(false);
            }

            /// USER [ authenticate ] END

            Registry("authenticate done fetch_rel_edu_extrato ");

            return(true);
        }
Beispiel #15
0
        public override bool finish( )
        {
            if (base.finish() == false)
            {
                return(false);
            }

            Registry("finish load_edu ");

            /// USER [ finish ]

            T_Cartao         cart     = new T_Cartao(this);
            T_Cartao         cart_upd = new T_Cartao(this);
            T_InfoAdicionais info     = new T_InfoAdicionais(this);

            if (cart.select_rows_empresa(escola))
            {
                while (cart.fetch())
                {
                    if (info.selectIdentity(cart.get_fk_infoAdicionais()))
                    {
                        if (info.get_dt_edu_atualizacao() != dt_atual)
                        {
                            cart_upd.ExclusiveAccess();

                            if (cart_upd.selectIdentity(cart.get_identity()))
                            {
                                cart_upd.set_tg_status(CartaoStatus.EmDesativacao);

                                cart_upd.synchronize_T_Cartao();
                                cart_upd.ReleaseExclusive();
                            }
                        }
                    }
                }
            }

            /// USER [ finish ] END

            Registry("finish done load_edu ");

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

            return(true);
        }
Beispiel #16
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute exec_segundaVia ");

            /// USER [ execute ]

            T_Cartao cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            if (!cart.select_rows_tudo(input_st_empresa, input_st_mat, input_st_tit))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            if (cart.get_tg_status() == CartaoStatus.Bloqueado)
            {
                PublishError("Este cartão está bloqueado");
                return(false);
            }

            cart.set_nu_viaCartao(cart.get_int_nu_viaCartao() + 1);
            cart.set_tg_emitido(StatusExpedicao.NaoExpedido);

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

            PublishNote("Segunda via requerida");

            /// USER [ execute ] END

            Registry("execute done exec_segundaVia ");

            return(true);
        }
Beispiel #17
0
        public override bool authenticate( )
        {
            Registry("authenticate exec_pos_confirmaVendaEmpresarial ");

            /// USER [ authenticate ]

            input_st_nsu = input_st_nsu.PadLeft(6, '0');

            old_l_tr = new LOG_Transacoes(this);

            old_l_tr.ExclusiveAccess();

            // ## Busca NSU de hoje para
            // ## confirmação de cancelamento

            if (!old_l_tr.select_rows_nsu_oper(input_st_nsu,
                                               OperacaoCartao.VENDA_EMPRESARIAL,
                                               GetTodayStartTime(),
                                               GetTodayEndTime()))
            {
                output_st_msg = "NSU inválido (" + input_st_nsu.TrimStart('0') + ")";
                return(false);
            }

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

            // ## Busca cartão envolvido na transação

            cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            if (!cart.selectIdentity(old_l_tr.get_fk_cartao()))
            {
                return(false);
            }

            var_nu_nsuAtual = input_st_nsu;

            /// USER [ authenticate ] END

            Registry("authenticate done exec_pos_confirmaVendaEmpresarial ");

            return(true);
        }
		public override bool execute ( ) 
		{
			if ( base.execute() == false) return false;
			
			Registry ( "execute fetch_proprietarioGift " ); 
		
			/// USER [ execute ]
			
			T_Cartao cart = new T_Cartao (this);
			
			if ( !cart.select_rows_empresa_matricula ( input_cont_header.get_st_empresa(), 
			                                           input_st_matricula.PadLeft ( 6, '0' ) ) )
			{
				PublishError ( "Cartão inválido" );
				return false;
			}
			
			if ( !cart.fetch() )
				return false;
			
			if ( cart.get_fk_dadosProprietario() == Context.NONE )
			{
				PublishError ( "Cartão inválido" );
				return false;
			}			
			
			T_Proprietario prot = new T_Proprietario (this);
			
			if ( !prot.selectIdentity ( cart.get_fk_dadosProprietario() ) )
			{
				PublishError ( "Cartão inválido" );
				return false;
			}
			
			output_cont_dp.set_st_nome 		( prot.get_st_nome() 		);
			output_cont_dp.set_st_cpf		( prot.get_st_cpf() 		);
			output_cont_dp.set_st_telefone 	( prot.get_st_telefone() 	);
			output_cont_dp.set_st_endereco 	( prot.get_st_endereco() 	);
						
			/// USER [ execute ] END
		
			Registry ( "execute done fetch_proprietarioGift " ); 
		
			return true;
		}
        public override bool execute( )
        {
            Registry("execute web_exec_confirmaBoleto ");

            /// USER [ execute ]

            T_BoletoEdu bol = new T_BoletoEdu(this);

            bol.set_dt_emissao(GetDataBaseTime());
            bol.set_vr_educacional(input_vr_fundoEdu);
            bol.set_vr_imediato(input_vr_imediato);

            T_Cartao cart = new T_Cartao(this);

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),                         // empresa
                                       input_st_cartao.Substring(6, 6),                         // matricula
                                       input_st_cartao.Substring(12, 2)))                       // titularidade
            {
                PublishError("Cartão inválido");
                return(false);
            }
            else
            {
                if (!cart.fetch())
                {
                    return(false);
                }
            }

            bol.set_fk_cartao(cart.get_identity());

            if (!bol.create_T_BoletoEdu())
            {
                return(false);
            }

            output_st_id = bol.get_identity();

            /// USER [ execute ] END

            Registry("execute done web_exec_confirmaBoleto ");

            return(true);
        }
Beispiel #20
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute fetch_dadosAluno ");

            /// USER [ execute ]

            input_st_cartao = input_st_cartao.PadLeft(14, '0');

            T_Cartao cart = new T_Cartao(this);

            // ## Busca dados de cartão específico de aluno

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            // ## Copia para saída

            output_cont_dce.set_st_aluno(cart.get_st_aluno());
            output_cont_dce.set_vr_diario(cart.get_vr_edu_diario());
            output_cont_dce.set_vr_disp(cart.get_vr_disp_educacional());
            output_cont_dce.set_vr_depot(cart.get_vr_educacional());

            /// USER [ execute ] END

            Registry("execute done fetch_dadosAluno ");

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

            /// USER [ execute ]

            input_st_cartao = input_st_cartao.PadLeft(14, '0');

            T_Cartao cart = new T_Cartao(this);

            cart.ExclusiveAccess();

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            cart.set_vr_edu_diario(input_vr_dispDiario);
            cart.set_tg_semanaCompleta(input_tg_semanaToda);

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

            PublishNote("Crédito diário de aluno alterado com sucesso para R$ " + new money().formatToMoney(cart.get_vr_edu_diario()));

            /// USER [ execute ] END

            Registry("execute done web_exec_trocaLim ");

            return(true);
        }
Beispiel #22
0
        public override bool authenticate( )
        {
            if (base.authenticate() == false)
            {
                return(false);
            }

            Registry("authenticate ins_payFone ");

            /// USER [ authenticate ]

            input_st_pf_empresa = input_st_pf_empresa.PadLeft(6, '0');
            input_st_pf_mat     = input_st_pf_mat.PadLeft(6, '0');

            cart = new T_Cartao(this);

            if (!cart.select_rows_empresa_matricula(input_st_pf_empresa, input_st_pf_mat))
            {
                PublishError("Cartão inválido");
                return(false);
            }

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

            if (cart.get_tg_tipoCartao() == TipoCartao.presente)
            {
                PublishError("Cartão de presente não faz operações em Pay Fone");
                return(false);
            }

            /// USER [ authenticate ] END

            Registry("authenticate done ins_payFone ");

            return(true);
        }
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute fetch_cartoes_grafica ");

            /// USER [ execute ]

            StringBuilder sb = new StringBuilder();

            T_Cartao       cart     = new T_Cartao(this);
            T_Cartao       cart_upd = new T_Cartao(this);
            T_Proprietario prot     = new T_Proprietario(this);
            T_Empresa      emp      = new T_Empresa(this);

            ApplicationUtil util = new ApplicationUtil();

            // ## Busca empresa informada

            if (!emp.select_rows_empresa(input_st_empresa))
            {
                PublishError("Empresa inválida");
                return(false);
            }

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

            string nome_empresa = emp.get_st_fantasia().PadRight(25, ' ');

            // ## Busca todos cartões vinculados à empresa

            if (cart.select_rows_empresa(input_st_empresa))
            {
                while (cart.fetch())
                {
                    // ## Se cartão não estiver expedido...

                    if (cart.get_tg_emitido() == StatusExpedicao.NaoExpedido)
                    {
                        DadosExpedicao port = new DadosExpedicao();

                        string line = "+";

                        string nome = "";

                        if (cart.get_tg_tipoCartao() == TipoCartao.presente)
                        {
                            nome = "";
                        }
                        else
                        {
                            if (!prot.selectIdentity(cart.get_fk_dadosProprietario()))
                            {
                                return(false);
                            }

                            nome = prot.get_st_nome();

                            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())
                                {
                                    nome = dep_f.get_st_nome();
                                }
                            }
                        }

                        line += nome + ",";
                        line += cart.get_st_empresa() + ",";
                        line += cart.get_st_matricula() + ",";

                        cart.set_st_venctoCartao(cart.get_st_venctoCartao().PadLeft(4, '0'));

                        line += cart.get_st_venctoCartao().Substring(0, 2) + "/" +
                                cart.get_st_venctoCartao().Substring(2, 2) + ",";

                        if (cart.get_tg_tipoCartao() == TipoCartao.presente)
                        {
                            line += util.calculaCodigoAcesso(cart.get_st_empresa(),
                                                             cart.get_st_matricula(),
                                                             cart.get_st_venctoCartao());
                        }
                        else
                        {
                            line += util.calculaCodigoAcesso(cart.get_st_empresa(),
                                                             cart.get_st_matricula(),
                                                             cart.get_st_titularidade(),
                                                             cart.get_nu_viaCartao(),
                                                             prot.get_st_cpf());
                        }

                        line += ",";
                        line += nome + ",";

                        // # Trilha

                        line += "|";

                        line += "826766" + cart.get_st_empresa() +
                                cart.get_st_matricula() +
                                cart.get_st_titularidade() +
                                cart.get_nu_viaCartao() +
                                "65" + cart.get_st_venctoCartao();

                        line += "|";

                        port.set_st_line(line);

                        // ## Salva em memória

                        DataPortable mem_port = port as DataPortable;

                        sb.Append(MemorySave(ref mem_port));
                        sb.Append(",");

                        // ## Atualiza estado do cartão para 'em expedição'

                        cart_upd.ExclusiveAccess();

                        if (!cart_upd.selectIdentity(cart.get_identity()))
                        {
                            return(false);
                        }

                        cart_upd.set_tg_emitido(StatusExpedicao.EmExpedicao);

                        // ## Atualiza

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

                        cart_upd.ReleaseExclusive();
                    }
                }
            }

            // ## Gera bloco de linhas em um identificador

            string list_ids = sb.ToString().TrimEnd(',');

            if (list_ids == "")
            {
                PublishError("Nenhum cartão encontrado para ser expedido à grafica");
                return(false);
            }

            DataPortable dp = new DataPortable();

            dp.setValue("ids", list_ids);

            // ## Copia para saída

            output_st_csv = MemorySave(ref dp);

            /// USER [ execute ] END

            Registry("execute done fetch_cartoes_grafica ");

            return(true);
        }
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute fetch_consultaCartaoGift ");

            /// USER [ execute ]

            T_Cartao cart = new T_Cartao(this);

            if (!cart.select_rows_empresa_matricula(input_st_empresa.PadLeft(6, '0'),
                                                    input_st_matricula.PadLeft(6, '0')))
            {
                PublishError("Cartão não disponível");
                return(false);
            }

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

            if (cart.get_tg_status() == CartaoStatus.Bloqueado)
            {
                if (cart.get_tg_motivoBloqueio() == MotivoBloqueio.CANCELAMENTO)
                {
                    output_st_sit = "Cartão cancelado";
                }
                else
                {
                    output_st_sit = "Cartão bloqueado";
                }
            }
            else
            {
                output_st_sit = "Cartão habilitado";
            }

            T_Proprietario prot = new T_Proprietario(this);

            if (!prot.selectIdentity(cart.get_fk_dadosProprietario()))
            {
                PublishError("Cartão não disponível");
                return(false);
            }

            output_st_nome = prot.get_st_nome();
            output_vr_disp = cart.get_vr_limiteTotal();

            LOG_VendaCartaoGift  lvc = new LOG_VendaCartaoGift(this);
            LOG_VendaProdutoGift lvp = new LOG_VendaProdutoGift(this);

            if (lvc.select_fk_cart(cart.get_identity()))
            {
                while (lvc.fetch())
                {
                    DadosConsultaGift dcg     = new DadosConsultaGift();
                    DadosComprovGift  comprov = new DadosComprovGift();

                    comprov.set_id_venda(lvc.get_identity());
                    comprov.set_dt_venda(lvc.get_dt_compra());

                    if (lvc.get_tg_adesao() == Context.TRUE)
                    {
                        dcg.set_st_nome("Primeira Carga de Cartão");
                        comprov.set_st_tipo("CARGA");
                    }
                    else
                    {
                        dcg.set_st_nome("Recarga de Cartão");
                        comprov.set_st_tipo("RECARGA");
                    }

                    comprov.set_vr_valor(lvc.get_vr_carga());
                    dcg.set_vr_valor(lvc.get_vr_carga());

                    output_array_generic_lstProd.Add(dcg);
                    output_array_generic_lstComprov.Add(comprov);

                    if (lvp.select_fk_venda(lvc.get_identity()))
                    {
                        while (lvp.fetch())
                        {
                            DadosConsultaGift in_dcg = new DadosConsultaGift();

                            in_dcg.set_st_nome(lvp.get_st_produto());
                            in_dcg.set_vr_valor(lvp.get_vr_valor());

                            output_array_generic_lstProd.Add(in_dcg);
                        }
                    }
                }
            }

            T_ChequesGift cg = new T_ChequesGift(this);

            if (cg.select_rows_cart_comp(cart.get_identity(), Context.FALSE))
            {
                while (cg.fetch())
                {
                    DadosConsultaGift in_dcg = new DadosConsultaGift();

                    in_dcg.set_st_nome(cg.get_st_identificador());
                    in_dcg.set_dt_data(cg.get_dt_efetiva());
                    in_dcg.set_vr_valor(cg.get_vr_valor());

                    output_array_generic_lstCred.Add(in_dcg);
                }
            }

            /// USER [ execute ] END

            Registry("execute done fetch_consultaCartaoGift ");

            return(true);
        }
Beispiel #25
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute schedule_edu_fundo ");

            /// USER [ execute ]

            if (DateTime.Now.DayOfWeek == DayOfWeek.Saturday ||
                DateTime.Now.DayOfWeek == DayOfWeek.Sunday)
            {
                return(true);
            }

            T_Edu_EmpresaVirtual virt     = new T_Edu_EmpresaVirtual(this);
            T_Edu_EmpresaVirtual virt_upd = new T_Edu_EmpresaVirtual(this);

            string dt_time = DateTime.Now.Year.ToString() + "-" +
                             DateTime.Now.Month.ToString().PadLeft(2, '0') + "-" +
                             DateTime.Now.Day.ToString().PadLeft(2, '0') + " 00:00:00";

            LOG_Edu_RendimentoEmpresa rend = new LOG_Edu_RendimentoEmpresa(this);

            if (virt.selectAll())
            {
                while (virt.fetch())
                {
                    bool web_Ok = false;

                    while (!web_Ok)
                    {
                        try
                        {
                            #region - busca valor de oscilação -

                            int    index   = 0;
                            string osc_web = "";

                            WebClient client = new WebClient();

                            string web = client.DownloadString("http://www.bovespa.com.br/Cotacoes2000/formCotacoesMobile.asp?codsocemi=" +
                                                               virt.get_st_codigo() +
                                                               "3");

                            client.Dispose();

                            Trace(web);

                            if (web.IndexOf("NUMERO_DO_ERRO") == -1)
                            {
                                index   = web.IndexOf("OSCILACAO=") + 11;
                                osc_web = web.Substring(index, 15);
                                osc_web = osc_web.Substring(0, osc_web.IndexOf(" ") - 1);
                            }
                            else
                            {
                                osc_web = "0,0000";
                            }

                            if (osc_web.IndexOf(",") == -1)
                            {
                                osc_web += ",0000";
                            }

                            index = osc_web.IndexOf(",") + 1;

                            int diff = osc_web.Length - index;

                            // força 4 casas após a virgula
                            if (diff < 4)
                            {
                                osc_web = osc_web.PadRight(4 - diff, '0');
                            }

                            #endregion

                            // pega valor inteiro, acrescenta 4 casas
                            double oscilacao = Convert.ToDouble(osc_web) * 10000;
                            // converte para string
                            string osc_rend = Convert.ToInt64(oscilacao).ToString();

                            if (osc_web.IndexOf("-") >= 0)
                            {
                                rend.set_tg_neg(Context.TRUE);
                            }
                            else
                            {
                                rend.set_tg_neg(Context.FALSE);
                            }

                            rend.set_vr_pct(osc_rend.Replace("-", ""));
                            rend.set_fk_empresaVirtual(virt.get_identity());
                            rend.set_dt_rend(dt_time);

                            rend.create_LOG_Edu_RendimentoEmpresa();

                            oscilacao /= 10000;
                            oscilacao /= 100;

                            virt_upd.selectIdentity(virt.get_identity());

                            long final_fundo = virt_upd.get_int_vr_valorAcao() + Convert.ToInt64(virt_upd.get_int_vr_valorAcao() * oscilacao);

                            virt_upd.set_vr_valorAcao(final_fundo.ToString());

                            virt_upd.synchronize_T_Edu_EmpresaVirtual();

                            web_Ok = true;
                        }
                        catch (System.Exception ex)
                        {
                            Registry(ex.ToString());

                            Thread.Sleep(250);

                            Registry("Trying again");
                        }
                    }
                }
            }

            // descobre o rank
            T_Cartao cart_rank = new T_Cartao(this);
            T_Cartao cart_upd  = new T_Cartao(this);

            LINK_Edu_FundoEmpresa lnk = new LINK_Edu_FundoEmpresa(this);
            T_Edu_EmpresaVirtual  emp = new T_Edu_EmpresaVirtual(this);

            if (cart_rank.select_rows_tipo(TipoCartao.educacional))
            {
                Hashtable hshVal = new Hashtable();
                ArrayList lstVal = new ArrayList();

                while (cart_rank.fetch())
                {
                    long invest_virtual = 0;

                    if (lnk.select_fk_cart(cart_rank.get_identity()))
                    {
                        while (lnk.fetch())
                        {
                            if (!emp.selectIdentity(lnk.get_fk_empresa()))
                            {
                                return(false);
                            }

                            invest_virtual += lnk.get_int_vr_fundo() * emp.get_int_vr_valorAcao();
                        }
                    }

                    if (invest_virtual > 0)
                    {
                        invest_virtual += cart_rank.get_int_vr_edu_disp_virtual();

                        lstVal.Add(invest_virtual);

                        if (hshVal [invest_virtual] == null)
                        {
                            hshVal [invest_virtual] = new ArrayList();
                        }

                        ArrayList tmp = hshVal [invest_virtual] as ArrayList;

                        tmp.Add(cart_rank.get_identity());
                    }
                }

                lstVal.Sort();

                for (int t = lstVal.Count - 1, rank = 1; t >= 0; --t, ++rank)
                {
                    ArrayList tmp = hshVal [(long)lstVal[t]] as ArrayList;

                    for (int y = 0; y < tmp.Count; ++y)
                    {
                        string ident = tmp [y].ToString();

                        cart_upd.ExclusiveAccess();
                        cart_upd.selectIdentity(ident);

                        cart_upd.set_nu_rankVirtual(rank.ToString());
                        cart_upd.set_vr_edu_total_ranking(lstVal[t].ToString());

                        cart_upd.synchronize_T_Cartao();
                        cart_upd.ReleaseExclusive();
                    }
                }
            }

            /// USER [ execute ] END

            Registry("execute done schedule_edu_fundo ");

            return(true);
        }
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute fetch_reciboVendaGift ");

            /// USER [ execute ]

            LOG_Transacoes ltr  = new LOG_Transacoes(this);
            T_Loja         loj  = new T_Loja(this);
            T_Terminal     term = new T_Terminal(this);
            T_Cartao       cart = new T_Cartao(this);

            if (!ltr.select_rows_nsu(input_nsu, GetTodayStartTime(), GetTodayEndTime()))
            {
                return(false);
            }

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

            fk_transacao = ltr.get_identity();

            if (!loj.selectIdentity(ltr.get_fk_loja()))
            {
                return(false);
            }

            if (!term.selectIdentity(ltr.get_fk_terminal()))
            {
                return(false);
            }

            if (!cart.selectIdentity(ltr.get_fk_cartao()))
            {
                return(false);
            }

            ArrayList lstContent = new ArrayList();

            lstContent.Add("Gift Card Lindóia Shopping");
            lstContent.Add("Rede ConveyNET");
            lstContent.Add("Cod. Estab: " + loj.get_st_loja());
            lstContent.Add("Nr.Cartao: " + cart.get_st_empresa() + "." + cart.get_st_matricula());
            lstContent.Add("No. Terminal: " + term.get_nu_terminal());
            lstContent.Add("Loja: " + loj.get_st_nome());
            lstContent.Add("--------------------------------------");
            lstContent.Add("Cod.Process.: 2000 - Cartao Convenio");

            string data = ltr.get_dt_transacao();

            lstContent.Add("Data Trans.: " + data.Substring(8, 2) + "/" +
                           data.Substring(5, 2) + "/" +
                           data.Substring(0, 4) + " Hora: " +
                           data.Substring(11, 8));

            lstContent.Add("NSU: " + ltr.get_nu_nsu());
            lstContent.Add("");
            lstContent.Add("");
            lstContent.Add("VALOR TOT. R$ " + new money().formatToMoney(ltr.get_vr_total()));
            lstContent.Add("");
            lstContent.Add("");
            lstContent.Add("Operador: " + user.get_st_nome());

            for (int t = 0; t < lstContent.Count; ++t)
            {
                DataPortable port = new DataPortable();
                port.setValue("linha", lstContent[t].ToString());
                output_array_generic_lst.Add(port);
            }

            /// USER [ execute ] END

            Registry("execute done fetch_reciboVendaGift ");

            return(true);
        }
Beispiel #27
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute schedule_faturamento ");

            /// USER [ execute ]

            T_Empresa emp   = new T_Empresa(this);
            DateTime  dtFat = DateTime.Now.AddDays(-1);

            #region - ## Busca todas as empresas -

            if (emp.selectAll())
            {
                // ## Busco todos os registros

                while (emp.fetch())
                {
                    // ## Se dia é hoje

                    if (emp.get_int_nu_periodoFat() == dtFat.Day &&
                        emp.get_tg_isentoFat() == Context.FALSE)
                    {
                        T_Faturamento fat     = new T_Faturamento(this);
                        T_Faturamento fat_upd = new T_Faturamento(this);

                        DateTime aux = dtFat;

                        // ## Para casos onde o mês deve ser o próximo

                        if (emp.get_int_nu_diaVenc() < dtFat.Day)
                        {
                            aux = dtFat.AddMonths(1);
                        }

                        DateTime dtVenc = new DateTime(aux.Year,
                                                       aux.Month,
                                                       (int)emp.get_int_nu_diaVenc());

                        fat.set_dt_vencimento(GetDataBaseTime(dtVenc));
                        fat.set_fk_empresa(emp.get_identity());
                        fat.set_tg_situacao(TipoSitFat.Pendente);

                        // ## Crio registro

                        fat.create_T_Faturamento();

                        long vr_total_fat = 0;

                        // ## Crio registro detalhe

                        #region - 1 - mensalidade -

                        {
                            T_FaturamentoDetalhes fat_det = new T_FaturamentoDetalhes(this);

                            fat_det.set_fk_fatura(fat.get_identity());
                            fat_det.set_vr_cobranca(emp.get_vr_mensalidade());
                            fat_det.set_tg_tipoFat(TipoFat.TBM);
                            fat_det.set_tg_desconto(Context.FALSE);
                            fat_det.set_fk_empresa(emp.get_identity());
                            fat_det.set_fk_loja(Context.FALSE);

                            vr_total_fat += fat_det.get_int_vr_cobranca();

                            fat_det.create_T_FaturamentoDetalhes();
                        }

                        #endregion

                        #region - 2 - valor por transações -

                        if (emp.get_int_vr_transacao() > 0)
                        {
                            LOG_Transacoes l_tr = new LOG_Transacoes(this);

                            l_tr.SetCountMode();

                            l_tr.select_rows_dt_emp(GetDataBaseTime(dtFat.AddMonths(-1)),
                                                    GetDataBaseTime(dtFat),
                                                    emp.get_identity());

                            long trans = l_tr.GetCount() - emp.get_int_nu_franquia();

                            if (trans > 0)
                            {
                                T_FaturamentoDetalhes fat_det = new T_FaturamentoDetalhes(this);

                                fat_det.set_fk_fatura(fat.get_identity());
                                fat_det.set_vr_cobranca((trans * emp.get_int_vr_transacao()).ToString());
                                fat_det.set_tg_tipoFat(TipoFat.FixoTrans);
                                fat_det.set_nu_quantidade(l_tr.GetCount().ToString());
                                fat_det.set_tg_desconto(Context.FALSE);
                                fat_det.set_fk_empresa(emp.get_identity());
                                fat_det.set_fk_loja(Context.FALSE);

                                vr_total_fat += fat_det.get_int_vr_cobranca();

                                fat_det.create_T_FaturamentoDetalhes();
                            }
                        }

                        #endregion

                        #region - 3 - valor percentual por transações -

                        if (emp.get_int_nu_pctValor() > 0)
                        {
                            LOG_Transacoes l_tr = new LOG_Transacoes(this);

                            // ## Busca por período e empresa

                            if (l_tr.select_rows_dt_emp(GetDataBaseTime(dtFat.AddMonths(-1)),
                                                        GetDataBaseTime(dtFat),
                                                        emp.get_identity()))
                            {
                                long vr_trans = 0;

                                while (l_tr.fetch())
                                {
                                    if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada)
                                    {
                                        vr_trans += l_tr.get_int_vr_total();
                                    }
                                }

                                if (vr_trans > 0)
                                {
                                    vr_trans = vr_trans * emp.get_int_nu_pctValor() / 10000;

                                    T_FaturamentoDetalhes fat_det = new T_FaturamentoDetalhes(this);

                                    fat_det.set_fk_fatura(fat.get_identity());
                                    fat_det.set_vr_cobranca(vr_trans.ToString());
                                    fat_det.set_tg_tipoFat(TipoFat.Percent);
                                    fat_det.set_tg_desconto(Context.FALSE);
                                    fat_det.set_fk_empresa(emp.get_identity());
                                    fat_det.set_fk_loja(Context.FALSE);

                                    vr_total_fat += fat_det.get_int_vr_cobranca();

                                    fat_det.create_T_FaturamentoDetalhes();
                                }
                            }
                        }

                        #endregion

                        #region - 4 - valor cartão ativo -

                        if (emp.get_int_vr_cartaoAtivo() > 0)
                        {
                            T_Cartao cart = new T_Cartao(this);

                            // ## Busca por período e empresa

                            if (cart.select_rows_empresa(emp.get_st_empresa()))
                            {
                                T_FaturamentoDetalhes fat_det = new T_FaturamentoDetalhes(this);

                                fat_det.set_fk_fatura(fat.get_identity());
                                fat_det.set_vr_cobranca((cart.RowCount() * emp.get_int_vr_cartaoAtivo()).ToString());
                                fat_det.set_tg_tipoFat(TipoFat.CartaoAtiv);
                                fat_det.set_tg_desconto(Context.FALSE);
                                fat_det.set_fk_empresa(emp.get_identity());
                                fat_det.set_fk_loja(Context.FALSE);

                                vr_total_fat += fat_det.get_int_vr_cobranca();

                                fat_det.create_T_FaturamentoDetalhes();
                            }
                        }

                        #endregion

                        #region - 5 - valores extras -

                        T_FaturamentoDetalhes fat_extras = new T_FaturamentoDetalhes(this);

                        if (fat_extras.select_rows_emp(emp.get_identity(), TipoFat.Extras))
                        {
                            while (fat_extras.fetch())
                            {
                                vr_total_fat += fat_extras.get_int_vr_cobranca();

                                T_FaturamentoDetalhes fat_extras_upd = new T_FaturamentoDetalhes(this);

                                fat_extras_upd.ExclusiveAccess();

                                fat_extras_upd.selectIdentity(fat_extras.get_identity());
                                fat_extras_upd.set_fk_fatura(fat.get_identity());

                                fat_extras_upd.synchronize_T_FaturamentoDetalhes();
                                fat_extras_upd.ReleaseExclusive();
                            }
                        }

                        #endregion

                        if (emp.get_int_vr_minimo() > vr_total_fat)
                        {
                            vr_total_fat = emp.get_int_vr_minimo();
                        }

                        fat_upd.ExclusiveAccess();
                        fat_upd.selectIdentity(fat.get_identity());

                        fat_upd.set_vr_cobranca(vr_total_fat.ToString());

                        fat_upd.synchronize_T_Faturamento();
                        fat_upd.ReleaseExclusive();
                    }
                }
            }

            #endregion

            T_Loja loj = new T_Loja(this);

            // ## Busca todas as lojas

            if (loj.selectAll())
            {
                // ## Busco todos os registros

                while (loj.fetch())
                {
                    // ## Se dia é hoje

                    Trace("Loja: " + loj.get_st_nome());

                    if (loj.get_tg_cancel() == Context.TRUE)
                    {
                        continue;
                    }

                    Trace("Loja ok ");

                    if (loj.get_int_nu_periodoFat() == dtFat.Day &&
                        loj.get_tg_isentoFat() == Context.FALSE)
                    {
                        Trace("[A]");

                        T_Faturamento fat     = new T_Faturamento(this);
                        T_Faturamento fat_upd = new T_Faturamento(this);

                        DateTime aux = dtFat;

                        // ## Para casos onde o mês deve ser o próximo

                        if (loj.get_int_nu_diavenc() < dtFat.Day)
                        {
                            Trace("[B]");
                            aux = dtFat.AddMonths(1);
                        }

                        Trace("[C]");

                        int zday = Convert.ToInt32(loj.get_int_nu_diavenc());

                        Trace("[C] 1 " + aux.Year.ToString());
                        Trace("[C] 2 " + aux.Month.ToString());
                        Trace("[C] 3 " + zday.ToString());

                        DateTime dtVenc = new DateTime(aux.Year, aux.Month, zday);

                        Trace("[D]");

                        fat.set_dt_vencimento(GetDataBaseTime(dtVenc));
                        fat.set_fk_loja(loj.get_identity());
                        fat.set_tg_situacao(TipoSitFat.Pendente);

                        // ## Crio registro

                        fat.create_T_Faturamento();

                        long vr_total_fat = 0;

                        // ## Crio registro detalhe

                        #region - 1 - mensalidade -

                        {
                            Trace("[E]");

                            T_FaturamentoDetalhes fat_det = new T_FaturamentoDetalhes(this);

                            fat_det.set_fk_fatura(fat.get_identity());
                            fat_det.set_vr_cobranca(loj.get_vr_mensalidade());
                            fat_det.set_tg_tipoFat(TipoFat.TBM);
                            fat_det.set_tg_desconto(Context.FALSE);
                            fat_det.set_fk_empresa(Context.FALSE);
                            fat_det.set_fk_loja(loj.get_identity());

                            vr_total_fat += fat_det.get_int_vr_cobranca();

                            fat_det.create_T_FaturamentoDetalhes();
                        }

                        #endregion

                        #region - 2 - valor por transações -

                        if (loj.get_int_vr_transacao() > 0)
                        {
                            Trace("[F]");

                            LOG_Transacoes l_tr = new LOG_Transacoes(this);

                            l_tr.SetCountMode();

                            l_tr.select_rows_dt_loj(GetDataBaseTime(dtFat.AddMonths(-1)),
                                                    GetDataBaseTime(dtFat),
                                                    loj.get_identity());

                            long trans = l_tr.GetCount() - loj.get_int_nu_franquia();

                            if (trans > 0)
                            {
                                Trace("[G]");

                                T_FaturamentoDetalhes fat_det = new T_FaturamentoDetalhes(this);

                                fat_det.set_fk_fatura(fat.get_identity());
                                fat_det.set_vr_cobranca((trans * loj.get_int_vr_transacao()).ToString());
                                fat_det.set_tg_tipoFat(TipoFat.FixoTrans);
                                fat_det.set_nu_quantidade(l_tr.GetCount().ToString());
                                fat_det.set_tg_desconto(Context.FALSE);
                                fat_det.set_fk_empresa(Context.FALSE);
                                fat_det.set_fk_loja(loj.get_identity());

                                vr_total_fat += fat_det.get_int_vr_cobranca();

                                fat_det.create_T_FaturamentoDetalhes();
                            }
                        }

                        #endregion

                        #region - 3 - valor percentual por transações -

                        if (loj.get_int_nu_pctValor() > 0)
                        {
                            Trace("[H]");

                            LOG_Transacoes l_tr = new LOG_Transacoes(this);

                            // ## Busca por período e empresa

                            if (l_tr.select_rows_dt_loj(GetDataBaseTime(dtFat.AddMonths(-1)),
                                                        GetDataBaseTime(dtFat),
                                                        loj.get_identity()))
                            {
                                Trace("[I]");

                                long vr_trans = 0;

                                while (l_tr.fetch())
                                {
                                    if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada)
                                    {
                                        vr_trans += l_tr.get_int_vr_total();
                                    }
                                }

                                if (vr_trans > 0)
                                {
                                    Trace("[J]");

                                    vr_trans = vr_trans * loj.get_int_nu_pctValor() / 10000;

                                    T_FaturamentoDetalhes fat_det = new T_FaturamentoDetalhes(this);

                                    fat_det.set_fk_fatura(fat.get_identity());
                                    fat_det.set_vr_cobranca(vr_trans.ToString());
                                    fat_det.set_tg_tipoFat(TipoFat.Percent);
                                    fat_det.set_tg_desconto(Context.FALSE);
                                    fat_det.set_fk_empresa(Context.FALSE);
                                    fat_det.set_fk_loja(loj.get_identity());

                                    vr_total_fat += fat_det.get_int_vr_cobranca();

                                    fat_det.create_T_FaturamentoDetalhes();
                                }
                            }
                        }

                        #endregion

                        #region - 4 - valores extras -

                        T_FaturamentoDetalhes fat_extras = new T_FaturamentoDetalhes(this);

                        if (fat_extras.select_rows_emp(loj.get_identity(), TipoFat.Extras))
                        {
                            Trace("[K]");

                            while (fat_extras.fetch())
                            {
                                Trace("[L]");

                                vr_total_fat += fat_extras.get_int_vr_cobranca();

                                T_FaturamentoDetalhes fat_extras_upd = new T_FaturamentoDetalhes(this);

                                fat_extras_upd.ExclusiveAccess();

                                fat_extras_upd.selectIdentity(fat_extras.get_identity());
                                fat_extras_upd.set_fk_fatura(fat.get_identity());

                                fat_extras_upd.synchronize_T_FaturamentoDetalhes();
                                fat_extras_upd.ReleaseExclusive();
                            }
                        }

                        #endregion

                        if (vr_total_fat < loj.get_int_vr_minimo())
                        {
                            vr_total_fat = loj.get_int_vr_minimo();
                        }

                        fat_upd.ExclusiveAccess();
                        fat_upd.selectIdentity(fat.get_identity());

                        fat_upd.set_vr_cobranca(vr_total_fat.ToString());

                        fat_upd.synchronize_T_Faturamento();
                        fat_upd.ReleaseExclusive();

                        Trace("[M]");
                    }
                }
            }

            /// USER [ execute ] END

            Registry("execute done schedule_faturamento ");

            return(true);
        }
Beispiel #28
0
        public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute fetch_rel_prevLojista ");

            /// USER [ execute ]

            T_Empresa emp = new T_Empresa(this);

            if (!emp.select_rows_empresa(input_st_empresa))
            {
                PublishError("Empresa não disponível");
                return(false);
            }

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

            T_Loja loj = new T_Loja(this);

            if (!loj.select_rows_loja(input_cont_header.get_st_empresa().TrimStart('0')))
            {
                return(false);
            }

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

            LINK_LojaEmpresa loj_emp = new LINK_LojaEmpresa(this);

            if (!loj_emp.select_fk_empresa_loja(emp.get_identity(),
                                                loj.get_identity()))
            {
                PublishError("Loja não conveniada com empresa");
                return(false);
            }

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

            double tx = loj_emp.get_int_tx_admin();

            T_Parcelas     parc = new T_Parcelas(this);
            T_Cartao       cart = new T_Cartao(this);
            LOG_Transacoes ltr  = new LOG_Transacoes(this);

            if (parc.select_rows_lojista_emp(loj.get_identity(),
                                             emp.get_identity(),
                                             "1"))
            {
                SQL_LOGGING_ENABLE = false;

                StringBuilder sb = new StringBuilder();

                while (parc.fetch())
                {
                    if (parc.get_tg_pago() == Context.TRUE)
                    {
                        continue;
                    }

                    if (!ltr.selectIdentity(parc.get_fk_log_transacoes()))
                    {
                        continue;
                    }

                    if (ltr.get_tg_confirmada() != TipoConfirmacao.Confirmada)
                    {
                        continue;
                    }

                    if (!cart.selectIdentity(parc.get_fk_cartao()))
                    {
                        continue;
                    }

                    if (cart.get_st_empresa() != emp.get_st_empresa())
                    {
                        continue;
                    }

                    DadosRepasse dr = new DadosRepasse();

                    dr.set_st_cartao(cart.get_st_empresa() + "." +
                                     cart.get_st_matricula() + "." +
                                     cart.get_st_titularidade());

                    dr.set_st_nsu(parc.get_nu_nsu());
                    dr.set_dt_trans(parc.get_dt_inclusao());
                    dr.set_id_parcela(parc.get_nu_indice());
                    dr.set_vr_total(parc.get_vr_valor());

                    //DateTime t_rep = Convert.ToDateTime ( p

                    //dr.set_dt_repasse   (

                    long repasse = Convert.ToInt64(parc.get_int_vr_valor() - (parc.get_int_vr_valor() * tx / 10000));

                    dr.set_vr_repasse(repasse.ToString());

                    DataPortable mem_rtc = dr as DataPortable;

                    // ## obtem indice

                    sb.Append(MemorySave(ref mem_rtc));
                    sb.Append(",");
                }

                string list_ids = sb.ToString().TrimEnd(',');

                DataPortable dp = new DataPortable();

                dp.setValue("ids", list_ids);

                // ## obtem indice geral

                output_st_csv = MemorySave(ref dp);

                SQL_LOGGING_ENABLE = true;
            }

            /// USER [ execute ] END

            Registry("execute done fetch_rel_prevLojista ");

            return(true);
        }
        public override bool authenticate( )
        {
            Registry("authenticate web_fetch_rel_edu_extrato ");

            /// USER [ authenticate ]

            input_st_cart = input_st_cart.PadLeft(14, '0');

            l_tr = new LOG_Transacoes(this);

            T_Cartao cart = new T_Cartao(this);

            if (!cart.select_rows_tudo(input_st_cart.Substring(0, 6),                           // empresa
                                       input_st_cart.Substring(6, 6),                           // matricula
                                       input_st_cart.Substring(12, 2)))                         // titularidade
            {
                PublishError("Cartão inválido");
                return(false);
            }
            else
            {
                if (!cart.fetch())
                {
                    return(false);
                }

                st_cart_id = cart.get_identity();

                if (input_tg_resp == Context.TRUE)
                {
                    T_Proprietario prot = new T_Proprietario(this);

                    if (!prot.selectIdentity(cart.get_fk_dadosProprietario()))
                    {
                        return(false);
                    }

                    if (prot.get_st_senhaEdu() != input_st_senha)
                    {
                        PublishError("Senha de responsável inválida");
                        return(false);
                    }
                }
                else
                {
                    if (cart.get_st_senha() != input_st_senha)
                    {
                        PublishError("Senha de aluno inválida");
                        return(false);
                    }
                }
            }

            if (!l_tr.select_rows_dt_cart(input_st_dt_ini,
                                          input_st_dt_fim,
                                          st_cart_id))
            {
                PublishError("Nenhum registro encontrado");
                return(false);
            }

            /// USER [ authenticate ] END

            Registry("authenticate done web_fetch_rel_edu_extrato ");

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

            /// USER [ execute ]

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

            if (!cart.select_rows_tudo(input_st_cartao.Substring(0, 6),
                                       input_st_cartao.Substring(6, 6),
                                       input_st_cartao.Substring(12, 2)))
            {
                PublishError("Matrícula não disponível");
                return(false);
            }

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

            if (cart.get_st_senha() != input_st_senha)
            {
                PublishError("Senha inválida");
                return(false);
            }

            T_Empresa emp = new T_Empresa(this);

            if (!emp.select_rows_empresa(cart.get_st_empresa()))
            {
                PublishError("Empresa inválida");
                return(false);
            }

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

            T_Parcelas parc = new T_Parcelas(this);

            ArrayList lstDeps = new ArrayList();

            if (cart_parc_dep.select_rows_empresa_matricula(cart.get_st_empresa(),
                                                            cart.get_st_matricula()))
            {
                while (cart_parc_dep.fetch())
                {
                    lstDeps.Add(cart_parc_dep.get_identity());
                }
            }

            T_Terminal     term = new T_Terminal(this);
            T_Loja         loj  = new T_Loja(this);
            LOG_Transacoes l_tr = new LOG_Transacoes(this);

            StringBuilder sb_parcs = new StringBuilder();

            for (int t = 2; t <= emp.get_int_nu_parcelas(); ++t)
            {
                if (parc.select_rows_relat_parc(t.ToString(), ref lstDeps))
                {
                    while (parc.fetch())
                    {
                        if (!term.selectIdentity(parc.get_fk_terminal()))
                        {
                            continue;
                        }

                        if (!loj.selectIdentity(term.get_fk_loja()))
                        {
                            continue;
                        }

                        if (l_tr.selectIdentity(parc.get_fk_log_transacoes()))
                        {
                            if (l_tr.get_tg_confirmada() != TipoConfirmacao.Confirmada)
                            {
                                continue;
                            }
                        }

                        Rel_RTC rtc = new Rel_RTC();

                        rtc.set_st_loja(loj.get_st_nome());
                        rtc.set_vr_total(parc.get_vr_valor());
                        rtc.set_nu_parc(parc.get_nu_tot_parcelas());
                        rtc.set_st_indice_parcela(parc.get_nu_indice());

                        DataPortable mem_rtc = rtc as DataPortable;

                        // ## obtem indice

                        sb_parcs.Append(MemorySave(ref mem_rtc));
                        sb_parcs.Append(",");
                    }
                }
            }

            string list_ids_parc = sb_parcs.ToString().TrimEnd(',');

            DataPortable dp_parcs = new DataPortable();

            dp_parcs.setValue("ids", list_ids_parc);

            output_st_content = MemorySave(ref dp_parcs);

            /// USER [ execute ] END

            Registry("execute done fetch_extratoWebFuturo ");

            return(true);
        }