From fdf4687228a97e19535105a497d9752e686714e1 Mon Sep 17 00:00:00 2001 From: haneloreianoseck Date: Fri, 12 Apr 2019 13:00:17 +0300 Subject: [PATCH] #3: Updates based on clarifications from stepcom --- .../esb/bean/invoice/EDIXMLInvoiceBean.java | 31 +++++++++---------- .../edi/esb/pojo/common/MeasurementUnit.java | 5 ++- src/main/resources/application.properties | 8 ++--- 3 files changed, 21 insertions(+), 23 deletions(-) diff --git a/src/main/java/de/metas/edi/esb/bean/invoice/EDIXMLInvoiceBean.java b/src/main/java/de/metas/edi/esb/bean/invoice/EDIXMLInvoiceBean.java index 50a46a701f..2c4ccd13d7 100644 --- a/src/main/java/de/metas/edi/esb/bean/invoice/EDIXMLInvoiceBean.java +++ b/src/main/java/de/metas/edi/esb/bean/invoice/EDIXMLInvoiceBean.java @@ -47,13 +47,17 @@ public class EDIXMLInvoiceBean public static final String METHOD_createXMLEDIData = "createXMLEDIData"; private static final ObjectFactory INVOICE_objectFactory = new ObjectFactory(); - private static final int DOC_CREDIT_NOTE_ID = 83; - private static final int DOC_DEBIT_NOTE_ID = 380; - //Debit note to financial adjustments - private static final int DOC_DBNF_ID = 382; - private static final int DOC_DBNF2_ID = 84; - //Credit note to financial adjustments - private static final int DOC_CRNF_ID = 381; + + //Credit note - metasfresh "ARC" base doc type and "CR" sub doc type + private static final int DOC_CRNO_ID = 83; + //Credit note - metasfresh "ARC" base doc type and "CQ", "CS" sub doc types + private static final int DOC_CRNO2_ID = 381; + //Commercial invoice - metasfresh "ARI" base doc type + private static final int DOC_CMIV_ID = 380; + // Debit note - metasfresh "ARI" base doc type and "AQ" sub doc type + private static final int DOC_DBNO_ID = 383; + // Debit note - metasfresh "ARI" base doc type and "AP" sub doc type + private static final int DOC_DBNO2_ID = 84; public void createXMLEDIData(final Exchange exchange) { @@ -126,21 +130,17 @@ private DocumentType mapDocumentType(final String eancomDocType) { int incomingDocType = Integer.parseInt(eancomDocType); DocumentType documentType = null; - if (incomingDocType == DOC_CREDIT_NOTE_ID) + if (incomingDocType == DOC_CRNO_ID || incomingDocType == DOC_CRNO2_ID) { documentType = DocumentType.CRNO; } - else if (incomingDocType == DOC_DEBIT_NOTE_ID) + else if (incomingDocType == DOC_DBNO_ID || incomingDocType == DOC_DBNO2_ID) { documentType = DocumentType.DBNO; } - else if (incomingDocType == DOC_DBNF_ID || incomingDocType == DOC_DBNF2_ID) - { - documentType = DocumentType.DBNF; - } - else if (incomingDocType == DOC_CRNF_ID) + else if (incomingDocType == DOC_CMIV_ID) { - documentType = DocumentType.CRNF; + documentType = DocumentType.CMIV; } return documentType; } @@ -489,7 +489,6 @@ private void mapDates(final EDICctopInvoicVType invoice, final HEADERXrech heade final HDATE1 valueDate = INVOICE_objectFactory.createHDATE1(); valueDate.setDOCUMENTID(headerXrech.getDOCUMENTID()); valueDate.setDATEQUAL(DateQual.VALU.name()); - // not sure what value date is valueDate.setDATEFROM(toFormattedStringDate(toDate(invoice.getDateInvoiced()), dateFormat)); headerXrech.getHDATE1().add(documentDate); diff --git a/src/main/java/de/metas/edi/esb/pojo/common/MeasurementUnit.java b/src/main/java/de/metas/edi/esb/pojo/common/MeasurementUnit.java index f766eb64bf..b6c5d8f8ff 100644 --- a/src/main/java/de/metas/edi/esb/pojo/common/MeasurementUnit.java +++ b/src/main/java/de/metas/edi/esb/pojo/common/MeasurementUnit.java @@ -12,9 +12,8 @@ public enum MeasurementUnit SQMT("MTK"), CBMT("MTQ"), PIEC("PCE"), - PACK("CNP"), //TODO not sure - CART("KRT"), - BAGS("Bund"); //TODO not sure + PACK("TU"), + CART("KRT"); private final String cuom; diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index f64fcacefb..1ca7e01776 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -115,14 +115,14 @@ edi.file.desadv.xml=file://{{edi.file.desadv.dir}}/xml?charset={{edi.generated.c # #Supplier-ID edi.props.000.sender.gln=9876543210987 -#partner id used in the document header +#take this out edi.props.stepcom.partner.id=partnerId #owner id used in the document header -edi.props.stepcom.owner.id=ownerId +edi.props.stepcom.owner.id=CHEESE #application ref used in the document header -edi.props.stepcom.application.ref=applicationRef +edi.props.stepcom.application.ref=metasfresh #supplier gln used for desadv supplier address -edi.props.desadv.stepcom.supplier.gln=suppliergln +edi.props.desadv.stepcom.supplier.gln=9876543210987 #supplier additional id used for address reference edi.props.desadv.stepcom.supplier.additional.id=apaiID