Add invoiceReferencedIssueDate

This commit is contained in:
Sebastian Sieber
2021-03-04 09:13:58 +01:00
parent b69aef624d
commit a178bf7e36
3 changed files with 23 additions and 7 deletions

View File

@@ -46,13 +46,13 @@ public class Invoice implements IExportableTransaction {
protected Date detailedDeliveryDateStart = null; protected Date detailedDeliveryDateStart = null;
protected Date detailedDeliveryPeriodEnd = null; protected Date detailedDeliveryPeriodEnd = null;
protected ArrayList<IZUGFeRDAllowanceCharge> Allowances = new ArrayList<IZUGFeRDAllowanceCharge>(), protected ArrayList<IZUGFeRDAllowanceCharge> Allowances = new ArrayList<>(),
Charges = new ArrayList<IZUGFeRDAllowanceCharge>(), LogisticsServiceCharges = new ArrayList<IZUGFeRDAllowanceCharge>(); Charges = new ArrayList<>(), LogisticsServiceCharges = new ArrayList<>();
protected IZUGFeRDPaymentTerms paymentTerms = null; protected IZUGFeRDPaymentTerms paymentTerms = null;
private Date invoiceReferencedIssueDate;
public Invoice() { public Invoice() {
ZFItems = new ArrayList<IZUGFeRDExportableItem>(); ZFItems = new ArrayList<>();
setCurrency("EUR"); setCurrency("EUR");
} }
@@ -246,7 +246,17 @@ public class Invoice implements IExportableTransaction {
return invoiceReferencedDocumentID; return invoiceReferencedDocumentID;
} }
@Override @Override
public Date getInvoiceReferencedIssueDate() {
return invoiceReferencedIssueDate;
}
public Invoice setInvoiceReferencedIssueDate(Date issueDate) {
this.invoiceReferencedIssueDate = issueDate;
return this;
}
@Override
public String getBuyerOrderReferencedDocumentIssueDateTime() { public String getBuyerOrderReferencedDocumentIssueDateTime() {
return buyerOrderReferencedDocumentIssueDateTime; return buyerOrderReferencedDocumentIssueDateTime;
} }

View File

@@ -424,6 +424,7 @@ public interface IExportableTransaction {
return null; return null;
} }
default Date getInvoiceReferencedIssueDate(){return null;}
/** /**
* get the issue timestamp of the BuyerOrderReferencedDocument, which sits in the ApplicableSupplyChainTradeAgreement * get the issue timestamp of the BuyerOrderReferencedDocument, which sits in the ApplicableSupplyChainTradeAgreement
* *

View File

@@ -631,8 +631,13 @@ public class ZUGFeRD2PullProvider implements IXMLProvider {
if (trans.getInvoiceReferencedDocumentID() != null) { if (trans.getInvoiceReferencedDocumentID() != null) {
xml = xml + " <ram:InvoiceReferencedDocument>\n" xml = xml + " <ram:InvoiceReferencedDocument>\n"
+ " <ram:IssuerAssignedID>" + " <ram:IssuerAssignedID>"
+ XMLTools.encodeXML(trans.getInvoiceReferencedDocumentID()) + "</ram:IssuerAssignedID>\n" + XMLTools.encodeXML(trans.getInvoiceReferencedDocumentID()) + "</ram:IssuerAssignedID>\n";
+ " </ram:InvoiceReferencedDocument>\n"; if(trans.getInvoiceReferencedIssueDate()!= null){
xml += "<ram:FormattedIssueDateTime>"
+ zugferdDateFormat.format(trans.getInvoiceReferencedIssueDate())
+ "</ram:FormattedIssueDateTime>\n";
}
xml += " </ram:InvoiceReferencedDocument>\n";
} }
xml = xml + " </ram:ApplicableHeaderTradeSettlement>\n"; xml = xml + " </ram:ApplicableHeaderTradeSettlement>\n";