diff --git a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/itvsh/kop/eingang/formcycle/FormDataController.java b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/itvsh/kop/eingang/formcycle/FormDataController.java index 9c414c51988a8b588367420fc17e0b386a45f06d..1702267a0ca19cf37ef769e1d6c2a41394bbe643 100644 --- a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/itvsh/kop/eingang/formcycle/FormDataController.java +++ b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/itvsh/kop/eingang/formcycle/FormDataController.java @@ -76,10 +76,16 @@ class FormDataController { mappedFormData = addRepresentations(representations, mappedFormData); mappedFormData = addFiles(formData, attachments, mappedFormData); mappedFormData = addServiceKonto(formData, mappedFormData); + mappedFormData = addVorgangNummer(mappedFormData); semantikAdapter.processFormData(mappedFormData); - return FormCycleConfirmationResponse.newBuilder().setVorgangNummer(vorgangNummerSupplier.get()).build(); + return FormCycleConfirmationResponse.newBuilder().setVorgangNummer(mappedFormData.getHeader().getRequestId()).build(); + } + + private FormData addVorgangNummer(FormData mappedFormData) { + var formDataHeader = mappedFormData.getHeader().toBuilder().requestId(vorgangNummerSupplier.get()).build(); + return mappedFormData.toBuilder().header(formDataHeader).build(); } private FormData addRepresentations(Optional<Collection<MultipartFile>> files, FormData mappedFormData) { diff --git a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/itvsh/kop/eingang/formcycle/FormDataControllerTest.java b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/itvsh/kop/eingang/formcycle/FormDataControllerTest.java index 9731385a03eb028748073092e9700af87d0f06a3..4c496eb5cd37d49195bfda49d00a24a09c00a1f2 100644 --- a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/itvsh/kop/eingang/formcycle/FormDataControllerTest.java +++ b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/itvsh/kop/eingang/formcycle/FormDataControllerTest.java @@ -119,6 +119,14 @@ class FormDataControllerTest { assertThat(confirmation.getVorgangNummer()).isEqualTo(VORGANG_NUMMER); } + @Test + void shouldSetVorgangNummer() { + doPostRequest(); + + verify(semantikAdapter).processFormData(formDataCaptor.capture()); + assertThat(formDataCaptor.getValue().getHeader().getRequestId()).isEqualTo(VORGANG_NUMMER); + } + @Test void shouldCallMapper() { doPostRequest(); @@ -131,7 +139,7 @@ class FormDataControllerTest { doPostRequest(); verify(semantikAdapter).processFormData(formDataCaptor.capture()); - assertThat(formDataCaptor.getValue()).usingRecursiveComparison().ignoringFields("representations", "attachments", "numberOfAttachments") + assertThat(formDataCaptor.getValue()).usingRecursiveComparison().ignoringFields("representations", "attachments", "numberOfAttachments", "header.requestId") .isEqualTo(mappedFormData); }