force redact fix

This commit is contained in:
Timo Bejan 2021-12-06 14:10:59 +02:00
parent 68a9c93d54
commit ae52b2b4aa

View File

@ -215,7 +215,15 @@ public class ReanalyzeService {
if (!local && analyzeRequest.getManualRedactions() != null) {
var idsToRemove = analyzeRequest.getManualRedactions().getIdsToRemove().stream().map(IdRemoval::getId).collect(Collectors.toSet());
var approvedForceRedactions = analyzeRequest.getManualRedactions().getForceRedacts().stream().filter(fr -> fr.getStatus() == Status.APPROVED).collect(Collectors.toList());
// only approved id removals, that haven't been forced back afterwards
var idsToRemove = analyzeRequest.getManualRedactions().getIdsToRemove().stream()
.filter(idr -> idr.getStatus() == Status.APPROVED)
.filter(idr -> approvedForceRedactions.stream().noneMatch(forceRedact -> forceRedact.getRequestDate().isAfter(idr.getRequestDate())))
.map(IdRemoval::getId).collect(Collectors.toSet());
log.info("Removed Ids: {}", idsToRemove);
if (reanalysisSection.getImages() != null && !reanalysisSection.getImages().isEmpty() && analyzeRequest.getManualRedactions().getImageRecategorizations() != null) {
for (Image image : reanalysisSection.getImages()) {