From 7641c564402c2de71ab20a9dfd24994fe64ea6c2 Mon Sep 17 00:00:00 2001 From: Sepehr Yahyaee Date: Sat, 4 Jul 2026 10:28:20 +0330 Subject: [PATCH] Fixed outer parts flow bug in v4 --- .../claim-request-management.service.ts | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/claim-request-management/claim-request-management.service.ts b/src/claim-request-management/claim-request-management.service.ts index d2db482..e2231ab 100644 --- a/src/claim-request-management/claim-request-management.service.ts +++ b/src/claim-request-management/claim-request-management.service.ts @@ -9880,11 +9880,6 @@ export class ClaimRequestManagementService { } } - private v3PartsFlowNotStarted(claimCase: any): boolean { - const parts = claimCase.damage?.selectedParts; - return !Array.isArray(parts) || parts.length === 0; - } - private async advanceV3ClaimToOuterPartsIfReady( claimCase: any, blame: any, @@ -9896,12 +9891,13 @@ export class ClaimRequestManagementService { } const step = claimCase.workflow?.currentStep; - const partsNotStarted = this.v3PartsFlowNotStarted(claimCase); - const prematurelyCompleted = - step === ClaimWorkflowStep.USER_SUBMISSION_COMPLETE && partsNotStarted; + // USER_SUBMISSION_COMPLETE can occur when documents were uploaded via a + // non-V3 path (e.g. generic v2 endpoint). As long as accident fields are + // set (checked just below), it is safe to advance to SELECT_OUTER_PARTS. + // The duplicate-selection guard lives in selectOuterPartsV2 itself. const canAdvance = step === ClaimWorkflowStep.UPLOAD_REQUIRED_DOCUMENTS || - prematurelyCompleted; + step === ClaimWorkflowStep.USER_SUBMISSION_COMPLETE; if (!canAdvance) { throw new BadRequestException(