class Sepa::DirectDebitOrder::Party

Attributes

address_line_1[RW]
address_line_2[RW]
contact_email[RW]
contact_name[RW]
contact_phone[RW]
country[RW]
name[RW]
postcode[RW]
town[RW]

Public Class Methods

new(name, address_line_1, address_line_2, postcode, town, country, contact_name, contact_phone, contact_email) click to toggle source
# File lib/sepa/direct_debit_order.rb, line 113
def initialize name, address_line_1, address_line_2, postcode, town, country, contact_name, contact_phone, contact_email
  @name, @address_line_1, @address_line_2, @postcode, @town, @country = name, address_line_1, address_line_2, postcode, town, country
  @contact_name, @contact_phone, @contact_email = contact_name, contact_phone, contact_email
end

Public Instance Methods

to_properties(prefix, opts) click to toggle source
# File lib/sepa/direct_debit_order.rb, line 118
def to_properties prefix, opts
  cc = county_code country
  hsh = { "#{prefix}.name" => name }
  if (opts[:context] != :initiating_party) || (opts[:pain_008_001_version] != "02")
    hsh["#{prefix}.postal_address.address_line[0]"] = address_line_1 unless blank? address_line_1

    if opts[:pain_008_001_version] == "02"
      candidate_adr_line_2 = "#{postcode} #{town}".strip
      address_line_2 = candidate_adr_line_2 unless blank? candidate_adr_line_2
      hsh["#{prefix}.postal_address.address_line[1]"] = address_line_2 unless blank? address_line_2
    else
      hsh["#{prefix}.postal_address.post_code"]       = postcode       unless blank? postcode
      hsh["#{prefix}.postal_address.town_name"]       = town           unless blank? town
    end
    hsh["#{prefix}.postal_address.country"]           = cc             unless blank? cc

    unless opts[:pain_008_001_version] == "02"
      hsh["#{prefix}.contact_details.name"]           = contact_name   unless blank? contact_name
      hsh["#{prefix}.contact_details.phone_number"]   = contact_phone  unless blank? contact_phone
      hsh["#{prefix}.contact_details.email_address"]  = contact_email  unless blank? contact_email
    end
  end
  hsh
end