summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authordujinkim <dujin.kim@dtsolution.co.kr>2025-08-13 11:05:09 +0000
committerdujinkim <dujin.kim@dtsolution.co.kr>2025-08-13 11:05:09 +0000
commit33be47506f0aa62b969d82521580a29e95080268 (patch)
tree6b7e232f2d78ef8775944ea085a36b3ccbce7d95 /config
parent2ac95090157c355ea1bd0b8eb1e1e5e2bd56faf4 (diff)
(대표님) 입찰, 법무검토, EDP 변경사항 대응, dolce 개선, form-data 개선, 정규업체 등록관리 추가
(최겸) pq 미사용 컴포넌트 및 페이지 제거, 파일 라우트에 pq 적용
Diffstat (limited to 'config')
-rw-r--r--config/vendorInvestigationsColumnsConfig.ts9
-rw-r--r--config/vendorRegularRegistrationsColumnsConfig.ts162
2 files changed, 171 insertions, 0 deletions
diff --git a/config/vendorInvestigationsColumnsConfig.ts b/config/vendorInvestigationsColumnsConfig.ts
index ceb532e8..7da096be 100644
--- a/config/vendorInvestigationsColumnsConfig.ts
+++ b/config/vendorInvestigationsColumnsConfig.ts
@@ -26,6 +26,9 @@ export type VendorInvestigationsViewRaw = {
// Essential vendor fields only
vendorName: string
vendorCode: string
+
+ // PQ 정보
+ pqItems: string | null | Array<{itemCode: string, itemName: string}>
hasAttachments: boolean
@@ -96,6 +99,12 @@ export const vendorInvestigationsColumnsConfig: VendorInvestigationsColumnConfig
group: "실사",
},
{
+ id: "pqItems",
+ label: "실사품목",
+ excelHeader: "실사품목",
+ group: "실사",
+ },
+ {
id: "investigationNotes",
label: "QM 의견",
excelHeader: "QM 의견",
diff --git a/config/vendorRegularRegistrationsColumnsConfig.ts b/config/vendorRegularRegistrationsColumnsConfig.ts
new file mode 100644
index 00000000..933945fc
--- /dev/null
+++ b/config/vendorRegularRegistrationsColumnsConfig.ts
@@ -0,0 +1,162 @@
+export interface VendorRegularRegistration {
+ id: number;
+ vendorId: number;
+ status: string;
+ potentialCode: string | null;
+ businessNumber: string;
+ companyName: string;
+ majorItems: string | null;
+ establishmentDate: string | null;
+ representative: string | null;
+ documentSubmissions: {
+ businessRegistration: boolean;
+ creditEvaluation: boolean;
+ bankCopy: boolean;
+ auditResult: boolean;
+ };
+ documentFiles: {
+ businessRegistration: any[];
+ creditEvaluation: any[];
+ bankCopy: any[];
+ auditResult: any[];
+ };
+ contractAgreements: {
+ cp: string; // not_submitted, reviewing, completed
+ gtc: string;
+ standardSubcontract: string;
+ safetyHealth: string;
+ ethics: string;
+ domesticCredit: string;
+ safetyQualification: string;
+ };
+ additionalInfo: boolean;
+ registrationRequestDate: string | null;
+ assignedDepartment: string | null;
+ assignedUser: string | null;
+ remarks: string | null;
+}
+
+export interface VendorRegularRegistrationColumnConfig {
+ id: keyof VendorRegularRegistration | string;
+ label: string;
+ group?: string;
+ excelHeader?: string;
+ type?: string;
+}
+
+export const vendorRegularRegistrationsColumnsConfig: VendorRegularRegistrationColumnConfig[] = [
+ {
+ id: "status",
+ label: "Status",
+ type: "select",
+ group: "기본 정보",
+ excelHeader: "상태",
+ },
+ {
+ id: "potentialCode",
+ label: "잠재코드",
+ type: "text",
+ group: "기본 정보",
+ excelHeader: "잠재코드",
+ },
+ {
+ id: "businessNumber",
+ label: "사업자번호",
+ type: "text",
+ group: "기본 정보",
+ excelHeader: "사업자번호",
+ },
+ {
+ id: "companyName",
+ label: "업체명",
+ type: "text",
+ group: "기본 정보",
+ excelHeader: "업체명",
+ },
+ {
+ id: "majorItems",
+ label: "주요품목",
+ type: "text",
+ group: "기본 정보",
+ excelHeader: "주요품목",
+ },
+ {
+ id: "establishmentDate",
+ label: "설립일자",
+ type: "date",
+ group: "기본 정보",
+ excelHeader: "설립일자",
+ },
+ {
+ id: "representative",
+ label: "대표자명",
+ type: "text",
+ group: "기본 정보",
+ excelHeader: "대표자명",
+ },
+ {
+ id: "registrationRequestDate",
+ label: "등록요청일",
+ type: "date",
+ group: "관리 정보",
+ excelHeader: "등록요청일",
+ },
+ {
+ id: "assignedDepartment",
+ label: "담당부서",
+ type: "text",
+ group: "관리 정보",
+ excelHeader: "담당부서",
+ },
+ {
+ id: "assignedUser",
+ label: "담당자",
+ type: "text",
+ group: "관리 정보",
+ excelHeader: "담당자",
+ },
+ {
+ id: "remarks",
+ label: "비고",
+ type: "text",
+ group: "관리 정보",
+ excelHeader: "비고",
+ },
+];
+
+export const statusLabels: Record<string, string> = {
+ audit_pass: "실사통과",
+ cp_submitted: "CP등록",
+ cp_review: "CP검토",
+ cp_finished: "CP완료",
+ approval_ready: "조건충족",
+ in_review: "정규등록검토",
+ pending_approval: "장기미등록",
+};
+
+export const statusColors: Record<string, string> = {
+ audit_pass: "bg-blue-100 text-blue-800",
+ cp_submitted: "bg-green-100 text-green-800",
+ cp_review: "bg-yellow-100 text-yellow-800",
+ cp_finished: "bg-purple-100 text-purple-800",
+ approval_ready: "bg-emerald-100 text-emerald-800",
+ in_review: "bg-orange-100 text-orange-800",
+ pending_approval: "bg-red-100 text-red-800",
+};
+
+export const documentStatusColumns: { key: keyof VendorRegularRegistration["documentSubmissions"]; label: string }[] = [
+ { key: "businessRegistration", label: "사업자등록증" },
+ { key: "creditEvaluation", label: "신용평가서" },
+ { key: "bankCopy", label: "통장사본" },
+ { key: "auditResult", label: "실사결과" },
+];
+
+export const contractAgreementColumns: { key: keyof VendorRegularRegistration["contractAgreements"]; label: string }[] = [
+ { key: "cp", label: "CP문서" },
+ { key: "gtc", label: "GTC" },
+ { key: "standardSubcontract", label: "표준하도급" },
+ { key: "safetyHealth", label: "안전보건관리" },
+ { key: "ethics", label: "윤리규범준수" },
+ { key: "domesticCredit", label: "내국신용장" },
+ { key: "safetyQualification", label: "안전적격성평가" },
+];