forked from Yara724/api
Merge pull request 'Fixed v4 sign' (#209) from s.yahyaee/yara724-api:main into main
Reviewed-on: Yara724/api#209
This commit is contained in:
@@ -6331,27 +6331,41 @@ export class ClaimRequestManagementService {
|
||||
}
|
||||
|
||||
// V5 flow: FileMaker approval required before fanavaran.
|
||||
// Instead of submitting, hold the claim at WAITING_FOR_FILE_MAKER_APPROVAL.
|
||||
// Cross-check the blame record — only V5 blame files carry requiresFileMakerApproval.
|
||||
// V4 claims may have the flag set from an old bug; we ignore it if the blame
|
||||
// itself does not carry the flag.
|
||||
if ((claimCase as any).requiresFileMakerApproval) {
|
||||
await this.claimCaseDbService.findByIdAndUpdate(claimCaseId, {
|
||||
$set: { status: ClaimCaseStatus.WAITING_FOR_FILE_MAKER_APPROVAL },
|
||||
$push: {
|
||||
history: {
|
||||
type: "V5_HELD_FOR_FILE_MAKER_APPROVAL",
|
||||
actor: { actorType: "system" },
|
||||
timestamp: new Date(),
|
||||
metadata: { claimCaseId },
|
||||
const blameId = (claimCase as any).blameRequestId;
|
||||
const blame = blameId
|
||||
? await this.blameRequestDbService.findById(String(blameId))
|
||||
: null;
|
||||
const isV5 = !!(blame as any)?.requiresFileMakerApproval;
|
||||
|
||||
if (isV5) {
|
||||
await this.claimCaseDbService.findByIdAndUpdate(claimCaseId, {
|
||||
$set: { status: ClaimCaseStatus.WAITING_FOR_FILE_MAKER_APPROVAL },
|
||||
$push: {
|
||||
history: {
|
||||
type: "V5_HELD_FOR_FILE_MAKER_APPROVAL",
|
||||
actor: { actorType: "system" },
|
||||
timestamp: new Date(),
|
||||
metadata: { claimCaseId },
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
return {
|
||||
attempted: false,
|
||||
submitted: false,
|
||||
skipped: true,
|
||||
skipReason:
|
||||
"V5 flow: FileMaker approval required before Fanavaran submission. " +
|
||||
"Claim is now in WAITING_FOR_FILE_MAKER_APPROVAL.",
|
||||
};
|
||||
}
|
||||
// V4 claim with stale flag — clear it so this path is not hit again.
|
||||
await this.claimCaseDbService.findByIdAndUpdate(claimCaseId, {
|
||||
$unset: { requiresFileMakerApproval: "" },
|
||||
});
|
||||
return {
|
||||
attempted: false,
|
||||
submitted: false,
|
||||
skipped: true,
|
||||
skipReason:
|
||||
"V5 flow: FileMaker approval required before Fanavaran submission. " +
|
||||
"Claim is now in WAITING_FOR_FILE_MAKER_APPROVAL.",
|
||||
};
|
||||
}
|
||||
|
||||
const skipReason = await this.getFanavaranAutoSubmitSkipReason(claimCase);
|
||||
|
||||
Reference in New Issue
Block a user