Merge branch 'RED-9180-layout' into 'release/2.262.x'
RED-9180 - Also trigger a layout parsing when migrating non approved files See merge request redactmanager/persistence-service!501
This commit is contained in:
commit
f02f70ea39
@ -1,17 +1,21 @@
|
||||
package com.iqser.red.service.persistence.management.v1.processor.migration;
|
||||
|
||||
import static com.knecon.fforesight.service.layoutparser.internal.api.queue.LayoutParsingQueueNames.LAYOUT_PARSING_REQUEST_QUEUE;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.springframework.amqp.rabbit.core.RabbitTemplate;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.DossierEntity;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.ReanalysisService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.layoutparsing.LayoutParsingRequestFactory;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.DossierRepository;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.FileRepository;
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.WorkflowStatus;
|
||||
import com.knecon.fforesight.service.layoutparser.internal.api.queue.LayoutParsingRequest;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@ -23,17 +27,29 @@ public class ReanalyzeNonApprovedFilesService {
|
||||
private final FileRepository fileRepository;
|
||||
private final ReanalysisService reanalysisService;
|
||||
|
||||
private final LayoutParsingRequestFactory layoutParsingRequestFactory;
|
||||
private final RabbitTemplate rabbitTemplate;
|
||||
|
||||
|
||||
public void reanalyzeNonApprovedFiles() {
|
||||
|
||||
List<DossierEntity> dossierEntities = dossierRepository.findAll();
|
||||
dossierEntities.stream().filter(dossier -> !dossier.isDeleted()).forEach(dossierEntity -> {
|
||||
Set<String> unapprovedFilesByDossierIds = fileRepository.findByDossierIdAndWorkflowStatusNotApproved(dossierEntity.getId()).stream()
|
||||
.filter(fileEntity -> !fileEntity.isSoftOrHardDeleted())
|
||||
.map(FileEntity::getId)
|
||||
.collect(Collectors.toSet());
|
||||
reanalysisService.reanalyzeFiles(dossierEntity.getId(), unapprovedFilesByDossierIds, true);
|
||||
});
|
||||
dossierEntities.stream()
|
||||
.filter(dossier -> !dossier.isDeleted())
|
||||
.forEach(dossierEntity -> {
|
||||
Set<String> unapprovedFilesByDossierIds = fileRepository.findByDossierIdAndWorkflowStatusNotApproved(dossierEntity.getId())
|
||||
.stream()
|
||||
.filter(fileEntity -> !fileEntity.isSoftOrHardDeleted())
|
||||
.map(FileEntity::getId)
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
unapprovedFilesByDossierIds.forEach(id -> {
|
||||
LayoutParsingRequest layoutParsingRequest = layoutParsingRequestFactory.build(dossierEntity.getId(), id, false);
|
||||
rabbitTemplate.convertAndSend(LAYOUT_PARSING_REQUEST_QUEUE, layoutParsingRequest);
|
||||
});
|
||||
|
||||
reanalysisService.reanalyzeFiles(dossierEntity.getId(), unapprovedFilesByDossierIds, true);
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user