Pull request #508: RED-4901: Return empty redactionLog for excluded files
Merge in RED/persistence-service from RED-4901 to master * commit '526111280facf86a459fc2d65f0096d295cadf92': RED-4901: Return empty redactionLog for excluded files
This commit is contained in:
commit
ebe540b7c8
@ -1,5 +1,13 @@
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
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.persistence.management.v1.processor.exception.NotFoundException;
|
||||
@ -9,14 +17,9 @@ import com.iqser.red.service.redaction.v1.model.RedactionLog;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionLogEntry;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionRequest;
|
||||
import com.iqser.red.service.redaction.v1.model.SectionGrid;
|
||||
|
||||
import feign.FeignException;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@ -30,13 +33,15 @@ public class RedactionLogService {
|
||||
private final DictionaryController dictionaryController;
|
||||
|
||||
|
||||
public RedactionLog getRedactionLog(String dossierId, String fileId, boolean withManualRedactions, boolean includeFalsePositives) {
|
||||
public RedactionLog getRedactionLog(String dossierId, String fileId, boolean withManualRedactions,
|
||||
boolean includeFalsePositives) {
|
||||
|
||||
return getRedactionLog(dossierId, fileId, null, withManualRedactions, includeFalsePositives);
|
||||
}
|
||||
|
||||
|
||||
public RedactionLog getRedactionLog(String dossierId, String fileId, List<String> excludedTypes, boolean withManualRedactions, boolean includeFalsePositives) {
|
||||
public RedactionLog getRedactionLog(String dossierId, String fileId, List<String> excludedTypes,
|
||||
boolean withManualRedactions, boolean includeFalsePositives) {
|
||||
|
||||
var fileStatus = fileStatusService.getStatus(fileId);
|
||||
|
||||
@ -71,6 +76,10 @@ public class RedactionLogService {
|
||||
redactionLog = fileManagementStorageService.getRedactionLog(dossierId, fileId);
|
||||
}
|
||||
|
||||
if (fileStatus.isExcluded()) {
|
||||
redactionLog.setRedactionLogEntry(new ArrayList<>());
|
||||
}
|
||||
|
||||
if (excludedTypes != null) {
|
||||
redactionLog.getRedactionLogEntry().removeIf(nextEntry -> excludedTypes.contains(nextEntry.getType()));
|
||||
}
|
||||
@ -85,7 +94,8 @@ public class RedactionLogService {
|
||||
}
|
||||
|
||||
|
||||
public RedactionLog getFilteredRedactionLog(String dossierId, String fileId, FilteredRedactionLogRequest filteredRedactionLogRequest) {
|
||||
public RedactionLog getFilteredRedactionLog(String dossierId, String fileId,
|
||||
FilteredRedactionLogRequest filteredRedactionLogRequest) {
|
||||
|
||||
if (filteredRedactionLogRequest.getSpecifiedDate() == null) {
|
||||
filteredRedactionLogRequest.setSpecifiedDate(OffsetDateTime.MIN);
|
||||
@ -99,19 +109,24 @@ public class RedactionLogService {
|
||||
var redactionLogEntry = it.next();
|
||||
boolean isAfterSpecifiedDate = false;
|
||||
for (var change : redactionLogEntry.getChanges()) {
|
||||
if (change.getDateTime() != null && change.getDateTime().isAfter(filteredRedactionLogRequest.getSpecifiedDate())) {
|
||||
if (change.getDateTime() != null && change.getDateTime()
|
||||
.isAfter(filteredRedactionLogRequest.getSpecifiedDate())) {
|
||||
isAfterSpecifiedDate = true;
|
||||
}
|
||||
}
|
||||
for (var manualChange : redactionLogEntry.getManualChanges()) {
|
||||
if (manualChange.getProcessedDate() != null && manualChange.getProcessedDate().isAfter(filteredRedactionLogRequest.getSpecifiedDate()) || manualChange.getRequestedDate() != null && manualChange.getRequestedDate().isAfter(filteredRedactionLogRequest.getSpecifiedDate())) {
|
||||
if (manualChange.getProcessedDate() != null && manualChange.getProcessedDate()
|
||||
.isAfter(filteredRedactionLogRequest.getSpecifiedDate()) || manualChange.getRequestedDate() != null && manualChange.getRequestedDate()
|
||||
.isAfter(filteredRedactionLogRequest.getSpecifiedDate())) {
|
||||
isAfterSpecifiedDate = true;
|
||||
}
|
||||
}
|
||||
var comments = redactionLogEntry.getComments();
|
||||
if (comments != null) {
|
||||
for (var comment : comments) {
|
||||
if (comment.getSoftDeletedTime() != null && comment.getSoftDeletedTime().isAfter(filteredRedactionLogRequest.getSpecifiedDate()) || comment.getDate() != null && comment.getDate().isAfter(filteredRedactionLogRequest.getSpecifiedDate())) {
|
||||
if (comment.getSoftDeletedTime() != null && comment.getSoftDeletedTime()
|
||||
.isAfter(filteredRedactionLogRequest.getSpecifiedDate()) || comment.getDate() != null && comment.getDate()
|
||||
.isAfter(filteredRedactionLogRequest.getSpecifiedDate())) {
|
||||
isAfterSpecifiedDate = true;
|
||||
}
|
||||
}
|
||||
@ -126,5 +141,4 @@ public class RedactionLogService {
|
||||
return redactionLog;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user