adding tenderreferenceddocument on line level
This commit is contained in:
@@ -625,11 +625,17 @@ public class Item implements IZUGFeRDExportableItem {
|
||||
return tenderReferencedDocument;
|
||||
}
|
||||
|
||||
public Item getTenderReferencedDocument(IReferencedDocument idr) {
|
||||
public Item setTenderReferencedDocument(IReferencedDocument idr) {
|
||||
tenderReferencedDocument=idr;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Item setTenderReferencedDocument(String id) {
|
||||
ReferencedDocument rd=new ReferencedDocument(id);
|
||||
setTenderReferencedDocument(rd);
|
||||
return this;
|
||||
}
|
||||
|
||||
public IZUGFeRDExportableItem addNotes(Collection<IncludedNote> notes) {
|
||||
if (notes == null) {
|
||||
return this;
|
||||
|
||||
@@ -17,6 +17,10 @@ public class ReferencedDocument implements IReferencedDocument {
|
||||
String referenceTypeCode;
|
||||
Date formattedIssueDateTime;
|
||||
|
||||
public ReferencedDocument() {
|
||||
//bean
|
||||
}
|
||||
|
||||
public ReferencedDocument(String issuerAssignedID, String typeCode, String referenceTypeCode) {
|
||||
this(issuerAssignedID);
|
||||
this.typeCode = typeCode;
|
||||
|
||||
@@ -633,11 +633,11 @@ public class ZUGFeRD2PullProvider implements IXMLProvider {
|
||||
|
||||
if(trans.getTenderReferencedDocument() != null){
|
||||
xml += "<ram:AdditionalReferencedDocument>"
|
||||
+ "<ram:IssuerAssignedID>" + XMLTools.encodeXML(trans.getTenderReferencedDocument().getID()) + "</ram:IssuerAssignedID>"
|
||||
+ "<ram:IssuerAssignedID>" + XMLTools.encodeXML(trans.getTenderReferencedDocument().getIssuerAssignedID()) + "</ram:IssuerAssignedID>"
|
||||
+ "<ram:TypeCode>" + 50 + "</ram:TypeCode>";
|
||||
if (trans.getTenderReferencedDocument().getDate()!=null) {
|
||||
if (trans.getTenderReferencedDocument().getFormattedIssueDateTime()!=null) {
|
||||
final SimpleDateFormat dateFormat102 = new SimpleDateFormat("yyyyMMdd");
|
||||
xml += "<ram:FormattedIssueDateTime><qdt:DateTimeString format=\"102\">"+XMLTools.encodeXML(dateFormat102.format(trans.getTenderReferencedDocument().getDate()))+"</qdt:DateTimeString></ram:FormattedIssueDateTime>";
|
||||
xml += "<ram:FormattedIssueDateTime><qdt:DateTimeString format=\"102\">"+XMLTools.encodeXML(dateFormat102.format(trans.getTenderReferencedDocument().getFormattedIssueDateTime()))+"</qdt:DateTimeString></ram:FormattedIssueDateTime>";
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -596,7 +596,9 @@ public class ZF2PushTest extends TestCase {
|
||||
try {
|
||||
SchemedID gtin = new SchemedID("0160", "2001015001325");
|
||||
SchemedID gln = new SchemedID("0088", "4304171000002");
|
||||
DatedReference dr=new DatedReference("90-kl-98798-C", sdf.parse("2025-10-12"));
|
||||
ReferencedDocument dr1=new ReferencedDocument("90-kl-98798-C", sdf.parse("2025-10-12"));
|
||||
ReferencedDocument dr2=new ReferencedDocument("90-kl-98798-C1", sdf.parse("2025-10-13"));
|
||||
dr2.setReferenceTypeCode("AAG");
|
||||
ze.setTransaction(new Invoice().setCurrency("CHF").addNote("document level 1/2").addNote("document level 2/2").setDueDate(new Date()).setIssueDate(new Date()).setDeliveryDate(new Date()).setPaymentReference("Verwendungszweck").setDocumentName("Rechnung")
|
||||
.setSellerOrderReferencedDocumentID("9384").setBuyerOrderReferencedDocumentID("28934")
|
||||
.setDetailedDeliveryPeriod(new SimpleDateFormat("yyyyMMdd").parse(occurrenceFrom), new SimpleDateFormat("yyyyMMdd").parse(occurrenceTo))
|
||||
@@ -605,11 +607,11 @@ public class ZF2PushTest extends TestCase {
|
||||
.setContractReferencedDocument(contractID)
|
||||
.setRecipient(new TradeParty("Franz Müller", "teststr.12", "55232", "Entenhausen", "DE").addGlobalID(gln).setEmail("recipient@test.org").addVATID("DE4711")
|
||||
.setContact(new Contact("Franz Müller", "01779999999", "franz@mueller.de", "teststr. 12", "55232", "Entenhausen", "DE").setFax("++49555123456")).setAdditionalAddress("Hinterhaus 3"))
|
||||
.addItem(new Item(new Product("Testprodukt", "", "H87", new BigDecimal(16)).addGlobalID(gtin).setSellerAssignedID("4711"), price, new BigDecimal(1.0)).setId("a123").addBuyerOrderReferencedDocumentID("orderId").addBuyerOrderReferencedDocumentLineID("xxx").addReferencedLineID("xxx").addNote("item level 1/1").addAllowance(new Allowance(new BigDecimal(0.02)).setReason("item discount").setTaxPercent(new BigDecimal(16))).setDetailedDeliveryPeriod(sdf.parse("2020-01-13"), sdf.parse("2020-01-15")))
|
||||
.addItem(new Item(new Product("Testprodukt", "", "H87", new BigDecimal(16)).addGlobalID(gtin).setSellerAssignedID("4711"), price, new BigDecimal(1.0)).setId("a123").setTenderReferencedDocument(dr2).addBuyerOrderReferencedDocumentID("orderId").addBuyerOrderReferencedDocumentLineID("xxx").addReferencedLineID("xxx").addNote("item level 1/1").addAllowance(new Allowance(new BigDecimal(0.02)).setReason("item discount").setTaxPercent(new BigDecimal(16))).setDetailedDeliveryPeriod(sdf.parse("2020-01-13"), sdf.parse("2020-01-15")))
|
||||
.addCharge(new Charge(new BigDecimal(0.5)).setReason("quick delivery charge").setTaxPercent(new BigDecimal(16)))
|
||||
.addAllowance(new Allowance(new BigDecimal(0.2)).setReason("discount").setTaxPercent(new BigDecimal(16)))
|
||||
.addCashDiscount(new CashDiscount(new BigDecimal(2), 14))
|
||||
.setTenderReferencedDocument(dr)
|
||||
.setTenderReferencedDocument(dr1)
|
||||
.setDeliveryDate(sdf.parse("2020-11-02")).setNumber(number).setVATDueDateTypeCode(EventTimeCodeTypeConstants.PAYMENT_DATE)
|
||||
.setInvoiceReferencedDocumentID("abc123").addInvoiceReferencedDocument(new ReferencedDocument("abcd1234"))
|
||||
);
|
||||
|
||||
@@ -183,8 +183,8 @@ public class ZF2ZInvoiceImporterTest extends ResourceCase {
|
||||
// Reading ZUGFeRD
|
||||
assertEquals("4711", invoice.getZFItems()[0].getProduct().getSellerAssignedID());
|
||||
assertEquals("9384", invoice.getSellerOrderReferencedDocumentID());
|
||||
assertEquals("90-kl-98798-C", invoice.getTenderReferencedDocument().getID());
|
||||
assertEquals("2025-10-12", sdf.format(invoice.getTenderReferencedDocument().getDate()));
|
||||
assertEquals("90-kl-98798-C", invoice.getTenderReferencedDocument().getIssuerAssignedID());
|
||||
assertEquals("2025-10-12", sdf.format(invoice.getTenderReferencedDocument().getFormattedIssueDateTime()));
|
||||
assertEquals("sender@test.org", invoice.getSender().getEmail());
|
||||
assertEquals("recipient@test.org", invoice.getRecipient().getEmail());
|
||||
assertEquals("28934", invoice.getBuyerOrderReferencedDocumentID());
|
||||
@@ -222,7 +222,7 @@ public class ZF2ZInvoiceImporterTest extends ResourceCase {
|
||||
}
|
||||
assertFalse(hasExceptions);
|
||||
// Reading ZUGFeRD
|
||||
assertEquals("Testing1", invoice.getTenderReferencedDocument().getID());
|
||||
assertEquals("Testing1", invoice.getTenderReferencedDocument().getIssuerAssignedID());
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user