summaryrefslogtreecommitdiff
path: root/db/schema/vendorDocu.ts
diff options
context:
space:
mode:
Diffstat (limited to 'db/schema/vendorDocu.ts')
-rw-r--r--db/schema/vendorDocu.ts31
1 files changed, 31 insertions, 0 deletions
diff --git a/db/schema/vendorDocu.ts b/db/schema/vendorDocu.ts
index ebae7630..a3138fd5 100644
--- a/db/schema/vendorDocu.ts
+++ b/db/schema/vendorDocu.ts
@@ -141,6 +141,8 @@ export const revisions = pgTable(
uploaderType: varchar("uploader_type", { length: 20 }).notNull().default("vendor"),
uploaderId: integer("uploader_id"),
uploaderName: varchar("uploader_name", { length: 100 }),
+
+ usage:varchar("usage", { length: 100 }),
// 확장된 상태 관리
revisionStatus: varchar("revision_status", { length: 50 })
@@ -175,6 +177,7 @@ export const revisions = pgTable(
)
// 기존 documentAttachments (변경 없음)
+
export const documentAttachments = pgTable(
"document_attachments",
{
@@ -186,6 +189,14 @@ export const documentAttachments = pgTable(
filePath: varchar("file_path", { length: 1024 }).notNull(),
fileType: varchar("file_type", { length: 50 }),
fileSize: integer("file_size"),
+
+ // DOLCE 연동 관련 필드 추가
+ uploadId: varchar("upload_id", { length: 36 }), // UUID 형태
+ fileId: varchar("file_id", { length: 36 }), // UUID 형태
+ uploadedBy: varchar("uploaded_by", { length: 255 }), // userId 저장
+ dolceFilePath: varchar("dolce_file_path", { length: 1024 }), // DOLCE에서 반환하는 파일 경로
+ uploadedAt: timestamp("uploaded_at"), // DOLCE 업로드 성공 시간
+
createdAt: timestamp("created_at").defaultNow().notNull(),
updatedAt: timestamp("updated_at").defaultNow().notNull(),
}
@@ -196,6 +207,7 @@ export const enhancedDocumentsView = pgView("enhanced_documents_view", {
// 기본 문서 정보
documentId: integer("document_id").notNull(),
docNumber: varchar("doc_number", { length: 100 }).notNull(),
+ drawingKind: varchar("drawing_kind", { length: 50 }),
vendorDocNumber: varchar("vendor_doc_number", { length: 100 }), // ✅ 벤더 문서 번호 추가
title: varchar("title", { length: 255 }).notNull(),
pic: varchar("pic", { length: 50 }),
@@ -207,6 +219,14 @@ export const enhancedDocumentsView = pgView("enhanced_documents_view", {
projectCode: varchar("project_code", { length: 50 }),
vendorName: varchar("vendor_name", { length: 255 }),
vendorCode: varchar("vendor_code", { length: 50 }),
+
+ // ✅ B4 전용 필드들 (drawingKind가 B4일 때만 사용)
+ cGbn: varchar("c_gbn", { length: 50 }), // CGbn
+ dGbn: varchar("d_gbn", { length: 50 }), // DGbn
+ degreeGbn: varchar("degree_gbn", { length: 50 }), // DegreeGbn
+ deptGbn: varchar("dept_gbn", { length: 50 }), // DeptGbn
+ jGbn: varchar("j_gbn", { length: 50 }), // JGbn
+ sGbn: varchar("s_gbn", { length: 50 }), // SGbn
// 현재 스테이지 정보 (가장 우선순위가 높은 미완료 스테이지)
currentStageId: integer("current_stage_id"),
@@ -253,6 +273,7 @@ export const enhancedDocumentsView = pgView("enhanced_documents_view", {
uploaderId: number | null;
uploaderName: string | null;
comment: string | null;
+ usage: string | null;
revisionStatus: string;
submittedDate: string | null;
approvedDate: string | null;
@@ -377,6 +398,7 @@ export const enhancedDocumentsView = pgView("enhanced_documents_view", {
'uploaderId', r.uploader_id,
'uploaderName', r.uploader_name,
'comment', r.comment,
+ 'usage', r.usage,
'revisionStatus', r.revision_status,
'submittedDate', r.submitted_date,
'uploadedAt', r.uploaded_at,
@@ -432,12 +454,21 @@ export const enhancedDocumentsView = pgView("enhanced_documents_view", {
SELECT
d.id as document_id,
d.doc_number,
+ d.drawing_kind,
d.vendor_doc_number, -- ✅ 벤더 문서 번호 추가
d.title,
d.pic,
d.status,
d.issued_date,
d.contract_id,
+
+ d.c_gbn,
+ d.d_gbn,
+ d.degree_gbn,
+ d.dept_gbn,
+ d.s_gbn,
+
+
-- ✅ 프로젝트 및 벤더 정보 추가
p.code as project_code,