Class: JeraPayment::Services::Iugu::Invoices::Duplicate
- Defined in:
- lib/jera_payment/services/iugu/invoices/duplicate.rb
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(resource, attributes) ⇒ Duplicate
constructor
A new instance of Duplicate.
Constructor Details
#initialize(resource, attributes) ⇒ Duplicate
Returns a new instance of Duplicate.
6 7 8 9 |
# File 'lib/jera_payment/services/iugu/invoices/duplicate.rb', line 6 def initialize(resource, attributes) @resource = resource @attributes = attributes end |
Instance Method Details
#call ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/jera_payment/services/iugu/invoices/duplicate.rb', line 11 def call begin ApplicationRecord.transaction do iugu_invoice_duplicated = JeraPayment::Api::Iugu::Invoice.duplicate(@resource.api_id, @attributes, @resource&.sub_account&.api_token) raise(StandardError, iugu_invoice_duplicated[:errors]) if iugu_invoice_duplicated[:errors].present? invoice_duplicated = set_new_invoice(iugu_invoice_duplicated) raise(StandardError, invoice_duplicated[:errors]) if invoice_duplicated[:errors].present? @resource = invoice_duplicated end rescue Exception => error add_error(error.) end @resource end |