diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ksef/api/KSeFAPIService.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ksef/api/KSeFAPIService.java index 5ceadba..27ebd8b 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ksef/api/KSeFAPIService.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ksef/api/KSeFAPIService.java @@ -14,6 +14,7 @@ import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; +import org.imixs.archive.core.SnapshotService; import org.imixs.workflow.FileData; import org.imixs.workflow.ItemCollection; import org.imixs.workflow.engine.DocumentService; @@ -53,6 +54,9 @@ public class KSeFAPIService { @Inject DocumentService documentService; + @Inject + SnapshotService snapshotService; + /** * This method uploads a KSeF Invoice document (XML). * The response of the upload is a 'referenceNumber' which is stored into the @@ -85,8 +89,18 @@ public class KSeFAPIService { } // Load invoice XML + byte[] invoiceXml = null; FileData fileData = workitem.getFileData(fileName); - byte[] invoiceXml = fileData.getContent(); + // test if we need to load the snapshot data... + if (fileData.getContent().length == 0) { + fileData = snapshotService.getWorkItemFile(workitem.getUniqueID(), fileName); + if (fileData != null) { + invoiceXml = fileData.getContent(); + } + } else { + invoiceXml = fileData.getContent(); + } + logger.info("│ ├── XML Invoice loaded - " + invoiceXml.length + " bytes"); try { diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/xml/BusinessPartnerImportService.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/xml/BusinessPartnerImportService.java index 90ad477..303ec78 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/xml/BusinessPartnerImportService.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/xml/BusinessPartnerImportService.java @@ -208,6 +208,8 @@ public class BusinessPartnerImportService { businesspartner.setItemValue("partner.zip", importDoc.getItemValueString("_vendor_zip_code")); businesspartner.setItemValue("partner.city", importDoc.getItemValueString("_vendor_city")); + businesspartner.setItemValue("partner.vat", importDoc.getItemValueString("_vendor_registration_id")); + // hat sich das Objekt verändert? if (!businesspartner.equals(oldBussinessPartnerItemColl)) { diff --git a/workflow/pl/rechnungsausgang-pl-1.1.0.bpmn b/workflow/pl/rechnungsausgang-pl-1.1.0.bpmn index e6573d5..55a56dd 100644 --- a/workflow/pl/rechnungsausgang-pl-1.1.0.bpmn +++ b/workflow/pl/rechnungsausgang-pl-1.1.0.bpmn @@ -1379,7 +1379,7 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + @@ -2208,7 +2208,7 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - +