class Besepa::Debit
Constants
- ALLOWED_NILS
- FIELDS
Attributes
creditor_bank_account[RW]
customer[RW]
debtor_bank_account[RW]
remittance[RW]
subscription[RW]
Protected Class Methods
api_path(filters={})
click to toggle source
# File lib/besepa/debit.rb, line 48 def self.api_path(filters={}) customer_id = filters[:customer_id] if customer_id "#{Customer.api_path}/#{CGI.escape(customer_id)}/debits" else '/debits' end end
query_params(filters = {})
click to toggle source
# File lib/besepa/debit.rb, line 42 def self.query_params(filters = {}) filters = filters.dup filters.delete(:customer_id) filters end
Public Instance Methods
allowed_nils()
click to toggle source
# File lib/besepa/debit.rb, line 36 def allowed_nils ALLOWED_NILS end
to_hash()
click to toggle source
# File lib/besepa/debit.rb, line 23 def to_hash values = {} self.class::FIELDS.each do |key| values[key] = self.send("#{key.to_s}") end values[:debtor_bank_account] = debtor_bank_account.to_hash if debtor_bank_account values[:creditor_bank_account] = creditor_bank_account.to_hash if creditor_bank_account values[:customer] = customer.to_hash if customer values[:remittance] = remittance.to_hash if remittance values[:subscription] = subscription.to_hash if subscription values end
Protected Instance Methods
api_path(filters={})
click to toggle source
# File lib/besepa/debit.rb, line 57 def api_path(filters={}) "#{self.class.api_path(filters)}/#{CGI.escape(id)}" end
process_attributes(attrs)
click to toggle source
# File lib/besepa/debit.rb, line 61 def process_attributes(attrs) self.class::FIELDS.each do |key| self.send("#{key.to_s}=", attrs[key.to_s] || attrs[key.to_sym]) end self.debtor_bank_account = Besepa::BankAccount.new(attrs['debtor_bank_account']) if attrs['debtor_bank_account'] self.creditor_bank_account = Besepa::BusinessAccount.new(attrs['creditor_bank_account']) if attrs['creditor_bank_account'] self.customer = Besepa::Customer.new(attrs['customer']) if attrs['customer'] self.remittance = Besepa::Remittance.new(attrs['remittance']) if attrs['remittance'] self.subscription = Besepa::Subscription.new(attrs['subscription']) if attrs['subscription'] process_activities(attrs) self end