From bced6a0ec7f46e8b6a77ef235a8106652c88dec3 Mon Sep 17 00:00:00 2001 From: SepehrYahyaee <7heycallmegray@gmail.com> Date: Sun, 12 Jul 2026 11:11:50 +0330 Subject: [PATCH 1/3] YARA-1062 --- src/static/car-part.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/static/car-part.json b/src/static/car-part.json index 5776737..bebe815 100644 --- a/src/static/car-part.json +++ b/src/static/car-part.json @@ -218,5 +218,9 @@ "دمنده بخاری": false, "کمپرسور کولر": false, "کندانسور": false, - "اواپراتور": false + "اواپراتور": false, + "لاستیک": false, + "مه شکن": false, + "رینگ": false, + "فن": false } \ No newline at end of file From 9b83db882bc7f80d25a2a3d44e12c211ac0891d8 Mon Sep 17 00:00:00 2001 From: SepehrYahyaee <7heycallmegray@gmail.com> Date: Sun, 12 Jul 2026 11:27:58 +0330 Subject: [PATCH 2/3] YARA-982 --- src/expert-claim/expert-claim.service.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/expert-claim/expert-claim.service.ts b/src/expert-claim/expert-claim.service.ts index bb8b645..80a3d7c 100644 --- a/src/expert-claim/expert-claim.service.ts +++ b/src/expert-claim/expert-claim.service.ts @@ -3517,7 +3517,7 @@ export class ExpertClaimService { return { claimRequestId, - status: claim.status, + status: ClaimWorkflowStep.CLAIM_COMPLETED, claimStatus: ClaimStatus.NEEDS_REVISION, message: "In-person visit requested. User will be notified.", }; From c955deda5c97fa9eaa08748ec8f640a5494a75f4 Mon Sep 17 00:00:00 2001 From: SepehrYahyaee <7heycallmegray@gmail.com> Date: Sun, 12 Jul 2026 11:44:32 +0330 Subject: [PATCH 3/3] YARA-1069 --- src/common/dto/list-query-v2.dto.ts | 17 +++++++++++++++++ src/expert-blame/expert-blame.service.ts | 12 +++++++++++- src/expert-claim/expert-claim.service.ts | 6 ++++++ src/expert-insurer/expert-insurer.service.ts | 6 ++++++ 4 files changed, 40 insertions(+), 1 deletion(-) diff --git a/src/common/dto/list-query-v2.dto.ts b/src/common/dto/list-query-v2.dto.ts index 0c22ac6..c8c9da9 100644 --- a/src/common/dto/list-query-v2.dto.ts +++ b/src/common/dto/list-query-v2.dto.ts @@ -3,6 +3,7 @@ import { Type } from "class-transformer"; import { IsIn, IsInt, + IsISO8601, IsOptional, IsString, Max, @@ -102,4 +103,20 @@ export class ListQueryV2Dto { @IsOptional() @IsIn([...LIST_FILE_TYPE_V2]) fileType?: ListFileTypeV2; + + @ApiPropertyOptional({ + description: "Filter start date (ISO 8601). Only files created on or after this date are returned.", + example: "2025-01-01T00:00:00.000Z", + }) + @IsOptional() + @IsISO8601({ strict: false }) + startDate?: string; + + @ApiPropertyOptional({ + description: "Filter end date (ISO 8601). Only files created on or before this date are returned.", + example: "2025-12-31T23:59:59.999Z", + }) + @IsOptional() + @IsISO8601({ strict: false }) + endDate?: string; } diff --git a/src/expert-blame/expert-blame.service.ts b/src/expert-blame/expert-blame.service.ts index d0f2073..07377c9 100644 --- a/src/expert-blame/expert-blame.service.ts +++ b/src/expert-blame/expert-blame.service.ts @@ -630,11 +630,21 @@ export class ExpertBlameService { String((d as { publicId?: string }).publicId ?? ""), ), ); - const filtered = this.filterBlameDocsByUnifiedStatus( + let filtered = this.filterBlameDocsByUnifiedStatus( visibleCases, claimByPublicId, query.unifiedStatus, ); + const { fromDate, toDate } = parseListDateRange(query.startDate, query.endDate); + if (fromDate || toDate) { + filtered = filtered.filter((doc) => + isInListDateRange( + (doc as { createdAt?: Date }).createdAt, + fromDate, + toDate, + ), + ); + } const paged = applyListQueryV2( filtered, diff --git a/src/expert-claim/expert-claim.service.ts b/src/expert-claim/expert-claim.service.ts index 80a3d7c..fdbee26 100644 --- a/src/expert-claim/expert-claim.service.ts +++ b/src/expert-claim/expert-claim.service.ts @@ -3748,6 +3748,12 @@ export class ExpertClaimService { (item) => item.unifiedFileStatus === query.unifiedStatus, ); } + const { fromDate, toDate } = parseListDateRange(query.startDate, query.endDate); + if (fromDate || toDate) { + filtered = filtered.filter((item) => + isInListDateRange(item.createdAt, fromDate, toDate), + ); + } const paged = applyListQueryV2( filtered, { diff --git a/src/expert-insurer/expert-insurer.service.ts b/src/expert-insurer/expert-insurer.service.ts index fc72998..0bf526d 100644 --- a/src/expert-insurer/expert-insurer.service.ts +++ b/src/expert-insurer/expert-insurer.service.ts @@ -1334,6 +1334,12 @@ export class ExpertInsurerService { (f) => f.unifiedFileStatus === query.unifiedStatus, ); } + const { fromDate, toDate } = parseListDateRange(query.startDate, query.endDate); + if (fromDate || toDate) { + files = files.filter((f) => + isInListDateRange(f.createdAt, fromDate, toDate), + ); + } const paged = applyListQueryV2( files,