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); }
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 exec_pos_vendaEmpresarialSITEF "); /// USER [ authenticate ] cart = new T_Cartao(this); emp = new T_Empresa(this); l_nsu = new LOG_NSU(this); info = new T_InfoAdicionais(this); prot = new T_Proprietario(this); loj = new T_Loja(this); // Default é erro genérico var_codResp = "9999"; // Normal var_nu_nsuAtual = Context.NONE; var_nu_nsuEntidade = Context.NONE; // Cancelamento var_nu_nsuOrig = Context.NONE; var_nu_nsuEntOrig = Context.NONE; // Valores básicos de comércio var_vr_total = input_cont_pe.get_vr_valor(); var_nu_parcelas = input_cont_pe.get_nu_parcelas(); var_codResp = "0606"; // alterado #region - valida loja AO INVES DE TERMINAL (antigo) - // ## Busca terminal pelo seu código // pega os 7 ultimos if (!loj.select_rows_loja(input_cont_pe.get_st_terminal().Substring(1).TrimStart('0'))) { output_st_msg = "Loja inexistente"; var_codResp = "0303"; return(false); } if (!loj.fetch()) { output_st_msg = "Erro aplicativo"; return(false); } // alterado! // busca o primeiro terminal vinculado if (!term.select_fk_loja(loj.get_identity())) { output_st_msg = "Erro do terminal"; return(false); } term.fetch(); #endregion // continua igual #region - valida empresa - // ## Busca empresa informada if (!emp.select_rows_empresa(input_cont_pe.get_st_empresa())) { output_st_msg = "Empresa inexistente"; var_codResp = "0303"; return(false); } if (!emp.fetch()) { output_st_msg = "Erro de aplicativo"; return(false); } // ## Caso empresa bloqueada, sair if (emp.get_tg_bloq() == Context.TRUE) { output_st_msg = "Empresa bloqueada"; var_codResp = "0303"; return(false); } #endregion // alterado! #region - valida relação da Loja do Terminal com Empresa (Convênio) LINK_LojaEmpresa loj_emp = new LINK_LojaEmpresa(this); if (!loj_emp.select_fk_empresa_loja(emp.get_identity(), loj.get_identity())) { output_st_msg = "Loja não conveniada"; var_codResp = "0303"; return(false); } if (loj.get_tg_blocked() == Context.TRUE) { output_st_msg = "Loja bloqueada"; var_codResp = "0303"; return(false); } if (loj.get_tg_cancel() == Context.TRUE) { output_st_msg = "Loja cancelada"; var_codResp = "0303"; return(false); } #endregion // continua igual #region - valida cartão - if (!cart.select_rows_tudo(input_cont_pe.get_st_empresa(), input_cont_pe.get_st_matricula(), input_cont_pe.get_st_titularidade())) { output_st_msg = "Cartão inexistente"; var_codResp = "0606"; return(false); } if (!cart.fetch()) { output_st_msg = "Erro aplicativo"; return(false); } // ## Verifica bloqueio if (cart.get_tg_status() == CartaoStatus.Bloqueado) { output_st_msg = "Cartão inválido"; var_codResp = "0505"; return(false); } if (cart.get_tg_emitido() != StatusExpedicao.Expedido) { output_st_msg = "Cartão inválido"; var_codResp = "0505"; return(false); } if (cart.get_tg_tipoCartao() == TipoCartao.educacional) { // ## No caso educacional, permitir somente venda // ## em uma parcela if (input_cont_pe.get_nu_parcelas().TrimStart('0') != "1") { output_st_msg = "Somente uma parcela"; var_codResp = "0606"; return(false); } } // ## Conferir vencto do cartão /* * if ( cart.get_tg_tipoCartao() == TipoCartao.empresarial ) * { * int year = 2000 + Convert.ToInt32 ( cart.get_st_venctoCartao().Substring ( 2,2 ) ); * int month = Convert.ToInt32 ( cart.get_st_venctoCartao().Substring ( 0,2 ) ); * int day = 1; * * DateTime tim_venc = new DateTime ( year, month, day ); * * if ( tim_venc < DateTime.Now ) * { * output_st_msg = "Cartão vencido"; * var_codResp = "7676"; * return false; * } * } */ #endregion var_vr_total = input_cont_pe.get_vr_valor(); var_nu_parcelas = input_cont_pe.get_nu_parcelas(); SQL_LOGGING_ENABLE = false; // continua igual #region - Verifica disponivel mensal nas parcelas - T_Parcelas parc = new T_Parcelas(this); string myId = cart.get_identity(); if (cart.get_st_titularidade() != "01") { cart.select_rows_tudo(cart.get_st_empresa(), cart.get_st_matricula(), "01"); cart.fetch(); } vr_dispMes = cart.get_int_vr_limiteMensal() + cart.get_int_vr_extraCota(); vr_dispTot = cart.get_int_vr_limiteTotal() + cart.get_int_vr_extraCota(); vr_valor = Convert.ToInt64(input_cont_pe.get_vr_valor()); if (cart.get_tg_tipoCartao() != TipoCartao.presente) { new ApplicationUtil().GetSaldoDisponivel(ref cart, ref vr_dispMes, ref vr_dispTot); int tmp_nu_parc = Convert.ToInt32(input_cont_pe.get_nu_parcelas()); if (tmp_nu_parc > 1) { if (vr_valor > vr_dispTot) { output_st_msg = "limite excedido"; var_codResp = "2727"; SQL_LOGGING_ENABLE = true; return(false); } LOG_Transacoes ltr = new LOG_Transacoes(this); T_Parcelas parcTot = new T_Parcelas(this); string tmp = input_cont_pe.get_st_valores(); ArrayList lstCartoes = new ArrayList(); T_Cartao c_t = new T_Cartao(this); c_t.select_rows_empresa_matricula(cart.get_st_empresa(), cart.get_st_matricula()); while (c_t.fetch()) { lstCartoes.Add(c_t.get_identity()); } for (int t = 1, index_pos = 0; t <= tmp_nu_parc; ++t) { long valor_unit_parc = Convert.ToInt64(tmp.Substring(index_pos, 12)); index_pos += 12; if (valor_unit_parc > cart.get_int_vr_limiteMensal()) { output_st_msg = "limite excedido"; var_codResp = "2727"; SQL_LOGGING_ENABLE = true; return(false); } long dispMesParc = cart.get_int_vr_limiteMensal(); // Verifica disponivel mensal nas parcelas if (parcTot.select_rows_cartao_mensal(ref lstCartoes, t.ToString())) // este mês { while (parcTot.fetch()) { if (ltr.selectIdentity(parcTot.get_fk_log_transacoes())) // busca transação { if (ltr.get_tg_confirmada() == TipoConfirmacao.Confirmada || ltr.get_tg_confirmada() == TipoConfirmacao.Pendente) { dispMesParc -= parcTot.get_int_vr_valor(); } } } } if (valor_unit_parc > dispMesParc) { output_st_msg = "limite excedido"; var_codResp = "2727"; SQL_LOGGING_ENABLE = true; return(false); } } } else { if (vr_valor > vr_dispMes || vr_valor > vr_dispTot) { output_st_msg = "limite excedido"; var_codResp = "2727"; SQL_LOGGING_ENABLE = true; return(false); } } } else { if (vr_valor > cart.get_int_vr_limiteTotal()) { output_st_msg = "limite excedido"; var_codResp = "2727"; SQL_LOGGING_ENABLE = true; return(false); } } if (myId != cart.get_identity()) { // restaurar cartão dep cart.selectIdentity(myId); } #endregion SQL_LOGGING_ENABLE = true; /// USER [ authenticate ] END Registry("authenticate done exec_pos_vendaEmpresarialSITEF "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_rel_1_rtc "); /// USER [ execute ] // ## // ## O seguinte trecho indexa as lojas possíveis // ## de retorno para uma determinada empresa. // ## // ## E, no caso de a empresa original ser administradora // ## de empresas, indexar todas as lojas de todas empresas // ## desta rede. // ## Hashtable hshLojas = new Hashtable(); #region - filtro de lojas da empresa - if (user.get_tg_nivel() == TipoUsuario.Administrador) { T_Empresa emp_orig = new T_Empresa(this); // ## Busca empresa original if (!emp_orig.select_rows_empresa(user.get_st_empresa())) { return(false); } if (!emp_orig.fetch()) { return(false); } LINK_LojaEmpresa lnk = new LINK_LojaEmpresa(this); // ## busca relacionamento das empresas com lojas if (lnk.select_fk_empresa_geral(emp_orig.get_identity())) { while (lnk.fetch()) { // ## indexa lojas hshLojas [lnk.get_fk_loja()] = "*"; } } // ## busca empresas administradas T_Empresa emp_lnk_admin = new T_Empresa(this); if (emp_lnk_admin.select_fk_admin(emp_orig.get_identity())) { while (emp_lnk_admin.fetch()) { // ## busca lojas de cada empresa administrada LINK_LojaEmpresa lnk_admin = new LINK_LojaEmpresa(this); if (lnk_admin.select_fk_empresa_geral(emp_lnk_admin.get_identity())) { while (lnk_admin.fetch()) { // ## indexa loja hshLojas [lnk_admin.get_fk_loja()] = "*"; } } } } } #endregion StringBuilder sb = new StringBuilder(); long vr_tot = 0; long vr_tot_cancelado = 0; T_Terminal term = new T_Terminal(this); while (l_tr.fetch()) { // ## Filtra lojas não vinculadas à empresa if (hshLojas.Count > 0) { if (hshLojas [l_tr.get_fk_loja()] == null) { continue; } } // ## Busca terminal if (term.selectIdentity(l_tr.get_fk_terminal())) { if (fk_loja.Length > 0) { if (term.get_fk_loja() != fk_loja) { continue; } } if (!loj.selectIdentity(term.get_fk_loja())) { continue; } if (input_st_cidade.Length > 0) { if (!loj.get_st_cidade().Contains(input_st_cidade)) { continue; } } if (input_st_estado.Length > 0) { if (!loj.get_st_estado().Contains(input_st_estado)) { continue; } } if (l_tr.get_tg_contabil() == Context.TRUE) { if (l_tr.get_tg_confirmada() == TipoConfirmacao.Cancelada) { vr_tot_cancelado += l_tr.get_int_vr_total(); } else if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada) { vr_tot += l_tr.get_int_vr_total(); } } } // ## Copia dados para memória Rel_RTC rtc = new Rel_RTC(); rtc.set_st_loja(loj.get_st_nome()); rtc.set_st_term(term.get_nu_terminal()); rtc.set_st_nsu(l_tr.get_nu_nsu()); rtc.set_vr_total(l_tr.get_vr_total()); rtc.set_nu_parc(l_tr.get_nu_parcelas()); rtc.set_dt_trans(l_tr.get_dt_transacao()); rtc.set_tg_status(l_tr.get_tg_confirmada()); rtc.set_st_motivo(l_tr.get_st_msg_transacao()); rtc.set_en_op_cartao(l_tr.get_en_operacao()); DataPortable mem_rtc = rtc as DataPortable; // ## obtem indice sb.Append(MemorySave(ref mem_rtc)); sb.Append(","); if (l_tr.get_int_nu_parcelas() > 1) { T_Parcelas parc = new T_Parcelas(this); if (parc.select_fk_log_trans(l_tr.get_identity())) { while (parc.fetch()) { Rel_RTC rtc2 = new Rel_RTC(); rtc2.set_vr_total(parc.get_vr_valor()); rtc2.set_nu_parc(parc.get_nu_indice()); rtc2.set_dt_trans(l_tr.get_dt_transacao()); rtc2.set_tg_status(l_tr.get_tg_confirmada()); rtc2.set_st_motivo(l_tr.get_st_msg_transacao()); rtc2.set_en_op_cartao(l_tr.get_en_operacao()); DataPortable mem_rtc_parc = rtc2 as DataPortable; // ## obtem indice sb.Append(MemorySave(ref mem_rtc_parc)); 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); // ## obtem dados adicionais T_Cartao cart = new T_Cartao(this); if (!cart.selectIdentity(st_cart_id)) { return(false); } T_Empresa emp = new T_Empresa(this); if (!emp.select_rows_empresa(cart.get_st_empresa())) { return(false); } if (!emp.fetch()) { return(false); } string nome = ""; if (cart.get_st_titularidade() != "01") { T_Dependente dep = new T_Dependente(this); dep.select_rows_prop_tit(cart.get_fk_dadosProprietario(), cart.get_st_titularidade()); dep.fetch(); nome = dep.get_st_nome() + " (Dependente)"; } else { T_Proprietario prot = new T_Proprietario(this); prot.selectIdentity(cart.get_fk_dadosProprietario()); nome = prot.get_st_nome() + " - CPF " + prot.get_st_cpf(); } output_st_empresa = emp.get_st_fantasia(); output_st_cartao = cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade() + ":" + cart.get_nu_viaCartao() + " - " + nome; output_st_total_periodo = vr_tot.ToString(); output_st_total_cancelado = vr_tot_cancelado.ToString(); // ##### ------------------------------------------------------ // ##### Relatório extra sobre todas as parcelas do cartão // ##### ------------------------------------------------------ { T_Cartao cart_parc = new T_Cartao(this); T_Cartao cart_parc_dep = new T_Cartao(this); ArrayList lstDeps = new ArrayList(); if (cart_parc.selectIdentity(st_cart_id)) { if (cart_parc.get_tg_tipoCartao() == TipoCartao.presente) { return(true); } if (cart_parc_dep.select_rows_empresa_matricula(cart_parc.get_st_empresa(), cart_parc.get_st_matricula())) { while (cart_parc_dep.fetch()) { lstDeps.Add(cart_parc_dep.get_identity()); } } } StringBuilder sb_parcs = new StringBuilder(); T_Parcelas parc = new T_Parcelas(this); for (int u = 1; u <= 12; ++u) { string cur_pac = "Comprometimento mensal (" + u.ToString() + ")"; if (u == 1) { cur_pac += " - vigente"; } bool HasContent = false; long tot_parc_ind = 0; if (parc.select_rows_relat_parc(u.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; } } tot_parc_ind += parc.get_int_vr_valor(); HasContent = true; Rel_RTC rtc = new Rel_RTC(); rtc.set_st_loja(loj.get_st_nome()); rtc.set_st_term(term.get_nu_terminal()); rtc.set_st_nsu(l_tr.get_nu_nsu()); rtc.set_vr_total(parc.get_vr_valor()); rtc.set_nu_parc(u.ToString()); rtc.set_dt_trans(l_tr.get_dt_transacao()); rtc.set_tg_status(l_tr.get_tg_confirmada()); rtc.set_st_motivo(l_tr.get_st_msg_transacao()); rtc.set_en_op_cartao(l_tr.get_en_operacao()); 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(","); } } if (!HasContent) { break; } output_st_parcs += cur_pac + ","; output_st_parcs_total += tot_parc_ind.ToString() + "," + (cart_parc.get_int_vr_limiteMensal() - tot_parc_ind).ToString() + ","; } string list_ids_parc = sb_parcs.ToString().TrimEnd(','); DataPortable dp_parcs = new DataPortable(); dp_parcs.setValue("ids", list_ids_parc); output_st_parcs_content = MemorySave(ref dp_parcs); output_st_parcs = output_st_parcs.TrimEnd(','); output_st_parcs_total = output_st_parcs_total.TrimEnd(','); } /// USER [ execute ] END Registry("execute done fetch_rel_1_rtc "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_repasseData "); /// USER [ execute ] DateTime t_start = Convert.ToDateTime(input_dt_ini); DateTime t_end = t_start.AddDays(1); Hashtable hshLojas = new Hashtable(); ArrayList lstEmpresas = new ArrayList(); // ## Busca empresa T_Empresa emp = new T_Empresa(this); T_Empresa emp_link = new T_Empresa(this); if (!emp.select_rows_empresa(input_cont_header.get_st_empresa())) { PublishError("Código de empresa inválida"); return(false); } if (!emp.fetch()) { return(false); } lstEmpresas.Add(emp.get_identity()); if (emp_link.select_fk_admin(emp.get_identity())) { while (emp_link.fetch()) { lstEmpresas.Add(emp_link.get_identity()); } } LINK_LojaEmpresa loj_emp = new LINK_LojaEmpresa(this); // ## Busca convenios if (!loj_emp.select_rows_empresas(ref lstEmpresas)) { PublishError("Nenhuma loja cadastrada"); return(false); } T_Loja loj = new T_Loja(this); T_Cartao cart = new T_Cartao(this); LOG_Transacoes ltr = new LOG_Transacoes(this); T_Parcelas parc = new T_Parcelas(this); StringBuilder sb = new StringBuilder(); StringBuilder sb_lojas = new StringBuilder(); while (loj_emp.fetch()) { if (!loj.selectIdentity(loj_emp.get_fk_loja())) { return(false); } double tx = loj_emp.get_int_tx_admin(); long dias = loj_emp.get_int_nu_dias_repasse(); long repasse = 0, total_loja = 0; if (parc.select_rows_repasse(loj.get_identity(), TipoParcela.EM_ABERTO)) // ainda não pagos { while (parc.fetch()) { if (ltr.selectIdentity(parc.get_fk_log_transacoes())) { if (ltr.get_tg_confirmada() != TipoConfirmacao.Confirmada) { continue; } } if (!cart.selectIdentity(parc.get_fk_cartao())) { return(false); } DadosRepasse dr = new DadosRepasse(); dr.set_st_nsu(parc.get_nu_nsu()); dr.set_st_loja(loj.get_st_loja()); dr.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); DateTime tim = Convert.ToDateTime(parc.get_dt_inclusao()); // fora da faixa requerida pelo relatório if (tim > t_end) { continue; } dr.set_dt_trans(parc.get_dt_inclusao()); // acerta data correta do repasse dr.set_dt_repasse(GetDataBaseTime(tim.AddDays(dias))); repasse = Convert.ToInt64(parc.get_int_vr_valor() - (parc.get_int_vr_valor() * tx / 10000)); dr.set_vr_repasse(repasse.ToString()); dr.set_id_parcela(parc.get_identity()); DateTime tm_rep = Convert.ToDateTime(dr.get_dt_repasse()); dr.set_tg_confirmado(Context.TRUE); if (tm_rep <= t_start) { total_loja += repasse; } else if (tm_rep <= t_end) { total_loja += repasse; } // salva registro do detalhe { DataPortable mem = dr as DataPortable; sb.Append(MemorySave(ref mem)); sb.Append(","); } } } // salva registro da loja if (total_loja > 0) { DadosSumarioRepasse dsr = new DadosSumarioRepasse(); dsr.set_st_loja("(" + loj.get_st_loja() + ") " + loj.get_st_nome() + " - " + loj.get_st_social()); dsr.set_st_codLoja(loj.get_st_loja()); dsr.set_vr_valor(total_loja.ToString()); DataPortable mem = dsr as DataPortable; sb_lojas.Append(MemorySave(ref mem)); sb_lojas.Append(","); } } // ## Guarda indexador de grupo dos detalhes { string list_ids = sb.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum registro encontrado"); return(false); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); output_block_detalhe_loja = MemorySave(ref dp); } // ## Guarda indexador de grupo de sumario das lojas { string list_ids = sb_lojas.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum registro encontrado"); return(false); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); output_block_sumario_loja = MemorySave(ref dp); } /// USER [ execute ] END Registry("execute done fetch_repasseData "); return(true); }
public override bool execute( ) { Registry("execute fetch_consultaLojistaRep "); /// USER [ execute ] T_Loja loj = new T_Loja(this); if (!loj.select_rows_loja(input_cnpj)) { PublishError("Cnpj não disponível"); return(false); } if (!loj.fetch()) { return(false); } if (loj.get_st_senha() != input_pass) { PublishError("Senha inválida"); return(false); } T_Empresa emp = new T_Empresa(this); if (!emp.select_rows_empresa(input_empresa.PadLeft(6, '0'))) { PublishError("Empresa não disponível"); return(false); } if (!emp.fetch()) { return(false); } LINK_LojaEmpresa lje = new LINK_LojaEmpresa(this); if (!lje.select_fk_empresa_loja(emp.get_identity(), loj.get_identity())) { PublishError("Loja não conveniada com associação"); return(false); } if (!lje.fetch()) { return(false); } double tx = lje.get_int_tx_admin(); T_Cartao cart = new T_Cartao(this); T_Parcelas parc = new T_Parcelas(this); LOG_Transacoes ltr = new LOG_Transacoes(this); LOG_Fechamento lf = new LOG_Fechamento(this); StringBuilder sb = new StringBuilder(); if (lf.select_rows_mes_ano(input_mes.PadLeft(2, '0'), input_ano.PadLeft(2, '0'), emp.get_identity())) { if (lf.RowCount() > 0) { while (lf.fetch()) { if (lf.get_fk_loja() != loj.get_identity()) { continue; } if (!parc.selectIdentity(lf.get_fk_parcela())) { return(false); } if (!ltr.selectIdentity(parc.get_fk_log_transacoes())) { return(false); } if (!emp.selectIdentity(ltr.get_fk_empresa())) { return(false); } if (!cart.selectIdentity(ltr.get_fk_cartao())) { return(false); } DadosConsultaTransacao dct = new DadosConsultaTransacao(); dct.set_dt_transacao(ltr.get_dt_transacao()); dct.set_st_nsu(ltr.get_nu_nsu()); dct.set_nu_parcelas(parc.get_nu_indice()); dct.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); dct.set_vr_valor(ltr.get_vr_total()); long repasse = Convert.ToInt64(lf.get_int_vr_valor() - (lf.get_int_vr_valor() * tx / 10000)); dct.set_vr_repasse(repasse.ToString()); DataPortable tmp = dct as DataPortable; sb.Append(MemorySave(ref tmp)); sb.Append(","); } } } string list_ids = sb.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum resultado foi encontrado"); return(true); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); output_st_content = MemorySave(ref dp); /// USER [ execute ] END Registry("execute done fetch_consultaLojistaRep "); return(true); }
public void GetSaldoDisponivel(ref T_Cartao cart, ref long dispMensal, ref long dispTotal) { Transaction tr = cart.var_Transaction; bool changed = false; if (tr.SQL_LOGGING_ENABLE == true) { tr.SQL_LOGGING_ENABLE = false; changed = true; } ArrayList lstCartoes = new ArrayList(); T_Cartao c_t = new T_Cartao(tr); c_t.select_rows_empresa_matricula(cart.get_st_empresa(), cart.get_st_matricula()); while (c_t.fetch()) { lstCartoes.Add(c_t.get_identity()); } if (cart.get_tg_tipoCartao() == TipoCartao.empresarial) { tr.Trace("Empresarial!"); LOG_Transacoes ltr = new LOG_Transacoes(tr); T_Parcelas parc = new T_Parcelas(tr); // Verifica disponivel mensal nas parcelas if (parc.select_rows_cartao_mensal(ref lstCartoes, "1")) // este mês { while (parc.fetch()) { if (ltr.selectIdentity(parc.get_fk_log_transacoes())) // busca transação { if (ltr.get_tg_confirmada() == TipoConfirmacao.Confirmada || ltr.get_tg_confirmada() == TipoConfirmacao.Pendente) { dispMensal -= parc.get_int_vr_valor(); } } } } parc.Reset(); // Verifica disponivel total nas parcelas if (parc.select_rows_cartao(ref lstCartoes, "1")) // nu_parcela >= 1 (ou seja, no futuro) { while (parc.fetch()) { if (ltr.selectIdentity(parc.get_fk_log_transacoes())) // busca transação { if (ltr.get_tg_confirmada() == TipoConfirmacao.Confirmada || ltr.get_tg_confirmada() == TipoConfirmacao.Pendente) { dispTotal -= parc.get_int_vr_valor(); } } } } if (dispMensal < 0) { dispMensal = 0; } if (dispTotal < 0) { dispTotal = 0; } } else if (cart.get_tg_tipoCartao() == TipoCartao.educacional) { dispMensal = cart.get_int_vr_disp_educacional(); dispTotal = cart.get_int_vr_disp_educacional(); } if (changed) { tr.SQL_LOGGING_ENABLE = true; } }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute schedule_fech_mensal "); /// USER [ execute ] T_Parcelas parc = new T_Parcelas(this); string mes = DateTime.Now.Month.ToString().PadLeft(2, '0'); string ano = DateTime.Now.Year.ToString(); T_Cartao cart = new T_Cartao(this); T_Cartao cart_upd = new T_Cartao(this); if (parc.select_rows_emp_fechamento(emp.get_identity(), "0")) // numero parcela > 0 { T_Parcelas tmp = new T_Parcelas(this); LOG_Transacoes ltr = new LOG_Transacoes(this); T_InfoAdicionais info = new T_InfoAdicionais(this); while (parc.fetch()) { if (!tmp.selectIdentity(parc.get_identity())) { continue; } if (!cart.selectIdentity(parc.get_fk_cartao())) { continue; } if (!ltr.selectIdentity(parc.get_fk_log_transacoes())) { continue; } if (ltr.get_tg_confirmada() != TipoConfirmacao.Confirmada) { continue; } if (st_empresaAfiliada != "") { if (!info.selectIdentity(cart.get_fk_infoAdicionais())) { continue; } if (info.get_st_empresaAfiliada().ToUpper().Trim() != st_empresaAfiliada.ToUpper().Trim()) { continue; } } if (parc.get_int_nu_parcela() == 1) { LOG_Fechamento log_fech = new LOG_Fechamento(this); log_fech.set_st_mes(mes); log_fech.set_st_ano(ano); log_fech.set_vr_valor(parc.get_vr_valor()); log_fech.set_dt_fechamento(GetDataBaseTime()); log_fech.set_fk_empresa(parc.get_fk_empresa()); log_fech.set_fk_loja(parc.get_fk_loja()); log_fech.set_fk_cartao(parc.get_fk_cartao()); log_fech.set_fk_parcela(parc.get_identity()); log_fech.set_dt_compra(parc.get_dt_inclusao()); log_fech.set_nu_parcela(parc.get_nu_parcela()); log_fech.set_st_afiliada(st_empresaAfiliada); log_fech.set_st_cartao(cart.get_st_empresa() + cart.get_st_matricula() + cart.get_st_titularidade()); if (!log_fech.create_LOG_Fechamento()) { return(false); } } // decrementa parcela tmp.set_nu_parcela(tmp.get_int_nu_parcela() - 1); tmp.set_tg_pago(Context.TRUE); if (!tmp.synchronize_T_Parcelas()) { return(false); } } } //zera cota extra de todo mundo if (cart.select_rows_empresa(emp.get_st_empresa())) { while (cart.fetch()) { cart_upd.ExclusiveAccess(); cart_upd.selectIdentity(cart.get_identity()); cart_upd.set_vr_extraCota("0"); cart_upd.synchronize_T_Cartao(); cart_upd.ReleaseExclusive(); } } /// USER [ execute ] END Registry("execute done schedule_fech_mensal "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_rel_4_rrp "); /// USER [ execute ] DateTime t_end = Convert.ToDateTime(input_dt_fim).AddDays(1); // ## // ## O seguinte trecho indexa as lojas possíveis // ## de retorno para uma determinada empresa. // ## // ## E, no caso de a empresa original ser administradora // ## de empresas, indexar todas as lojas de todas empresas // ## desta rede. // ## Hashtable hshLojas = new Hashtable(); #region - filtro de lojas da empresa - if (user.get_tg_nivel() == TipoUsuario.Administrador) { T_Empresa emp_orig = new T_Empresa(this); // ## Busca empresa original if (!emp_orig.select_rows_empresa(user.get_st_empresa())) { return(false); } if (!emp_orig.fetch()) { return(false); } LINK_LojaEmpresa lnk = new LINK_LojaEmpresa(this); // ## busca relacionamento das empresas com lojas if (lnk.select_fk_empresa_geral(emp_orig.get_identity())) { while (lnk.fetch()) { // ## indexa lojas hshLojas [lnk.get_fk_loja()] = "*"; } } // ## busca empresas administradas T_Empresa emp_lnk_admin = new T_Empresa(this); if (emp_lnk_admin.select_fk_admin(emp_orig.get_identity())) { while (emp_lnk_admin.fetch()) { // ## busca lojas de cada empresa administrada LINK_LojaEmpresa lnk_admin = new LINK_LojaEmpresa(this); if (lnk_admin.select_fk_empresa_geral(emp_lnk_admin.get_identity())) { while (lnk_admin.fetch()) { // ## indexa loja hshLojas [lnk_admin.get_fk_loja()] = "*"; } } } } } #endregion // ## Busca empresa T_Empresa emp = new T_Empresa(this); if (!emp.select_rows_empresa(input_st_empresa)) { PublishError("Código de empresa inválida"); return(false); } if (!emp.fetch()) { return(false); } output_st_nome_empresa = emp.get_st_fantasia(); LINK_LojaEmpresa loj_emp = new LINK_LojaEmpresa(this); // ## Busca convenios if (!loj_emp.select_fk_empresa_geral(emp.get_identity())) { PublishError("Nenhuma loja cadastrada"); return(false); } T_Loja loj = new T_Loja(this); T_Cartao cart = new T_Cartao(this); LOG_Transacoes ltr = new LOG_Transacoes(this); long total = 0; long total_geral = 0; StringBuilder sb = new StringBuilder(); // ## Busca registros de convênios T_Parcelas parc = new T_Parcelas(this); while (loj_emp.fetch()) { if (hshLojas.Count > 0) { if (hshLojas [loj_emp.get_fk_loja()] == null) { continue; } } // ## Busca loja if (!loj.selectIdentity(loj_emp.get_fk_loja())) { return(false); } double tx = loj_emp.get_int_tx_admin(); long dias = loj_emp.get_int_nu_dias_repasse(); long subtotal = 0, repasse = 0, total_loja = 0; // ## Busca nas transações do periodo bool zerada = true; if (parc.select_rows_repasse(loj.get_identity(), TipoParcela.EM_ABERTO)) // ainda não pagos { while (parc.fetch()) { if (ltr.selectIdentity(parc.get_fk_log_transacoes())) { if (ltr.get_tg_confirmada() != TipoConfirmacao.Confirmada) { continue; } } if (!cart.selectIdentity(parc.get_fk_cartao())) { return(false); } DateTime tim = Convert.ToDateTime(parc.get_dt_inclusao()).AddDays(dias); // fora da faixa requerida pelo relatório if (tim > t_end) { continue; } DadosRepasse dr = new DadosRepasse(); dr.set_tg_tipoCartao(cart.get_tg_tipoCartao()); dr.set_st_nsu(parc.get_nu_nsu()); dr.set_st_loja(loj.get_st_loja()); dr.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); dr.set_dt_trans(parc.get_dt_inclusao()); dr.set_vr_total(parc.get_vr_valor()); // acerta data correta do repasse dr.set_dt_repasse(GetDataBaseTime(tim)); total_loja += parc.get_int_vr_valor(); repasse = Convert.ToInt64(parc.get_int_vr_valor() - (parc.get_int_vr_valor() * tx / 10000)); subtotal += repasse; dr.set_vr_repasse(repasse.ToString()); DataPortable mem = dr as DataPortable; sb.Append(MemorySave(ref mem)); sb.Append(","); zerada = false; } } if (!zerada) { total += subtotal; total_geral += total_loja; output_st_csv_lojas += loj.get_st_loja() + ","; output_st_csv_nome_lojas += loj.get_st_nome() + " - CNPJ (" + loj.get_nu_CNPJ() + ") - Percentual " + ((double)loj_emp.get_int_tx_admin() / 100).ToString().Replace(",", ".") + "% - Dias de repasse " + loj_emp.get_nu_dias_repasse() + ","; output_st_csv_subtotal += subtotal.ToString() + ","; output_st_csv_subtotal_geral += total_loja.ToString() + ","; } } string list_ids = sb.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum registro encontrado"); return(false); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); // ## Guarda indexador de grupo output_st_csv_content = MemorySave(ref dp); output_st_csv_lojas = output_st_csv_lojas.TrimEnd(','); output_st_csv_nome_lojas = output_st_csv_nome_lojas.TrimEnd(','); output_st_csv_subtotal = output_st_csv_subtotal.TrimEnd(','); output_st_csv_subtotal_geral = output_st_csv_subtotal_geral.TrimEnd(','); output_st_total = total.ToString(); output_st_total_geral = total_geral.ToString(); /// USER [ execute ] END Registry("execute done fetch_rel_4_rrp "); return(true); }