summaryrefslogtreecommitdiff
path: root/lib/poa/validations.ts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/poa/validations.ts')
-rw-r--r--lib/poa/validations.ts66
1 files changed, 0 insertions, 66 deletions
diff --git a/lib/poa/validations.ts b/lib/poa/validations.ts
deleted file mode 100644
index eae1b5ab..00000000
--- a/lib/poa/validations.ts
+++ /dev/null
@@ -1,66 +0,0 @@
-import {
- createSearchParamsCache,
- parseAsArrayOf,
- parseAsInteger,
- parseAsString,
- parseAsStringEnum,
-} from "nuqs/server"
-import * as z from "zod"
-
-import { getFiltersStateParser, getSortingStateParser } from "@/lib/parsers"
-import { POADetail } from "@/db/schema/contract"
-
-export const searchParamsCache = createSearchParamsCache({
- // UI 모드나 플래그 관련
- flags: parseAsArrayOf(z.enum(["advancedTable", "floatingBar"])).withDefault([]),
-
- // 페이징
- page: parseAsInteger.withDefault(1),
- perPage: parseAsInteger.withDefault(10),
-
- // 정렬 (createdAt 기준 내림차순)
- sort: getSortingStateParser<POADetail>().withDefault([
- { id: "createdAt", desc: true },
- ]),
-
- // 원본 PO 관련
- contractNo: parseAsString.withDefault(""),
- originalContractName: parseAsString.withDefault(""),
- originalStatus: parseAsString.withDefault(""),
- originalStartDate: parseAsString.withDefault(""),
- originalEndDate: parseAsString.withDefault(""),
-
- // 프로젝트 정보
- projectId: parseAsString.withDefault(""),
- projectCode: parseAsString.withDefault(""),
- projectName: parseAsString.withDefault(""),
-
- // 벤더 정보
- vendorId: parseAsString.withDefault(""),
- vendorName: parseAsString.withDefault(""),
-
- // 납품 관련
- deliveryTerms: parseAsString.withDefault(""),
- deliveryDate: parseAsString.withDefault(""),
- deliveryLocation: parseAsString.withDefault(""),
-
- // 금액 관련
- currency: parseAsString.withDefault(""),
- totalAmount: parseAsString.withDefault(""),
- discount: parseAsString.withDefault(""),
- tax: parseAsString.withDefault(""),
- shippingFee: parseAsString.withDefault(""),
- netTotal: parseAsString.withDefault(""),
-
- // 변경 사유 및 승인 상태
- changeReason: parseAsString.withDefault(""),
- approvalStatus: parseAsString.withDefault(""),
-
- // 고급 필터(Advanced) & 검색
- filters: getFiltersStateParser().withDefault([]),
- joinOperator: parseAsStringEnum(["and", "or"]).withDefault("and"),
- search: parseAsString.withDefault(""),
-})
-
-// 최종 타입
-export type GetChangeOrderSchema = Awaited<ReturnType<typeof searchParamsCache.parse>> \ No newline at end of file