RED-4680: Enhance FileStatus even if dossier is deleted
This commit is contained in:
parent
26c99bbabb
commit
fc93015dfb
@ -1,5 +1,16 @@
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import static com.iqser.red.service.peristence.v1.server.service.ReanalysisRequiredStatusService.VersionType.DICTIONARY;
|
||||
import static com.iqser.red.service.peristence.v1.server.service.ReanalysisRequiredStatusService.VersionType.LEGAL_BASIS;
|
||||
import static com.iqser.red.service.peristence.v1.server.service.ReanalysisRequiredStatusService.VersionType.RULES;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
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.exception.DossierNotFoundException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DictionaryPersistenceService;
|
||||
@ -8,18 +19,11 @@ import com.iqser.red.service.persistence.management.v1.processor.service.persist
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.RulesPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.dossier.file.FileModel;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.dossier.file.ProcessingStatus;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static com.iqser.red.service.peristence.v1.server.service.ReanalysisRequiredStatusService.VersionType.*;
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@ -68,7 +72,7 @@ public class ReanalysisRequiredStatusService {
|
||||
// enhance with dossierTemplateId
|
||||
DossierEntity dossier;
|
||||
try {
|
||||
dossier = dossierMap.computeIfAbsent(fileStatus.getDossierId(), k -> dossierPersistenceService.getAndValidateDossier(fileStatus.getDossierId()));
|
||||
dossier = dossierMap.computeIfAbsent(fileStatus.getDossierId(), k -> dossierPersistenceService.findByDossierId(fileStatus.getDossierId()));
|
||||
} catch (DossierNotFoundException e) {
|
||||
log.info("Dossier {} was not found, thus analysis is not required", fileStatus.getDossierId());
|
||||
return new AnalysisRequiredResult(false, false);
|
||||
@ -78,6 +82,10 @@ public class ReanalysisRequiredStatusService {
|
||||
fileStatus.setDossierTemplateId(dossier.getDossierTemplateId());
|
||||
fileStatus.setDossierStatusId(dossier.getDossierStatusId());
|
||||
|
||||
if (dossier.getSoftDeletedTime() != null || dossier.getHardDeletedTime() != null || dossier.getArchivedTime() != null) {
|
||||
log.info("Dossier {} is deleted, thus analysis is not required", fileStatus.getDossierId());
|
||||
return new AnalysisRequiredResult(false, false);
|
||||
}
|
||||
|
||||
if (ProcessingStatus.ERROR.equals(fileStatus.getProcessingStatus()) && !ignoreProcessingStates) {
|
||||
return new AnalysisRequiredResult(false, true);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user