Read missing fields for Invoice import.
This commit is contained in:
@@ -203,12 +203,10 @@ public class TradeParty implements IZUGFeRDExportableTradeParty {
|
|||||||
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID") != null) {
|
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID") != null) {
|
||||||
Node firstChild = taxChilds.item(taxChildIndex).getFirstChild();
|
Node firstChild = taxChilds.item(taxChildIndex).getFirstChild();
|
||||||
if (firstChild != null) {
|
if (firstChild != null) {
|
||||||
if (taxChilds.item(taxChildIndex).getAttributes()
|
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID").getNodeValue().equals("VA")) {
|
||||||
.getNamedItem("schemeID").getNodeValue().equals("VA")) {
|
|
||||||
setVATID(firstChild.getNodeValue());
|
setVATID(firstChild.getNodeValue());
|
||||||
}
|
}
|
||||||
if (taxChilds.item(taxChildIndex).getAttributes()
|
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID").getNodeValue().equals("FC")) {
|
||||||
.getNamedItem("schemeID").getNodeValue().equals("FC")) {
|
|
||||||
setTaxID(firstChild.getNodeValue());
|
setTaxID(firstChild.getNodeValue());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -298,6 +296,9 @@ public class TradeParty implements IZUGFeRDExportableTradeParty {
|
|||||||
NodeList itemChilds = currentItemNode.getChildNodes();
|
NodeList itemChilds = currentItemNode.getChildNodes();
|
||||||
for (int itemChildIndex = 0; itemChildIndex < itemChilds.getLength(); itemChildIndex++) {
|
for (int itemChildIndex = 0; itemChildIndex < itemChilds.getLength(); itemChildIndex++) {
|
||||||
if (itemChilds.item(itemChildIndex).getLocalName() != null) {
|
if (itemChilds.item(itemChildIndex).getLocalName() != null) {
|
||||||
|
if (itemChilds.item(itemChildIndex).getLocalName().equals("ID")) {
|
||||||
|
setID(itemChilds.item(itemChildIndex).getTextContent());
|
||||||
|
}
|
||||||
if (itemChilds.item(itemChildIndex).getLocalName().equals("Name")) {
|
if (itemChilds.item(itemChildIndex).getLocalName().equals("Name")) {
|
||||||
setName(itemChilds.item(itemChildIndex).getTextContent());
|
setName(itemChilds.item(itemChildIndex).getTextContent());
|
||||||
}
|
}
|
||||||
@@ -358,12 +359,10 @@ public class TradeParty implements IZUGFeRDExportableTradeParty {
|
|||||||
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID") != null) {
|
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID") != null) {
|
||||||
Node firstChild = taxChilds.item(taxChildIndex).getFirstChild();
|
Node firstChild = taxChilds.item(taxChildIndex).getFirstChild();
|
||||||
if (firstChild != null) {
|
if (firstChild != null) {
|
||||||
if (taxChilds.item(taxChildIndex).getAttributes()
|
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID").getNodeValue().equals("VA")) {
|
||||||
.getNamedItem("schemeID").getNodeValue().equals("VA")) {
|
|
||||||
setVATID(firstChild.getNodeValue());
|
setVATID(firstChild.getNodeValue());
|
||||||
}
|
}
|
||||||
if (taxChilds.item(taxChildIndex).getAttributes()
|
if (taxChilds.item(taxChildIndex).getAttributes().getNamedItem("schemeID").getNodeValue().equals("FC")) {
|
||||||
.getNamedItem("schemeID").getNodeValue().equals("FC")) {
|
|
||||||
setTaxID(firstChild.getNodeValue());
|
setTaxID(firstChild.getNodeValue());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -630,9 +629,7 @@ public class TradeParty implements IZUGFeRDExportableTradeParty {
|
|||||||
if (bankDetails.isEmpty() && debitDetails.isEmpty()) {
|
if (bankDetails.isEmpty() && debitDetails.isEmpty()) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
List<IZUGFeRDTradeSettlement> tradeSettlements = Stream.concat(bankDetails.stream(), debitDetails.stream())
|
List<IZUGFeRDTradeSettlement> tradeSettlements = Stream.concat(bankDetails.stream(), debitDetails.stream()).map(IZUGFeRDTradeSettlement.class::cast).collect(Collectors.toList());
|
||||||
.map(IZUGFeRDTradeSettlement.class::cast)
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
|
|
||||||
IZUGFeRDTradeSettlement[] result = new IZUGFeRDTradeSettlement[tradeSettlements.size()];
|
IZUGFeRDTradeSettlement[] result = new IZUGFeRDTradeSettlement[tradeSettlements.size()];
|
||||||
for (int i = 0; i < tradeSettlements.size(); i++) {
|
for (int i = 0; i < tradeSettlements.size(); i++) {
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
public Invoice extractInto(Invoice zpp) throws XPathExpressionException, ParseException {
|
public Invoice extractInto(Invoice zpp) throws XPathExpressionException, ParseException {
|
||||||
|
|
||||||
String number = "";
|
String number = "";
|
||||||
|
String typeCode = null;
|
||||||
/*
|
/*
|
||||||
* dummywerte sind derzeit noch setDueDate setIssueDate setDeliveryDate
|
* dummywerte sind derzeit noch setDueDate setIssueDate setDeliveryDate
|
||||||
* setSender setRecipient setnumber bspw. due date
|
* setSender setRecipient setnumber bspw. due date
|
||||||
@@ -86,26 +87,26 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
Date issueDate = null;
|
Date issueDate = null;
|
||||||
Date dueDate = null;
|
Date dueDate = null;
|
||||||
Date deliveryDate = null;
|
Date deliveryDate = null;
|
||||||
|
String despatchAdviceReferencedDocument = null;
|
||||||
for (int i = 0; i < ExchangedDocumentNodes.getLength(); i++) {
|
for (int i = 0; i < ExchangedDocumentNodes.getLength(); i++) {
|
||||||
|
|
||||||
// nodes.item(i).getTextContent())) {
|
// nodes.item(i).getTextContent())) {
|
||||||
Node exchangedDocumentNode = ExchangedDocumentNodes.item(i);
|
Node exchangedDocumentNode = ExchangedDocumentNodes.item(i);
|
||||||
NodeList exchangedDocumentChilds = exchangedDocumentNode.getChildNodes();
|
NodeList exchangedDocumentChilds = exchangedDocumentNode.getChildNodes();
|
||||||
for (int documentChildIndex = 0; documentChildIndex < exchangedDocumentChilds
|
for (int documentChildIndex = 0; documentChildIndex < exchangedDocumentChilds.getLength(); documentChildIndex++) {
|
||||||
.getLength(); documentChildIndex++) {
|
|
||||||
Node item = exchangedDocumentChilds.item(documentChildIndex);
|
Node item = exchangedDocumentChilds.item(documentChildIndex);
|
||||||
if ((item.getLocalName() != null) && (item.getLocalName().equals("ID"))) {
|
if ((item.getLocalName() != null) && (item.getLocalName().equals("ID"))) {
|
||||||
number = item.getTextContent();
|
number = item.getTextContent();
|
||||||
}
|
}
|
||||||
|
if ((item.getLocalName() != null) && (item.getLocalName().equals("TypeCode"))) {
|
||||||
|
typeCode = item.getTextContent();
|
||||||
|
}
|
||||||
if ((item.getLocalName() != null) && (item.getLocalName().equals("IssueDateTime"))) {
|
if ((item.getLocalName() != null) && (item.getLocalName().equals("IssueDateTime"))) {
|
||||||
NodeList issueDateTimeChilds = item.getChildNodes();
|
NodeList issueDateTimeChilds = item.getChildNodes();
|
||||||
for (int issueDateChildIndex = 0; issueDateChildIndex < issueDateTimeChilds
|
for (int issueDateChildIndex = 0; issueDateChildIndex < issueDateTimeChilds.getLength(); issueDateChildIndex++) {
|
||||||
.getLength(); issueDateChildIndex++) {
|
|
||||||
if ((issueDateTimeChilds.item(issueDateChildIndex).getLocalName() != null)
|
if ((issueDateTimeChilds.item(issueDateChildIndex).getLocalName() != null)
|
||||||
&& (issueDateTimeChilds.item(issueDateChildIndex).getLocalName()
|
&& (issueDateTimeChilds.item(issueDateChildIndex).getLocalName().equals("DateTimeString"))) {
|
||||||
.equals("DateTimeString"))) {
|
issueDate = new SimpleDateFormat("yyyyMMdd").parse(issueDateTimeChilds.item(issueDateChildIndex).getTextContent());
|
||||||
issueDate = new SimpleDateFormat("yyyyMMdd")
|
|
||||||
.parse(issueDateTimeChilds.item(issueDateChildIndex).getTextContent());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -115,17 +116,14 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
if (rootNode.equals("Invoice")) {
|
if (rootNode.equals("Invoice")) {
|
||||||
// UBL...
|
// UBL...
|
||||||
number = extractString("//*[local-name()=\"Invoice\"]/*[local-name()=\"ID\"]").trim();
|
number = extractString("//*[local-name()=\"Invoice\"]/*[local-name()=\"ID\"]").trim();
|
||||||
issueDate = new SimpleDateFormat("yyyy-MM-dd")
|
issueDate = new SimpleDateFormat("yyyy-MM-dd").parse(extractString("//*[local-name()=\"Invoice\"]/*[local-name()=\"IssueDate\"]").trim());
|
||||||
.parse(extractString("//*[local-name()=\"Invoice\"]/*[local-name()=\"IssueDate\"]").trim());
|
|
||||||
String dueDt = extractString("//*[local-name()=\"Invoice\"]/*[local-name()=\"DueDate\"]").trim();
|
String dueDt = extractString("//*[local-name()=\"Invoice\"]/*[local-name()=\"DueDate\"]").trim();
|
||||||
if (dueDt.length() > 0) {
|
if (dueDt.length() > 0) {
|
||||||
dueDate = new SimpleDateFormat("yyyy-MM-dd")
|
dueDate = new SimpleDateFormat("yyyy-MM-dd").parse(dueDt);
|
||||||
.parse(dueDt);
|
|
||||||
}
|
}
|
||||||
String deliveryDt = extractString("//*[local-name()=\"Delivery\"]/*[local-name()=\"ActualDeliveryDate\"]").trim();
|
String deliveryDt = extractString("//*[local-name()=\"Delivery\"]/*[local-name()=\"ActualDeliveryDate\"]").trim();
|
||||||
if (deliveryDt.length() > 0) {
|
if (deliveryDt.length() > 0) {
|
||||||
deliveryDate = new SimpleDateFormat("yyyy-MM-dd")
|
deliveryDate = new SimpleDateFormat("yyyy-MM-dd").parse(deliveryDt);
|
||||||
.parse(deliveryDt);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
xpr = xpath.compile("//*[local-name()=\"ApplicableHeaderTradeDelivery\"]");
|
xpr = xpath.compile("//*[local-name()=\"ApplicableHeaderTradeDelivery\"]");
|
||||||
@@ -135,30 +133,33 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
// nodes.item(i).getTextContent())) {
|
// nodes.item(i).getTextContent())) {
|
||||||
Node headerTradeDeliveryNode = headerTradeDeliveryNodes.item(i);
|
Node headerTradeDeliveryNode = headerTradeDeliveryNodes.item(i);
|
||||||
NodeList headerTradeDeliveryChilds = headerTradeDeliveryNode.getChildNodes();
|
NodeList headerTradeDeliveryChilds = headerTradeDeliveryNode.getChildNodes();
|
||||||
for (int deliveryChildIndex = 0; deliveryChildIndex < headerTradeDeliveryChilds
|
for (int deliveryChildIndex = 0; deliveryChildIndex < headerTradeDeliveryChilds.getLength(); deliveryChildIndex++) {
|
||||||
.getLength(); deliveryChildIndex++) {
|
if (headerTradeDeliveryChilds.item(deliveryChildIndex).getLocalName() != null) {
|
||||||
if ((headerTradeDeliveryChilds.item(deliveryChildIndex).getLocalName() != null)
|
if (headerTradeDeliveryChilds.item(deliveryChildIndex).getLocalName().equals("ActualDeliverySupplyChainEvent")) {
|
||||||
&& (headerTradeDeliveryChilds.item(deliveryChildIndex).getLocalName()
|
NodeList actualDeliveryChilds = headerTradeDeliveryChilds.item(deliveryChildIndex).getChildNodes();
|
||||||
.equals("ActualDeliverySupplyChainEvent"))) {
|
for (int actualDeliveryChildIndex = 0; actualDeliveryChildIndex < actualDeliveryChilds.getLength(); actualDeliveryChildIndex++) {
|
||||||
NodeList actualDeliveryChilds = headerTradeDeliveryChilds.item(deliveryChildIndex).getChildNodes();
|
if ((actualDeliveryChilds.item(actualDeliveryChildIndex).getLocalName() != null)
|
||||||
for (int actualDeliveryChildIndex = 0; actualDeliveryChildIndex < actualDeliveryChilds
|
&& (actualDeliveryChilds.item(actualDeliveryChildIndex).getLocalName().equals("OccurrenceDateTime"))) {
|
||||||
.getLength(); actualDeliveryChildIndex++) {
|
NodeList occurenceChilds = actualDeliveryChilds.item(actualDeliveryChildIndex).getChildNodes();
|
||||||
if ((actualDeliveryChilds.item(actualDeliveryChildIndex).getLocalName() != null)
|
for (int occurenceChildIndex = 0; occurenceChildIndex < occurenceChilds.getLength(); occurenceChildIndex++) {
|
||||||
&& (actualDeliveryChilds.item(actualDeliveryChildIndex).getLocalName()
|
if ((occurenceChilds.item(occurenceChildIndex).getLocalName() != null)
|
||||||
.equals("OccurrenceDateTime"))) {
|
&& (occurenceChilds.item(occurenceChildIndex).getLocalName().equals("DateTimeString"))) {
|
||||||
NodeList occurenceChilds = actualDeliveryChilds.item(actualDeliveryChildIndex)
|
deliveryDate = new SimpleDateFormat("yyyyMMdd").parse(occurenceChilds.item(occurenceChildIndex).getTextContent());
|
||||||
.getChildNodes();
|
}
|
||||||
for (int occurenceChildIndex = 0; occurenceChildIndex < occurenceChilds
|
|
||||||
.getLength(); occurenceChildIndex++) {
|
|
||||||
if ((occurenceChilds.item(occurenceChildIndex).getLocalName() != null)
|
|
||||||
&& (occurenceChilds.item(occurenceChildIndex).getLocalName()
|
|
||||||
.equals("DateTimeString"))) {
|
|
||||||
deliveryDate = new SimpleDateFormat("yyyyMMdd")
|
|
||||||
.parse(occurenceChilds.item(occurenceChildIndex).getTextContent());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (headerTradeDeliveryChilds.item(deliveryChildIndex).getLocalName().equals("DespatchAdviceReferencedDocument")) {
|
||||||
|
NodeList despatchAdviceChilds = headerTradeDeliveryChilds.item(deliveryChildIndex).getChildNodes();
|
||||||
|
for (int despatchAdviceChildIndex = 0; despatchAdviceChildIndex < despatchAdviceChilds.getLength(); despatchAdviceChildIndex++) {
|
||||||
|
if (despatchAdviceChilds.item(despatchAdviceChildIndex).getLocalName() != null
|
||||||
|
&& despatchAdviceChilds.item(despatchAdviceChildIndex).getLocalName().equals("IssuerAssignedID")) {
|
||||||
|
despatchAdviceReferencedDocument = despatchAdviceChilds.item(despatchAdviceChildIndex).getTextContent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -171,31 +172,25 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
// nodes.item(i).getTextContent())) {
|
// nodes.item(i).getTextContent())) {
|
||||||
Node headerTradeAgreementNode = headerTradeAgreementNodes.item(i);
|
Node headerTradeAgreementNode = headerTradeAgreementNodes.item(i);
|
||||||
NodeList headerTradeAgreementChilds = headerTradeAgreementNode.getChildNodes();
|
NodeList headerTradeAgreementChilds = headerTradeAgreementNode.getChildNodes();
|
||||||
for (int agreementChildIndex = 0; agreementChildIndex < headerTradeAgreementChilds
|
for (int agreementChildIndex = 0; agreementChildIndex < headerTradeAgreementChilds.getLength(); agreementChildIndex++) {
|
||||||
.getLength(); agreementChildIndex++) {
|
if (headerTradeAgreementChilds.item(agreementChildIndex).getLocalName() != null) {
|
||||||
if ((headerTradeAgreementChilds.item(agreementChildIndex).getLocalName() != null)
|
if (headerTradeAgreementChilds.item(agreementChildIndex).getLocalName().equals("BuyerOrderReferencedDocument")) {
|
||||||
&& (headerTradeAgreementChilds.item(agreementChildIndex).getLocalName()
|
NodeList buyerOrderChilds = headerTradeAgreementChilds.item(agreementChildIndex).getChildNodes();
|
||||||
.equals("BuyerOrderReferencedDocument"))) {
|
for (int buyerOrderChildIndex = 0; buyerOrderChildIndex < buyerOrderChilds.getLength(); buyerOrderChildIndex++) {
|
||||||
NodeList buyerOrderChilds = headerTradeAgreementChilds.item(agreementChildIndex).getChildNodes();
|
if ((buyerOrderChilds.item(buyerOrderChildIndex).getLocalName() != null)
|
||||||
for (int buyerOrderChildIndex = 0; buyerOrderChildIndex < buyerOrderChilds
|
&& (buyerOrderChilds.item(buyerOrderChildIndex).getLocalName().equals("IssuerAssignedID"))) {
|
||||||
.getLength(); buyerOrderChildIndex++) {
|
buyerOrderIssuerAssignedID = buyerOrderChilds.item(buyerOrderChildIndex).getTextContent();
|
||||||
if ((buyerOrderChilds.item(buyerOrderChildIndex).getLocalName() != null)
|
}
|
||||||
&& (buyerOrderChilds.item(buyerOrderChildIndex).getLocalName()
|
|
||||||
.equals("IssuerAssignedID"))) {
|
|
||||||
buyerOrderIssuerAssignedID = buyerOrderChilds.item(buyerOrderChildIndex).getTextContent();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
if ((headerTradeAgreementChilds.item(agreementChildIndex).getLocalName() != null)
|
if (headerTradeAgreementChilds.item(agreementChildIndex).getLocalName().equals("SellerOrderReferencedDocument")) {
|
||||||
&& (headerTradeAgreementChilds.item(agreementChildIndex).getLocalName()
|
NodeList sellerOrderChilds = headerTradeAgreementChilds.item(agreementChildIndex).getChildNodes();
|
||||||
.equals("SellerOrderReferencedDocument"))) {
|
for (int sellerOrderChildIndex = 0; sellerOrderChildIndex < sellerOrderChilds.getLength(); sellerOrderChildIndex++) {
|
||||||
NodeList sellerOrderChilds = headerTradeAgreementChilds.item(agreementChildIndex).getChildNodes();
|
if ((sellerOrderChilds.item(sellerOrderChildIndex).getLocalName() != null)
|
||||||
for (int sellerOrderChildIndex = 0; sellerOrderChildIndex < sellerOrderChilds
|
&& (sellerOrderChilds.item(sellerOrderChildIndex).getLocalName().equals("IssuerAssignedID"))) {
|
||||||
.getLength(); sellerOrderChildIndex++) {
|
sellerOrderIssuerAssignedID = sellerOrderChilds.item(sellerOrderChildIndex).getTextContent();
|
||||||
if ((sellerOrderChilds.item(sellerOrderChildIndex).getLocalName() != null)
|
}
|
||||||
&& (sellerOrderChilds.item(sellerOrderChildIndex).getLocalName()
|
|
||||||
.equals("IssuerAssignedID"))) {
|
|
||||||
sellerOrderIssuerAssignedID = sellerOrderChilds.item(sellerOrderChildIndex).getTextContent();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -212,23 +207,16 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
// nodes.item(i).getTextContent())) {
|
// nodes.item(i).getTextContent())) {
|
||||||
Node headerTradeSettlementNode = headerTradeSettlementNodes.item(i);
|
Node headerTradeSettlementNode = headerTradeSettlementNodes.item(i);
|
||||||
NodeList headerTradeSettlementChilds = headerTradeSettlementNode.getChildNodes();
|
NodeList headerTradeSettlementChilds = headerTradeSettlementNode.getChildNodes();
|
||||||
for (int settlementChildIndex = 0; settlementChildIndex < headerTradeSettlementChilds
|
for (int settlementChildIndex = 0; settlementChildIndex < headerTradeSettlementChilds.getLength(); settlementChildIndex++) {
|
||||||
.getLength(); settlementChildIndex++) {
|
|
||||||
if ((headerTradeSettlementChilds.item(settlementChildIndex).getLocalName() != null)
|
if ((headerTradeSettlementChilds.item(settlementChildIndex).getLocalName() != null)
|
||||||
&& (headerTradeSettlementChilds.item(settlementChildIndex).getLocalName()
|
&& (headerTradeSettlementChilds.item(settlementChildIndex).getLocalName().equals("SpecifiedTradePaymentTerms"))) {
|
||||||
.equals("SpecifiedTradePaymentTerms"))) {
|
|
||||||
NodeList paymentTermChilds = headerTradeSettlementChilds.item(settlementChildIndex).getChildNodes();
|
NodeList paymentTermChilds = headerTradeSettlementChilds.item(settlementChildIndex).getChildNodes();
|
||||||
for (int paymentTermChildIndex = 0; paymentTermChildIndex < paymentTermChilds
|
for (int paymentTermChildIndex = 0; paymentTermChildIndex < paymentTermChilds.getLength(); paymentTermChildIndex++) {
|
||||||
.getLength(); paymentTermChildIndex++) {
|
if ((paymentTermChilds.item(paymentTermChildIndex).getLocalName() != null) && (paymentTermChilds.item(paymentTermChildIndex).getLocalName().equals("DueDateDateTime"))) {
|
||||||
if ((paymentTermChilds.item(paymentTermChildIndex).getLocalName() != null) && (paymentTermChilds
|
|
||||||
.item(paymentTermChildIndex).getLocalName().equals("DueDateDateTime"))) {
|
|
||||||
NodeList dueDateChilds = paymentTermChilds.item(paymentTermChildIndex).getChildNodes();
|
NodeList dueDateChilds = paymentTermChilds.item(paymentTermChildIndex).getChildNodes();
|
||||||
for (int dueDateChildIndex = 0; dueDateChildIndex < dueDateChilds
|
for (int dueDateChildIndex = 0; dueDateChildIndex < dueDateChilds.getLength(); dueDateChildIndex++) {
|
||||||
.getLength(); dueDateChildIndex++) {
|
if ((dueDateChilds.item(dueDateChildIndex).getLocalName() != null) && (dueDateChilds.item(dueDateChildIndex).getLocalName().equals("DateTimeString"))) {
|
||||||
if ((dueDateChilds.item(dueDateChildIndex).getLocalName() != null) && (dueDateChilds
|
dueDate = new SimpleDateFormat("yyyyMMdd").parse(dueDateChilds.item(dueDateChildIndex).getTextContent());
|
||||||
.item(dueDateChildIndex).getLocalName().equals("DateTimeString"))) {
|
|
||||||
dueDate = new SimpleDateFormat("yyyyMMdd")
|
|
||||||
.parse(dueDateChilds.item(dueDateChildIndex).getTextContent());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -236,30 +224,22 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((headerTradeSettlementChilds.item(settlementChildIndex).getLocalName() != null)
|
if ((headerTradeSettlementChilds.item(settlementChildIndex).getLocalName() != null)
|
||||||
&& (headerTradeSettlementChilds.item(settlementChildIndex).getLocalName()
|
&& (headerTradeSettlementChilds.item(settlementChildIndex).getLocalName().equals("SpecifiedTradeSettlementPaymentMeans"))) {
|
||||||
.equals("SpecifiedTradeSettlementPaymentMeans"))) {
|
|
||||||
NodeList paymentMeansChilds = headerTradeSettlementChilds.item(settlementChildIndex).getChildNodes();
|
NodeList paymentMeansChilds = headerTradeSettlementChilds.item(settlementChildIndex).getChildNodes();
|
||||||
for (int paymentMeansChildIndex = 0; paymentMeansChildIndex < paymentMeansChilds
|
for (int paymentMeansChildIndex = 0; paymentMeansChildIndex < paymentMeansChilds.getLength(); paymentMeansChildIndex++) {
|
||||||
.getLength(); paymentMeansChildIndex++) {
|
|
||||||
String IBAN = null, BIC = null;
|
String IBAN = null, BIC = null;
|
||||||
if ((paymentMeansChilds.item(paymentMeansChildIndex).getLocalName() != null) && (paymentMeansChilds
|
if ((paymentMeansChilds.item(paymentMeansChildIndex).getLocalName() != null) && (paymentMeansChilds.item(paymentMeansChildIndex).getLocalName().equals("PayeePartyCreditorFinancialAccount"))) {
|
||||||
.item(paymentMeansChildIndex).getLocalName().equals("PayeePartyCreditorFinancialAccount"))) {
|
|
||||||
NodeList accountChilds = paymentMeansChilds.item(paymentMeansChildIndex).getChildNodes();
|
NodeList accountChilds = paymentMeansChilds.item(paymentMeansChildIndex).getChildNodes();
|
||||||
for (int accountChildIndex = 0; accountChildIndex < accountChilds
|
for (int accountChildIndex = 0; accountChildIndex < accountChilds.getLength(); accountChildIndex++) {
|
||||||
.getLength(); accountChildIndex++) {
|
if ((accountChilds.item(accountChildIndex).getLocalName() != null) && (accountChilds.item(accountChildIndex).getLocalName().equals("IBANID"))) {//CII
|
||||||
if ((accountChilds.item(accountChildIndex).getLocalName() != null) && (accountChilds
|
|
||||||
.item(accountChildIndex).getLocalName().equals("IBANID"))) {//CII
|
|
||||||
IBAN = accountChilds.item(accountChildIndex).getTextContent();
|
IBAN = accountChilds.item(accountChildIndex).getTextContent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ((paymentMeansChilds.item(paymentMeansChildIndex).getLocalName() != null) && (paymentMeansChilds
|
if ((paymentMeansChilds.item(paymentMeansChildIndex).getLocalName() != null) && (paymentMeansChilds.item(paymentMeansChildIndex).getLocalName().equals("PayeePartyCreditorFinancialInstitution"))) {
|
||||||
.item(paymentMeansChildIndex).getLocalName().equals("PayeePartyCreditorFinancialInstitution"))) {
|
|
||||||
NodeList accountChilds = paymentMeansChilds.item(paymentMeansChildIndex).getChildNodes();
|
NodeList accountChilds = paymentMeansChilds.item(paymentMeansChildIndex).getChildNodes();
|
||||||
for (int accountChildIndex = 0; accountChildIndex < accountChilds
|
for (int accountChildIndex = 0; accountChildIndex < accountChilds.getLength(); accountChildIndex++) {
|
||||||
.getLength(); accountChildIndex++) {
|
if ((accountChilds.item(accountChildIndex).getLocalName() != null) && (accountChilds.item(accountChildIndex).getLocalName().equals("BICID"))) {//CII
|
||||||
if ((accountChilds.item(accountChildIndex).getLocalName() != null) && (accountChilds
|
|
||||||
.item(accountChildIndex).getLocalName().equals("BICID"))) {//CII
|
|
||||||
BIC = accountChilds.item(accountChildIndex).getTextContent();
|
BIC = accountChilds.item(accountChildIndex).getTextContent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -284,16 +264,12 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
// nodes.item(i).getTextContent())) {
|
// nodes.item(i).getTextContent())) {
|
||||||
Node paymentMeansNode = paymentMeansNodes.item(i);
|
Node paymentMeansNode = paymentMeansNodes.item(i);
|
||||||
NodeList paymentMeansChilds = paymentMeansNode.getChildNodes();
|
NodeList paymentMeansChilds = paymentMeansNode.getChildNodes();
|
||||||
for (int meansChildIndex = 0; meansChildIndex < paymentMeansChilds
|
for (int meansChildIndex = 0; meansChildIndex < paymentMeansChilds.getLength(); meansChildIndex++) {
|
||||||
.getLength(); meansChildIndex++) {
|
|
||||||
if ((paymentMeansChilds.item(meansChildIndex).getLocalName() != null)
|
if ((paymentMeansChilds.item(meansChildIndex).getLocalName() != null)
|
||||||
&& (paymentMeansChilds.item(meansChildIndex).getLocalName()
|
&& (paymentMeansChilds.item(meansChildIndex).getLocalName().equals("PayeeFinancialAccount"))) {
|
||||||
.equals("PayeeFinancialAccount"))) {
|
|
||||||
NodeList paymentTermChilds = paymentMeansChilds.item(meansChildIndex).getChildNodes();
|
NodeList paymentTermChilds = paymentMeansChilds.item(meansChildIndex).getChildNodes();
|
||||||
for (int paymentTermChildIndex = 0; paymentTermChildIndex < paymentTermChilds
|
for (int paymentTermChildIndex = 0; paymentTermChildIndex < paymentTermChilds.getLength(); paymentTermChildIndex++) {
|
||||||
.getLength(); paymentTermChildIndex++) {
|
if ((paymentTermChilds.item(paymentTermChildIndex).getLocalName() != null) && (paymentTermChilds.item(paymentTermChildIndex).getLocalName().equals("ID"))) {
|
||||||
if ((paymentTermChilds.item(paymentTermChildIndex).getLocalName() != null) && (paymentTermChilds
|
|
||||||
.item(paymentTermChildIndex).getLocalName().equals("ID"))) {
|
|
||||||
String IBAN = paymentTermChilds.item(paymentTermChildIndex).getTextContent();
|
String IBAN = paymentTermChilds.item(paymentTermChildIndex).getTextContent();
|
||||||
if (IBAN != null) {
|
if (IBAN != null) {
|
||||||
BankDetails bd = new BankDetails(IBAN);
|
BankDetails bd = new BankDetails(IBAN);
|
||||||
@@ -305,8 +281,7 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
zpp.setDueDate(dueDate).setDeliveryDate(deliveryDate).setIssueDate(issueDate)
|
zpp.setDueDate(dueDate).setDeliveryDate(deliveryDate).setIssueDate(issueDate).setSender(new TradeParty(SellerNodes)).setRecipient(new TradeParty(BuyerNodes)).setNumber(number).setDocumentCode(typeCode);
|
||||||
.setSender(new TradeParty(SellerNodes)).setRecipient(new TradeParty(BuyerNodes)).setNumber(number);
|
|
||||||
bankDetails.forEach(bankDetail -> zpp.getSender().addBankDetails(bankDetail));
|
bankDetails.forEach(bankDetail -> zpp.getSender().addBankDetails(bankDetail));
|
||||||
|
|
||||||
if (buyerOrderIssuerAssignedID != null) {
|
if (buyerOrderIssuerAssignedID != null) {
|
||||||
@@ -315,8 +290,10 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
if (sellerOrderIssuerAssignedID != null) {
|
if (sellerOrderIssuerAssignedID != null) {
|
||||||
zpp.setSellerOrderReferencedDocumentID(sellerOrderIssuerAssignedID);
|
zpp.setSellerOrderReferencedDocumentID(sellerOrderIssuerAssignedID);
|
||||||
}
|
}
|
||||||
|
if (despatchAdviceReferencedDocument != null) {
|
||||||
|
zpp.setDespatchAdviceReferencedDocumentID(despatchAdviceReferencedDocument);
|
||||||
|
}
|
||||||
|
|
||||||
//.addItem(new Item(new Product("Testprodukt","","C62",BigDecimal.ZERO),amount,new BigDecimal(1.0)))
|
|
||||||
zpp.setOwnOrganisationName(extractString("//*[local-name()=\"SellerTradeParty\"]/*[local-name()=\"Name\"]|//*[local-name()=\"AccountingSupplierParty\"]/*[local-name()=\"Party\"]/*[local-name()=\"PartyName\"]").trim());
|
zpp.setOwnOrganisationName(extractString("//*[local-name()=\"SellerTradeParty\"]/*[local-name()=\"Name\"]|//*[local-name()=\"AccountingSupplierParty\"]/*[local-name()=\"Party\"]/*[local-name()=\"PartyName\"]").trim());
|
||||||
|
|
||||||
xpr = xpath.compile("//*[local-name()=\"BuyerReference\"]");
|
xpr = xpath.compile("//*[local-name()=\"BuyerReference\"]");
|
||||||
@@ -370,13 +347,10 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
|
|
||||||
if (chargeChildName.equals("ChargeIndicator")) {
|
if (chargeChildName.equals("ChargeIndicator")) {
|
||||||
NodeList indicatorChilds = chargeNodeChilds.item(chargeChildIndex).getChildNodes();
|
NodeList indicatorChilds = chargeNodeChilds.item(chargeChildIndex).getChildNodes();
|
||||||
for (int indicatorChildIndex = 0; indicatorChildIndex < indicatorChilds
|
for (int indicatorChildIndex = 0; indicatorChildIndex < indicatorChilds.getLength(); indicatorChildIndex++) {
|
||||||
.getLength(); indicatorChildIndex++) {
|
|
||||||
if ((indicatorChilds.item(indicatorChildIndex).getLocalName() != null)
|
if ((indicatorChilds.item(indicatorChildIndex).getLocalName() != null)
|
||||||
&& (indicatorChilds.item(indicatorChildIndex).getLocalName()
|
&& (indicatorChilds.item(indicatorChildIndex).getLocalName().equals("Indicator"))) {
|
||||||
.equals("Indicator"))) {
|
isCharge = indicatorChilds.item(indicatorChildIndex).getTextContent().equalsIgnoreCase("true");
|
||||||
isCharge = indicatorChilds.item(indicatorChildIndex).getTextContent()
|
|
||||||
.equalsIgnoreCase("true");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (chargeChildName.equals("ActualAmount")) {
|
} else if (chargeChildName.equals("ActualAmount")) {
|
||||||
@@ -389,8 +363,7 @@ public class ZUGFeRDInvoiceImporter extends ZUGFeRDImporter {
|
|||||||
NodeList taxChilds = chargeNodeChilds.item(chargeChildIndex).getChildNodes();
|
NodeList taxChilds = chargeNodeChilds.item(chargeChildIndex).getChildNodes();
|
||||||
for (int taxChildIndex = 0; taxChildIndex < taxChilds.getLength(); taxChildIndex++) {
|
for (int taxChildIndex = 0; taxChildIndex < taxChilds.getLength(); taxChildIndex++) {
|
||||||
String taxItemName = taxChilds.item(taxChildIndex).getLocalName();
|
String taxItemName = taxChilds.item(taxChildIndex).getLocalName();
|
||||||
if ((taxItemName != null) && (taxItemName.equals("RateApplicablePercent")
|
if ((taxItemName != null) && (taxItemName.equals("RateApplicablePercent") || taxItemName.equals("ApplicablePercent"))) {
|
||||||
|| taxItemName.equals("ApplicablePercent"))) {
|
|
||||||
taxPercent = taxChilds.item(taxChildIndex).getTextContent();
|
taxPercent = taxChilds.item(taxChildIndex).getTextContent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user