From c92bd1b8caa6ddabe6acee42018262febd5d91fb Mon Sep 17 00:00:00 2001 From: dujinkim Date: Wed, 19 Nov 2025 06:15:43 +0000 Subject: (임수민) 기본계약 코멘트, 법무검토 수정 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/schema/basicContractDocumnet.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'db') diff --git a/db/schema/basicContractDocumnet.ts b/db/schema/basicContractDocumnet.ts index 0f335e90..8cfd3baa 100644 --- a/db/schema/basicContractDocumnet.ts +++ b/db/schema/basicContractDocumnet.ts @@ -6,6 +6,7 @@ import { biddingCompanies } from './bidding'; import { rfqLastVendorResponses } from './rfqVendor'; import { rfqLastDetails } from './rfqLast'; import { generalContracts } from './generalContract'; +import { legalWorks } from './legal'; export const basicContractTemplates = pgTable('basic_contract_templates', { id: integer("id").primaryKey().generatedAlwaysAsIdentity(), @@ -60,6 +61,7 @@ export const basicContract = pgTable('basic_contract', { deadline: date('deadline').notNull(), // 마감일 (요청일로부터 10일 후) vendorSignedAt: timestamp('vendor_signed_at'), // 협력업체 서명일 buyerSignedAt: timestamp('buyer_signed_at'), // 구매팀 서명일 + negotiationCompletedAt: timestamp('negotiation_completed_at'), // GTC 협의 완료일 legalReviewRequestedAt: timestamp('legal_review_requested_at'), // 법무검토 요청일 legalReviewCompletedAt: timestamp('legal_review_completed_at'), // 법무검토 완료일 @@ -89,6 +91,7 @@ export const basicContractView = pgView('basic_contract_view').as((qb) => { deadline: sql`${basicContract.deadline}`.as('deadline'), vendorSignedAt: sql`${basicContract.vendorSignedAt}`.as('vendor_signed_at'), buyerSignedAt: sql`${basicContract.buyerSignedAt}`.as('buyer_signed_at'), + negotiationCompletedAt: sql`${basicContract.negotiationCompletedAt}`.as('negotiation_completed_at'), legalReviewRequestedAt: sql`${basicContract.legalReviewRequestedAt}`.as('legal_review_requested_at'), legalReviewCompletedAt: sql`${basicContract.legalReviewCompletedAt}`.as('legal_review_completed_at'), @@ -110,7 +113,10 @@ export const basicContractView = pgView('basic_contract_view').as((qb) => { templateStatus: sql`${basicContractTemplates.status}`.as('template_status'), validityPeriod: sql`${basicContractTemplates.validityPeriod}`.as('validity_period'), legalReviewRequired: sql`${basicContractTemplates.legalReviewRequired}`.as('legal_review_required'), - + + // 법무검토 상태 (legalWorks에서 가져옴) + legalReviewStatus: sql`${legalWorks.status}`.as('legal_review_status'), + // 템플릿 파일 정보 templateFilePath: sql`${basicContractTemplates.filePath}`.as('template_file_path'), templateFileName: sql`${basicContractTemplates.fileName}`.as('template_file_name'), @@ -130,7 +136,8 @@ export const basicContractView = pgView('basic_contract_view').as((qb) => { .from(basicContract) .leftJoin(vendors, eq(basicContract.vendorId, vendors.id)) .leftJoin(users, eq(basicContract.requestedBy, users.id)) - .leftJoin(basicContractTemplates, eq(basicContract.templateId, basicContractTemplates.id)); + .leftJoin(basicContractTemplates, eq(basicContract.templateId, basicContractTemplates.id)) + .leftJoin(legalWorks, eq(basicContract.id, legalWorks.basicContractId)); }); // 타입 정의 -- cgit v1.2.3