public override bool execute( ) { Registry("execute exec_pos_cancelaVendaEmpresarial "); /// USER [ execute ] // ## Buscar parcelas com NSU e data de hoje // ## pois somente pode-se cancelar transações no mesmo dia T_Parcelas parc = new T_Parcelas(this); if (!parc.select_rows_nsu(input_st_nsu_cancel, GetTodayStartTime(), GetTodayEndTime())) { output_st_msg = "erro aplicativo"; return(false); } T_Parcelas tmp = new T_Parcelas(this); while (parc.fetch()) { // ## Atualizar parcela tmp.ExclusiveAccess(); if (!tmp.selectIdentity(parc.get_identity())) { output_st_msg = "erro aplicativo"; return(false); } // ## Se parcela já foi cancelada, sair if (tmp.get_tg_pago() == TipoParcela.CANCELADA) { output_st_msg = "prev. cancel"; return(false); } // ## Se for cartão edu, estornar imediatamente no disponivel if (cart.get_tg_tipoCartao() == TipoCartao.educacional) { long disp = Convert.ToInt64(cart.get_vr_disp_educacional()) + Convert.ToInt64(tmp.get_vr_valor()); cart.set_vr_disp_educacional(disp.ToString()); } else if (cart.get_tg_tipoCartao() == TipoCartao.presente) { cart.set_vr_limiteTotal(cart.get_int_vr_limiteTotal() + tmp.get_int_vr_valor()); } // ## Atualizar if (!tmp.synchronize_T_Parcelas()) { output_st_msg = "erro aplicativo"; return(false); } } // ## Atualiza cartão if (!cart.synchronize_T_Cartao()) { output_st_msg = "erro aplicativo"; return(false); } output_st_msg = "NSU: " + input_st_nsu_cancel.TrimStart('0'); var_codResp = "0000"; /// USER [ execute ] END Registry("execute done exec_pos_cancelaVendaEmpresarial "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute exec_repasseLoja "); /// USER [ execute ] loj = new T_Loja(this); if (!loj.select_rows_loja(input_st_codLoja)) { return(false); } if (!loj.fetch()) { return(false); } T_RepasseLoja rl = new T_RepasseLoja(this); rl.set_dt_efetiva(GetDataBaseTime()); rl.set_fk_loja(loj.get_identity()); rl.set_st_ident(input_st_ident); rl.set_tg_opcao(input_tg_opcao); rl.set_vr_valor(input_vr_valor); if (!rl.create_T_RepasseLoja()) { return(false); } output_id_confRepasse = rl.get_identity(); LINK_RepasseParcela lrp = new LINK_RepasseParcela(this); T_Parcelas parc = new T_Parcelas(this); for (int t = 0; t < input_array_generic_lstPar.Count; ++t) { DadosRepasse dr = new DadosRepasse(input_array_generic_lstPar[t] as DataPortable); if (dr.get_tg_confirmado() == Context.FALSE) { continue; } parc.ExclusiveAccess(); if (!parc.selectIdentity(dr.get_id_parcela())) { return(false); } // esta parcela foi repassada parc.set_tg_pago(Context.TRUE); if (!parc.synchronize_T_Parcelas()) { return(false); } parc.ReleaseExclusive(); lrp.set_fk_parcela(parc.get_identity()); lrp.set_fk_repasseLoja(rl.get_identity()); if (!lrp.create_LINK_RepasseParcela()) { return(false); } } PublishNote("Repasse feito com sucesso"); /// USER [ execute ] END Registry("execute done exec_repasseLoja "); 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 exec_pos_vendaEmpresarialSITEF "); /// USER [ execute ] #region - atualizar senhas - cart.ExclusiveAccess(); if (!cart.selectIdentity(cart.get_identity())) { output_st_msg = "Erro aplicativo"; return(false); } if (!prot.selectIdentity(cart.get_fk_dadosProprietario())) { output_st_msg = "Erro aplicativo"; return(false); } if (cart.get_st_titularidade() != "01") { T_Dependente dep = new T_Dependente(this); if (!dep.select_rows_prop_tit(cart.get_fk_dadosProprietario(), cart.get_st_titularidade())) { output_st_msg = "Erro aplicativo"; return(false); } if (!dep.fetch()) { output_st_msg = "Erro aplicativo"; return(false); } var_nomeCliente = dep.get_st_nome(); } else { var_nomeCliente = prot.get_st_nome(); } if (IsDigitado) { string cod_acesso = new ApplicationUtil().calculaCodigoAcesso(cart.get_st_empresa(), cart.get_st_matricula(), cart.get_st_titularidade(), cart.get_nu_viaCartao(), prot.get_st_cpf()); Trace(cod_acesso); if (cod_acesso != input_cont_pe.get_st_senha()) { output_st_msg = "Senha inválida"; var_codResp = "4343"; return(false); } } else { if (cart.get_st_senha() != input_cont_pe.get_st_senha()) { long senhasErradas = cart.get_int_nu_senhaErrada() + 1; cart.set_nu_senhaErrada(senhasErradas.ToString()); if (senhasErradas > 4) { cart.set_tg_status(CartaoStatus.Bloqueado); cart.set_tg_motivoBloqueio(MotivoBloqueio.SENHA_ERRADA); cart.set_dt_bloqueio(GetDataBaseTime()); } if (!cart.synchronize_T_Cartao()) { output_st_msg = "Erro aplicativo"; return(false); } output_st_msg = "Senha inválida"; var_codResp = "4343"; return(false); } else { cart.set_nu_senhaErrada(Context.NONE); } } if (cart.get_tg_tipoCartao() == TipoCartao.presente) { cart.set_vr_limiteTotal(cart.get_int_vr_limiteTotal() - vr_valor); if (!cart.synchronize_T_Cartao()) { output_st_msg = "Erro aplicativo"; return(false); } } cart.ReleaseExclusive(); #endregion #region - busca informações extras - if (!info.selectIdentity(cart.get_fk_infoAdicionais())) { output_st_msg = "Erro aplicativo"; return(false); } #endregion #region - Faz efetivamente a venda - int tmp_nu_parc = Convert.ToInt32(input_cont_pe.get_nu_parcelas()); int index_pos = 0; string tmp_variavel = input_cont_pe.get_st_valores(); if (tmp_variavel.Length < tmp_nu_parc * 12) { output_st_msg = "formato incorreto"; return(false); } if (cart.get_tg_tipoCartao() != TipoCartao.presente) { if (tmp_nu_parc > emp.get_int_nu_parcelas()) { output_st_msg = "excede max. parcelas"; var_codResp = "1212"; return(false); } } #region - obtem nsu - l_nsu.set_dt_log(GetDataBaseTime()); if (!l_nsu.create_LOG_NSU()) { output_st_msg = "Erro aplicativo"; return(false); } #endregion var_nu_nsuAtual = l_nsu.get_identity(); var_nu_nsuEntidade = var_nu_nsuAtual; var_dt_transacao = GetDataBaseTime(); // ## Criar parcelas for (int t = 1; t <= tmp_nu_parc; ++t) { T_Parcelas parc = new T_Parcelas(this); string valor_unit_parc = tmp_variavel.Substring(index_pos, 12); index_pos += 12; #region - atribui valores e links à parcela - parc.set_nu_nsu(l_nsu.get_identity()); parc.set_fk_empresa(emp.get_identity()); parc.set_fk_cartao(cart.get_identity()); parc.set_dt_inclusao(var_dt_transacao); parc.set_nu_parcela(t.ToString()); parc.set_vr_valor(valor_unit_parc); parc.set_nu_indice(t.ToString()); parc.set_tg_pago(TipoParcela.EM_ABERTO); parc.set_fk_loja(loj.get_identity()); parc.set_nu_tot_parcelas(tmp_nu_parc.ToString()); parc.set_fk_terminal(term.get_identity()); #endregion if (!parc.create_T_Parcelas()) { output_st_msg = "erro aplicativo"; return(false); } lstParcs.Add(parc.get_identity()); } #endregion var_codResp = "0000"; /// USER [ execute ] END Registry("execute done exec_pos_vendaEmpresarialSITEF "); return(true); }
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); }