diff --git a/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/migration/MigrationService.java b/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/migration/MigrationService.java index 568b6e824..05f5c1388 100644 --- a/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/migration/MigrationService.java +++ b/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/migration/MigrationService.java @@ -360,7 +360,8 @@ public class MigrationService { .findFirst(); if(!versionOptional.isPresent()){ - throw new MigrationException("Unable to find version"); + log.warn("no rules version found for dossier template {}", dossierTemplateId); + return; } var version = versionOptional .get() @@ -670,7 +671,7 @@ public class MigrationService { break; case REPROCESS: if (oldFile.getLastSuccessfulStatus() != null) { - workflowStatus = WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); + workflowStatus = oldFile.getLastSuccessfulStatus().equals(Status.UNASSIGNED) ? WorkflowStatus.NEW : WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); processingStatus = ProcessingStatus.REPROCESS; } else { workflowStatus = WorkflowStatus.NEW; @@ -679,7 +680,7 @@ public class MigrationService { break; case PROCESSING: if (oldFile.getLastSuccessfulStatus() != null) { - workflowStatus = WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); + workflowStatus = oldFile.getLastSuccessfulStatus().equals(Status.UNASSIGNED) ? WorkflowStatus.NEW : WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); processingStatus = ProcessingStatus.PROCESSING; } else { workflowStatus = WorkflowStatus.NEW; @@ -688,7 +689,7 @@ public class MigrationService { break; case ERROR: if (oldFile.getLastSuccessfulStatus() != null) { - workflowStatus = WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); + workflowStatus = oldFile.getLastSuccessfulStatus().equals(Status.UNASSIGNED) ? WorkflowStatus.NEW : WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); processingStatus = ProcessingStatus.ERROR; } else { workflowStatus = WorkflowStatus.NEW; @@ -697,7 +698,7 @@ public class MigrationService { break; case DELETED: if (oldFile.getLastSuccessfulStatus() != null) { - workflowStatus = WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); + workflowStatus = oldFile.getLastSuccessfulStatus().equals(Status.UNASSIGNED) ? WorkflowStatus.NEW : WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); processingStatus = ProcessingStatus.DELETED; } else { workflowStatus = WorkflowStatus.NEW; @@ -722,7 +723,7 @@ public class MigrationService { break; case FULLREPROCESS: if (oldFile.getLastSuccessfulStatus() != null) { - workflowStatus = WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); + workflowStatus = oldFile.getLastSuccessfulStatus().equals(Status.UNASSIGNED) ? WorkflowStatus.NEW : WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); processingStatus = ProcessingStatus.FULLREPROCESS; } else { workflowStatus = WorkflowStatus.NEW; @@ -731,7 +732,7 @@ public class MigrationService { break; case OCR_PROCESSING: if (oldFile.getLastSuccessfulStatus() != null) { - workflowStatus = WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); + workflowStatus = oldFile.getLastSuccessfulStatus().equals(Status.UNASSIGNED) ? WorkflowStatus.NEW : WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); processingStatus = ProcessingStatus.OCR_PROCESSING; } else { workflowStatus = WorkflowStatus.NEW; @@ -740,7 +741,7 @@ public class MigrationService { break; case INDEXING: if (oldFile.getLastSuccessfulStatus() != null) { - workflowStatus = WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); + workflowStatus = oldFile.getLastSuccessfulStatus().equals(Status.UNASSIGNED) ? WorkflowStatus.NEW : WorkflowStatus.valueOf(oldFile.getLastSuccessfulStatus().name()); processingStatus = ProcessingStatus.INDEXING; } else { workflowStatus = WorkflowStatus.NEW;