summaryrefslogtreecommitdiff
path: root/config/basicContractColumnsConfig.ts
diff options
context:
space:
mode:
Diffstat (limited to 'config/basicContractColumnsConfig.ts')
-rw-r--r--config/basicContractColumnsConfig.ts211
1 files changed, 211 insertions, 0 deletions
diff --git a/config/basicContractColumnsConfig.ts b/config/basicContractColumnsConfig.ts
new file mode 100644
index 00000000..08eab26a
--- /dev/null
+++ b/config/basicContractColumnsConfig.ts
@@ -0,0 +1,211 @@
+// 기본 계약 관련 컬럼 설정 파일
+
+import { BasicContractTemplate, BasicContractView } from "@/db/schema";
+
+
+
+// 컬럼 설정 인터페이스
+export interface BasicContractColumnConfig {
+ /** 테이블에서 접근할 필드 */
+ id: keyof BasicContractView;
+
+ /** 화면에 표시될 컬럼명 */
+ label: string;
+
+ /** (선택) 그룹핑/카테고리 */
+ group?: string;
+
+ /** (선택) Excel 내보내기용 헤더 */
+ excelHeader?: string;
+
+ /** (선택) 데이터 타입(포맷팅 용도) */
+ type?: 'string' | 'number' | 'date' | 'boolean';
+}
+
+// 템플릿 컬럼 설정 인터페이스
+export interface BasicContractTemplateColumnConfig {
+ /** 테이블에서 접근할 필드 */
+ id: keyof BasicContractTemplate;
+
+ /** 화면에 표시될 컬럼명 */
+ label: string;
+
+ /** (선택) 그룹핑/카테고리 */
+ group?: string;
+
+ /** (선택) Excel 내보내기용 헤더 */
+ excelHeader?: string;
+
+ /** (선택) 데이터 타입(포맷팅 용도) */
+ type?: 'string' | 'number' | 'date' | 'boolean';
+}
+
+// 기본 계약 컬럼 설정
+export const basicContractColumnsConfig: BasicContractColumnConfig[] = [
+
+ {
+ id: "vendorCode",
+ label: "Vendor Code",
+ excelHeader: "Vendor Code",
+ group: "벤더 정보",
+ },
+ {
+ id: "vendorName",
+ label: "업체명",
+ excelHeader: "업체명",
+ group: "벤더 정보",
+ },
+ {
+ id: "vendorEmail",
+ label: "업체대표이메일",
+ excelHeader: "업체대표이메일",
+ group: "벤더 정보",
+ },
+ // 계약 기본 정보 그룹
+ {
+ id: "templateName",
+ label: "템플릿 이름",
+ excelHeader: "템플릿 이름",
+ // group: "기본 정보",
+ },
+
+ {
+ id: "status",
+ label: "서명 상태",
+ excelHeader: "서명 상태",
+ // group: "기본 정보",
+ },
+
+ // 벤더 정보 그룹
+
+
+ // 요청자 정보 그룹
+ {
+ id: "userName",
+ label: "요청자",
+ excelHeader: "요청자",
+ // group: "요청자 정보",
+ },
+
+ // 날짜 정보 그룹
+ {
+ id: "createdAt",
+ label: "Request Date",
+ excelHeader: "Request Date",
+ group: "날짜 정보",
+ type: "date",
+ },
+ {
+ id: "updatedAt",
+ label: "Updated Date",
+ excelHeader: "Updated Date",
+ group: "날짜 정보",
+ type: "date",
+ },
+];
+
+// 기본 계약 템플릿 컬럼 설정
+export const basicContractTemplateColumnsConfig: BasicContractTemplateColumnConfig[] = [
+ // 템플릿 기본 정보 그룹
+ {
+ id: "templateName",
+ label: "Template Name",
+ excelHeader: "Template Name",
+ group: "기본 정보",
+ },
+ {
+ id: "validityPeriod",
+ label: "서명 유효기간(개월)",
+ excelHeader: "서명 유효기간(개월)",
+ // group: "기본 정보",
+ },
+ {
+ id: "status",
+ label: "Status",
+ excelHeader: "Status",
+ group: "기본 정보",
+ },
+
+ // 파일 정보 그룹
+ {
+ id: "fileName",
+ label: "File Name",
+ excelHeader: "File Name",
+ group: "파일 정보",
+ },
+
+ // 날짜 정보 그룹
+ {
+ id: "createdAt",
+ label: "Created Date",
+ excelHeader: "Created Date",
+ group: "날짜 정보",
+ type: "date",
+ },
+ {
+ id: "updatedAt",
+ label: "Updated Date",
+ excelHeader: "Updated Date",
+ group: "날짜 정보",
+ type: "date",
+ },
+];
+
+export const basicContractVendorColumnsConfig: BasicContractColumnConfig[] = [
+
+
+ // 계약 기본 정보 그룹
+ {
+ id: "templateName",
+ label: "템플릿 이름",
+ excelHeader: "템플릿 이름",
+ // group: "기본 정보",
+ },
+ {
+ id: "validityPeriod",
+ label: "서명 유효기간(개월)",
+ excelHeader: "서명 유효기간(개월)",
+ // group: "기본 정보",
+ },
+
+ {
+ id: "status",
+ label: "서명 상태",
+ excelHeader: "서명 상태",
+ // group: "기본 정보",
+ },
+
+ // 벤더 정보 그룹
+
+
+ // 요청자 정보 그룹
+ {
+ id: "userName",
+ label: "요청자",
+ excelHeader: "요청자",
+ // group: "요청자 정보",
+ },
+
+ // 날짜 정보 그룹
+ {
+ id: "createdAt",
+ label: "Request Date",
+ excelHeader: "Request Date",
+ group: "날짜 정보",
+ type: "date",
+ },
+ {
+ id: "completedAt",
+ label: "서명완료일",
+ excelHeader: "서명완료일",
+ group: "날짜 정보",
+ type: "date",
+ },
+ {
+ id: "updatedAt",
+ label: "Updated Date",
+ excelHeader: "Updated Date",
+ group: "날짜 정보",
+ type: "date",
+ },
+];