From 50aa1a62c71f98f530a471fa2492dbeff5c4e84c Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Fri, 13 Oct 2023 12:31:06 +0200 Subject: [PATCH] OZG-4457 generate response after accepting antrag from Enterperise Adapter --- .../java/de/ozgcloud/eingang/Application.java | 3 + .../eingang/common/formdata/FormHeader.java | 1 + .../vorgang}/VorgangNummerSupplier.java | 4 +- .../DeleteOnCloseInputStreamTest.java | 13 ++++- .../formdata/FormHeaderTestFactory.java | 2 + .../vorgang}/VorgangNummerSupplierTest.java | 2 +- .../org.junit.jupiter.api.extension.Extension | 1 + .../test/resources/junit-platform.properties | 1 + .../enterprise/entry/EntryController.java | 32 ++++++++++- .../enterprise/entry/EntryResponse.java | 23 ++++++++ .../enterprise/entry/EntryControllerTest.java | 55 ++++++++++++++++++- .../entry/EntryResponseTestFactory.java | 16 ++++++ .../entry/ResponseVorgangTestFactory.java | 24 ++++++++ .../formcycle-adapter-impl/pom.xml | 2 + .../eingang/formcycle/FormDataController.java | 1 + .../formcycle/FormDataControllerTest.java | 1 + .../eingang/router/VorgangRemoteService.java | 3 +- .../eingang/router/VorgangService.java | 5 +- .../router/VorgangRemoteServiceTest.java | 4 +- .../eingang/semantik/SemantikAdapter.java | 4 +- 20 files changed, 180 insertions(+), 17 deletions(-) rename {formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle => common/src/main/java/de/ozgcloud/eingang/common/vorgang}/VorgangNummerSupplier.java (91%) rename {formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle => common/src/test/java/de/ozgcloud/eingang/common/vorgang}/VorgangNummerSupplierTest.java (97%) create mode 100644 common/src/test/resources/META-INF/services/org.junit.jupiter.api.extension.Extension create mode 100644 common/src/test/resources/junit-platform.properties create mode 100644 enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryResponse.java create mode 100644 enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryResponseTestFactory.java create mode 100644 enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/ResponseVorgangTestFactory.java diff --git a/common/src/main/java/de/ozgcloud/eingang/Application.java b/common/src/main/java/de/ozgcloud/eingang/Application.java index 9ba0845dd..164da65a2 100644 --- a/common/src/main/java/de/ozgcloud/eingang/Application.java +++ b/common/src/main/java/de/ozgcloud/eingang/Application.java @@ -23,6 +23,8 @@ */ package de.ozgcloud.eingang; +import java.util.TimeZone; + import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.scheduling.annotation.EnableScheduling; @@ -32,6 +34,7 @@ import org.springframework.scheduling.annotation.EnableScheduling; public class Application { public static void main(String[] args) { + TimeZone.setDefault(TimeZone.getTimeZone("UTC")); SpringApplication.run(Application.class, args); } } diff --git a/common/src/main/java/de/ozgcloud/eingang/common/formdata/FormHeader.java b/common/src/main/java/de/ozgcloud/eingang/common/formdata/FormHeader.java index 59c9ff40d..24b0e7276 100644 --- a/common/src/main/java/de/ozgcloud/eingang/common/formdata/FormHeader.java +++ b/common/src/main/java/de/ozgcloud/eingang/common/formdata/FormHeader.java @@ -37,6 +37,7 @@ import lombok.ToString; public class FormHeader { private String requestId; + private String vorgangNummer; @Builder.Default private ZonedDateTime createdAt = ZonedDateTime.now(); private String formId; diff --git a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/VorgangNummerSupplier.java b/common/src/main/java/de/ozgcloud/eingang/common/vorgang/VorgangNummerSupplier.java similarity index 91% rename from formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/VorgangNummerSupplier.java rename to common/src/main/java/de/ozgcloud/eingang/common/vorgang/VorgangNummerSupplier.java index b7f953e97..5d1468262 100644 --- a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/VorgangNummerSupplier.java +++ b/common/src/main/java/de/ozgcloud/eingang/common/vorgang/VorgangNummerSupplier.java @@ -1,4 +1,4 @@ -package de.ozgcloud.eingang.formcycle; +package de.ozgcloud.eingang.common.vorgang; import java.time.Instant; import java.time.LocalDate; @@ -6,7 +6,7 @@ import java.time.LocalDate; import org.springframework.stereotype.Component; @Component -class VorgangNummerSupplier { +public class VorgangNummerSupplier { static final String BASE30_ALPHABET = "23456789ABCDEFGHJKMNPQRSTVWXYZ"; static final int SUFFIX_LENGTH = 6; diff --git a/common/src/test/java/de/ozgcloud/eingang/common/formdata/DeleteOnCloseInputStreamTest.java b/common/src/test/java/de/ozgcloud/eingang/common/formdata/DeleteOnCloseInputStreamTest.java index 62d595e59..b7b7515b2 100644 --- a/common/src/test/java/de/ozgcloud/eingang/common/formdata/DeleteOnCloseInputStreamTest.java +++ b/common/src/test/java/de/ozgcloud/eingang/common/formdata/DeleteOnCloseInputStreamTest.java @@ -3,17 +3,26 @@ package de.ozgcloud.eingang.common.formdata; import static org.assertj.core.api.Assertions.*; import java.io.File; +import java.io.IOException; import org.junit.jupiter.api.Test; -import org.mockito.InjectMocks; import de.itvsh.kop.common.errorhandling.TechnicalException; class DeleteOnCloseInputStreamTest { - @InjectMocks private DeleteOnCloseInputStream stream; + @Test + void shouldDeleteFileOnClose() throws IOException { + File file = File.createTempFile("Test", "test"); + stream = new DeleteOnCloseInputStream(file); + + stream.close(); + + assertThat(file).doesNotExist(); + } + @Test void shouldThrowException() { var notExists = new File("notExists"); diff --git a/common/src/test/java/de/ozgcloud/eingang/common/formdata/FormHeaderTestFactory.java b/common/src/test/java/de/ozgcloud/eingang/common/formdata/FormHeaderTestFactory.java index 676210d67..cf79e4032 100644 --- a/common/src/test/java/de/ozgcloud/eingang/common/formdata/FormHeaderTestFactory.java +++ b/common/src/test/java/de/ozgcloud/eingang/common/formdata/FormHeaderTestFactory.java @@ -35,6 +35,7 @@ public class FormHeaderTestFactory { public static final String FORM_NAME = "formName"; public static final String FORM_ID = "formId"; public static final String REQUEST_ID = "requestId"; + public static final String VORGANG_NUMMER = "ABCD-1234"; public static final ZonedDateTime CREATED_AT = ZonedDateTime.now(); public static FormHeader create() { @@ -44,6 +45,7 @@ public class FormHeaderTestFactory { public static FormHeader.FormHeaderBuilder createBuilder() { return FormHeader.builder() .requestId(REQUEST_ID) + .vorgangNummer(VORGANG_NUMMER) .createdAt(CREATED_AT) .formId(FORM_ID) .formName(FORM_NAME) diff --git a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/VorgangNummerSupplierTest.java b/common/src/test/java/de/ozgcloud/eingang/common/vorgang/VorgangNummerSupplierTest.java similarity index 97% rename from formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/VorgangNummerSupplierTest.java rename to common/src/test/java/de/ozgcloud/eingang/common/vorgang/VorgangNummerSupplierTest.java index 568e82353..d474cd190 100644 --- a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/VorgangNummerSupplierTest.java +++ b/common/src/test/java/de/ozgcloud/eingang/common/vorgang/VorgangNummerSupplierTest.java @@ -1,4 +1,4 @@ -package de.ozgcloud.eingang.formcycle; +package de.ozgcloud.eingang.common.vorgang; import static org.assertj.core.api.Assertions.*; import static org.mockito.Mockito.*; diff --git a/common/src/test/resources/META-INF/services/org.junit.jupiter.api.extension.Extension b/common/src/test/resources/META-INF/services/org.junit.jupiter.api.extension.Extension new file mode 100644 index 000000000..79b126e6c --- /dev/null +++ b/common/src/test/resources/META-INF/services/org.junit.jupiter.api.extension.Extension @@ -0,0 +1 @@ +org.mockito.junit.jupiter.MockitoExtension \ No newline at end of file diff --git a/common/src/test/resources/junit-platform.properties b/common/src/test/resources/junit-platform.properties new file mode 100644 index 000000000..1cebb76d5 --- /dev/null +++ b/common/src/test/resources/junit-platform.properties @@ -0,0 +1 @@ +junit.jupiter.extensions.autodetection.enabled = true \ No newline at end of file diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java index 47febc1e9..20b6563bd 100644 --- a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java +++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java @@ -1,6 +1,7 @@ package de.ozgcloud.eingang.enterprise.entry; import java.io.IOException; +import java.time.ZonedDateTime; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.Resource; @@ -13,6 +14,9 @@ import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseStatus; +import de.ozgcloud.eingang.common.formdata.FormData; +import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier; +import de.ozgcloud.eingang.enterprise.entry.EntryResponse.ResponseVorgang; import de.ozgcloud.eingang.semantik.SemantikAdapter; @Controller @@ -20,17 +24,41 @@ import de.ozgcloud.eingang.semantik.SemantikAdapter; @RequestMapping("antrag") public class EntryController { + private static final String STARTING_STATUS = "NEU"; + @Autowired private EntryDataMapper mapper; @Autowired private SemantikAdapter semantikAdapter; + @Autowired + private VorgangNummerSupplier vorgangNummerSupplier; @ResponseStatus(HttpStatus.ACCEPTED) @PostMapping(consumes = "multipart/form-data", produces = MediaType.APPLICATION_JSON_VALUE) - public void receiveAntrag(@RequestPart Resource formData) throws IOException { + public EntryResponse receiveAntrag(@RequestPart Resource formData) throws IOException { var mapped = mapper.mapEntryData(formData.getInputStream()); + mapped = addVorgangNummer(mapped); + + var vorgangId = semantikAdapter.processFormData(mapped); + + return buildResponse(mapped, vorgangId); + } + + private FormData addVorgangNummer(FormData formData) { + var header = formData.getHeader().toBuilder().vorgangNummer(vorgangNummerSupplier.get()).build(); + return formData.toBuilder().header(header).build(); + } - semantikAdapter.processFormData(mapped); + EntryResponse buildResponse(FormData formData, String vorgangId) { + return EntryResponse.builder() + .transactionId(formData.getHeader().getRequestId()) + .vorgang(ResponseVorgang.builder() + .vorgangId(vorgangId) + .vorgangNummer(formData.getHeader().getVorgangNummer()) + .status(STARTING_STATUS) + .statusSince(ZonedDateTime.now().withNano(0)) + .build()) + .build(); } } diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryResponse.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryResponse.java new file mode 100644 index 000000000..840df7a6d --- /dev/null +++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryResponse.java @@ -0,0 +1,23 @@ +package de.ozgcloud.eingang.enterprise.entry; + +import java.time.ZonedDateTime; + +import lombok.Builder; +import lombok.Getter; + +@Builder +@Getter +class EntryResponse { + + private String transactionId; + private ResponseVorgang vorgang; + + @Builder + @Getter + static class ResponseVorgang { + private String vorgangId; + private String vorgangNummer; + private String status; + private ZonedDateTime statusSince; + } +} diff --git a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryControllerTest.java b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryControllerTest.java index 19708556d..7086aee89 100644 --- a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryControllerTest.java +++ b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryControllerTest.java @@ -16,6 +16,8 @@ import org.mockito.ArgumentCaptor; import org.mockito.Captor; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.mockito.Spy; +import org.springframework.core.io.Resource; import org.springframework.mock.web.MockMultipartFile; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.ResultActions; @@ -24,11 +26,15 @@ import org.springframework.test.web.servlet.setup.MockMvcBuilders; import de.itvsh.kop.common.test.TestUtils; import de.ozgcloud.eingang.common.formdata.FormData; import de.ozgcloud.eingang.common.formdata.FormDataTestFactory; +import de.ozgcloud.eingang.common.formdata.FormHeader; +import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory; +import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier; import de.ozgcloud.eingang.semantik.SemantikAdapter; import lombok.SneakyThrows; class EntryControllerTest { + @Spy @InjectMocks private EntryController controller; @@ -36,6 +42,8 @@ class EntryControllerTest { private EntryDataMapper mapper; @Mock private SemantikAdapter semantikAdapter; + @Mock + private VorgangNummerSupplier vorgangNummerSupplier; private MockMvc mockMvc; @@ -47,8 +55,22 @@ class EntryControllerTest { @Nested class ReceiveAntrag { + private final FormHeader header = FormHeaderTestFactory.createBuilder().vorgangNummer(null).build(); + private final FormData formData = FormDataTestFactory.createBuilder().header(header).build(); + @Captor private ArgumentCaptor<InputStream> streamCaptor; + @Captor + private ArgumentCaptor<FormData> formDataCaptor; + + private final EntryResponse response = EntryResponseTestFactory.create(); + + @BeforeEach + void init() { + when(mapper.mapEntryData(any())).thenReturn(formData); + doReturn(response).when(controller).buildResponse(any(), any()); + when(vorgangNummerSupplier.get()).thenReturn(FormHeaderTestFactory.VORGANG_NUMMER); + } @Test @SneakyThrows @@ -70,12 +92,25 @@ class EntryControllerTest { @Test void shouldCallSemantikAdapter() { - FormData formData = FormDataTestFactory.create(); - when(mapper.mapEntryData(any())).thenReturn(formData); + doPostRequest(); + + verify(semantikAdapter).processFormData(notNull()); + } + @Test + void shouldSetVorgangNummer() { doPostRequest(); - verify(semantikAdapter).processFormData(formData); + verify(semantikAdapter).processFormData(formDataCaptor.capture()); + assertThat(formDataCaptor.getValue().getHeader().getVorgangNummer()).isEqualTo(FormHeaderTestFactory.VORGANG_NUMMER); + } + + @Test + @SneakyThrows + void shouldReturnResponse() { + var response = controller.receiveAntrag(mock(Resource.class)); + + assertThat(response).isSameAs(this.response); } @SneakyThrows @@ -86,4 +121,18 @@ class EntryControllerTest { } } + @Nested + class BuildResponse { + + @Test + @SneakyThrows + void shouldCreateResponse() { + var response = controller.buildResponse(FormDataTestFactory.create(), ResponseVorgangTestFactory.VORGANG_ID); + + assertThat(response).usingRecursiveComparison() + .ignoringFields("vorgang.statusSince") + .isEqualTo(EntryResponseTestFactory.create()); + } + } + } diff --git a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryResponseTestFactory.java b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryResponseTestFactory.java new file mode 100644 index 000000000..b72c5b964 --- /dev/null +++ b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryResponseTestFactory.java @@ -0,0 +1,16 @@ +package de.ozgcloud.eingang.enterprise.entry; + +import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory; + +class EntryResponseTestFactory { + + static final EntryResponse create() { + return createBuilder().build(); + } + + static final EntryResponse.EntryResponseBuilder createBuilder() { + return EntryResponse.builder() + .transactionId(FormHeaderTestFactory.REQUEST_ID) + .vorgang(ResponseVorgangTestFactory.create()); + } +} diff --git a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/ResponseVorgangTestFactory.java b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/ResponseVorgangTestFactory.java new file mode 100644 index 000000000..021642935 --- /dev/null +++ b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/ResponseVorgangTestFactory.java @@ -0,0 +1,24 @@ +package de.ozgcloud.eingang.enterprise.entry; + +import java.time.ZonedDateTime; +import java.util.UUID; + +import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory; +import de.ozgcloud.eingang.enterprise.entry.EntryResponse.ResponseVorgang; + +public class ResponseVorgangTestFactory { + + final static String VORGANG_ID = UUID.randomUUID().toString(); + + static ResponseVorgang create() { + return createBuilder().build(); + } + + static ResponseVorgang.ResponseVorgangBuilder createBuilder() { + return ResponseVorgang.builder() + .vorgangId(VORGANG_ID) + .vorgangNummer(FormHeaderTestFactory.VORGANG_NUMMER) + .status("NEU") + .statusSince(ZonedDateTime.now()); + } +} diff --git a/formcycle-adapter/formcycle-adapter-impl/pom.xml b/formcycle-adapter/formcycle-adapter-impl/pom.xml index b042a9d64..0eec81b38 100644 --- a/formcycle-adapter/formcycle-adapter-impl/pom.xml +++ b/formcycle-adapter/formcycle-adapter-impl/pom.xml @@ -50,11 +50,13 @@ <groupId>de.itvsh.ozg.pluto</groupId> <artifactId>pluto-utils</artifactId> <type>test-jar</type> + <scope>test</scope> </dependency> <dependency> <groupId>de.itvsh.kop.eingangsadapter</groupId> <artifactId>common</artifactId> <type>test-jar</type> + <scope>test</scope> </dependency> <!--spring--> diff --git a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java index dbae0279f..b46745646 100644 --- a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java +++ b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java @@ -47,6 +47,7 @@ import de.ozgcloud.eingang.common.formdata.IncomingFileGroup; import de.ozgcloud.eingang.common.formdata.ServiceKonto; import de.ozgcloud.eingang.common.formdata.ServiceKonto.PostfachAddress; import de.ozgcloud.eingang.common.formdata.StringBasedIdentifier; +import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier; import de.ozgcloud.eingang.semantik.SemantikAdapter; import de.ozgcloud.eingang.semantik.enginebased.FilesMapperHelper; import lombok.RequiredArgsConstructor; diff --git a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java index 529668d93..1e9430b99 100644 --- a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java +++ b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java @@ -53,6 +53,7 @@ import de.ozgcloud.eingang.common.formdata.FormHeader; import de.ozgcloud.eingang.common.formdata.IncomingFileGroupTestFactory; import de.ozgcloud.eingang.common.formdata.IncomingFileTestFactory; import de.ozgcloud.eingang.common.formdata.ServiceKonto.PostfachAddress; +import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier; import de.ozgcloud.eingang.common.formdata.StringBasedIdentifier; import de.ozgcloud.eingang.formcycle.common.protobuf.ProtobufMessageConverter; import de.ozgcloud.eingang.semantik.SemantikAdapter; diff --git a/router/src/main/java/de/ozgcloud/eingang/router/VorgangRemoteService.java b/router/src/main/java/de/ozgcloud/eingang/router/VorgangRemoteService.java index 673c66955..0284bb677 100644 --- a/router/src/main/java/de/ozgcloud/eingang/router/VorgangRemoteService.java +++ b/router/src/main/java/de/ozgcloud/eingang/router/VorgangRemoteService.java @@ -106,7 +106,8 @@ public class VorgangRemoteService { uploadedAttachments = uploadAttachments(); uploadedRepresentations = uploadRepresentations(); - return finishCreation(); + finishCreation(); + return vorgangId; } String startCreation() { diff --git a/router/src/main/java/de/ozgcloud/eingang/router/VorgangService.java b/router/src/main/java/de/ozgcloud/eingang/router/VorgangService.java index c9250df82..9d617ae52 100644 --- a/router/src/main/java/de/ozgcloud/eingang/router/VorgangService.java +++ b/router/src/main/java/de/ozgcloud/eingang/router/VorgangService.java @@ -40,9 +40,10 @@ public class VorgangService { @Autowired private GrpcEingangMapper grpcEingangMapper; - public void createVorgang(FormData formData) { + public String createVorgang(FormData formData) { var eingang = grpcEingangMapper.toEingang(formData); var organisationsEinheitenId = Optional.ofNullable(formData.getZustaendigeStelle()).map(ZustaendigeStelle::getOrganisationseinheitenId); - remoteService.createVorgang(formData, eingang, organisationsEinheitenId); + + return remoteService.createVorgang(formData, eingang, organisationsEinheitenId); } } \ No newline at end of file diff --git a/router/src/test/java/de/ozgcloud/eingang/router/VorgangRemoteServiceTest.java b/router/src/test/java/de/ozgcloud/eingang/router/VorgangRemoteServiceTest.java index 8b1634ee1..2f8460969 100644 --- a/router/src/test/java/de/ozgcloud/eingang/router/VorgangRemoteServiceTest.java +++ b/router/src/test/java/de/ozgcloud/eingang/router/VorgangRemoteServiceTest.java @@ -160,10 +160,10 @@ class VorgangRemoteServiceTest { } @Test - void shouldReturnMessage() { + void shouldReturnVorgangId() { var result = createVorgang(); - assertThat(result).isEqualTo(finishResponse.getMessage()); + assertThat(result).isEqualTo(vorgangId); } private String createVorgang() { diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java index efee4d47f..74840e2f5 100644 --- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java +++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java @@ -44,11 +44,11 @@ public class SemantikAdapter { @Autowired private VorgangService vorgangService; - public void processFormData(FormData formData) { + public String processFormData(FormData formData) { formData = parseByEngineAdapter(formData); formData = parseByFormAdapter(formData); - vorgangService.createVorgang(formData); + return vorgangService.createVorgang(formData); } private FormData parseByEngineAdapter(FormData formData) { -- GitLab