Added getBuyerTradePartyAddress() and getAddressFromNodeList() to ZUGFeRDImporter.java

Added Test
This commit is contained in:
Alexander Berndt
2020-06-18 12:06:13 +02:00
parent 2b60b7a8b7
commit 2d1fd3ae94
2 changed files with 45 additions and 2 deletions

View File

@@ -400,6 +400,14 @@ public class ZUGFeRDImporter {
return extractString("//SellerTradeParty//GlobalID");
}
/**
* @return the BuyerTradeParty Name
*/
public String getBuyerTradePartyName() {
return extractString("//BuyerTradeParty//Name");
}
/**
* @return the line Total Amount
@@ -679,6 +687,28 @@ public class ZUGFeRDImporter {
return s.hasNext() ? s.next() : "";
}
/**
* returns an instance of PostalTradeAddress for SellerTradeParty section
* @return an instance of PostalTradeAddress
*/
public PostalTradeAddress getBuyerTradePartyAddress() {
NodeList nl = null;
try {
if (getVersion() == 1) {
nl = getNodeListByPath("//CrossIndustryDocument//SpecifiedSupplyChainTradeTransaction//ApplicableSupplyChainTradeAgreement//BuyerTradeParty//PostalTradeAddress");
} else {
nl = getNodeListByPath("//CrossIndustryInvoice//SupplyChainTradeTransaction//ApplicableHeaderTradeAgreement//BuyerTradeParty//PostalTradeAddress");
}
} catch (Exception e) {
e.printStackTrace();
return null;
}
return getAddressFromNodeList(nl);
}
/**
* returns an instance of PostalTradeAddress for SellerTradeParty section
* @return an instance of PostalTradeAddress
@@ -696,9 +726,15 @@ public class ZUGFeRDImporter {
}
} catch (Exception e) {
e.printStackTrace();
return address;
return null;
}
return getAddressFromNodeList(nl);
}
private PostalTradeAddress getAddressFromNodeList(NodeList nl) {
PostalTradeAddress address = new PostalTradeAddress();
if (nl != null) {
for (int i = 0; i < nl.getLength(); i++) {
Node n = nl.item(i);
@@ -737,7 +773,6 @@ public class ZUGFeRDImporter {
return address;
}
/**
* returns a list of LineItems
* @return a List of LineItem instances

View File

@@ -219,6 +219,7 @@ public class ZF2Test extends MustangReaderTestCase {
assertEquals(zi.getTaxTotalAmount(),"75.04");
assertEquals(zi.getRoundingAmount(), "");
assertEquals(zi.getPaidAmount(), "0.00");
assertEquals(zi.getBuyerTradePartyName(), "Theodor Est");
assertEquals(zi.getSellerTradePartyGlobalID(), "");
assertEquals(zi.getBuyerTradePartyID(), "DE999999999");
assertEquals(zi.getHolder(), getOwnOrganisationName());
@@ -229,6 +230,13 @@ public class ZF2Test extends MustangReaderTestCase {
assertEquals(zi.getIBAN(),getTradeSettlementPayment()[0].getOwnIBAN());
assertEquals(zi.getHolder(), getOwnOrganisationName());
assertEquals(zi.getForeignReference(), getNumber());
assertEquals(zi.getBuyerTradePartyAddress().getPostcodeCode(), "88802");
assertEquals(zi.getBuyerTradePartyAddress().getLineOne(), "Bahnstr. 42");
assertEquals(zi.getBuyerTradePartyAddress().getLineTwo(), null);
assertEquals(zi.getBuyerTradePartyAddress().getLineThree(), null);
assertEquals(zi.getBuyerTradePartyAddress().getCountrySubDivisionName(), null);
assertEquals(zi.getBuyerTradePartyAddress().getCountryID(), "DE");
assertEquals(zi.getBuyerTradePartyAddress().getCityName(), "Spielkreis");
assertEquals(zi.getSellerTradePartyAddress().getPostcodeCode(), "12345");
assertEquals(zi.getSellerTradePartyAddress().getLineOne(), "Ecke 12");
assertEquals(zi.getSellerTradePartyAddress().getLineTwo(), null);