public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute exec_resolvePend "); /// USER [ execute ] DateTime start = Convert.ToDateTime(input_dt_ini); DateTime end = Convert.ToDateTime(input_dt_ini).AddDays(1); LOG_Transacoes ltr = new LOG_Transacoes(this); ltr.ExclusiveAccess(); if (!ltr.select_rows_nsu(input_nsu, GetDataBaseTime(start), GetDataBaseTime(end))) { PublishError("NSU não disponível"); return(false); } if (!ltr.fetch()) { return(false); } if (ltr.get_tg_confirmada() == input_tg_confirmada) { PublishError("Transação previamente resolvida"); return(false); } if (input_tg_confirmada == TipoConfirmacao.Cancelada) { T_Cartao cart = new T_Cartao(this); cart.ExclusiveAccess(); if (cart.selectIdentity(ltr.get_fk_cartao())) { if (cart.get_tg_tipoCartao() == TipoCartao.presente) { cart.set_vr_limiteTotal(cart.get_int_vr_limiteTotal() + ltr.get_int_vr_total()); if (!cart.synchronize_T_Cartao()) { return(false); } } } cart.ReleaseExclusive(); } ltr.set_tg_confirmada(input_tg_confirmada); if (!ltr.synchronize_LOG_Transacoes()) { return(false); } ltr.ReleaseExclusive(); if (input_tg_confirmada == TipoConfirmacao.Confirmada) { PublishNote("Transação confirmada com sucesso"); } else { PublishNote("Transação cancelada com sucesso"); } /// USER [ execute ] END Registry("execute done exec_resolvePend "); return(true); }