RED-3029: Fixed processedDate is not set for approved force redactions

This commit is contained in:
deiflaender 2021-12-14 09:38:48 +01:00
parent 1af0b2071b
commit 82cb289de9
3 changed files with 8 additions and 1 deletions

View File

@ -1,6 +1,7 @@
package com.iqser.red.service.persistence.management.v1.processor.service.persistence; package com.iqser.red.service.persistence.management.v1.processor.service.persistence;
import java.time.OffsetDateTime; import java.time.OffsetDateTime;
import java.time.temporal.ChronoUnit;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -32,6 +33,9 @@ public class ForceRedactionPersistenceService {
manualForceRedaction.setId(new AnnotationEntityId(forceRedactionRequest.getAnnotationId(), fileId)); manualForceRedaction.setId(new AnnotationEntityId(forceRedactionRequest.getAnnotationId(), fileId));
BeanUtils.copyProperties(forceRedactionRequest, manualForceRedaction); BeanUtils.copyProperties(forceRedactionRequest, manualForceRedaction);
manualForceRedaction.setRequestDate(OffsetDateTime.now()); manualForceRedaction.setRequestDate(OffsetDateTime.now());
if(manualForceRedaction.getStatus().equals(AnnotationStatus.APPROVED)) {
manualForceRedaction.setProcessedDate(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
}
forceRedactionRepository.save(manualForceRedaction); forceRedactionRepository.save(manualForceRedaction);
} }

View File

@ -3,6 +3,7 @@ package com.iqser.red.service.persistence.management.v1.processor.service.persis
import static com.iqser.red.service.persistence.management.v1.processor.utils.MagicConverter.convert; import static com.iqser.red.service.persistence.management.v1.processor.utils.MagicConverter.convert;
import java.time.OffsetDateTime; import java.time.OffsetDateTime;
import java.time.temporal.ChronoUnit;
import java.util.List; import java.util.List;
import javax.transaction.Transactional; import javax.transaction.Transactional;
@ -36,7 +37,7 @@ public class ResizeRedactionPersistenceService {
manualResizeRedaction.setPositions(convert(resizeRedactionRequest.getPositions(), RectangleEntity.class)); manualResizeRedaction.setPositions(convert(resizeRedactionRequest.getPositions(), RectangleEntity.class));
manualResizeRedaction.setRequestDate(OffsetDateTime.now()); manualResizeRedaction.setRequestDate(OffsetDateTime.now());
if(manualResizeRedaction.getStatus().equals(AnnotationStatus.APPROVED)) { if(manualResizeRedaction.getStatus().equals(AnnotationStatus.APPROVED)) {
manualResizeRedaction.setProcessedDate(OffsetDateTime.now()); manualResizeRedaction.setProcessedDate(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
} }
resizeRedactionRepository.save(manualResizeRedaction); resizeRedactionRepository.save(manualResizeRedaction);

View File

@ -291,6 +291,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
.build()); .build());
var loadedForceRedaction2 = manualRedactionClient.getForceRedaction(file.getId(), forceRedaction2.getAnnotationId()); var loadedForceRedaction2 = manualRedactionClient.getForceRedaction(file.getId(), forceRedaction2.getAnnotationId());
assertThat(loadedForceRedaction2.getStatus()).isEqualTo(AnnotationStatus.APPROVED); assertThat(loadedForceRedaction2.getStatus()).isEqualTo(AnnotationStatus.APPROVED);
assertThat(loadedForceRedaction2.getProcessedDate()).isNotNull();
manualRedactionClient.updateForceRedactionStatus(dossier.getId(), file.getId(), forceRedaction2.getAnnotationId(), JSONPrimitive.of(AnnotationStatus.REQUESTED)); manualRedactionClient.updateForceRedactionStatus(dossier.getId(), file.getId(), forceRedaction2.getAnnotationId(), JSONPrimitive.of(AnnotationStatus.REQUESTED));
loadedForceRedaction2 = manualRedactionClient.getForceRedaction(file.getId(), forceRedaction2.getAnnotationId()); loadedForceRedaction2 = manualRedactionClient.getForceRedaction(file.getId(), forceRedaction2.getAnnotationId());