Sha256: 1eefc5812cbafc882e7993c316d394b5796272b1904b7b48f55e73f32c1f0200

Contents?: true

Size: 968 Bytes

Versions: 13

Compression:

Stored size: 968 Bytes

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)
      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_service_fee: delegator.get_fee(payment_method),
        payment_id: self.transaction.id,
        payment_method: 'Pagarme',
        slip_url: self.transaction.boleto_url,
        installments: (self.transaction.installments || 1)
      }
    end

    def delegator
      self.contribution.pagarme_delegator
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
catarse_pagarme-1.0.0 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.8 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.7 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.6 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.5 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.4 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.2.0 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.3 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.2 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.1 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.1.0 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.0.2 app/models/catarse_pagarme/transaction_base.rb
catarse_pagarme-0.0.1 app/models/catarse_pagarme/transaction_base.rb