From 66d04bc2cc051416bcf54119ad45aae0d05dfa4f Mon Sep 17 00:00:00 2001 From: Justin Gasper Date: Mon, 3 Oct 2022 11:34:26 +1100 Subject: [PATCH] Restructuring and some additional logging --- src/services/ProcessorService.js | 15 +++++++++++++++ src/services/timelineService.js | 18 +++++------------- 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/src/services/ProcessorService.js b/src/services/ProcessorService.js index 4af58d2..fbe7831 100644 --- a/src/services/ProcessorService.js +++ b/src/services/ProcessorService.js @@ -52,6 +52,21 @@ async function recreatePhases (legacyId, v5Phases, createdBy) { phase.duration * 1000, createdBy ) + //Handle checkpoint phases + //Magic numbers: 15=checkpoint submission, 16=checkpoint screen, 17=checkpoint review, 1=registration + //For dependencyStart: 1=start, 0=end + if(phaseLegacyId==17){ + logger.info(`Creating phase dependencies for checkpoint phases`) + + registrationPhaseId = await timelineService.getProjectPhaseId(legacyId, 1) + checkpointSubmissionPhaseId = await timelineService.getProjectPhaseId(legacyId, 15) + checkpointScreeningPhaseId = await timelineService.getProjectPhaseId(legacyId, 16) + checkpointReviewPhaseId = await timelineService.getProjectPhaseId(legacyId, 17) + + await timelineService.insertPhaseDependency(registrationPhaseId, checkpointSubmissionPhaseId, 1, createdBy) + await timelineService.insertPhaseDependency(checkpointSubmissionPhaseId, checkpointScreeningPhaseId, 0, createdBy) + await timelineService.insertPhaseDependency(checkpointScreeningPhaseId, checkpointReviewPhaseId, 0, createdBy) + } } else if (!phaseLegacyId) { logger.warn(`Could not create phase ${phase.name} on legacy!`) } diff --git a/src/services/timelineService.js b/src/services/timelineService.js index c7ac1b6..0bf305a 100644 --- a/src/services/timelineService.js +++ b/src/services/timelineService.js @@ -67,6 +67,8 @@ async function getPhaseTypes () { } async function insertPhaseDependency(dependencyPhaseId, dependentPhaseId, dependencyStart, createdBy){ + + logger.info(`Creating phase dependency ${dependencyPhaseId} to ${dependentPhaseId} at ${dependencyStart}`) const connection = await helper.getInformixConnection() let result = null try { @@ -185,18 +187,6 @@ async function createPhase (challengeLegacyId, phaseTypeId, statusTypeId, schedu ]) await connection.commitTransactionAsync() - //Handle checkpoint phases - //Magic numbers: 15=checkpoint submission, 16=checkpoint screen, 17=checkpoint review, 1=registration - //For dependencyStart: 1=start, 0=end - if(phaseTypeId==17){ - registrationPhaseId = await this.getProjectPhaseId(challengeLegacyId, 1) - checkpointSubmissionPhaseId = await this.getProjectPhaseId(challengeLegacyId, 15) - checkpointScreeningPhaseId = await this.getProjectPhaseId(challengeLegacyId, 16) - checkpointReviewPhaseId = await this.getProjectPhaseId(challengeLegacyId, 17) - await this.insertPhaseDependency(registrationPhaseId, checkpointSubmissionPhaseId, 1, createdBy) - await this.insertPhaseDependency(checkpointSubmissionPhaseId, checkpointScreeningPhaseId, 0, createdBy) - await this.insertPhaseDependency(checkpointScreeningPhaseId, checkpointReviewPhaseId, 0, createdBy) - } } catch (e) { logger.error(`Error in 'createPhase' ${e}, rolling back transaction`) await connection.rollbackTransactionAsync() @@ -291,5 +281,7 @@ module.exports = { updatePhase, enableTimelineNotifications, createPhase, - dropPhase + dropPhase, + insertPhaseDependency, + getProjectPhaseId }