Rollback uploadDocument step resume

This commit is contained in:
SepehrYahyaee
2026-09-16 15:37:27 +03:30
parent ecf69cc332
commit c9e273fc4e
5 changed files with 59 additions and 161 deletions

View File

@@ -12733,25 +12733,25 @@ export class RequestManagementService {
return { ...workflow, completedSteps };
}
/**
* V4/V5 dirty bridge: FileMaker FE resumes from blame `status`, but pre-capture
* document upload lives on the claim (`UPLOADING_REQUIRED_DOCUMENTS`) while blame
* is still at FIRST/SECOND_COMPLETED. Mirror claim status into `status` only for
* that phase so leave/re-enter can continue; keep real blame status as
* `blameCaseStatus`. Remove once FE keys off `claimStatus` / a unified resume pointer.
*/
private fileMakerStatusForResume(
blameStatus: unknown,
claimStatus: unknown,
): { status: unknown; blameCaseStatus?: unknown } {
if (claimStatus === ClaimCaseStatus.UPLOADING_REQUIRED_DOCUMENTS) {
return {
status: ClaimCaseStatus.UPLOADING_REQUIRED_DOCUMENTS,
blameCaseStatus: blameStatus,
};
}
return { status: blameStatus };
}
// /**
// * V4/V5 dirty bridge: FileMaker FE resumes from blame `status`, but pre-capture
// * document upload lives on the claim (`UPLOADING_REQUIRED_DOCUMENTS`) while blame
// * is still at FIRST/SECOND_COMPLETED. Mirror claim status into `status` only for
// * that phase so leave/re-enter can continue; keep real blame status as
// * `blameCaseStatus`. Remove once FE keys off `claimStatus` / a unified resume pointer.
// */
// private fileMakerStatusForResume(
// blameStatus: unknown,
// claimStatus: unknown,
// ): { status: unknown; blameCaseStatus?: unknown } {
// if (claimStatus === ClaimCaseStatus.UPLOADING_REQUIRED_DOCUMENTS) {
// return {
// status: ClaimCaseStatus.UPLOADING_REQUIRED_DOCUMENTS,
// blameCaseStatus: blameStatus,
// };
// }
// return { status: blameStatus };
// }
async getMyFileMakerFiles(fileMaker: any): Promise<any[]> {
if (fileMaker?.role !== RoleEnum.FILE_MAKER) {
@@ -12762,35 +12762,32 @@ export class RequestManagementService {
isMadeByFileMaker: true,
initiatedByFieldExpertId: makerId,
});
const blameIds = (files || []).map((f: any) => f._id).filter(Boolean);
const claims =
blameIds.length > 0
? await this.claimCaseDbService.find(
{ blameRequestId: { $in: blameIds } },
{ lean: true, select: "blameRequestId status" },
)
: [];
const claimStatusByBlameId = new Map<string, unknown>();
for (const c of claims as any[]) {
const blameId = c?.blameRequestId != null ? String(c.blameRequestId) : "";
if (blameId) claimStatusByBlameId.set(blameId, c.status);
}
// const blameIds = (files || []).map((f: any) => f._id).filter(Boolean);
// const claims =
// blameIds.length > 0
// ? await this.claimCaseDbService.find(
// { blameRequestId: { $in: blameIds } },
// { lean: true, select: "blameRequestId status" },
// )
// : [];
// const claimStatusByBlameId = new Map<string, unknown>();
// for (const c of claims as any[]) {
// const blameId = c?.blameRequestId != null ? String(c.blameRequestId) : "";
// if (blameId) claimStatusByBlameId.set(blameId, c.status);
// }
return (files || []).map((f: any) => {
const workflow = this.fileMakerWorkflowProjection(f);
const resume = this.fileMakerStatusForResume(
f.status,
claimStatusByBlameId.get(String(f._id)),
);
// const resume = this.fileMakerStatusForResume(
// f.status,
// claimStatusByBlameId.get(String(f._id)),
// );
return {
_id: f._id,
publicId: f.publicId,
requestNo: f.requestNo,
type: f.type,
status: resume.status,
...(resume.blameCaseStatus !== undefined
? { blameCaseStatus: resume.blameCaseStatus }
: {}),
status: f.status,
blameStatus: f.blameStatus,
workflow: {
currentStep: workflow.currentStep,
@@ -12835,20 +12832,12 @@ export class RequestManagementService {
: claim
? { ...(claim as any) }
: null;
const resume = this.fileMakerStatusForResume(
plain.status,
claimPlain?.status,
);
return {
_id: plain._id,
publicId: plain.publicId,
requestNo: plain.requestNo,
type: plain.type,
status: resume.status,
...(resume.blameCaseStatus !== undefined
? { blameCaseStatus: resume.blameCaseStatus }
: {}),
status: plain.status,
blameStatus: plain.blameStatus,
workflow: this.fileMakerWorkflowProjection(plain),
requiresFileMakerApproval: plain.requiresFileMakerApproval,