diff --git a/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java b/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java index c9a4ff15..cad7e624 100644 --- a/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java +++ b/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRDImporter.java @@ -13,7 +13,6 @@ package org.mustangproject.ZUGFeRD; * @version 1.1.0 * @author jstaerk */ - import java.io.*; import java.math.BigDecimal; import java.nio.charset.StandardCharsets; @@ -35,7 +34,9 @@ import javax.xml.xpath.XPathFactory; import org.apache.commons.io.IOUtils; import org.apache.fop.util.XMLUtil; + import org.apache.pdfbox.Loader; +import org.apache.pdfbox.io.IOUtils; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDDocumentNameDictionary; import org.apache.pdfbox.pdmodel.PDEmbeddedFilesNameTreeNode; @@ -50,6 +51,19 @@ import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.xpath.*; +import java.io.*; +import java.math.BigDecimal; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.nio.file.StandardOpenOption; +import java.text.SimpleDateFormat; +import java.util.*; + public class ZUGFeRDImporter extends ZUGFeRDInvoiceImporter { private static final Logger LOGGER = LoggerFactory.getLogger(ZUGFeRDImporter.class); @@ -734,7 +748,14 @@ public class ZUGFeRDImporter extends ZUGFeRDInvoiceImporter { break; case "SpecifiedTradeProduct": - + node = getNodeByName(nn.getChildNodes(), "GlobalID"); + if (node != null) { + SchemedID globalId = new SchemedID() + .setScheme(node.getAttributes() + .getNamedItem("schemeID").getNodeValue()) + .setId(getNodeValue(node)); + lineItem.getProduct().addGlobalID(globalId); + } node = getNodeByName(nn.getChildNodes(), "SellerAssignedID"); lineItem.getProduct().setSellerAssignedID(XMLTools.getNodeValue(node));