diff options
Diffstat (limited to 'lib/evaluation-target-list/validation.ts')
| -rw-r--r-- | lib/evaluation-target-list/validation.ts | 57 |
1 files changed, 21 insertions, 36 deletions
diff --git a/lib/evaluation-target-list/validation.ts b/lib/evaluation-target-list/validation.ts index b8df250b..d37ca0ed 100644 --- a/lib/evaluation-target-list/validation.ts +++ b/lib/evaluation-target-list/validation.ts @@ -20,24 +20,15 @@ export const searchParamsEvaluationTargetsCache = createSearchParamsCache({ { id: "createdAt", desc: true }, ]), - // 기본 필터들 - evaluationYear: parseAsInteger.withDefault(new Date().getFullYear()), - division: parseAsString.withDefault(""), - status: parseAsString.withDefault(""), - domesticForeign: parseAsString.withDefault(""), - materialType: parseAsString.withDefault(""), - consensusStatus: parseAsString.withDefault(""), - - // 고급 필터 - filters: getFiltersStateParser().withDefault([]), - joinOperator: parseAsStringEnum(["and", "or"]).withDefault("and"), - // 베이직 필터 (커스텀 필터 패널용) - basicFilters: getFiltersStateParser().withDefault([]), - basicJoinOperator: parseAsStringEnum(["and", "or"]).withDefault("and"), + filters: getFiltersStateParser().withDefault([]), + joinOperator: parseAsStringEnum(["and", "or"]).withDefault("and"), + // 검색 search: parseAsString.withDefault(""), + aggregated: z.boolean().default(false), + }); // ============= 타입 정의 ============= @@ -46,7 +37,6 @@ export type GetEvaluationTargetsSchema = Awaited< ReturnType<typeof searchParamsEvaluationTargetsCache.parse> >; - // ============= 필터 옵션 상수들 ============= export const EVALUATION_TARGET_FILTER_OPTIONS = { @@ -64,9 +54,8 @@ export const EVALUATION_TARGET_FILTER_OPTIONS = { { value: "FOREIGN", label: "외자" }, ], MATERIAL_TYPES: [ - { value: "EQUIPMENT", label: "기자재" }, + { value: "EQUIPMENT", label: "장비재" }, { value: "BULK", label: "벌크" }, - { value: "EQUIPMENT_BULK", label: "기자재/벌크" }, ], CONSENSUS_STATUS: [ { value: "true", label: "의견 일치" }, @@ -104,25 +93,6 @@ export function getDefaultEvaluationYear(): number { return new Date().getFullYear(); } -export function getDefaultSearchParams(): GetEvaluationTargetsSchema { - return { - flags: [], - page: 1, - perPage: 10, - sort: [{ id: "createdAt", desc: true }], - evaluationYear: getDefaultEvaluationYear(), - division: "", - status: "", - domesticForeign: "", - materialType: "", - consensusStatus: "", - filters: [], - joinOperator: "and", - basicFilters: [], - basicJoinOperator: "and", - search: "", - }; -} // ============= 편의 함수들 ============= @@ -151,3 +121,18 @@ export function getDomesticForeignLabel(domesticForeign: DomesticForeign): strin return domesticForeignMap[domesticForeign] || domesticForeign; } +// ✅ 디버깅용 로그 함수 추가 +export function logSearchParams(searchParams: any, source: string) { + console.log(`=== ${source} - SearchParams ===`); + console.log("Raw filters:", searchParams.filters); + console.log("Raw joinOperator:", searchParams.joinOperator); + + if (typeof searchParams.filters === 'string') { + try { + const parsed = JSON.parse(searchParams.filters); + console.log("Parsed filters:", parsed); + } catch (e) { + console.error("Filter parsing error:", e); + } + } +}
\ No newline at end of file |
