From dbe8e08bbacc4aacc377ca12eeab86f5a84ac6e0 Mon Sep 17 00:00:00 2001 From: Maverick Studer Date: Fri, 27 Sep 2024 11:05:26 +0200 Subject: [PATCH] RED-9947 && RED-10104 --- .../redaction-service-api-v1/build.gradle.kts | 2 +- .../build.gradle.kts | 2 +- .../server/service/DocumentSearchService.java | 12 +++++------- .../document/DocumentSearchServiceTest.java | 18 +++++++----------- 4 files changed, 14 insertions(+), 20 deletions(-) diff --git a/redaction-service-v1/redaction-service-api-v1/build.gradle.kts b/redaction-service-v1/redaction-service-api-v1/build.gradle.kts index 8d847467..0d385f43 100644 --- a/redaction-service-v1/redaction-service-api-v1/build.gradle.kts +++ b/redaction-service-v1/redaction-service-api-v1/build.gradle.kts @@ -4,7 +4,7 @@ plugins { } description = "redaction-service-api-v1" -val persistenceServiceVersion = "2.572.0" +val persistenceServiceVersion = "2.574.0" dependencies { implementation("org.springframework:spring-web:6.0.12") diff --git a/redaction-service-v1/redaction-service-server-v1/build.gradle.kts b/redaction-service-v1/redaction-service-server-v1/build.gradle.kts index 783a254b..cd20988b 100644 --- a/redaction-service-v1/redaction-service-server-v1/build.gradle.kts +++ b/redaction-service-v1/redaction-service-server-v1/build.gradle.kts @@ -16,7 +16,7 @@ val layoutParserVersion = "0.174.0" val jacksonVersion = "2.15.2" val droolsVersion = "9.44.0.Final" val pdfBoxVersion = "3.0.0" -val persistenceServiceVersion = "2.572.0" +val persistenceServiceVersion = "2.574.0" val llmServiceVersion = "1.11.0" val springBootStarterVersion = "3.1.5" val springCloudVersion = "4.0.4" diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/DocumentSearchService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/DocumentSearchService.java index ddd0813c..567d3b4b 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/DocumentSearchService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/DocumentSearchService.java @@ -9,9 +9,7 @@ import org.springframework.stereotype.Service; import com.iqser.red.service.persistence.service.v1.api.shared.model.AnalyzeRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.BulkLocalRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.BulkLocalResponse; -import com.iqser.red.service.persistence.service.v1.api.shared.model.EntityPosition; -import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntityLogEntry; -import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.Position; +import com.iqser.red.service.persistence.service.v1.api.shared.model.FoundTerm; import com.iqser.red.service.redaction.v1.model.QueueNames; import com.iqser.red.service.redaction.v1.server.model.document.entity.TextEntity; import com.iqser.red.service.redaction.v1.server.model.document.nodes.Document; @@ -54,21 +52,21 @@ public class DocumentSearchService { possibleEntities = entityFindingUtility.findAllPossibleEntitiesByValueOnPages(document, searchTerm, bulkLocalRequest.isCaseSensitive(), pageNumbers); } - List entityPositions = possibleEntities.stream() + List foundTerms = possibleEntities.stream() .flatMap(entity -> entityLogCreatorService.toEntityLogEntries(entity, 0, "", "") .stream()) - .map(entityLogEntry -> new EntityPosition(entityLogEntry.getPositions())) + .map(entityLogEntry -> new FoundTerm(entityLogEntry.getPositions(), entityLogEntry.getValue())) .toList(); BulkLocalResponse bulkLocalResponse = BulkLocalResponse.builder() .dossierId(analyzeRequest.getDossierId()) .fileId(analyzeRequest.getFileId()) - .searchTerm(searchTerm) .type(bulkLocalRequest.getType()) .reason(bulkLocalRequest.getReason()) .legalBasis(bulkLocalRequest.getLegalBasis()) .section(bulkLocalRequest.getSection()) - .entityPositions(entityPositions) + .foundTerms(foundTerms) + .comment(bulkLocalRequest.getComment()) .build(); rabbitTemplate.convertAndSend(QueueNames.SEARCH_TERM_OCCURRENCES_RESPONSE_EXCHANGE, TenantContext.getTenantId(), bulkLocalResponse); diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/service/document/DocumentSearchServiceTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/service/document/DocumentSearchServiceTest.java index d008af26..d8285366 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/service/document/DocumentSearchServiceTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/service/document/DocumentSearchServiceTest.java @@ -1,8 +1,6 @@ package com.iqser.red.service.redaction.v1.server.service.document; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -32,9 +30,8 @@ import com.iqser.red.commons.jackson.ObjectMapperFactory; import com.iqser.red.service.persistence.service.v1.api.shared.model.AnalyzeRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.BulkLocalRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.BulkLocalResponse; -import com.iqser.red.service.persistence.service.v1.api.shared.model.EntityPosition; +import com.iqser.red.service.persistence.service.v1.api.shared.model.FoundTerm; import com.iqser.red.service.persistence.service.v1.api.shared.model.RuleFileType; -import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.Position; import com.iqser.red.service.persistence.service.v1.api.shared.model.common.JSONPrimitive; import com.iqser.red.service.redaction.v1.model.QueueNames; import com.iqser.red.service.redaction.v1.server.AbstractRedactionIntegrationTest; @@ -111,22 +108,22 @@ public class DocumentSearchServiceTest extends AbstractRedactionIntegrationTest analyzeDocumentStructure(LayoutParsingType.REDACT_MANAGER, request); analyzeService.analyze(request); - BulkLocalRequest bulkLocalRequest = BulkLocalRequest.builder().searchTerm("AAOEL").type("type").reason("reason").legalBasis("legalBasis").build(); + BulkLocalRequest bulkLocalRequest = BulkLocalRequest.builder().searchTerm("AAOEL").type("type").reason("reason").legalBasis("legalBasis").comment("comment").build(); request.setBulkLocalRequest(bulkLocalRequest); documentSearchService.searchTermOccurrences(request); verify(rabbitTemplate).convertAndSend(eq(QueueNames.SEARCH_TERM_OCCURRENCES_RESPONSE_EXCHANGE), eq(TenantContext.getTenantId()), captor.capture()); BulkLocalResponse response = captor.getValue(); - List entityPositions = response.getEntityPositions(); - assertEquals(entityPositions.size(), 5); + List foundTerms = response.getFoundTerms(); + assertEquals(foundTerms.size(), 5); assertEquals(response.getDossierId(), request.getDossierId()); assertEquals(response.getFileId(), request.getFileId()); - assertEquals(response.getSearchTerm(), bulkLocalRequest.getSearchTerm()); assertEquals(response.getType(), bulkLocalRequest.getType()); assertEquals(response.getReason(), bulkLocalRequest.getReason()); assertEquals(response.getLegalBasis(), bulkLocalRequest.getLegalBasis()); assertEquals(response.getSection(), bulkLocalRequest.getSection()); + assertEquals(response.getComment(), bulkLocalRequest.getComment()); } @@ -147,11 +144,10 @@ public class DocumentSearchServiceTest extends AbstractRedactionIntegrationTest verify(rabbitTemplate).convertAndSend(eq(QueueNames.SEARCH_TERM_OCCURRENCES_RESPONSE_EXCHANGE), eq(TenantContext.getTenantId()), captor.capture()); BulkLocalResponse response = captor.getValue(); - List entityPositions = response.getEntityPositions(); - assertEquals(entityPositions.size(), 3); + List foundTerms = response.getFoundTerms(); + assertEquals(foundTerms.size(), 3); assertEquals(response.getDossierId(), request.getDossierId()); assertEquals(response.getFileId(), request.getFileId()); - assertEquals(response.getSearchTerm(), bulkLocalRequest.getSearchTerm()); assertEquals(response.getType(), bulkLocalRequest.getType()); assertEquals(response.getReason(), bulkLocalRequest.getReason()); assertEquals(response.getLegalBasis(), bulkLocalRequest.getLegalBasis());