public override bool execute( ) { Registry("execute fetch_extratoWeb "); /// USER [ execute ] T_Cartao cart = new T_Cartao(this); T_Cartao cart_all = new T_Cartao(this); T_Cartao cart_search = new T_Cartao(this); string emp = input_st_cartao.Substring(0, 6); string mat = input_st_cartao.Substring(6, 6); if (!cart.select_rows_tudo(emp, mat, 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); } ArrayList lst_all_carts = new ArrayList(); if (cart_all.select_rows_empresa_matricula(emp, mat)) { while (cart_all.fetch()) { lst_all_carts.Add(cart_all.get_identity()); } } string mes = input_st_cartao.Substring(14, 2); string ano = input_st_cartao.Substring(16, 4); LOG_Transacoes l_tr = new LOG_Transacoes(this); T_Loja loj = new T_Loja(this); T_Parcelas parc = new T_Parcelas(this); T_Dependente dep = new T_Dependente(this); T_Proprietario prot = new T_Proprietario(this); StringBuilder sb_parcs = new StringBuilder(); LOG_Fechamento lf = new LOG_Fechamento(this); if (lf.select_rows_mes_ano_carts(mes, ano, ref lst_all_carts)) { while (lf.fetch()) { if (!loj.selectIdentity(lf.get_fk_loja())) { continue; } if (!parc.selectIdentity(lf.get_fk_parcela())) { continue; } if (!parc.fetch()) { continue; } string nome = ""; if (!cart_search.selectIdentity(lf.get_fk_cartao())) { continue; } if (cart_search.get_st_titularidade() == "01") { if (!prot.selectIdentity(cart_search.get_fk_dadosProprietario())) { continue; } nome = prot.get_st_nome(); } else { if (!dep.select_rows_prop_tit(cart_search.get_fk_dadosProprietario(), cart_search.get_st_titularidade())) { continue; } if (!dep.fetch()) { continue; } nome = dep.get_st_nome(); } if (parc.get_vr_valor() == "0") { continue; } Rel_RTC rtc = new Rel_RTC(); rtc.set_dt_trans(parc.get_dt_inclusao()); rtc.set_st_loja(loj.get_st_nome()); rtc.set_st_nsu(parc.get_nu_nsu()); rtc.set_vr_total(parc.get_vr_valor()); rtc.set_st_indice_parcela(parc.get_nu_indice()); rtc.set_st_term(parc.get_nu_tot_parcelas()); rtc.set_en_op_cartao(nome); DataPortable mem_rtc = rtc as DataPortable; // ## obtem indice sb_parcs.Append(MemorySave(ref mem_rtc)); sb_parcs.Append(","); } } else // presente e futuro { DateTime dt_target = new DateTime(Convert.ToInt32(ano), Convert.ToInt32(mes), 1); DateTime dt_it = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); int my_parc = 1; while (dt_it < dt_target) { my_parc++; dt_it = dt_it.AddMonths(1); } if (parc.select_rows_cartao(ref lst_all_carts, my_parc.ToString())) { while (parc.fetch()) { if (!loj.selectIdentity(parc.get_fk_loja())) { continue; } string nome = ""; if (!cart_search.selectIdentity(parc.get_fk_cartao())) { continue; } if (cart_search.get_st_titularidade() == "01") { if (!prot.selectIdentity(cart_search.get_fk_dadosProprietario())) { continue; } nome = prot.get_st_nome(); } else { if (!dep.select_rows_prop_tit(cart_search.get_fk_dadosProprietario(), cart_search.get_st_titularidade())) { continue; } if (!dep.fetch()) { continue; } nome = dep.get_st_nome(); } Rel_RTC rtc = new Rel_RTC(); rtc.set_dt_trans(parc.get_dt_inclusao()); rtc.set_st_loja(loj.get_st_nome()); rtc.set_st_nsu(parc.get_nu_nsu()); rtc.set_vr_total(parc.get_vr_valor()); rtc.set_st_indice_parcela(parc.get_nu_indice()); rtc.set_st_term(parc.get_nu_tot_parcelas()); rtc.set_en_op_cartao(nome); 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); ApplicationUtil var_util = new ApplicationUtil(); long dispMensal = cart.get_int_vr_limiteMensal() + cart.get_int_vr_extraCota(), dispTotal = cart.get_int_vr_limiteTotal() + cart.get_int_vr_extraCota(); var_util.GetSaldoDisponivel(ref cart, ref dispMensal, ref dispTotal); output_vr_disp = dispMensal.ToString(); output_vr_lim = (cart.get_int_vr_limiteMensal() + cart.get_int_vr_extraCota()).ToString(); /// USER [ execute ] END Registry("execute done fetch_extratoWeb "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_rel_3_fech "); /// 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(); T_Loja loj = new T_Loja(this); T_Parcelas parc = new T_Parcelas(this); T_Cartao cart = new T_Cartao(this); T_Terminal term = new T_Terminal(this); T_Proprietario prot = new T_Proprietario(this); LINK_LojaEmpresa loj_emp = new LINK_LojaEmpresa(this); string aff = ""; switch (input_en_tipo) { case "0": // por Loja { #region Por Loja Hashtable hsh_loja = new Hashtable(); Hashtable hsh_sub_total_loja = new Hashtable(); StringBuilder sb = new StringBuilder(); long nu_total_empresa = 0; ArrayList lstLojas = new ArrayList(); // ## Busca registros while (log_fech.fetch()) { if (aff == "") { aff = " - " + log_fech.get_st_afiliada(); } // ## Busca tabelas auxiliares if (!loj.selectIdentity(log_fech.get_fk_loja())) { return(false); } if (!cart.selectIdentity(log_fech.get_fk_cartao())) { return(false); } if (!prot.selectIdentity(cart.get_fk_dadosProprietario())) { return(false); } if (!parc.selectIdentity(log_fech.get_fk_parcela())) { return(false); } if (!term.selectIdentity(parc.get_fk_terminal())) { return(false); } if (input_st_afiliada != "") { if (log_fech.get_st_afiliada() != input_st_afiliada) { continue; } } string pct = "000"; if (loj_emp.select_fk_empresa_loja(emp.get_identity(), loj.get_identity())) { if (loj_emp.fetch()) { pct = loj_emp.get_tx_admin(); } } double tx = loj_emp.get_int_tx_admin(); pct = pct.PadLeft(3, '0'); pct = pct.Insert(pct.Length - 2, ".") + "%"; string st_loja = loj.get_st_nome() + " - Perc.: " + pct + "<br>" + loj.get_st_social() + " - CNPJ: " + loj.get_nu_CNPJ(); // ## Guarda nomes de lojas if (hsh_loja [st_loja] == null) { hsh_sub_total_loja [st_loja] = (long)0; hsh_loja [st_loja] = "*"; lstLojas.Add(st_loja); } long valor = log_fech.get_int_vr_valor(); long sub_loja = (long)hsh_sub_total_loja [st_loja]; nu_total_empresa += valor; hsh_sub_total_loja [st_loja] = sub_loja + valor; // ## Grava registro em memória DadosFechamento df = new DadosFechamento(); df.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); df.set_st_terminal(term.get_nu_terminal()); df.set_st_loja(st_loja); df.set_st_nsu(parc.get_nu_nsu()); df.set_dt_trans(parc.get_dt_inclusao()); df.set_vr_valor(log_fech.get_vr_valor()); df.set_st_nome(prot.get_st_nome()); long repasse = Convert.ToInt64(log_fech.get_int_vr_valor() - (log_fech.get_int_vr_valor() * tx / 10000)); df.set_vr_repasse(repasse.ToString()); df.set_nu_parcela(parc.get_nu_indice() + "/" + parc.get_nu_tot_parcelas()); DataPortable mem_rlt = df as DataPortable; // ## Gera identificador sb.Append(MemorySave(ref mem_rlt)); sb.Append(","); } output_st_total = nu_total_empresa.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); // ## gera identificador de todos os registros output_st_csv_loja_content = MemorySave(ref dp); lstLojas.Sort(); for (int t = 0; t < lstLojas.Count; ++t) { string loja = lstLojas[t].ToString(); long sub_total = (long)hsh_sub_total_loja [loja]; output_st_csv_subtotal_loja += sub_total.ToString() + ","; output_st_csv_loja += loja + ","; } output_st_csv_loja = output_st_csv_loja.TrimEnd(','); output_st_csv_subtotal_loja = output_st_csv_subtotal_loja.TrimEnd(','); #endregion break; } case "1": // por cartao { #region Por Cartao Hashtable hsh_cartao = new Hashtable(); Hashtable hsh_sub_total_cartao = new Hashtable(); StringBuilder sb = new StringBuilder(); long nu_total_cartao = 0; ArrayList lstCart = new ArrayList(); while (log_fech.fetch()) { if (aff == "") { if (log_fech.get_st_afiliada().Trim().Length != 0) { aff = " - " + log_fech.get_st_afiliada(); } } if (!loj.selectIdentity(log_fech.get_fk_loja())) { return(false); } if (!parc.selectIdentity(log_fech.get_fk_parcela())) { return(false); } if (!cart.selectIdentity(log_fech.get_fk_cartao())) { return(false); } if (!prot.selectIdentity(cart.get_fk_dadosProprietario())) { return(false); } string cartao = prot.get_st_nome() + "<br>CPF: " + prot.get_st_cpf() + " Cartão: " + cart.get_st_empresa() + "." + cart.get_st_matricula() + "<br>"; if (hsh_cartao [cartao] == null) { hsh_sub_total_cartao [cartao] = (long)0; hsh_cartao [cartao] = "*"; lstCart.Add(cartao); } long valor = log_fech.get_int_vr_valor(); long sub_cartao = (long)hsh_sub_total_cartao [cartao]; nu_total_cartao += valor; hsh_sub_total_cartao [cartao] = sub_cartao + valor; DadosFechamento df = new DadosFechamento(); df.set_st_cartao(cartao); df.set_st_loja("(" + loj.get_st_loja() + ") " + loj.get_st_nome()); df.set_st_nsu(parc.get_nu_nsu()); df.set_dt_trans(parc.get_dt_inclusao()); df.set_vr_valor(log_fech.get_vr_valor()); df.set_st_cnpj(loj.get_nu_CNPJ()); df.set_st_matricula(cart.get_st_matricula()); df.set_nu_parcela(parc.get_nu_indice() + "/" + parc.get_nu_tot_parcelas()); DataPortable mem_rlt = df as DataPortable; sb.Append(MemorySave(ref mem_rlt)); sb.Append(","); } output_st_total = nu_total_cartao.ToString(); string list_ids = sb.ToString().TrimEnd(','); DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); output_st_csv_cartao_content = MemorySave(ref dp); lstCart.Sort(); for (int t = 0; t < lstCart.Count; ++t) { string st_cart = lstCart[t].ToString(); long sub_total = (long)hsh_sub_total_cartao [st_cart]; output_st_csv_subtotal_cartao += sub_total.ToString() + ","; output_st_csv_cartao += st_cart + ","; } output_st_csv_subtotal_cartao = output_st_csv_subtotal_cartao.TrimEnd(','); output_st_csv_cartao = output_st_csv_cartao.TrimEnd(','); #endregion break; } } output_st_empresa += aff; /// USER [ execute ] END Registry("execute done fetch_rel_3_fech "); return(true); }