Merge branch 'RED-8313-dom' into 'master'
RED-8313: Add ignored entries as skipped in reports Closes RED-8313 See merge request redactmanager/redaction-report-service!51
This commit is contained in:
commit
b469182f2f
@ -100,96 +100,87 @@ public class EntityLogConverterService {
|
||||
List<ReportRedactionEntry> reportEntries = new ArrayList<>();
|
||||
|
||||
entityLog.getEntityLogEntry().forEach(entry -> {
|
||||
var isSkipped = entry.getState() != EntryState.APPLIED && !(entry.getEntryType().equals(EntryType.HINT) || entry.getState().equals(EntryState.IGNORED));
|
||||
|
||||
if (entry.getState() == EntryState.APPLIED || isSkipped) {
|
||||
if (entry.getState().equals(EntryState.REMOVED)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (lastChangeIsRemoved(entry.getChanges())) {
|
||||
return;
|
||||
}
|
||||
if (entry.getEntryType() == EntryType.HINT) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (entry.isExcluded()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (entry.isExcluded()) {
|
||||
return;
|
||||
}
|
||||
if (entry.getEntryType() == EntryType.RECOMMENDATION) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (entry.getEntryType() == EntryType.RECOMMENDATION) {
|
||||
return;
|
||||
}
|
||||
if (entry.getEntryType() == EntryType.FALSE_POSITIVE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (entry.getEntryType() == EntryType.FALSE_POSITIVE) {
|
||||
return;
|
||||
}
|
||||
if (!entry.getManualChanges().isEmpty() && (entry.getEntryType() == EntryType.IMAGE || entry.getEntryType() == EntryType.IMAGE_HINT) && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getProcessedDate() == null && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getManualRedactionType()
|
||||
.equals(ManualRedactionType.RECATEGORIZE)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (settings.getMaxRedactionEntryValueLength() > 0 && entry.getValue() != null && entry.getValue().length() > settings.getMaxRedactionEntryValueLength()) {
|
||||
entry.setValue(entry.getValue().substring(0, settings.getMaxRedactionEntryValueLength()) + "...");
|
||||
log.warn("Truncated value in dossier {}, file {} on pages {} to {} chars",
|
||||
dossierId,
|
||||
fileId,
|
||||
entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()),
|
||||
settings.getMaxRedactionEntryValueLength());
|
||||
}
|
||||
if (!entry.getManualChanges().isEmpty() && (entry.isDictionaryEntry() || entry.isDossierDictionaryEntry()) && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getProcessedDate() == null && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getManualRedactionType()
|
||||
.equals(ManualRedactionType.ADD_TO_DICTIONARY)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (settings.getMaxSectionLength() > 0 && entry.getSection() != null && entry.getSection().length() > settings.getMaxSectionLength()) {
|
||||
entry.setSection(entry.getSection().substring(0, settings.getMaxSectionLength()) + "...");
|
||||
log.warn("Truncated section in dossier {}, file {} on pages {} to {} chars",
|
||||
dossierId,
|
||||
fileId,
|
||||
entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()),
|
||||
settings.getMaxSectionLength());
|
||||
}
|
||||
if (settings.getMaxRedactionEntryValueLength() > 0 && entry.getValue() != null && entry.getValue().length() > settings.getMaxRedactionEntryValueLength()) {
|
||||
entry.setValue(entry.getValue().substring(0, settings.getMaxRedactionEntryValueLength()) + "...");
|
||||
log.warn("Truncated value in dossier {}, file {} on pages {} to {} chars",
|
||||
dossierId,
|
||||
fileId,
|
||||
entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()),
|
||||
settings.getMaxRedactionEntryValueLength());
|
||||
}
|
||||
|
||||
if (!entry.getManualChanges().isEmpty() && (entry.getEntryType() == EntryType.IMAGE || entry.getEntryType() == EntryType.IMAGE_HINT) && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getProcessedDate() == null && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getManualRedactionType()
|
||||
.equals(ManualRedactionType.RECATEGORIZE)) {
|
||||
return;
|
||||
}
|
||||
if (settings.getMaxSectionLength() > 0 && entry.getSection() != null && entry.getSection().length() > settings.getMaxSectionLength()) {
|
||||
entry.setSection(entry.getSection().substring(0, settings.getMaxSectionLength()) + "...");
|
||||
log.warn("Truncated section in dossier {}, file {} on pages {} to {} chars",
|
||||
dossierId,
|
||||
fileId,
|
||||
entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()),
|
||||
settings.getMaxSectionLength());
|
||||
}
|
||||
|
||||
if (!entry.getManualChanges().isEmpty() && (entry.isDictionaryEntry() || entry.isDossierDictionaryEntry()) && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getProcessedDate() == null && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getManualRedactionType()
|
||||
.equals(ManualRedactionType.ADD_TO_DICTIONARY)) {
|
||||
return;
|
||||
}
|
||||
Set<Integer> pages = new HashSet<>();
|
||||
for (Position position : entry.getPositions()) {
|
||||
|
||||
if (!entry.getManualChanges().isEmpty() && entry.getEntryType().equals(EntryType.HINT) && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getProcessedDate() == null && entry.getManualChanges()
|
||||
.get(entry.getManualChanges().size() - 1)
|
||||
.getManualRedactionType()
|
||||
.equals(ManualRedactionType.FORCE_REDACT)) {
|
||||
return;
|
||||
}
|
||||
|
||||
Set<Integer> pages = new HashSet<>();
|
||||
for (Position position : entry.getPositions()) {
|
||||
|
||||
if (pages.isEmpty() || !pages.contains(position.getPageNumber())) {
|
||||
pages.add(position.getPageNumber());
|
||||
reportEntries.add(new ReportRedactionEntry(position.getPageNumber(),
|
||||
position.x(),
|
||||
position.y(),
|
||||
getSection(entry, position),
|
||||
checkTextForNull(entry.getLegalBasis()) + " " + legalBasisMappings.stream()
|
||||
.filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis()))
|
||||
.findAny()
|
||||
.map(EntityLogLegalBasis::getDescription)
|
||||
.orElse(""),
|
||||
entry.getLegalBasis(),
|
||||
legalBasisMappings.stream()
|
||||
.filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis()))
|
||||
.findAny()
|
||||
.map(EntityLogLegalBasis::getDescription)
|
||||
.orElse(""),
|
||||
checkTextForNull(entry.getTextBefore()) + entry.getValue() + checkTextForNull(entry.getTextAfter()),
|
||||
determineValue(entry),
|
||||
mapOfEntityDisplayName.get(entry.getType()),
|
||||
isSkipped));
|
||||
}
|
||||
if (pages.isEmpty() || !pages.contains(position.getPageNumber())) {
|
||||
pages.add(position.getPageNumber());
|
||||
reportEntries.add(new ReportRedactionEntry(position.getPageNumber(),
|
||||
position.x(),
|
||||
position.y(),
|
||||
getSection(entry, position),
|
||||
checkTextForNull(entry.getLegalBasis()) + " " + legalBasisMappings.stream()
|
||||
.filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis()))
|
||||
.findAny()
|
||||
.map(EntityLogLegalBasis::getDescription)
|
||||
.orElse(""),
|
||||
entry.getLegalBasis(),
|
||||
legalBasisMappings.stream()
|
||||
.filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis()))
|
||||
.findAny()
|
||||
.map(EntityLogLegalBasis::getDescription)
|
||||
.orElse(""),
|
||||
checkTextForNull(entry.getTextBefore()) + entry.getValue() + checkTextForNull(entry.getTextAfter()),
|
||||
determineValue(entry),
|
||||
mapOfEntityDisplayName.get(entry.getType()),
|
||||
entry.getState() == EntryState.SKIPPED || entry.getState() == EntryState.IGNORED));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user