diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IBaseAnnotation.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IBaseAnnotation.java index 814751f53..58f071f0b 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IBaseAnnotation.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IBaseAnnotation.java @@ -9,7 +9,10 @@ public interface IBaseAnnotation { AnnotationEntityId getId(); - AnnotationStatus getStatus(); + @Deprecated(forRemoval = true) + default AnnotationStatus getStatus() { + return AnnotationStatus.APPROVED; + } OffsetDateTime getRequestDate(); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IdRemovalEntity.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IdRemovalEntity.java index d4fcc3d18..cbf2dd75d 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IdRemovalEntity.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/IdRemovalEntity.java @@ -4,22 +4,18 @@ import java.time.OffsetDateTime; import java.util.HashSet; import java.util.Set; -import jakarta.persistence.Column; -import jakarta.persistence.ElementCollection; -import jakarta.persistence.EmbeddedId; -import jakarta.persistence.Entity; -import jakarta.persistence.EnumType; -import jakarta.persistence.Enumerated; -import jakarta.persistence.FetchType; -import jakarta.persistence.ManyToOne; -import jakarta.persistence.Table; - import org.hibernate.annotations.Fetch; import org.hibernate.annotations.FetchMode; import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; +import jakarta.persistence.Column; +import jakarta.persistence.ElementCollection; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -38,9 +34,6 @@ public class IdRemovalEntity implements IBaseAnnotation { @Column(name = "user_id") private String user; @Column - @Enumerated(EnumType.STRING) - private AnnotationStatus status; - @Column private boolean removeFromDictionary; @Column private boolean removeFromAllDossiers; diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualForceRedactionEntity.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualForceRedactionEntity.java index 3bcdfdb3f..8bfa1beaa 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualForceRedactionEntity.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualForceRedactionEntity.java @@ -2,17 +2,13 @@ package com.iqser.red.service.persistence.management.v1.processor.entity.annotat import java.time.OffsetDateTime; +import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; + import jakarta.persistence.Column; import jakarta.persistence.EmbeddedId; import jakarta.persistence.Entity; -import jakarta.persistence.EnumType; -import jakarta.persistence.Enumerated; import jakarta.persistence.ManyToOne; import jakarta.persistence.Table; - -import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; - import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -30,9 +26,6 @@ public class ManualForceRedactionEntity implements IBaseAnnotation { private AnnotationEntityId id; @Column(name = "user_id") private String user; - @Column - @Enumerated(EnumType.STRING) - private AnnotationStatus status; @Column(length = 4000) private String legalBasis; @Column diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualLegalBasisChangeEntity.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualLegalBasisChangeEntity.java index 7df85029e..fd9a9e2e5 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualLegalBasisChangeEntity.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualLegalBasisChangeEntity.java @@ -2,17 +2,13 @@ package com.iqser.red.service.persistence.management.v1.processor.entity.annotat import java.time.OffsetDateTime; +import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; + import jakarta.persistence.Column; import jakarta.persistence.EmbeddedId; import jakarta.persistence.Entity; -import jakarta.persistence.EnumType; -import jakarta.persistence.Enumerated; import jakarta.persistence.ManyToOne; import jakarta.persistence.Table; - -import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; - import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -32,9 +28,6 @@ public class ManualLegalBasisChangeEntity implements IBaseAnnotation { @Column(name = "user_id") private String user; @Column - @Enumerated(EnumType.STRING) - private AnnotationStatus status; - @Column private String section; @Column private String value; diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRecategorizationEntity.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRecategorizationEntity.java index 0dd1282f6..d8aa89bff 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRecategorizationEntity.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRecategorizationEntity.java @@ -8,15 +8,12 @@ import org.hibernate.annotations.Fetch; import org.hibernate.annotations.FetchMode; import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import jakarta.persistence.CollectionTable; import jakarta.persistence.Column; import jakarta.persistence.ElementCollection; import jakarta.persistence.EmbeddedId; import jakarta.persistence.Entity; -import jakarta.persistence.EnumType; -import jakarta.persistence.Enumerated; import jakarta.persistence.ManyToOne; import jakarta.persistence.Table; import lombok.AllArgsConstructor; @@ -37,9 +34,6 @@ public class ManualRecategorizationEntity implements IBaseAnnotation { @Column(name = "user_id") private String user; @Column - @Enumerated(EnumType.STRING) - private AnnotationStatus status; - @Column private String typeId; @Column private OffsetDateTime requestDate; diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRedactionEntryEntity.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRedactionEntryEntity.java index 343bab3e3..0c4a274d1 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRedactionEntryEntity.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualRedactionEntryEntity.java @@ -6,6 +6,12 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import org.hibernate.annotations.Fetch; +import org.hibernate.annotations.FetchMode; + +import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; +import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.type.DictionaryEntryType; + import jakarta.persistence.Column; import jakarta.persistence.ElementCollection; import jakarta.persistence.EmbeddedId; @@ -15,14 +21,6 @@ import jakarta.persistence.Enumerated; import jakarta.persistence.FetchType; import jakarta.persistence.ManyToOne; import jakarta.persistence.Table; - -import org.hibernate.annotations.Fetch; -import org.hibernate.annotations.FetchMode; - -import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; -import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.type.DictionaryEntryType; - import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -49,9 +47,6 @@ public class ManualRedactionEntryEntity implements IBaseAnnotation { @Column private String legalBasis; @Column - @Enumerated(EnumType.STRING) - private AnnotationStatus status; - @Column private String section; @Column private boolean rectangle; diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualResizeRedactionEntity.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualResizeRedactionEntity.java index bbc3f28ba..74c5e1d62 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualResizeRedactionEntity.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/entity/annotations/ManualResizeRedactionEntity.java @@ -10,14 +10,11 @@ import org.hibernate.annotations.Fetch; import org.hibernate.annotations.FetchMode; import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import jakarta.persistence.Column; import jakarta.persistence.ElementCollection; import jakarta.persistence.EmbeddedId; import jakarta.persistence.Entity; -import jakarta.persistence.EnumType; -import jakarta.persistence.Enumerated; import jakarta.persistence.FetchType; import jakarta.persistence.ManyToOne; import jakarta.persistence.Table; @@ -39,9 +36,6 @@ public class ManualResizeRedactionEntity implements IBaseAnnotation { @Column(name = "user_id") private String user; @Column - @Enumerated(EnumType.STRING) - private AnnotationStatus status; - @Column private OffsetDateTime requestDate; @Column private OffsetDateTime processedDate; diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionDictionaryUpdateHandler.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionDictionaryUpdateHandler.java index bac72b520..fb6496b63 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionDictionaryUpdateHandler.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionDictionaryUpdateHandler.java @@ -25,7 +25,6 @@ import com.iqser.red.service.persistence.management.v1.processor.service.persist import com.iqser.red.service.persistence.management.v1.processor.service.persistence.annotations.ResizeRedactionPersistenceService; 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.EntryType; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRequestWithAddToDictionary; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRequestWithRemoveFromDictionary; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.WorkflowStatus; @@ -137,7 +136,7 @@ public class ManualRedactionDictionaryUpdateHandler { public Set updateDictionaryForResizeRedactions(String dossierId, String fileId, ManualResizeRedactionEntity resizeRedaction, EntityLogEntry entityLogEntry) { - if (resizeRedaction.getUpdateDictionary() != null && resizeRedaction.getUpdateDictionary() && resizeRedaction.getStatus().equals(AnnotationStatus.APPROVED)) { + if (resizeRedaction.getUpdateDictionary() != null && resizeRedaction.getUpdateDictionary()) { var dossier = dossierPersistenceService.findByDossierId(dossierId); @@ -297,7 +296,7 @@ public class ManualRedactionDictionaryUpdateHandler { private void removeResizeRedactionsWithAddToDictionary(String dossierTemplateId, String entityLogEntryValue) { - var resizeRedactionsWithSameValue = resizeRedactionPersistenceService.findByAnnotationStatusAndValue(AnnotationStatus.APPROVED, entityLogEntryValue); + var resizeRedactionsWithSameValue = resizeRedactionPersistenceService.findByValue(entityLogEntryValue); resizeRedactionsWithSameValue.forEach(resizeRedaction -> { var file = fileStatusPersistenceService.getStatus(resizeRedaction.getId().getFileId()); var dossierForResizeRedaction = dossierPersistenceService.findByDossierId(file.getDossierId()); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java index 469da83f9..53c476d07 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionMapper.java @@ -16,7 +16,6 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog 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.EntryType; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AddRedactionRequest; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ForceRedactionRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.LegalBasisChangeRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.RecategorizationRequest; @@ -63,7 +62,6 @@ public class ManualRedactionMapper { .dossierTemplateTypeId(toTypeId(addRedactionRequest.getType(), dossierTemplateId)) .reason(addRedactionRequest.getReason()) .addToDictionary(addRedactionRequest.isAddToDictionary()) - .status(AnnotationStatus.APPROVED) .comment(addRedactionRequest.getComment() != null ? addRedactionRequest.getComment().getText() : null) .section(addRedactionRequest.getSection()) .rectangle(addRedactionRequest.isRectangle()) @@ -80,7 +78,8 @@ public class ManualRedactionMapper { public List toRemoveRedactionRequestList(String dossierId, String fileId, String dossierTemplateId, - Set removeRedactionRequests, boolean includeUnprocessed) { + Set removeRedactionRequests, + boolean includeUnprocessed) { List requests = new ArrayList<>(); EntityLog entityLog = entityLogService.getEntityLog(dossierId, fileId, Collections.emptyList(), includeUnprocessed); @@ -89,7 +88,6 @@ public class ManualRedactionMapper { var removeRedactionRequestBuilder = RemoveRedactionRequest.builder() .annotationId(removeRedactionRequest.getAnnotationId()) .user(KeycloakSecurity.getUserId()) - .status(AnnotationStatus.APPROVED) .removeFromDictionary(removeRedactionRequest.isRemoveFromDictionary()) .removeFromAllDossiers(removeRedactionRequest.isRemoveFromAllDossiers()) .value(entityLogEntry.getValue()) @@ -114,7 +112,6 @@ public class ManualRedactionMapper { .map(forceRedactionRequest -> ForceRedactionRequest.builder() .annotationId(forceRedactionRequest.getAnnotationId()) .user(KeycloakSecurity.getUserId()) - .status(AnnotationStatus.APPROVED) .legalBasis(forceRedactionRequest.getLegalBasis()) .comment(forceRedactionRequest.getComment()) .build()) @@ -128,7 +125,6 @@ public class ManualRedactionMapper { .map(legalBasisChangeRequest -> LegalBasisChangeRequest.builder() .annotationId(legalBasisChangeRequest.getAnnotationId()) .user(KeycloakSecurity.getUserId()) - .status(AnnotationStatus.APPROVED) .section(legalBasisChangeRequest.getSection()) .legalBasis(legalBasisChangeRequest.getLegalBasis()) .comment(legalBasisChangeRequest.getComment()) @@ -151,7 +147,6 @@ public class ManualRedactionMapper { RecategorizationRequest build = RecategorizationRequest.builder() .annotationId(recategorizationRequest.getAnnotationId()) .user(KeycloakSecurity.getUserId()) - .status(AnnotationStatus.APPROVED) .dossierTemplateId(dossierTemplateId) .comment(recategorizationRequest.getComment()) .dossierId(dossierId) @@ -175,7 +170,6 @@ public class ManualRedactionMapper { .map(resizeRedactionRequest -> ResizeRedactionRequest.builder() .annotationId(resizeRedactionRequest.getAnnotationId()) .user(KeycloakSecurity.getUserId()) - .status(AnnotationStatus.APPROVED) .positions(resizeRedactionRequest.getPositions()) .value(resizeRedactionRequest.getValue() == null ? "" : StringCleaningUtility.cleanString(resizeRedactionRequest.getValue())) .comment(resizeRedactionRequest.getComment()) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java index 65cd6bd85..f632b302e 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionService.java @@ -19,7 +19,6 @@ import com.iqser.red.service.persistence.management.v1.processor.entity.annotati import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualResizeRedactionEntity; import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException; import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException; -import com.iqser.red.service.persistence.management.v1.processor.service.AnalysisFlagsCalculationService; import com.iqser.red.service.persistence.management.v1.processor.service.CommentService; import com.iqser.red.service.persistence.management.v1.processor.service.EntityLogMergeService; import com.iqser.red.service.persistence.management.v1.processor.service.EntityLogService; @@ -37,7 +36,6 @@ import com.iqser.red.service.persistence.management.v1.processor.utils.ManualRes import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntityLog; 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.annotations.AddRedactionRequest; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ForceRedactionRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.LegalBasisChangeRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualAddResponse; @@ -99,11 +97,7 @@ public class ManualRedactionService { addRedactionRequest.getValue(), addRedactionRequest); - addRedactionPersistenceService.updateStatus(fileId, - annotationId, - addRedactionRequest.getStatus(), - !typeIdsOfModifiedDictionaries.isEmpty(), - typeIdsOfModifiedDictionaries); + addRedactionPersistenceService.updateModifiedDictionaries(fileId, annotationId, !typeIdsOfModifiedDictionaries.isEmpty(), typeIdsOfModifiedDictionaries); Long commentId = commentService.addCommentAndGetId(fileId, annotationId, addRedactionRequest.getComment(), addRedactionRequest.getUser()); @@ -156,9 +150,8 @@ public class ManualRedactionService { boolean removedFromDictionary = !typeIdsOfModifiedDictionaries.isEmpty(); - removeRedactionPersistenceService.updateStatus(fileId, + removeRedactionPersistenceService.updateModifiedDictionaries(fileId, removeRedactionRequest.getAnnotationId(), - removeRedactionRequest.getStatus(), removedFromDictionary, typeIdsOfModifiedDictionaries); @@ -239,9 +232,8 @@ public class ManualRedactionService { Set typeIdsOfDictionariesWithDelete = manualRedactionDictionaryUpdateHandler.handleRemoveFromDictionaryAndReturnModifiedTypeIds(fileId, recategorizationRequest); - recategorizationPersistenceService.updateStatus(fileId, + recategorizationPersistenceService.updateModifiedDictionaries(fileId, recategorizationRequest.getAnnotationId(), - AnnotationStatus.APPROVED, typeIdsOfDictionariesWithAdd, typeIdsOfDictionariesWithDelete); @@ -286,10 +278,7 @@ public class ManualRedactionService { resizeRedaction, getEntityLogEntry(entityLog, resizeRedaction.getId().getAnnotationId())); - resizeRedactionPersistenceService.updateStatus(resizeRedaction.getId().getFileId(), - resizeRedaction.getId().getAnnotationId(), - resizeRedaction.getStatus(), - typeIdsOfModifiedDictionaries); + resizeRedactionPersistenceService.updateModifiedDictionaries(resizeRedaction.getId().getFileId(), resizeRedaction.getId().getAnnotationId(), typeIdsOfModifiedDictionaries); } manualResizeRedactionEntities = manualResizeRedactionEntities.stream() @@ -352,42 +341,42 @@ public class ManualRedactionService { if (manualRedactions.getEntriesToAdd() != null) { manualRedactions.getEntriesToAdd().forEach(e -> { - if (!e.getStatus().equals(AnnotationStatus.REQUESTED) && e.getProcessedDate() == null) { + if (e.getProcessedDate() == null) { addRedactionPersistenceService.markAsProcessed(e); } }); } if (manualRedactions.getIdsToRemove() != null) { manualRedactions.getIdsToRemove().forEach(e -> { - if (!e.getStatus().equals(AnnotationStatus.REQUESTED) && e.getProcessedDate() == null) { + if (e.getProcessedDate() == null) { removeRedactionPersistenceService.markAsProcessed(e); } }); } if (manualRedactions.getForceRedactions() != null) { manualRedactions.getForceRedactions().forEach(e -> { - if (!e.getStatus().equals(AnnotationStatus.REQUESTED) && e.getProcessedDate() == null) { + if (e.getProcessedDate() == null) { forceRedactionPersistenceService.markAsProcessed(e.getAnnotationId(), e.getFileId()); } }); } if (manualRedactions.getRecategorizations() != null) { manualRedactions.getRecategorizations().forEach(e -> { - if (!e.getStatus().equals(AnnotationStatus.REQUESTED) && e.getProcessedDate() == null) { + if (e.getProcessedDate() == null) { recategorizationPersistenceService.markAsProcessed(e.getAnnotationId(), e.getFileId()); } }); } if (manualRedactions.getResizeRedactions() != null) { manualRedactions.getResizeRedactions().forEach(e -> { - if (!e.getStatus().equals(AnnotationStatus.REQUESTED) && e.getProcessedDate() == null) { + if (e.getProcessedDate() == null) { resizeRedactionPersistenceService.markAsProcessed(e.getAnnotationId(), e.getFileId()); } }); } if (manualRedactions.getLegalBasisChanges() != null) { manualRedactions.getLegalBasisChanges().forEach(e -> { - if (!e.getStatus().equals(AnnotationStatus.REQUESTED) && e.getProcessedDate() == null) { + if (e.getProcessedDate() == null) { legalBasisChangePersistenceService.markAsProcessed(e.getAnnotationId(), e.getFileId()); } }); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionUndoService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionUndoService.java index fe89089ec..dff14d2fb 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionUndoService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/manualredactions/ManualRedactionUndoService.java @@ -35,7 +35,6 @@ import com.iqser.red.service.persistence.management.v1.processor.service.persist import com.iqser.red.service.persistence.service.v1.api.shared.model.AuditCategory; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntityLog; 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.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRedactions; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.IdRemoval; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualForceRedaction; @@ -202,7 +201,7 @@ public class ManualRedactionUndoService { fileId, dossierId, recategorizationEntity.getTypeIdsOfDictionariesWithAdd()); - recategorizationPersistenceService.updateStatus(fileId, annotationId, AnnotationStatus.APPROVED, Collections.emptySet(), Collections.emptySet()); + recategorizationPersistenceService.updateModifiedDictionaries(fileId, annotationId, Collections.emptySet(), Collections.emptySet()); recategorizationPersistenceService.softDelete(fileId, annotationId, OffsetDateTime.now()); } @@ -271,7 +270,7 @@ public class ManualRedactionUndoService { IdRemovalEntity removeRedaction = removeRedactionPersistenceService.findRemoveRedaction(fileId, annotationId); String originalValue = getEntityLogEntry(entityLog, annotationId).getValue(); boolean dictionaryChanged = manualRedactionDictionaryUpdateHandler.revertRemoveFromDictionary(originalValue, dossierId, fileId, removeRedaction); - removeRedactionPersistenceService.updateStatus(fileId, annotationId, removeRedaction.getStatus(), dictionaryChanged, Collections.emptySet()); + removeRedactionPersistenceService.updateModifiedDictionaries(fileId, annotationId, dictionaryChanged, Collections.emptySet()); removeRedactionPersistenceService.softDelete(fileId, annotationId, OffsetDateTime.now()); } @@ -307,7 +306,7 @@ public class ManualRedactionUndoService { ManualRedactionEntryEntity addRedaction = addRedactionPersistenceService.findAddRedaction(fileId, annotationId); boolean dictionaryChanged = manualRedactionDictionaryUpdateHandler.revertAddToDictionary(fileId, dossier.getId(), addRedaction); - addRedactionPersistenceService.updateStatus(fileId, annotationId, AnnotationStatus.APPROVED, dictionaryChanged, null); + addRedactionPersistenceService.updateModifiedDictionaries(fileId, annotationId, dictionaryChanged, null); addRedactionPersistenceService.softDelete(fileId, annotationId, OffsetDateTime.now()); } diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/RulesPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/RulesPersistenceService.java index 379842d4e..430190ae8 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/RulesPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/RulesPersistenceService.java @@ -71,7 +71,6 @@ public class RulesPersistenceService { import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualForceRedaction; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualRecategorization; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualLegalBasisChange; - import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; global Document document global EntityCreationService entityCreationService diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/AddRedactionPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/AddRedactionPersistenceService.java index c34c8c8fb..08526e56d 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/AddRedactionPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/AddRedactionPersistenceService.java @@ -17,7 +17,6 @@ import com.iqser.red.service.persistence.management.v1.processor.entity.annotati import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.annotationentity.ManualRedactionRepository; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AddRedactionRequest; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Rectangle; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualRedactionEntry; @@ -47,11 +46,13 @@ public class AddRedactionPersistenceService { } + public Optional findById(String annotationId, String fileId) { return manualRedactionRepository.findById(new AnnotationEntityId(annotationId, fileId)); } + private List convert(List positions) { List rectangleEntities = new ArrayList<>(); @@ -109,14 +110,6 @@ public class AddRedactionPersistenceService { manualRedactionRepository.updateSoftDelete(new AnnotationEntityId(annotationId, fileId), null); } - - @Transactional - public void updateStatus(String fileId, String annotationId, AnnotationStatus annotationStatus, OffsetDateTime processedDate) { - - manualRedactionRepository.updateStatus(new AnnotationEntityId(annotationId, fileId), annotationStatus, processedDate); - } - - @Transactional public void update(ManualRedactionEntryEntity manualRedactionEntry) { @@ -125,16 +118,11 @@ public class AddRedactionPersistenceService { @Transactional - public void updateStatus(String fileId, - String annotationId, - AnnotationStatus annotationStatus, - boolean isAddOrRemoveFromDictionary, - Set typeIdsOfModifiedDictionaries) { + public void updateModifiedDictionaries(String fileId, String annotationId, boolean isAddOrRemoveFromDictionary, Set typeIdsOfModifiedDictionaries) { ManualRedactionEntryEntity addRedaction = manualRedactionRepository.findById(new AnnotationEntityId(annotationId, fileId)) .orElseThrow(() -> new NotFoundException("Unknown file/annotation combination: " + fileId + "/" + annotationId)); - addRedaction.setStatus(annotationStatus); addRedaction.setAddToDictionary(isAddOrRemoveFromDictionary); addRedaction.setTypeIdsOfModifiedDictionaries(typeIdsOfModifiedDictionaries); @@ -142,13 +130,6 @@ public class AddRedactionPersistenceService { } - @Transactional - public void approveStatusForRequestedRedactionsWithSameValue(Set fileIds, String value) { - - manualRedactionRepository.updateStatus(fileIds, value, AnnotationStatus.REQUESTED, AnnotationStatus.APPROVED, OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS)); - } - - @Transactional public void markAsProcessed(ManualRedactionEntry e) { diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ForceRedactionPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ForceRedactionPersistenceService.java index ee72380f9..eeffc9a79 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ForceRedactionPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ForceRedactionPersistenceService.java @@ -13,7 +13,6 @@ import com.iqser.red.service.persistence.management.v1.processor.entity.annotati import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualForceRedactionEntity; import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.annotationentity.ForceRedactionRepository; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ForceRedactionRequest; import lombok.RequiredArgsConstructor; @@ -37,13 +36,6 @@ public class ForceRedactionPersistenceService { } - @Transactional - public void updateStatus(String fileId, String annotationId, AnnotationStatus annotationStatus) { - - forceRedactionRepository.updateStatus(new AnnotationEntityId(annotationId, fileId), annotationStatus); - } - - @Transactional public void hardDelete(String fileId, String annotationId) { diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/LegalBasisChangePersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/LegalBasisChangePersistenceService.java index 51a82bc34..a670604ce 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/LegalBasisChangePersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/LegalBasisChangePersistenceService.java @@ -15,7 +15,6 @@ import com.iqser.red.service.persistence.management.v1.processor.entity.annotati import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException; import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.annotationentity.LegalBasisChangeRepository; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.LegalBasisChangeRequest; import lombok.RequiredArgsConstructor; @@ -72,13 +71,6 @@ public class LegalBasisChangePersistenceService { } - @Transactional - public void updateStatus(String fileId, String annotationId, AnnotationStatus annotationStatus) { - - legalBasisChangeRepository.updateStatus(new AnnotationEntityId(annotationId, fileId), annotationStatus, OffsetDateTime.now()); - } - - public ManualLegalBasisChangeEntity findLegalBasisChange(String fileId, String annotationId) { return legalBasisChangeRepository.findByIdAndNotSoftDeleted(new AnnotationEntityId(annotationId, fileId)) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RecategorizationPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RecategorizationPersistenceService.java index 87a5eaf13..4bceae2bf 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RecategorizationPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RecategorizationPersistenceService.java @@ -13,7 +13,6 @@ import com.iqser.red.service.persistence.management.v1.processor.entity.annotati import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualRecategorizationEntity; import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.annotationentity.RecategorizationRepository; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.RecategorizationRequest; import lombok.RequiredArgsConstructor; @@ -39,24 +38,15 @@ public class RecategorizationPersistenceService { } - @Transactional - public void updateStatus(String fileId, String annotationId, AnnotationStatus annotationStatus) { - - recategorizationRepository.updateStatus(new AnnotationEntityId(annotationId, fileId), annotationStatus); - } - @Transactional - public void updateStatus(String fileId, - String annotationId, - AnnotationStatus annotationStatus, - Set typeIdsOfDictionaryWithAdd, - Set typeIdsOfDictionaryWithDelete) { + public void updateModifiedDictionaries(String fileId, + String annotationId, Set typeIdsOfDictionaryWithAdd, + Set typeIdsOfDictionaryWithDelete) { ManualRecategorizationEntity addRedaction = recategorizationRepository.findById(new AnnotationEntityId(annotationId, fileId)) .orElseThrow(() -> new NotFoundException("Unknown file/annotation combination: " + fileId + "/" + annotationId)); - addRedaction.setStatus(annotationStatus); addRedaction.setTypeIdsOfDictionariesWithAdd(typeIdsOfDictionaryWithAdd); addRedaction.setTypeIdsOfDictionariesWithDelete(typeIdsOfDictionaryWithDelete); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RemoveRedactionPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RemoveRedactionPersistenceService.java index 446338865..2b783c6c8 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RemoveRedactionPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/RemoveRedactionPersistenceService.java @@ -14,7 +14,6 @@ import com.iqser.red.service.persistence.management.v1.processor.entity.annotati import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.IdRemovalEntity; import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.annotationentity.RemoveRedactionRepository; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.RemoveRedactionRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.IdRemoval; @@ -88,23 +87,11 @@ public class RemoveRedactionPersistenceService { @Transactional - public void updateStatus(String fileId, String annotationId, AnnotationStatus annotationStatus) { - - removeRedactionRepository.updateStatus(new AnnotationEntityId(annotationId, fileId), annotationStatus); - } - - - @Transactional - public void updateStatus(String fileId, - String annotationId, - AnnotationStatus annotationStatus, - boolean isAddOrRemoveFromDictionary, - Set typeIdsOfModifiedDictionaries) { + public void updateModifiedDictionaries(String fileId, String annotationId, boolean isAddOrRemoveFromDictionary, Set typeIdsOfModifiedDictionaries) { var idRemoval = removeRedactionRepository.findByIdAndNotSoftDeleted(new AnnotationEntityId(annotationId, fileId)) .orElseThrow(() -> new NotFoundException("Unknown file/annotation combination: " + fileId + "/" + annotationId)); - idRemoval.setStatus(annotationStatus); idRemoval.setRemoveFromDictionary(isAddOrRemoveFromDictionary); idRemoval.setTypeIdsOfModifiedDictionaries(typeIdsOfModifiedDictionaries); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ResizeRedactionPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ResizeRedactionPersistenceService.java index 5e2a3288f..ab9841fd3 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ResizeRedactionPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/annotations/ResizeRedactionPersistenceService.java @@ -15,7 +15,6 @@ import com.iqser.red.service.persistence.management.v1.processor.entity.annotati import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.RectangleEntity; import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.annotationentity.ResizeRedactionRepository; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ResizeRedactionRequest; import com.knecon.fforesight.databasetenantcommons.providers.utils.MagicConverter; @@ -51,12 +50,11 @@ public class ResizeRedactionPersistenceService { @Transactional - public void updateStatus(String fileId, String annotationId, AnnotationStatus annotationStatus, Set typeIdsOfModifiedDictionaries) { + public void updateModifiedDictionaries(String fileId, String annotationId, Set typeIdsOfModifiedDictionaries) { var resizeRedaction = resizeRedactionRepository.findById(new AnnotationEntityId(annotationId, fileId)) .orElseThrow(() -> new NotFoundException("Unknown file/annotation combination: " + fileId + "/" + annotationId)); - resizeRedaction.setStatus(annotationStatus); resizeRedaction.setTypeIdsOfModifiedDictionaries(typeIdsOfModifiedDictionaries); } @@ -106,9 +104,9 @@ public class ResizeRedactionPersistenceService { } - public List findByAnnotationStatusAndValue(AnnotationStatus status, String value) { + public List findByValue(String value) { - return resizeRedactionRepository.findByStatusAndValue(status, value); + return resizeRedactionRepository.findByValue(value); } diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ForceRedactionRepository.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ForceRedactionRepository.java index 14b1d3b4a..50660ac5b 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ForceRedactionRepository.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ForceRedactionRepository.java @@ -11,27 +11,26 @@ import org.springframework.data.repository.query.Param; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.AnnotationEntityId; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualForceRedactionEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; public interface ForceRedactionRepository extends JpaRepository, AnnotationEntityRepository { - @Modifying(clearAutomatically = true) - @Query("update ManualForceRedactionEntity mfr set mfr.status = :annotationStatus where mfr.id = :annotationEntityId") - void updateStatus(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("annotationStatus") AnnotationStatus annotationStatus); - @Modifying @Query("update ManualForceRedactionEntity mfr set mfr.softDeletedTime = :softDeletedTime where mfr.id = :annotationEntityId") void updateSoftDelete(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("softDeletedTime") OffsetDateTime softDeletedTime); + @Query("select mfr from ManualForceRedactionEntity mfr where mfr.id = :annotationEntityId and mfr.softDeletedTime is null") Optional findByIdAndNotSoftDeleted(@Param("annotationEntityId") AnnotationEntityId annotationEntityId); + @Query("select mfr from ManualForceRedactionEntity mfr where mfr.id.fileId = :fileId and (:includeDeletions = true or mfr.softDeletedTime is null)") List findByFileIdIncludeDeletions(@Param("fileId") String fileId, @Param("includeDeletions") boolean includeDeletions); + @Query("select mfr from ManualForceRedactionEntity mfr where mfr.id.fileId = :fileId and mfr.processedDate is null") List findByFileIdAndUnprocessed(@Param("fileId") String fileId); + @Modifying @Query("update ManualForceRedactionEntity mfr set mfr.processedDate = :processedDate where mfr.id = :annotationEntityId") void markAsProcessed(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("processedDate") OffsetDateTime processedDate); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/LegalBasisChangeRepository.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/LegalBasisChangeRepository.java index c6ed08278..74f992a59 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/LegalBasisChangeRepository.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/LegalBasisChangeRepository.java @@ -11,27 +11,26 @@ import org.springframework.data.repository.query.Param; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.AnnotationEntityId; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualLegalBasisChangeEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; public interface LegalBasisChangeRepository extends JpaRepository, AnnotationEntityRepository { - @Modifying(clearAutomatically = true) - @Query("update ManualLegalBasisChangeEntity mlbc set mlbc.status = :annotationStatus, mlbc.processedDate = :processedDate where mlbc.id = :annotationEntityId") - void updateStatus(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("annotationStatus") AnnotationStatus annotationStatus, @Param("processedDate") OffsetDateTime processedDate); - @Modifying @Query("update ManualLegalBasisChangeEntity mlbc set mlbc.softDeletedTime = :softDeletedTime where mlbc.id = :annotationEntityId") void updateSoftDelete(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("softDeletedTime") OffsetDateTime softDeletedTime); + @Query("select mlbc from ManualLegalBasisChangeEntity mlbc where mlbc.id = :annotationEntityId and mlbc.softDeletedTime is null") Optional findByIdAndNotSoftDeleted(@Param("annotationEntityId") AnnotationEntityId annotationEntityId); + @Query("select mlbc from ManualLegalBasisChangeEntity mlbc where mlbc.id.fileId = :fileId and (:includeDeletions = true or mlbc.softDeletedTime is null)") List findByFileIdIncludeDeletions(@Param("fileId") String fileId, @Param("includeDeletions") boolean includeDeletions); + @Query("select mlbc from ManualLegalBasisChangeEntity mlbc where mlbc.id.fileId = :fileId and mlbc.processedDate is null") List findUnprocessedByFileId(@Param("fileId") String fileId); + @Modifying @Query("update ManualLegalBasisChangeEntity mlbc set mlbc.processedDate = :processedDate where mlbc.id = :annotationEntityId") void markAsProcessed(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("processedDate") OffsetDateTime processedDate); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ManualRedactionRepository.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ManualRedactionRepository.java index 857dd50a8..35594e827 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ManualRedactionRepository.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ManualRedactionRepository.java @@ -3,7 +3,6 @@ package com.iqser.red.service.persistence.management.v1.processor.service.persis import java.time.OffsetDateTime; import java.util.List; import java.util.Optional; -import java.util.Set; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Modifying; @@ -12,7 +11,6 @@ import org.springframework.data.repository.query.Param; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.AnnotationEntityId; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualRedactionEntryEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; public interface ManualRedactionRepository extends JpaRepository, AnnotationEntityRepository { @@ -20,26 +18,24 @@ public interface ManualRedactionRepository extends JpaRepository findAddRedaction(@Param("id") AnnotationEntityId id); + @Query("select m from ManualRedactionEntryEntity m where m.id.fileId = :fileId and (:includeDeletions = true or m.softDeletedTime is null)") List findByFileIdIncludeDeletions(@Param("fileId") String fileId, @Param("includeDeletions") boolean includeDeletions); + @Query("select m from ManualRedactionEntryEntity m where m.id.fileId = :fileId and m.processedDate is null") List findByFileIdAndUnprocessed(@Param("fileId") String fileId); - @Modifying - @Query("update ManualRedactionEntryEntity m set m.status = :newStatus, m.processedDate = :processedDate where m.id.fileId in :fileIds and m.value = :filterValue and m.addToDictionary = true and m.status = :filterStatus") - void updateStatus(@Param("fileIds") Set fileIds, @Param("filterValue") String filterValue, @Param("filterStatus") AnnotationStatus filterStatus, @Param("newStatus") AnnotationStatus newStatus, @Param("processedDate") OffsetDateTime processedDate); @Modifying @Query("update ManualRedactionEntryEntity m set m.processedDate = :processedDate where m.id = :annotationEntityId") diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RecategorizationRepository.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RecategorizationRepository.java index 23b0c72b7..468b6a068 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RecategorizationRepository.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RecategorizationRepository.java @@ -11,14 +11,9 @@ import org.springframework.data.repository.query.Param; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.AnnotationEntityId; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualRecategorizationEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; public interface RecategorizationRepository extends JpaRepository, AnnotationEntityRepository { - @Modifying(clearAutomatically = true) - @Query("update ManualRecategorizationEntity mir set mir.status = :annotationStatus where mir.id = :annotationEntityId") - void updateStatus(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("annotationStatus") AnnotationStatus annotationStatus); - @Modifying @Query("update ManualRecategorizationEntity mir set mir.softDeletedTime = :softDeletedTime where mir.id = :annotationEntityId") void updateSoftDelete(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("softDeletedTime") OffsetDateTime softDeletedTime); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RemoveRedactionRepository.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RemoveRedactionRepository.java index afc950ac1..554f5c104 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RemoveRedactionRepository.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/RemoveRedactionRepository.java @@ -11,7 +11,6 @@ import org.springframework.data.repository.query.Param; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.AnnotationEntityId; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.IdRemovalEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; public interface RemoveRedactionRepository extends JpaRepository, AnnotationEntityRepository { @@ -19,10 +18,6 @@ public interface RemoveRedactionRepository extends JpaRepository findByIdAndNotSoftDeleted(@Param("annotationEntityId") AnnotationEntityId annotationEntityId); diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ResizeRedactionRepository.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ResizeRedactionRepository.java index a11ff40de..8f954bf9c 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ResizeRedactionRepository.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/annotationentity/ResizeRedactionRepository.java @@ -11,32 +11,33 @@ import org.springframework.data.repository.query.Param; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.AnnotationEntityId; import com.iqser.red.service.persistence.management.v1.processor.entity.annotations.ManualResizeRedactionEntity; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; public interface ResizeRedactionRepository extends JpaRepository, AnnotationEntityRepository { - @Modifying(clearAutomatically = true) - @Query("update ManualResizeRedactionEntity mrd set mrd.status = :annotationStatus, mrd.processedDate = :processedDate where mrd.id = :annotationEntityId") - void updateStatus(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("annotationStatus") AnnotationStatus annotationStatus, @Param("processedDate") OffsetDateTime processedDate); - @Modifying @Query("update ManualResizeRedactionEntity mrd set mrd.softDeletedTime = :softDeletedTime where mrd.id = :annotationEntityId") void updateSoftDelete(@Param("annotationEntityId") AnnotationEntityId annotationEntityId, @Param("softDeletedTime") OffsetDateTime softDeletedTime); + @Query("select mrd from ManualResizeRedactionEntity mrd where mrd.id = :annotationEntityId and mrd.softDeletedTime is null") Optional findByIdAndNotSoftDeleted(@Param("annotationEntityId") AnnotationEntityId annotationEntityId); + @Query("select mrd from ManualResizeRedactionEntity mrd where mrd.id.fileId = :fileId and (:includeDeletions = true or mrd.softDeletedTime is null)") List findByFileIdIncludeDeletions(@Param("fileId") String fileId, @Param("includeDeletions") boolean includeDeletions); + @Query("select mrd from ManualResizeRedactionEntity mrd where mrd.id.fileId = :fileId and mrd.processedDate is null") List findUnprocessedByFileId(@Param("fileId") String fileId); + @Modifying @Query("update ManualResizeRedactionEntity m set m.textBefore = :textBefore, m.textAfter = :textAfter where m.id = :id") void updateSurroundingText(@Param("id") AnnotationEntityId id, @Param("textBefore") String textBefore, @Param("textAfter") String textAfter); - List findByStatusAndValue(@Param("status") AnnotationStatus status, @Param("value") String value); + + List findByValue(@Param("value") String value); + @Modifying @Query("update ManualResizeRedactionEntity mir set mir.processedDate = :processedDate where mir.id = :annotationEntityId") diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/resources/db/changelog/db.changelog-tenant.yaml b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/db/changelog/db.changelog-tenant.yaml index c0bff56a1..0ae66685f 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/resources/db/changelog/db.changelog-tenant.yaml +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/db/changelog/db.changelog-tenant.yaml @@ -177,3 +177,5 @@ databaseChangeLog: file: db/changelog/tenant/117-add-download-status-error-cause.yaml - include: file: db/changelog/tenant/117-add-last-flag-calculation-date-to-file.yaml + - include: + file: db/changelog/tenant/118-delete-unapproved-manual-changes-and-drop-column-status.yaml diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/resources/db/changelog/tenant/118-delete-unapproved-manual-changes-and-drop-column-status.yaml b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/db/changelog/tenant/118-delete-unapproved-manual-changes-and-drop-column-status.yaml new file mode 100644 index 000000000..9a5715626 --- /dev/null +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/db/changelog/tenant/118-delete-unapproved-manual-changes-and-drop-column-status.yaml @@ -0,0 +1,156 @@ +databaseChangeLog: + - changeSet: + id: modify_fk_constraints_of_manual_changes_to_cascade_delete + author: kilian + changes: + - dropForeignKeyConstraint: + baseTableName: id_removal_entity_type_ids_of_modified_dictionaries # id_removal -> modified dictionaries + constraintName: fk64e6qfq7tqad3lknqmqpzzz + - dropForeignKeyConstraint: + baseTableName: manual_recategorization_type_ids_of_dictionaries_with_add # recategorization -> modified dictionaries (add) + constraintName: fk_manual_recategorization_to_dictionary_add + - dropForeignKeyConstraint: + baseTableName: manual_recategorization_type_ids_of_dictionaries_with_delete # recategorization -> modified dictionaries (delete) + constraintName: fk_manual_recategorization_to_dictionary_delete + - dropForeignKeyConstraint: + baseTableName: manual_redaction_entry_entity_positions # manual_redaction -> positions + constraintName: fkol1r7vwjc1uvu36p5ju7cj28h + - dropForeignKeyConstraint: + baseTableName: manual_redaction_entry_entity_type_ids_of_modified_dictionaries # manual_redaction -> modified dictionaries + constraintName: fk64e6qfq7tqad3lknqmqpzaa + - dropForeignKeyConstraint: + baseTableName: manual_resize_redaction_entity_positions # resize -> positions + constraintName: fkf0yltiuicrfxj62kbnq5fi5c8 + - dropForeignKeyConstraint: + baseTableName: manual_resize_redaction_entity_type_ids_of_modified_dictionarie # resize -> modified dictionaries + constraintName: fk_resize_entity_annotation_id_file_id_for_type_ids_of_modified + + + - changeSet: + id: modify_fk_constraints_of_manual_changes_to_cascade_delete_2 + author: kilian + changes: + - addForeignKeyConstraint: # id_removal -> modified dictionaries + constraintName: FK_id_removal_entity_type_ids + baseTableName: id_removal_entity_type_ids_of_modified_dictionaries + baseColumnNames: id_removal_entity_annotation_id, id_removal_entity_file_id + referencedTableName: id_removal + referencedColumnNames: annotation_id, file_id + deferrable: false + initiallyDeferred: false + onDelete: CASCADE + onUpdate: CASCADE + validate: true + - addForeignKeyConstraint: # recategorization -> modified dictionaries (add) + constraintName: fk_manual_recategorization_to_dictionary_add + baseTableName: manual_recategorization_type_ids_of_dictionaries_with_add + baseColumnNames: manual_recategorization_entity_annotation_id, manual_recategorization_entity_file_id + referencedTableName: manual_recategorization + referencedColumnNames: annotation_id, file_id + deferrable: false + initiallyDeferred: false + onDelete: CASCADE + onUpdate: CASCADE + validate: true + - addForeignKeyConstraint: # recategorization -> modified dictionaries (delete) + constraintName: fk_manual_recategorization_to_dictionary_delete + baseTableName: manual_recategorization_type_ids_of_dictionaries_with_delete + baseColumnNames: manual_recategorization_entity_annotation_id, manual_recategorization_entity_file_id + referencedTableName: manual_recategorization + referencedColumnNames: annotation_id, file_id + deferrable: false + initiallyDeferred: false + onDelete: CASCADE + onUpdate: CASCADE + validate: true + - addForeignKeyConstraint: + constraintName: fk_manual_redaction_to_positions # manual_redaction -> positions + baseTableName: manual_redaction_entry_entity_positions + baseColumnNames: manual_redaction_entry_entity_annotation_id, manual_redaction_entry_entity_file_id + referencedTableName: manual_redaction + referencedColumnNames: annotation_id, file_id + deferrable: false + initiallyDeferred: false + onDelete: CASCADE + onUpdate: CASCADE + validate: true + - addForeignKeyConstraint: + constraintName: fk_manual_redaction_to_dictionaries # manual_redaction -> modified dictionaries + baseTableName: manual_redaction_entry_entity_type_ids_of_modified_dictionaries + baseColumnNames: manual_redaction_entry_entity_annotation_id, manual_redaction_entry_entity_file_id + referencedTableName: manual_redaction + referencedColumnNames: annotation_id, file_id + deferrable: false + initiallyDeferred: false + onDelete: CASCADE + onUpdate: CASCADE + validate: true + - addForeignKeyConstraint: + constraintName: fk_manual_resize_to_positions # manual resize -> positions + baseTableName: manual_resize_redaction_entity_positions + baseColumnNames: manual_resize_redaction_entity_annotation_id, manual_resize_redaction_entity_file_id + referencedTableName: manual_resize_redaction + referencedColumnNames: annotation_id, file_id + deferrable: false + initiallyDeferred: false + onDelete: CASCADE + onUpdate: CASCADE + validate: true + - addForeignKeyConstraint: + constraintName: fk_manual_resize_to_dictionaries # manual resize -> modified dictionaries + baseTableName: manual_resize_redaction_entity_type_ids_of_modified_dictionarie + baseColumnNames: manual_resize_redaction_entity_annotation_id, manual_resize_redaction_entity_file_id + referencedTableName: manual_resize_redaction + referencedColumnNames: annotation_id, file_id + deferrable: false + initiallyDeferred: false + onDelete: CASCADE + onUpdate: CASCADE + validate: true + + + - changeSet: + id: delete-unapproved-manual-changes + author: kilian + changes: + - delete: + tableName: manual_redaction + where: "status != 'APPROVED'" + - delete: + tableName: manual_force_redaction + where: "status != 'APPROVED'" + - delete: + tableName: manual_recategorization + where: "status != 'APPROVED'" + - delete: + tableName: manual_legal_basis_change + where: "status != 'APPROVED'" + - delete: + tableName: manual_resize_redaction + where: "status != 'APPROVED'" + - delete: + tableName: id_removal + where: "status != 'APPROVED'" + + - changeSet: + id: remove-status-column + author: kilian + changes: + - dropColumn: + tableName: manual_redaction + columnName: status + - dropColumn: + tableName: manual_force_redaction + columnName: status + - dropColumn: + tableName: manual_recategorization + columnName: status + - dropColumn: + tableName: manual_legal_basis_change + columnName: status + - dropColumn: + tableName: manual_resize_redaction + columnName: status + - dropColumn: + tableName: id_removal + columnName: status diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AddRedactionRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AddRedactionRequest.java index e720bbc24..ee473a371 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AddRedactionRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AddRedactionRequest.java @@ -24,7 +24,6 @@ public class AddRedactionRequest implements ManualRequestWithAddToDictionary { private boolean addToDictionary; private boolean addToAllDossiers; private DictionaryEntryType dictionaryEntryType; - private AnnotationStatus status; private String section; private boolean rectangle; private String sourceId; diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AnnotationStatus.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AnnotationStatus.java index 29841005c..935542f7e 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AnnotationStatus.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/AnnotationStatus.java @@ -1,6 +1,8 @@ package com.iqser.red.service.persistence.service.v1.api.shared.model.annotations; +@Deprecated(forRemoval = true) public enum AnnotationStatus { + REQUESTED, APPROVED, DECLINED diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/BaseManualRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/BaseManualRequest.java index 675df57e1..55f187931 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/BaseManualRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/BaseManualRequest.java @@ -2,12 +2,4 @@ package com.iqser.red.service.persistence.service.v1.api.shared.model.annotation public interface BaseManualRequest { - AnnotationStatus getStatus(); - - - default boolean isApproved() { - - return getStatus().equals(AnnotationStatus.APPROVED); - } - } diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ForceRedactionRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ForceRedactionRequest.java index c84ff57c2..567ea61d8 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ForceRedactionRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ForceRedactionRequest.java @@ -9,11 +9,10 @@ import lombok.NoArgsConstructor; @Builder @AllArgsConstructor @NoArgsConstructor -public class ForceRedactionRequest implements BaseManualRequest { +public class ForceRedactionRequest { private String annotationId; private String user; - private AnnotationStatus status; private String legalBasis; private String comment; private int page; diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/LegalBasisChangeRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/LegalBasisChangeRequest.java index 2e04f8c00..881a9b943 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/LegalBasisChangeRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/LegalBasisChangeRequest.java @@ -13,7 +13,6 @@ public class LegalBasisChangeRequest { private String annotationId; private String user; - private AnnotationStatus status; private String legalBasis; private String comment; private int page; diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithAddToDictionary.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithAddToDictionary.java index fd3c3f4ab..4c42146dc 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithAddToDictionary.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithAddToDictionary.java @@ -2,7 +2,7 @@ package com.iqser.red.service.persistence.service.v1.api.shared.model.annotation import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.type.DictionaryEntryType; -public interface ManualRequestWithAddToDictionary extends BaseManualRequest { +public interface ManualRequestWithAddToDictionary { String getValue(); diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithRemoveFromDictionary.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithRemoveFromDictionary.java index c56a8888e..1781cdb07 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithRemoveFromDictionary.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ManualRequestWithRemoveFromDictionary.java @@ -2,22 +2,23 @@ package com.iqser.red.service.persistence.service.v1.api.shared.model.annotation import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.type.DictionaryEntryType; -public interface ManualRequestWithRemoveFromDictionary extends BaseManualRequest { +public interface ManualRequestWithRemoveFromDictionary { String getAnnotationId(); String getValue(); + String getTypeToRemove(); + String getDossierTemplateId(); + String getDossierId(); - - DictionaryEntryType getDictionaryEntryType(); diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RecategorizationRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RecategorizationRequest.java index e28a10f7d..5ff1a232a 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RecategorizationRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RecategorizationRequest.java @@ -19,7 +19,6 @@ public class RecategorizationRequest implements ManualRequestWithAddToDictionary String annotationId; String user; String value; - AnnotationStatus status; String typeToRemove; String dossierTemplateId; String dossierId; diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/Rectangle.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/Rectangle.java index e7f4394f6..6f7d607bf 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/Rectangle.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/Rectangle.java @@ -1,5 +1,6 @@ package com.iqser.red.service.persistence.service.v1.api.shared.model.annotations; +import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualResizeRedaction; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.Point; import lombok.AllArgsConstructor; diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RemoveRedactionRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RemoveRedactionRequest.java index 7274d5b6e..462b8c5d0 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RemoveRedactionRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/RemoveRedactionRequest.java @@ -23,7 +23,6 @@ public class RemoveRedactionRequest implements ManualRequestWithRemoveFromDictio String dossierId; String dossierTemplateId; String typeToRemove; - AnnotationStatus status; boolean removeFromDictionary; boolean removeFromAllDossiers; String comment; diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ResizeRedactionRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ResizeRedactionRequest.java index ff3df9588..3fcf5792b 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ResizeRedactionRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/ResizeRedactionRequest.java @@ -12,11 +12,10 @@ import lombok.NoArgsConstructor; @Builder @AllArgsConstructor @NoArgsConstructor -public class ResizeRedactionRequest implements BaseManualRequest{ +public class ResizeRedactionRequest { private String annotationId; private String user; - private AnnotationStatus status; private String comment; private int page; private String value; diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/UpdateRedactionRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/UpdateRedactionRequest.java deleted file mode 100644 index 99efab2d4..000000000 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/UpdateRedactionRequest.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.iqser.red.service.persistence.service.v1.api.shared.model.annotations; - -import java.util.List; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class UpdateRedactionRequest { - - private List annotationIds; - private AnnotationStatus annotationStatus; - -} diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/entitymapped/BaseAnnotation.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/entitymapped/BaseAnnotation.java index 65e43eefe..6ffbf22e3 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/entitymapped/BaseAnnotation.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/annotations/entitymapped/BaseAnnotation.java @@ -2,6 +2,8 @@ package com.iqser.red.service.persistence.service.v1.api.shared.model.annotation import java.time.OffsetDateTime; +import org.checkerframework.checker.units.qual.A; + import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import lombok.AllArgsConstructor; @@ -20,15 +22,26 @@ public class BaseAnnotation { private String annotationId; private String fileId; private String user; - private AnnotationStatus status; private OffsetDateTime requestDate; private OffsetDateTime processedDate; private OffsetDateTime softDeletedTime; + @Deprecated(forRemoval = true) public boolean isApproved() { - return AnnotationStatus.APPROVED == status; + return true; } + + @Deprecated(forRemoval = true) + public AnnotationStatus getStatus() { + + return AnnotationStatus.APPROVED; + } + + + @Deprecated(forRemoval = true) + private final static AnnotationStatus status = AnnotationStatus.APPROVED; + } diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/redactionlog/RedactionLogEntry.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/redactionlog/RedactionLogEntry.java index cac7643d0..fa23711f8 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/redactionlog/RedactionLogEntry.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/redactionlog/RedactionLogEntry.java @@ -89,8 +89,7 @@ public class RedactionLogEntry { public boolean isManuallyRemoved() { - return manualChanges != null && manualChanges.stream() - .anyMatch(mc -> mc.getManualRedactionType() == ManualRedactionType.REMOVE_LOCALLY && mc.getAnnotationStatus() == AnnotationStatus.APPROVED); + return manualChanges != null && manualChanges.stream().anyMatch(mc -> mc.getManualRedactionType() == ManualRedactionType.REMOVE_LOCALLY); }