From 77a660b737b3aa37ac3618975fed1ce2c456d201 Mon Sep 17 00:00:00 2001 From: Alexander Berndt Date: Thu, 18 Jun 2020 10:26:55 +0200 Subject: [PATCH] Added getZUGFeRDProfil() to ZUGFeRDImporter.java Added Test --- .../ZUGFeRD/ZUGFeRDImporter.java | 23 +++++++++++++++++++ .../org/mustangproject/ZUGFeRD/ZF2Test.java | 1 + 2 files changed, 24 insertions(+) diff --git a/libraryBasic/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java b/libraryBasic/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java index ac87a29d..de64c446 100644 --- a/libraryBasic/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java +++ b/libraryBasic/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java @@ -252,6 +252,28 @@ public class ZUGFeRDImporter { return result; } + /** + * @return the ZUGFeRD Profile + */ + public String getZUGFeRDProfil() { + switch (extractString("//GuidelineSpecifiedDocumentContextParameter//ID")) { + case "urn:cen.eu:en16931:2017": + case "urn:ferd:CrossIndustryDocument:invoice:1p0:comfort": + return "COMFORT"; + case "urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic": + case "urn:ferd:CrossIndustryDocument:invoice:1p0:basic": + return "BASIC"; + case "urn:factur-x.eu:1p0:basicwl": + return "BASIC WL"; + case "urn:factur-x.eu:1p0:minimum": + return "MINIMUM"; + case "urn:ferd:CrossIndustryDocument:invoice:1p0:extended": + case "urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended": + return "EXTENDED"; + } + return ""; + } + /** * @return the Invoice ID */ @@ -269,6 +291,7 @@ public class ZUGFeRDImporter { } + /** * @return the document code */ diff --git a/libraryBasic/src/test/java/org/mustangproject/ZUGFeRD/ZF2Test.java b/libraryBasic/src/test/java/org/mustangproject/ZUGFeRD/ZF2Test.java index 034edb7b..7adc39f6 100644 --- a/libraryBasic/src/test/java/org/mustangproject/ZUGFeRD/ZF2Test.java +++ b/libraryBasic/src/test/java/org/mustangproject/ZUGFeRD/ZF2Test.java @@ -208,6 +208,7 @@ public class ZF2Test extends MustangReaderTestCase { // Reading ZUGFeRD assertEquals(zi.getAmount(), "571.04"); assertEquals(zi.getInvoiceID(), "RE-20170509/505"); + assertEquals(zi.getZUGFeRDProfil(), "COMFORT"); assertEquals(zi.getHolder(), getOwnOrganisationName()); assertEquals(zi.getDocumentCode(),"380"); assertEquals(zi.getReference(),"AB321");