class JeraPayment::Services::Iugu::Subscriptions::UpdateSituation
Public Class Methods
new(resource, action)
click to toggle source
# File lib/jera_payment/services/iugu/subscriptions/update_situation.rb, line 6 def initialize(resource, action) @resource = resource @action = action end
Public Instance Methods
call()
click to toggle source
# File lib/jera_payment/services/iugu/subscriptions/update_situation.rb, line 11 def call begin ApplicationRecord.transaction do iugu_subscription = eval("JeraPayment::Api::Iugu::Subscription.#{@action.to_s}(@resource.api_id, @resource&.customer&.sub_account&.api_token)") raise(StandardError, iugu_subscription[:errors]) if iugu_subscription[:errors].present? set_api_attributes(iugu_subscription) end rescue Exception => error add_error(error.message) end @resource end
Private Instance Methods
set_api_attributes(attributes)
click to toggle source
# File lib/jera_payment/services/iugu/subscriptions/update_situation.rb, line 29 def set_api_attributes(attributes) @resource.update_columns(suspended: attributes[:suspended], active: attributes[:active]) end