From 503d7701ed3d76af31d55490d9bbf4b6f5737e35 Mon Sep 17 00:00:00 2001
From: "Zickermann, Jan" <jan.zickermann@dataport.de>
Date: Tue, 25 Jun 2024 09:40:36 +0200
Subject: [PATCH] OZG-5808 mantelantrag: Check if formId starts with expected
 value

---
 .../MantelantragZustaendigeStelleMapper.java  | 19 ++++++++++---------
 ...ntelantragZustaendigeStelleMapperTest.java |  9 +++++----
 2 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapper.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapper.java
index be450d87c..9ddc1287c 100644
--- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapper.java
+++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapper.java
@@ -1,5 +1,14 @@
 package de.ozgcloud.eingang.semantik.formbased.mantelantrag;
 
+import java.util.Map;
+import java.util.Optional;
+import java.util.function.UnaryOperator;
+import java.util.stream.IntStream;
+
+import org.apache.commons.collections.MapUtils;
+import org.springframework.core.env.Environment;
+import org.springframework.stereotype.Component;
+
 import de.ozgcloud.eingang.common.errorhandling.TechnicalException;
 import de.ozgcloud.eingang.common.formdata.FormData;
 import de.ozgcloud.eingang.common.formdata.FormHeader;
@@ -7,14 +16,6 @@ import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
 import de.ozgcloud.eingang.semantik.formbased.FormBasedMapper;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.log4j.Log4j2;
-import org.apache.commons.collections.MapUtils;
-import org.springframework.core.env.Environment;
-import org.springframework.stereotype.Component;
-
-import java.util.Map;
-import java.util.Optional;
-import java.util.function.UnaryOperator;
-import java.util.stream.IntStream;
 
 @Component
 @RequiredArgsConstructor
@@ -36,7 +37,7 @@ public class MantelantragZustaendigeStelleMapper implements FormBasedMapper {
 	public boolean isResponsible(FormData formData) {
 		return Optional.ofNullable(formData.getHeader())
 				.map(FormHeader::getFormId)
-				.map(MANTELANTRAG_FORM_ID::equals)
+				.map(v -> v.startsWith(MANTELANTRAG_FORM_ID))
 				.orElse(false);
 	}
 
diff --git a/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapperTest.java b/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapperTest.java
index e04fba257..f03169a67 100644
--- a/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapperTest.java
+++ b/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/formbased/mantelantrag/MantelantragZustaendigeStelleMapperTest.java
@@ -43,10 +43,11 @@ class MantelantragZustaendigeStelleMapperTest {
 	@Nested
 	class TestIsResponsible {
 
-		@DisplayName("should be true if mantelantrag form id")
-		@Test
-		void shouldBeTrueIfMantelantragFormId() {
-			var formData = createWithFormId(MANTELANTRAG_FORM_ID);
+		@DisplayName("should be true if mantelantrag starts with form id")
+		@ParameterizedTest
+		@ValueSource(strings = { MANTELANTRAG_FORM_ID, MANTELANTRAG_FORM_ID + "_pvog" })
+		void shouldBeTrueIfMantelantragStartsWithFormId(String formId) {
+			var formData = createWithFormId(formId);
 
 			var isResponsibleResult = mapper.isResponsible(formData);
 
-- 
GitLab