Skip to content

Commit dcc1683

Browse files
authored
Merge pull request #42 from ronald/feature/add-bt-56-buyer-trade-party-person-name
add field buyer#person_name (BT-56)
2 parents 29142ab + a4e9af8 commit dcc1683

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

lib/secretariat/trade_party.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ module Secretariat
2020
TradeParty = Struct.new('TradeParty',
2121
:id,
2222
:name, :street1, :street2, :city, :postal_code, :country_id, :vat_id, :global_id, :global_id_scheme_id, :tax_id,
23+
:person_name,
2324
keyword_init: true,
2425
) do
2526
def to_xml(xml, exclude_tax: false, version: 2)
@@ -32,6 +33,11 @@ def to_xml(xml, exclude_tax: false, version: 2)
3233
end
3334
end
3435
xml['ram'].Name name
36+
if person_name
37+
xml['ram'].DefinedTradeContact do
38+
xml['ram'].PersonName person_name
39+
end
40+
end
3541
xml['ram'].PostalTradeAddress do
3642
xml['ram'].PostcodeCode postal_code
3743
xml['ram'].LineOne street1
@@ -57,3 +63,5 @@ def to_xml(xml, exclude_tax: false, version: 2)
5763
end
5864
end
5965
end
66+
67+
# assert_match(%r{<ram:DefinedTradeContact>\s*<ram:PersonName>Max Mustermann</ram:PersonName>\s*</ram:DefinedTradeContact>}, xml)

test/invoice_test.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,7 @@ def make_de_invoice
290290
)
291291
buyer = TradeParty.new(
292292
name: 'Depfu inc',
293+
person_name: 'Max Mustermann',
293294
street1: 'Quickbornstr. 46',
294295
city: 'Hamburg',
295296
postal_code: '20253',
@@ -781,6 +782,7 @@ def test_invoice_object_extensions
781782
xml = invoice.to_xml(version: 2)
782783

783784
assert_match(/<ram:PaymentReference>#{invoice.payment_reference}<\/ram:PaymentReference>/, xml)
785+
assert_match(%r{<ram:DefinedTradeContact>\s*<ram:PersonName>Max Mustermann</ram:PersonName>\s*</ram:DefinedTradeContact>}, xml)
784786
end
785787
end
786788
end

0 commit comments

Comments
 (0)