RED-9094 - Redaction skipped after changing only type + paragraph #478
@ -390,7 +390,7 @@ public class EntityLogMergeService {
|
||||
boolean isHint = isHint(recategorization.getType(), dossier);
|
||||
entityLogEntry.setType(recategorization.getType());
|
||||
entityLogEntry.setEntryType(getEntryType(isHint, recategorization.getType()));
|
||||
entityLogEntry.setState(EntryState.SKIPPED);
|
||||
entityLogEntry.setState(isHint ? EntryState.SKIPPED : EntryState.APPLIED);
|
||||
}
|
||||
|
||||
if (!Strings.isNullOrEmpty(recategorization.getLegalBasis())) {
|
||||
|
||||
@ -2782,4 +2782,64 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
||||
.get(0).getProcessedDate());
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testLocalRecategorizeADictBasedRedactionWithAnalysisStopped() { //RED-9094
|
||||
|
||||
var dossierTemplate = dossierTemplateTesterAndProvider.provideTestTemplate();
|
||||
var dossier = dossierTesterAndProvider.provideTestDossier(dossierTemplate);
|
||||
var file = fileTesterAndProvider.testAndProvideFile(dossier);
|
||||
|
||||
var type = typeProvider.testAndProvideType(dossierTemplate, "test", 100);
|
||||
var type2 = typeProvider.testAndProvideType(dossierTemplate, "test2", 101);
|
||||
dictionaryClient.addEntry(type.getType(), type.getDossierTemplateId(), List.of("Luke Skywalker"), false, dossier.getId(), DictionaryEntryType.ENTRY);
|
||||
var entityLog = new EntityLog(1,
|
||||
1,
|
||||
List.of(EntityLogEntry.builder()
|
||||
.id("AnnotationId")
|
||||
.type("test")
|
||||
.value("Luke Skywalker")
|
||||
.entryType(EntryType.ENTITY)
|
||||
.state(EntryState.APPLIED)
|
||||
.dictionaryEntry(true)
|
||||
.section("section")
|
||||
.legalBasis("Article legal basis")
|
||||
.build()),
|
||||
null,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0);
|
||||
fileManagementStorageService.saveEntityLog(dossier.getId(), file.getId(), entityLog);
|
||||
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
||||
|
||||
fileStatusPersistenceService.toggleAutomaticAnalysis(file.getFileId(), true);
|
||||
var loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
|
||||
assertThat(loadedFile.isExcludedFromAutomaticAnalysis()).isEqualTo(true);
|
||||
|
||||
ManualAddResponse response = manualRedactionClient.recategorizeBulk(dossier.getId(),
|
||||
file.getId(),
|
||||
Set.of(RecategorizationRequestModel.builder()
|
||||
.type(type2.getType())
|
||||
.annotationId("AnnotationId")
|
||||
.addToDictionary(false)
|
||||
.addToAllDossiers(false)
|
||||
.legalBasis("Article legal basis")
|
||||
.section("section")
|
||||
.value("Luke Skywalker")
|
||||
.build()),
|
||||
false)
|
||||
.get(0);
|
||||
|
||||
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
||||
assertEquals(response.getEntityLogEntry().getType(), type2.getType());
|
||||
assertEquals(response.getEntityLogEntry().getManualChanges()
|
||||
.get(0).getManualRedactionType(), ManualRedactionType.RECATEGORIZE);
|
||||
assertEquals(response.getEntityLogEntry().getManualChanges()
|
||||
.get(0).getPropertyChanges()
|
||||
.get("type"), type2.getType());
|
||||
assertNull(response.getEntityLogEntry().getManualChanges()
|
||||
.get(0).getProcessedDate());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user