Sha256: 7994c11eacd2f40e3fca43c236b47697afc8e0e2c1150e3867d85afc4caf5f1b
Contents?: true
Size: 1.38 KB
Versions: 2
Compression:
Stored size: 1.38 KB
Contents
module CatarsePagarme class TransactionBase attr_accessor :attributes, :contribution, :transaction, :user, :subscription def initialize(attributes, contribution) self.attributes = attributes self.contribution = contribution self.user = contribution.user end def change_contribution_state self.contribution.update_attributes(attributes_to_contribution) update_fee self.contribution.payment_notifications.create(extra_data: self.transaction.to_json) delegator.change_status_by_transaction(self.transaction.status) end def payment_method PaymentType::CREDIT_CARD end def attributes_to_contribution { payment_choice: payment_method, payment_id: self.transaction.id, payment_method: 'Pagarme', slip_url: self.transaction.boleto_url, installments: (self.transaction.installments || 1), installment_value: (delegator.value_for_installment(self.transaction.installments || 0) / 100.0).to_f, acquirer_name: self.transaction.acquirer_name, acquirer_tid: self.transaction.tid, card_brand: self.transaction.try(:card_brand) } end def delegator self.contribution.pagarme_delegator end private def update_fee self.contribution.update_attributes({ payment_service_fee: delegator.get_fee, }) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
catarse_pagarme-2.4.9 | app/models/catarse_pagarme/transaction_base.rb |
catarse_pagarme-2.4.8 | app/models/catarse_pagarme/transaction_base.rb |