class Cmxl::Fields::TransactionSupplementary
Attributes
charges[RW]
initial[RW]
source[RW]
Public Class Methods
charges_parser()
click to toggle source
# File lib/cmxl/fields/transaction_supplementary.rb, line 17 def charges_parser %r{((?:\/CHGS\/)(?<charges>[a-zA-Z]{3}[\d,]{1,15}))} end
initial_parser()
click to toggle source
# File lib/cmxl/fields/transaction_supplementary.rb, line 13 def initial_parser %r{((?:\/OCMT\/)(?<initial>[a-zA-Z]{3}[\d,]{1,15}))} end
new(line, initial, charges)
click to toggle 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
parse(line)
click to toggle 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
charges_currency()
click to toggle source
# File lib/cmxl/fields/transaction_supplementary.rb, line 40 def charges_currency charges[0..2] if charges end
charges_in_cents()
click to toggle source
# File lib/cmxl/fields/transaction_supplementary.rb, line 36 def charges_in_cents to_amount_in_cents(charges[3..-1]) if charges end
initial_amount_in_cents()
click to toggle 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
initial_currency()
click to toggle source
# File lib/cmxl/fields/transaction_supplementary.rb, line 32 def initial_currency initial[0..2] if initial end
to_h()
click to toggle 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