Skip to content
Snippets Groups Projects
Commit 38c28b0f authored by Jan Zickermann's avatar Jan Zickermann
Browse files

OZG-5808 afm: Interpret requestId as vorgang nummer

parent eb9bc752
No related branches found
No related tags found
No related merge requests found
......@@ -43,24 +43,15 @@ public class AfmEngineBasedAdapter implements EngineBasedSemantikAdapter {
@Override
public FormData parseFormData(FormData formData) {
var vorgangNummer = formData.getHeader().getVorgangNummer();
var processedFormData = intelliFormRepresentationAdapter.adaptByRepresentations(formData);
for (var mapper : mappers) {
processedFormData = mapper.parseFormData(processedFormData);
}
return removeProcessedData(addVorgangNummer(processedFormData, vorgangNummer));
return removeProcessedData(processedFormData);
}
private FormData addVorgangNummer(FormData formData, String vorgangNummer) {
return formData.toBuilder()
.header(formData.getHeader().toBuilder()
.vorgangNummer(vorgangNummer)
.build()
)
.build();
}
private FormData removeProcessedData(FormData formData) {
return FormDataUtils.from(formData)
......
......@@ -67,6 +67,7 @@ class AfmHeaderMapper implements AfmEngineBasedMapper {
var formHeaderBuilder = FormHeader.builder()
.requestId((String) headerDataMap.get(ID))
.vorgangNummer((String) headerDataMap.get(ID))
.createdAt(getCreatedAt(headerDataMap))
.formId((String) headerDataMap.get(FORM_ID))
.formName((String) headerDataMap.get(FORM))
......
......@@ -100,13 +100,6 @@ class AfmEngineBasedAdapterTest {
assertThat(mappedFormData.getFormData()).doesNotContainKey(AfmAntragstellerMapper.POSTFACH_ID);
}
@DisplayName("should keep vorgang nummer")
@Test
void shouldKeepVorgangNummer() {
var mappedFormData = adapter.parseFormData(formData);
assertThat(mappedFormData.getHeader().getVorgangNummer()).isEqualTo(VORGANG_NUMMER);
}
}
}
......@@ -77,6 +77,13 @@ class AfmHeaderMapperTest {
assertThat(parsedFormData.getHeader().getRequestId()).isEqualTo(AfmHeaderTestFactory.ID);
}
@Test
void shouldMapVorgangNummer() {
var parsedFormData = parseFormData();
assertThat(parsedFormData.getHeader().getVorgangNummer()).isEqualTo(AfmHeaderTestFactory.ID);
}
@Test
void shouldMapCreatedAt() {
var parsedFormData = parseFormData();
......
......@@ -13,6 +13,7 @@ import java.util.Optional;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
import org.mockito.ArgumentCaptor;
......@@ -137,15 +138,30 @@ class XtaITCase {
assertThat(organisationseinheitenId).isEqualTo("9795669");
}
@DisplayName("should have vorgang nummer")
@TestZipFileNames
void shouldHaveVorgangNummer(String zipFileName) {
@DisplayName("should have generated vorgang nummer for dFoerdermittel")
@Test
void shouldHaveVorgangsnummer() {
mockNachrichtenBroker("dfoerdermittel_with_anlage.zip");
runner.runGetXtaMessages();
var vorgangsNummer = captureEingang()
.getHeader()
.getVorgangNummer();
assertThat(vorgangsNummer).hasSameSizeAs("4627-TY3X");
}
@DisplayName("should have vorgang nummer for AFM")
@TestZipFileNamesFromAFM
void shouldHaveVorgangsnummerForAfm(String zipFileName) {
mockNachrichtenBroker(zipFileName);
runner.runGetXtaMessages();
var vorgangNummer = captureEingang().getHeader().getVorgangNummer();
assertThat(vorgangNummer).hasSize(9);
var vorgangsNummer = captureEingang()
.getHeader()
.getVorgangNummer();
assertThat(vorgangsNummer).hasSameSizeAs("20240404370530710707");
}
private GrpcEingang captureEingang() {
......@@ -219,6 +235,18 @@ class XtaITCase {
@interface TestZipFileNamesWithoutPdf {
}
@Target({ ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@ParameterizedTest
@ValueSource(strings = {
"mantelantrag_without_anlage.zip",
"brauchtumsfeuer_without_anlage.zip",
"mantelantrag_with_anlage.zip",
"brauchtumsfeuer_with_anlage.zip",
})
@interface TestZipFileNamesFromAFM {
}
@Target({ ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@ParameterizedTest
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment