Class: JeraPayment::Services::Iugu::Subscriptions::UpdateCredits
- Defined in:
- lib/jera_payment/services/iugu/subscriptions/update_credits.rb
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(resource, credits, action) ⇒ UpdateCredits
constructor
A new instance of UpdateCredits.
Constructor Details
#initialize(resource, credits, action) ⇒ UpdateCredits
Returns a new instance of UpdateCredits.
6 7 8 9 10 |
# File 'lib/jera_payment/services/iugu/subscriptions/update_credits.rb', line 6 def initialize(resource, credits, action) @resource = resource @credits = { quantity: credits } @action = action end |
Instance Method Details
#call ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/jera_payment/services/iugu/subscriptions/update_credits.rb', line 12 def call begin ApplicationRecord.transaction do iugu_subscription_credits = eval("JeraPayment::Api::Iugu::Subscription.#{@action.to_s}_credits(@resource.api_id, @credits, @resource&.customer&.sub_account&.api_token)") raise(StandardError, iugu_subscription_credits[:errors]) if iugu_subscription_credits[:errors].present? set_api_attributes(iugu_subscription_credits) end rescue Exception => error add_error(error.) end @resource end |