From 535de26b9cf3242c04543d6891d78352b9593a60 Mon Sep 17 00:00:00 2001 From: dujinkim Date: Tue, 11 Nov 2025 09:22:58 +0000 Subject: (최겸) 구매 수정사항 개발 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/general-contracts_old/validation.ts | 82 --------------------------------- 1 file changed, 82 deletions(-) delete mode 100644 lib/general-contracts_old/validation.ts (limited to 'lib/general-contracts_old/validation.ts') diff --git a/lib/general-contracts_old/validation.ts b/lib/general-contracts_old/validation.ts deleted file mode 100644 index 5aa516e7..00000000 --- a/lib/general-contracts_old/validation.ts +++ /dev/null @@ -1,82 +0,0 @@ -import { generalContracts } from "@/db/schema/generalContract" -import { - createSearchParamsCache, - parseAsArrayOf, - parseAsInteger, - parseAsString, - parseAsStringEnum, -} from "nuqs/server" -import * as z from "zod" - -import { getFiltersStateParser, getSortingStateParser } from "@/lib/parsers" - -export const searchParamsCache = createSearchParamsCache({ - flags: parseAsArrayOf(z.enum(["advancedTable", "floatingBar"])).withDefault([]), - page: parseAsInteger.withDefault(1), - perPage: parseAsInteger.withDefault(10), - sort: getSortingStateParser().withDefault([ - { id: "registeredAt", desc: true }, - ]), - - // 기본 필터 - contractNumber: parseAsString.withDefault(""), - name: parseAsString.withDefault(""), - status: parseAsArrayOf(z.enum(generalContracts.status.enumValues)).withDefault([]), - category: parseAsArrayOf(z.enum(generalContracts.category.enumValues)).withDefault([]), - type: parseAsArrayOf(z.enum(generalContracts.type.enumValues)).withDefault([]), - executionMethod: parseAsArrayOf(z.enum(generalContracts.executionMethod.enumValues)).withDefault([]), - contractSourceType: parseAsArrayOf(z.enum(generalContracts.contractSourceType.enumValues)).withDefault([]), - vendorId: parseAsInteger.withDefault(0), - managerName: parseAsString.withDefault(""), - - // 날짜 필터 - registeredAtFrom: parseAsString.withDefault(""), - registeredAtTo: parseAsString.withDefault(""), - signedAtFrom: parseAsString.withDefault(""), - signedAtTo: parseAsString.withDefault(""), - startDateFrom: parseAsString.withDefault(""), - startDateTo: parseAsString.withDefault(""), - endDateFrom: parseAsString.withDefault(""), - endDateTo: parseAsString.withDefault(""), - - // 금액 필터 - contractAmountMin: parseAsString.withDefault(""), - contractAmountMax: parseAsString.withDefault(""), - - // 고급 필터 - filters: getFiltersStateParser().withDefault([]), - joinOperator: parseAsStringEnum(["and", "or"]).withDefault("and"), - search: parseAsString.withDefault(""), -}) - -export type GetGeneralContractsSchema = Awaited> - -export const createGeneralContractSchema = z.object({ - contractNumber: z.string().optional(), - name: z.string().min(1, "계약명을 입력해주세요"), - category: z.string().min(1, "계약구분을 선택해주세요"), - type: z.string().min(1, "계약종류를 선택해주세요"), - executionMethod: z.string().min(1, "체결방식을 선택해주세요"), - vendorId: z.number().min(1, "협력업체를 선택해주세요"), - startDate: z.string().min(1, "계약시작일을 선택해주세요"), - endDate: z.string().min(1, "계약종료일을 선택해주세요"), - validityEndDate: z.string().optional(), - contractScope: z.string().optional(), - specificationType: z.string().optional(), - specificationManualText: z.string().optional(), - contractAmount: z.number().optional(), - currency: z.string().default("KRW"), - notes: z.string().optional(), - linkedRfqOrItb: z.string().optional(), - linkedPoNumber: z.string().optional(), - linkedBidNumber: z.string().optional(), - registeredById: z.number().min(1, "등록자 ID가 필요합니다"), - lastUpdatedById: z.number().min(1, "수정자 ID가 필요합니다"), -}) - -export const updateGeneralContractSchema = createGeneralContractSchema.partial().extend({ - id: z.number().min(1, "계약 ID가 필요합니다"), -}) - -export type CreateGeneralContractInput = z.infer -export type UpdateGeneralContractInput = z.infer -- cgit v1.2.3