locations dynamically in fanavaran

This commit is contained in:
2026-09-02 15:31:55 +03:30
parent ebfeef9e01
commit 5c2b660600
10 changed files with 307 additions and 4 deletions

View File

@@ -25,6 +25,7 @@ import {
FanavaranAutoSubmitResult,
FanavaranExpertiseSubmitResult,
} from "src/claim-request-management/claim-request-management.service";
import { FanavaranLocationService } from "src/fanavaran/fanavaran-location.service";
import { ClaimSignDbService } from "src/claim-request-management/entites/db-service/claim-sign.db.service";
import { DamageImageDbService } from "src/claim-request-management/entites/db-service/damage-image.db.service";
import { VideoCaptureDbService } from "src/claim-request-management/entites/db-service/video-capture.db.service";
@@ -291,6 +292,7 @@ export class ExpertClaimService {
private readonly expertFileActivityDbService: ExpertFileActivityDbService,
private readonly claimSignDbService: ClaimSignDbService,
private readonly claimRequestManagementService: ClaimRequestManagementService,
private readonly fanavaranLocationService: FanavaranLocationService,
) {}
private appendFanavaranAutoSubmitToMessage(
@@ -2590,6 +2592,12 @@ export class ExpertClaimService {
// Atomically claim it — findOneAndUpdate with null/missing guard
const reviewerOid = new Types.ObjectId(actor.sub);
await this.fanavaranLocationService.assertMakerReviewerLocationCompatible({
fileMakerId: (blame as any)?.initiatedByFieldExpertId
? String((blame as any).initiatedByFieldExpertId)
: null,
fileReviewerId: actor.sub,
});
const updated = await this.blameRequestDbService.findOneAndUpdate(
{
_id: (blame as any)._id,