public override bool finish( ) { Registry("finish exec_pos_desfazVendaEmpresarialSITEF "); /// USER [ finish ] // ## Copiar para saída cod de resposta LOG_NSU l_nsu = new LOG_NSU(this); l_nsu.set_dt_log(GetDataBaseTime()); l_nsu.create_LOG_NSU(); output_cont_pr.set_st_codResp(var_codResp); output_cont_pr.set_st_nsuBanco(l_nsu.get_identity()); LOG_Transacoes l_tr_fin = new LOG_Transacoes(this); #region - registra a transação - l_tr_fin.set_fk_terminal(term.get_identity()); l_tr_fin.set_dt_transacao(GetDataBaseTime()); if (output_cont_pr.get_st_codResp() == "N3N3") { l_tr_fin.set_nu_cod_erro("1313"); } else { l_tr_fin.set_nu_cod_erro(output_cont_pr.get_st_codResp()); } l_tr_fin.set_nu_nsuOrig(l_tr.get_nu_nsu()); l_tr_fin.set_nu_nsu(l_nsu.get_identity()); l_tr_fin.set_st_msg_transacao("Registro: " + l_tr.get_nu_nsu()); l_tr_fin.set_en_operacao(OperacaoCartao.VENDA_EMPRESARIAL_DESFAZ); l_tr_fin.set_fk_loja(term.get_fk_loja()); l_tr_fin.set_tg_confirmada(TipoConfirmacao.Registro); l_tr_fin.set_tg_contabil(Context.FALSE); l_tr_fin.set_vr_saldo_disp(l_tr.get_vr_saldo_disp()); l_tr_fin.set_vr_saldo_disp_tot(l_tr.get_vr_saldo_disp_tot()); l_tr_fin.set_vr_total(l_tr.get_vr_total()); l_tr_fin.set_fk_empresa(l_tr.get_fk_empresa()); l_tr_fin.set_fk_loja(l_tr.get_fk_loja()); l_tr_fin.set_fk_cartao(l_tr.get_fk_cartao()); #endregion l_tr_fin.create_LOG_Transacoes(); /// USER [ finish ] END Registry("finish done exec_pos_desfazVendaEmpresarialSITEF "); if (remoteTransaction == true) { return(true); } DataPortable dp_out = new DataPortable(); dp_out.MapTagValue(COMM_OUT_EXEC_POS_DESFAZVENDAEMPRESARIAL.st_msg, output_st_msg); var_Comm.AddExitPortable(ref dp_out); DataPortable dp_cont_1 = new DataPortable(); dp_cont_1.MapTagContainer(COMM_OUT_EXEC_POS_DESFAZVENDAEMPRESARIAL.pr, output_cont_pr as DataPortable); var_Comm.AddExitPortable(ref dp_cont_1); return(true); }
public override bool authenticate( ) { Registry("authenticate exec_pos_cancelaVendaEmpresarial "); /// USER [ authenticate ] var_codResp = "0606"; cart = new T_Cartao(this); old_l_tr = new LOG_Transacoes(this); // ## Buscar transação original old_l_tr.ExclusiveAccess(); if (input_dt_hoje != "") { DateTime start = Convert.ToDateTime(input_dt_hoje); DateTime end = Convert.ToDateTime(input_dt_hoje).AddDays(1); // ## Buscar transação de NSU com data especifica if (!old_l_tr.select_rows_nsu_oper(input_st_nsu_cancel, OperacaoCartao.VENDA_EMPRESARIAL, GetDataBaseTime(start), GetDataBaseTime(end))) { output_st_msg = "NSU inválido (" + input_st_nsu_cancel.TrimStart('0') + ")"; var_codResp = "1212"; return(false); } } else { // ## Buscar transação de NSU com data de hoje if (!old_l_tr.select_rows_nsu_oper(input_st_nsu_cancel, OperacaoCartao.VENDA_EMPRESARIAL, GetTodayStartTime(), GetTodayEndTime())) { output_st_msg = "NSU inválido (" + input_st_nsu_cancel.TrimStart('0') + ")"; var_codResp = "1212"; return(false); } } if (!old_l_tr.fetch()) { output_st_msg = "Erro aplicativo"; return(false); } valor = old_l_tr.get_vr_total(); dt_orig = old_l_tr.get_dt_transacao(); // ## Buscar terminal T_Terminal term = new T_Terminal(this); if (!term.selectIdentity(old_l_tr.get_fk_terminal())) { output_st_msg = "Erro aplicativo"; return(false); } // ## Caso terminais diferentes, sair // desnecessário /* * if (term.get_nu_terminal() != input_cont_pe.get_st_terminal()) * { * output_st_msg = "Terminal inválido"; * var_codResp = "0303"; * return false; * }*/ // conferir se usuário que quer cancelar (via client) // a transação é da mesma empresa ou // se for lojista, for o mesmo terminal if (input_id_user != "") { T_Usuario user = new T_Usuario(this); if (!user.selectIdentity(input_id_user)) { output_st_msg = "Usuário inválido"; var_codResp = "0303"; return(false); } if (user.get_tg_nivel() == TipoUsuario.Lojista) { #region - lojista - LINK_UsuarioTerminal lut = new LINK_UsuarioTerminal(this); if (!lut.select_fk_term(term.get_identity())) { output_st_msg = "Usuário inválido"; var_codResp = "0303"; return(false); } if (!lut.fetch()) { output_st_msg = "Usuário inválido"; var_codResp = "0303"; return(false); } if (lut.get_fk_user() != user.get_identity()) { output_st_msg = "Transação não pertence à sua loja"; var_codResp = "0303"; return(false); } #endregion } else if (user.get_tg_nivel() != TipoUsuario.OperadorConvey && user.get_tg_nivel() != TipoUsuario.SuperUser) { #region - operadores normais - T_Empresa emp = new T_Empresa(this); if (!emp.select_rows_empresa(user.get_st_empresa())) { output_st_msg = "Empresa inválida"; var_codResp = "0303"; return(false); } if (!emp.fetch()) { output_st_msg = "Empresa inválida"; var_codResp = "0303"; return(false); } if (old_l_tr.get_fk_empresa() != emp.get_identity()) { output_st_msg = "Transação não pertence à sua empresa"; var_codResp = "0303"; return(false); } #endregion } } // ## Atualizar cartão cart.ExclusiveAccess(); if (!cart.selectIdentity(old_l_tr.get_fk_cartao())) { output_st_msg = "Erro aplicativo"; return(false); } // ## Se transação já foi cancelada, sair if (old_l_tr.get_tg_confirmada() == TipoConfirmacao.Cancelada) { output_st_msg = "prev. cancel"; var_codResp = "N3N3"; return(false); } // ## Confirma cancelamento old_l_tr.set_tg_contabil(Context.TRUE); old_l_tr.set_tg_confirmada(TipoConfirmacao.Cancelada); // ## Atualizar transação original if (!old_l_tr.synchronize_LOG_Transacoes()) { output_st_msg = "Erro aplicativo"; return(false); } var_codResp = "0000"; /// USER [ authenticate ] END Registry("authenticate done exec_pos_cancelaVendaEmpresarial "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_listaTransacoesLojas "); /// USER [ execute ] LOG_Transacoes ltr = new LOG_Transacoes(this); if (!ltr.select_rows_dt(input_dt_ini, input_dt_fim)) { PublishError("Nenhuma transação disponível"); return(false); } Hashtable hshEmp = new Hashtable(); Hashtable hshLoj = new Hashtable(); ArrayList lstEmp = new ArrayList(); ArrayList lstLoj = new ArrayList(); while (ltr.fetch()) { string fk_empresa = ltr.get_fk_empresa(); if (hshEmp [fk_empresa] == null) { hshEmp [fk_empresa] = (long)0; lstEmp.Add(fk_empresa); } hshEmp [fk_empresa] = (long)hshEmp [fk_empresa] + 1; string fk_loja = ltr.get_fk_loja(); if (hshLoj [fk_loja] == null) { hshLoj [fk_loja] = (long)0; lstLoj.Add(fk_loja); } hshLoj [fk_loja] = (long)hshLoj [fk_loja] + 1; } ArrayList lstEmpSort = new ArrayList(); for (int t = 0; t < lstEmp.Count; ++t) { string tg = lstEmp[t].ToString(); long qtd = (long)hshEmp [tg]; string res = qtd.ToString().PadLeft(12, '0') + tg; lstEmpSort.Add(res); } ArrayList lstLojSort = new ArrayList(); for (int t = 0; t < lstLoj.Count; ++t) { string tg = lstLoj[t].ToString(); long qtd = (long)hshLoj [tg]; string res = qtd.ToString().PadLeft(12, '0') + tg; lstLojSort.Add(res); } lstEmpSort.Sort(); lstLojSort.Sort(); StringBuilder sb_global = new StringBuilder(); T_Empresa emp = new T_Empresa(this); for (int t = lstEmpSort.Count - 1; t >= 0; --t) { string line = lstEmpSort[t].ToString(); string qtd = line.Substring(0, 12).TrimStart('0'); if (emp.selectIdentity(line.Substring(12, line.Length - 12))) { DadosConsultaGraficoTransLojas dl = new DadosConsultaGraficoTransLojas(); dl.set_nu_trans(qtd); dl.set_nu_cod(emp.get_st_empresa()); dl.set_st_nome(emp.get_st_fantasia()); dl.set_tg_tipo("E"); DataPortable mem = dl as DataPortable; sb_global.Append(MemorySave(ref mem)); sb_global.Append(","); } } T_Loja loj = new T_Loja(this); for (int t = lstLojSort.Count - 1; t >= 0; --t) { string line = lstLojSort[t].ToString(); string qtd = line.Substring(0, 12).TrimStart('0'); if (loj.selectIdentity(line.Substring(12, line.Length - 12))) { DadosConsultaGraficoTransLojas dl = new DadosConsultaGraficoTransLojas(); dl.set_nu_trans(qtd); dl.set_nu_cod(loj.get_st_loja()); dl.set_st_nome(loj.get_st_nome() + " - " + loj.get_st_social()); dl.set_tg_tipo("L"); DataPortable mem = dl as DataPortable; sb_global.Append(MemorySave(ref mem)); sb_global.Append(","); } } string list_ids = sb_global.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum registro encontrado"); return(false); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); output_st_csv = MemorySave(ref dp); /// USER [ execute ] END Registry("execute done fetch_listaTransacoesLojas "); 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 override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_consultaTransacao "); /// USER [ execute ] T_Terminal term = new T_Terminal(this); T_Cartao cart = new T_Cartao(this); T_Loja loj = new T_Loja(this); StringBuilder sb = new StringBuilder(); int i_nu_parc = 0; long i_vr_valor = 0; if (nu_parc.Length > 0) { i_nu_parc = Convert.ToInt32(nu_parc); } if (vr_valor.Length > 0) { i_vr_valor = Convert.ToInt64(vr_valor); } string nsu = input_cont_dct.get_st_nsu(); Hashtable hshEmpresas = new Hashtable(); #region - para o caso de administrador - if (user.get_tg_nivel() == TipoUsuario.Administrador) { T_Empresa emp_admin = new T_Empresa(this); if (emp_admin.select_rows_empresa(user.get_st_empresa())) { if (!emp_admin.fetch()) { return(false); } T_Empresa emp_tb = new T_Empresa(this); // ## Para o caso de empresa administradora de empresas if (emp_tb.select_fk_admin(emp_admin.get_identity())) { while (emp_tb.fetch()) { hshEmpresas [emp_tb.get_identity()] = "*"; } } } } #endregion // ## Busca as transações SQL_LOGGING_ENABLE = false; int max_trans = 200; if (input_cont_header.get_tg_user_type() == TipoUsuario.SuperUser) { max_trans = 1000; } while (l_tr.fetch()) { // ## Filtro de empresas // ## somente de administradora ou de vinculadas if (hshEmpresas.Count > 0) { if (hshEmpresas [l_tr.get_fk_empresa()] == null) { continue; } } if (nsu.Length > 0) { if (l_tr.get_nu_nsu() != nsu) { continue; } } if (st_cart_id.Length > 0) { if (l_tr.get_fk_cartao() != st_cart_id) { continue; } } if (nu_parc.Length > 0) { if (l_tr.get_int_nu_parcelas() < i_nu_parc) { continue; } } if (vr_valor.Length > 0) { if (l_tr.get_int_vr_total() < i_vr_valor) { continue; } } if (en_oper.Length > 0) { if (l_tr.get_en_operacao() != en_oper) { continue; } } if (en_conf.Length > 0) { if (l_tr.get_tg_confirmada() != en_conf) { continue; } } if (fk_empresa.Length > 0) { if (l_tr.get_fk_empresa() != fk_empresa) { continue; } } if (fk_terminal.Length > 0) { if (l_tr.get_fk_terminal() != fk_terminal) { continue; } } term.Reset(); loj.Reset(); cart.Reset(); // ## Busca terminal term.selectIdentity(l_tr.get_fk_terminal()); if (fk_loja.Length > 0) { if (term.get_fk_loja() != fk_loja) { continue; } } loj.selectIdentity(l_tr.get_fk_loja()); cart.selectIdentity(l_tr.get_fk_cartao()); // ## Cria registro em memória if (--max_trans == 0) { PublishNote("Limite máximo de registros excedido"); break; } DadosConsultaTransacao dt = new DadosConsultaTransacao(); dt.set_en_oper(l_tr.get_en_operacao()); dt.set_st_nsu(l_tr.get_nu_nsu()); dt.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); dt.set_st_cnpj_loja(loj.get_st_nome()); dt.set_st_terminal(term.get_nu_terminal()); dt.set_vr_valor(l_tr.get_vr_total()); dt.set_nu_parcelas(l_tr.get_nu_parcelas()); dt.set_dt_transacao(l_tr.get_dt_transacao()); dt.set_tg_status(l_tr.get_tg_confirmada()); dt.set_st_msg_erro(l_tr.get_st_msg_transacao() + l_tr.get_st_doc()); DataPortable tmp = dt as DataPortable; // ## indexa em memória sb.Append(MemorySave(ref tmp)); sb.Append(","); } SQL_LOGGING_ENABLE = true; 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); // ## cria indexador de bloco output_st_csv_id = MemorySave(ref dp); /// USER [ execute ] END Registry("execute done fetch_consultaTransacao "); return(true); }
public override bool execute( ) { Registry("execute fetch_consultaLojista "); /// 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); } LOG_Transacoes ltr = new LOG_Transacoes(this); T_Cartao cart = new T_Cartao(this); T_Empresa emp = new T_Empresa(this); StringBuilder sb = new StringBuilder(); if (ltr.select_rows_dt_loj(input_dt_ini, input_dt_fim, loj.get_identity())) { while (ltr.fetch()) { if (!emp.selectIdentity(ltr.get_fk_empresa())) { continue; } if (!cart.selectIdentity(ltr.get_fk_cartao())) { continue; } DadosConsultaTransacao dct = new DadosConsultaTransacao(); dct.set_dt_transacao(ltr.get_dt_transacao()); dct.set_st_nsu(ltr.get_nu_nsu()); dct.set_vr_valor(ltr.get_vr_total()); dct.set_nu_parcelas(ltr.get_nu_parcelas()); dct.set_tg_status(ltr.get_tg_confirmada()); dct.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); dct.set_st_cod_empresa(emp.get_st_empresa()); 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); // ## Obtem indexador geral output_st_content = MemorySave(ref dp); /// USER [ execute ] END Registry("execute done fetch_consultaLojista "); return(true); }