reverting redundant BT-128 changes
This commit is contained in:
@@ -35,7 +35,6 @@ public class Item implements IZUGFeRDExportableItem {
|
||||
protected String id;
|
||||
protected String buyerOrderReferencedDocumentLineID = null;
|
||||
protected String buyerOrderReferencedDocumentID = null;
|
||||
protected ReferencedDocument tenderReferencedDocument=null;
|
||||
protected Product product;
|
||||
protected ArrayList<String> notes = null;
|
||||
protected ArrayList<ReferencedDocument> referencedDocuments = null;
|
||||
@@ -132,28 +131,7 @@ public class Item implements IZUGFeRDExportableItem {
|
||||
product = new Product();
|
||||
}
|
||||
}
|
||||
itemMap.getAsNodeMap("DocumentReference").ifPresent(drnm -> {
|
||||
// BT-128
|
||||
ReferencedDocument rd=getTenderReferencedDocument();
|
||||
if (rd==null) {
|
||||
rd=new ReferencedDocument();
|
||||
}
|
||||
Node idNode=drnm.getNode("ID").get();
|
||||
if (idNode!=null) {
|
||||
rd.setIssuerAssignedID(idNode.getTextContent());
|
||||
Node schemeIDAttr;
|
||||
|
||||
schemeIDAttr=idNode.getAttributes().getNamedItem("schemeID");
|
||||
if (schemeIDAttr!=null) {
|
||||
rd.setReferenceTypeCode(schemeIDAttr.getNodeValue());
|
||||
}
|
||||
}
|
||||
|
||||
drnm.getAsString("DocumentTypeCode").ifPresent(rd::setTypeCode);
|
||||
if (rd!=null) {
|
||||
setTenderReferencedDocument(rd);
|
||||
}
|
||||
});
|
||||
|
||||
itemMap.getAsNodeMap("SpecifiedLineTradeAgreement", "SpecifiedSupplyChainTradeAgreement").ifPresent(icnm -> {
|
||||
icnm.getAsNodeMap("BuyerOrderReferencedDocument")
|
||||
@@ -645,21 +623,6 @@ public class Item implements IZUGFeRDExportableItem {
|
||||
return detailedDeliveryPeriodTo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReferencedDocument getTenderReferencedDocument() {
|
||||
return tenderReferencedDocument;
|
||||
}
|
||||
|
||||
public Item setTenderReferencedDocument(ReferencedDocument 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) {
|
||||
|
||||
@@ -2,6 +2,7 @@ package org.mustangproject;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import org.mustangproject.ZUGFeRD.IReferencedDocument;
|
||||
@@ -55,6 +56,7 @@ public class ReferencedDocument implements IReferencedDocument {
|
||||
|
||||
/**
|
||||
* which type is the document? e.g. "916" for additional invoice related
|
||||
*
|
||||
* @param typeCode as String, e.g. 916
|
||||
*/
|
||||
public void setTypeCode(String typeCode) {
|
||||
@@ -63,6 +65,7 @@ public class ReferencedDocument implements IReferencedDocument {
|
||||
|
||||
/**
|
||||
* type of the reference of this line, a UNTDID 1153 code
|
||||
*
|
||||
* @param referenceTypeCode three uppercase character reference type code as string
|
||||
*/
|
||||
public void setReferenceTypeCode(String referenceTypeCode) {
|
||||
@@ -94,8 +97,7 @@ public class ReferencedDocument implements IReferencedDocument {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Date getFormattedIssueDateTime()
|
||||
{
|
||||
public Date getFormattedIssueDateTime() {
|
||||
return formattedIssueDateTime;
|
||||
}
|
||||
|
||||
@@ -104,9 +106,20 @@ public class ReferencedDocument implements IReferencedDocument {
|
||||
return null;
|
||||
}
|
||||
NodeMap nodes = new NodeMap(node);
|
||||
return new ReferencedDocument(nodes.getAsStringOrNull("IssuerAssignedID", "ID"),
|
||||
ReferencedDocument rd = new ReferencedDocument(nodes.getAsStringOrNull("IssuerAssignedID", "ID"),
|
||||
nodes.getAsStringOrNull("TypeCode", "DocumentTypeCode"),
|
||||
nodes.getAsStringOrNull("ReferenceTypeCode"),
|
||||
XMLTools.tryDate(nodes.getAsStringOrNull("FormattedIssueDateTime")));
|
||||
if (nodes.getAsStringOrNull("ID") != null) {
|
||||
//sure sign for UBL: here ReferenceTypeCode is no element but a "schemeID" attribute to ID
|
||||
Node idNode = nodes.getNode("ID").get();
|
||||
if (idNode != null) {
|
||||
Node schemeIDAttr = idNode.getAttributes().getNamedItem("schemeID");
|
||||
if (schemeIDAttr != null) {
|
||||
rd.setReferenceTypeCode(schemeIDAttr.getNodeValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
return rd;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -156,14 +156,6 @@ public interface IZUGFeRDExportableItem extends IAbsoluteValueProvider{
|
||||
}
|
||||
|
||||
|
||||
/***
|
||||
* tender reference on line level BT-128
|
||||
* @return BT-17 on line level
|
||||
*/
|
||||
default IReferencedDocument getTenderReferencedDocument() {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/***
|
||||
* specifies the item level delivery period (there is also one on document level),
|
||||
|
||||
@@ -607,7 +607,8 @@ 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").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")))
|
||||
.addItem(new Item(new Product("Testprodukt", "", "H87", new BigDecimal(16)).addGlobalID(gtin).setSellerAssignedID("4711"), price, new BigDecimal(1.0)).setId("a123").
|
||||
addAdditionalReference(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))
|
||||
|
||||
@@ -185,10 +185,9 @@ public class ZF2ZInvoiceImporterTest extends ResourceCase {
|
||||
assertEquals("9384", invoice.getSellerOrderReferencedDocumentID());
|
||||
assertEquals("90-kl-98798-C", invoice.getTenderReferencedDocument().getIssuerAssignedID());
|
||||
|
||||
IReferencedDocument rd=invoice.getZFItems()[0].getTenderReferencedDocument();
|
||||
assertEquals("90-kl-98798-C1", rd.getIssuerAssignedID());
|
||||
assertEquals("AAG", rd.getReferenceTypeCode());
|
||||
assertEquals("2025-10-13", sdf.format(rd.getFormattedIssueDateTime()));
|
||||
IReferencedDocument[] rd=invoice.getZFItems()[0].getAdditionalReferences();
|
||||
assertEquals("90-kl-98798-C1", rd[0].getIssuerAssignedID());
|
||||
assertEquals("AAG", rd[0].getReferenceTypeCode());
|
||||
|
||||
|
||||
|
||||
@@ -248,8 +247,8 @@ public class ZF2ZInvoiceImporterTest extends ResourceCase {
|
||||
assertFalse(hasExceptions);
|
||||
SimpleDateFormat sdf=new SimpleDateFormat("YYYY-mm-dd");
|
||||
// Reading ZUGFeRD
|
||||
assertEquals("90-kl-98798-C1", invoice.getZFItems()[0].getTenderReferencedDocument().getIssuerAssignedID());
|
||||
assertEquals("AAG", invoice.getZFItems()[0].getTenderReferencedDocument().getReferenceTypeCode());
|
||||
assertEquals("90-kl-98798-C1", invoice.getZFItems()[0].getAdditionalReferences()[0].getIssuerAssignedID());
|
||||
assertEquals("AAG", invoice.getZFItems()[0].getAdditionalReferences()[0].getReferenceTypeCode());
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user