RED-10146: Include defined components in component log

This commit is contained in:
Maverick Studer 2024-10-07 11:08:24 +02:00
parent 2ac82ab8e7
commit 4c79b8c2f4
2 changed files with 21 additions and 7 deletions

View File

@ -4,6 +4,7 @@ import static com.iqser.red.service.persistence.management.v1.processor.configur
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@ -17,6 +18,7 @@ import com.google.common.collect.Sets;
import com.iqser.red.service.pdftron.redaction.v1.api.model.ApplicationType;
import com.iqser.red.service.pdftron.redaction.v1.api.model.ProcessUntouchedDocumentRequest;
import com.iqser.red.service.persistence.management.v1.processor.configuration.MessagingConfiguration;
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.ComponentDefinitionEntity;
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileAttributeEntity;
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity;
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
@ -35,6 +37,7 @@ import com.iqser.red.service.persistence.management.v1.processor.service.layoutp
import com.iqser.red.service.persistence.management.v1.processor.service.layoutparsing.LayoutParsingRequestFactory;
import com.iqser.red.service.persistence.management.v1.processor.service.layoutparsing.QueueMessageIdentifierService;
import com.iqser.red.service.persistence.management.v1.processor.service.manualredactions.ManualRedactionProviderService;
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.ComponentDefinitionPersistenceService;
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierPersistenceService;
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierTemplatePersistenceService;
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.FileAttributeConfigPersistenceService;
@ -57,6 +60,7 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.BulkLocalRe
import com.iqser.red.service.persistence.service.v1.api.shared.model.FileAttribute;
import com.iqser.red.service.persistence.service.v1.api.shared.model.MessageType;
import com.iqser.red.service.persistence.service.v1.api.shared.model.NerServiceRequest;
import com.iqser.red.service.persistence.service.v1.api.shared.model.component.ComponentDefinition;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileErrorInfo;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileModel;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileType;
@ -109,9 +113,9 @@ public class FileStatusService {
FileManagementServiceSettings fileManagementServiceSettings;
LayoutParsingRequestFactory layoutParsingRequestFactory;
ComponentMappingService componentMappingService;
ComponentDefinitionPersistenceService componentDefinitionPersistenceService;
EntityLogMongoService entityLogMongoService;
ComponentLogMongoService componentLogMongoService;
ComponentLogService componentLogService;
WebsocketService websocketService;
@ -356,6 +360,7 @@ public class FileStatusService {
.sectionsToReanalyse(sectionsToReanalyse)
.fileId(fileId)
.manualRedactions(manualRedactionProviderService.getManualRedactions(fileId, ManualChangesQueryOptions.allWithoutDeleted()))
.componentDefinitions(convertComponentDefinitions(componentDefinitionPersistenceService.findByDossierTemplateIdAndNotSoftDeleted(dossierTemplate.getId())))
.componentMappings(componentMappingService.getMetaDataByDossierTemplateId(dossierTemplate.getId()))
.dossierTemplateId(dossier.getDossierTemplateId())
.lastProcessed(fileModel.getLastProcessed())
@ -615,6 +620,15 @@ public class FileStatusService {
}
private List<ComponentDefinition> convertComponentDefinitions(List<ComponentDefinitionEntity> componentDefinitionEntities) {
return componentDefinitionEntities.stream()
.map(entity -> MagicConverter.convert(entity, ComponentDefinition.class))
.sorted(Comparator.comparingInt(ComponentDefinition::getRank))
.collect(Collectors.toList());
}
public List<FileAttribute> convertAttributes(List<FileAttributeEntity> fileAttributes, String dossierTemplateId) {
List<FileAttribute> fileAttributeList = new ArrayList<>();
@ -735,12 +749,7 @@ public class FileStatusService {
@Transactional
public void setStatusReprocess(String dossierId,
String fileId,
boolean priority,
Set<Integer> sectionsToReanalyse,
boolean triggeredManually,
AnalysisType analysisType) {
public void setStatusReprocess(String dossierId, String fileId, boolean priority, Set<Integer> sectionsToReanalyse, boolean triggeredManually, AnalysisType analysisType) {
log.info("Reprocessing file: {} from dossier {}", fileId, dossierId);
@ -767,6 +776,7 @@ public class FileStatusService {
setStatusReprocess(dossierId, fileId, priority, Sets.newHashSet(), false, AnalysisType.MANUAL_REDACTION_REANALYZE);
}
@Transactional
public void setStatusReprocessForComponentsOnly(String dossierId, String fileId, boolean priority) {

View File

@ -7,6 +7,7 @@ import java.util.List;
import java.util.Set;
import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRedactions;
import com.iqser.red.service.persistence.service.v1.api.shared.model.component.ComponentDefinition;
import com.iqser.red.service.persistence.service.v1.api.shared.model.component.ComponentMappingMetadata;
import lombok.AllArgsConstructor;
@ -38,6 +39,9 @@ public class AnalyzeRequest {
@Builder.Default
private List<ComponentMappingMetadata> componentMappings = new ArrayList<>();
@Builder.Default
private List<ComponentDefinition> componentDefinitions = new ArrayList<>();
private BulkLocalRequest bulkLocalRequest;
}