Pull request #152: RED-2439: Calculate surrounding text for manual redactions
Merge in RED/persistence-service from RED-2439 to master * commit 'a6c3cc864a84d09414bb50ec99ac6e1453c34f30': RED-2439: Calculate surrounding text for manual redactions
This commit is contained in:
commit
01aebdd8f2
@ -34,4 +34,8 @@ public interface ManualRedactionRepository extends JpaRepository<ManualRedaction
|
||||
|
||||
@Query("select m from ManualRedactionEntryEntity m where m.id.fileId = :fileId and (:includeDeletions = true or m.softDeletedTime is null)")
|
||||
List<ManualRedactionEntryEntity> findByFileIdIncludeDeletions(String fileId, boolean includeDeletions);
|
||||
|
||||
@Modifying
|
||||
@Query("update ManualRedactionEntryEntity m set m.textBefore = :textBefore, m.textAfter = :textAfter where m.id = :id")
|
||||
void updateSurroundingText(AnnotationEntityId id, String textBefore, String textAfter);
|
||||
}
|
||||
|
||||
@ -3,13 +3,16 @@ package com.iqser.red.service.peristence.v1.server.service;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.google.common.hash.HashFunction;
|
||||
import com.google.common.hash.Hashing;
|
||||
import com.iqser.red.service.peristence.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.peristence.v1.server.controller.DictionaryController;
|
||||
import com.iqser.red.service.peristence.v1.server.utils.ManualRedactionMapper;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.*;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.DossierEntity;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.*;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.ManualRedactionRepository;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.annotations.*;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionLog;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionLogEntry;
|
||||
@ -23,7 +26,9 @@ import java.time.OffsetDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
|
||||
import static com.iqser.red.service.persistence.management.v1.processor.utils.MagicConverter.convert;
|
||||
import static com.iqser.red.service.persistence.management.v1.processor.utils.TypeIdUtils.toTypeId;
|
||||
|
||||
@Slf4j
|
||||
@ -46,6 +51,8 @@ public class ManualRedactionService {
|
||||
private final ManualRedactionProviderService manualRedactionProviderService;
|
||||
private final AnalysisFlagsCalculationService analysisFlagsCalculationService;
|
||||
private final StopwordService stopwordService;
|
||||
private final RedactionClient redactionClient;
|
||||
private final ManualRedactionRepository manualRedactionRepository;
|
||||
|
||||
private final HashFunction hashFunction = Hashing.murmur3_128();
|
||||
|
||||
@ -93,6 +100,19 @@ public class ManualRedactionService {
|
||||
analysisFlagsCalculationService.calculateFlags(dossierId, fileId);
|
||||
}
|
||||
|
||||
// TODO This is just a proof of concept.
|
||||
var loaded = convert(getAddRedaction(fileId, annotationId), ManualRedactionEntry.class, new ManualRedactionMapper());
|
||||
ManualRedactions manualRedactions = ManualRedactions.builder()
|
||||
.entriesToAdd(Set.of(loaded))
|
||||
.build();
|
||||
var withSurroundingText = redactionClient.addSurroundingText(dossierId, fileId, manualRedactions);
|
||||
if(withSurroundingText != null) {
|
||||
withSurroundingText.getEntriesToAdd().forEach(e -> {
|
||||
manualRedactionRepository.updateSurroundingText(new AnnotationEntityId(annotationId, fileId), e.getTextBefore(), e
|
||||
.getTextAfter());
|
||||
});
|
||||
}
|
||||
|
||||
return ManualAddResponse.builder().annotationId(annotationId).commentId(commentId).build();
|
||||
}
|
||||
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
</modules>
|
||||
|
||||
<properties>
|
||||
<redaction-service.version>3.36.0</redaction-service.version>
|
||||
<redaction-service.version>3.40.0</redaction-service.version>
|
||||
<search-service.version>2.10.0</search-service.version>
|
||||
<pdftron-redaction-service.version>3.17.0</pdftron-redaction-service.version>
|
||||
<redaction-report-service.version>3.19.0</redaction-report-service.version>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user