class Cmxl::Fields::TransactionSupplementary
Attributes
Public Class Methods
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 17 def charges_parser %r{((?:\/CHGS\/)(?<charges>[a-zA-Z]{3}[\d,]{1,15}))} end
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 13 def initial_parser %r{((?:\/OCMT\/)(?<initial>[a-zA-Z]{3}[\d,]{1,15}))} end
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 22 def initialize(line, initial, charges) self.source = line self.initial = initial self.charges = charges end
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 7 def parse(line) initial = Regexp.last_match(1) if line && line.match(initial_parser) charges = Regexp.last_match(1) if line && line.match(charges_parser) new(line, initial, charges) end
Public Instance Methods
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 40 def charges_currency charges[0..2] if charges end
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 36 def charges_in_cents to_amount_in_cents(charges[3..-1]) if charges end
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 28 def initial_amount_in_cents to_amount_in_cents(initial[3..-1]) if initial end
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 32 def initial_currency initial[0..2] if initial end
Source
# File lib/cmxl/fields/transaction_supplementary.rb, line 44 def to_h { source: source, initial_amount_in_cents: initial_amount_in_cents, initial_currency: initial_currency, charges_in_cents: charges_in_cents, charges_currency: charges_currency } end
Also aliased as: to_hash