summaryrefslogtreecommitdiff
path: root/db/schema/basicContractDocumnet.ts
diff options
context:
space:
mode:
authordujinkim <dujin.kim@dtsolution.co.kr>2025-12-08 08:45:20 +0000
committerdujinkim <dujin.kim@dtsolution.co.kr>2025-12-08 08:45:20 +0000
commit8a19a6fa336768d8b6712752c9d713360067ecb0 (patch)
tree88b9a917663c1a4d94a91c733b91ec193b133af3 /db/schema/basicContractDocumnet.ts
parentd146ca408bea203f44118db180f3c4c06a8d2d21 (diff)
(최겸) 구매 피드백 수정, 안전담당자, pq항목 내 첨부, 내외자 구분, 도로명주소 api 반영(운영기준)
Diffstat (limited to 'db/schema/basicContractDocumnet.ts')
-rw-r--r--db/schema/basicContractDocumnet.ts10
1 files changed, 9 insertions, 1 deletions
diff --git a/db/schema/basicContractDocumnet.ts b/db/schema/basicContractDocumnet.ts
index e571c7e0..5edc9836 100644
--- a/db/schema/basicContractDocumnet.ts
+++ b/db/schema/basicContractDocumnet.ts
@@ -7,6 +7,7 @@ import { rfqLastVendorResponses } from './rfqVendor';
import { rfqLastDetails } from './rfqLast';
import { generalContracts } from './generalContract';
import { legalWorks } from './legal';
+import { vendorPQSubmissions } from './pq';
export const basicContractTemplates = pgTable('basic_contract_templates', {
id: integer("id").primaryKey().generatedAlwaysAsIdentity(),
@@ -42,6 +43,10 @@ export const basicContract = pgTable('basic_contract', {
biddingCompanyId: integer('bidding_company_id').references(() => biddingCompanies.id),
rfqCompanyId: integer('rfq_company_id').references(() => rfqLastDetails.id),
generalContractId: integer('general_contract_id').references(() => generalContracts.id),
+ pqSubmissionId: integer('pq_submission_id').references(() => vendorPQSubmissions.id, {
+ onDelete: "cascade",
+ onUpdate: "cascade",
+ }),
requestedBy: integer('requested_by').references(() => users.id),
// 상태값을 더 세분화
@@ -88,6 +93,8 @@ export const basicContractView = pgView('basic_contract_view').as((qb) => {
vendorId: sql<number | null>`${basicContract.vendorId}`.as('vendor_id'),
requestedBy: sql<number | null>`${basicContract.requestedBy}`.as('requested_by'),
status: sql<string>`${basicContract.status}`.as('basic_contract_status'),
+ pqSubmissionId: sql<number | null>`${basicContract.pqSubmissionId}`.as('pq_submission_id'),
+ pqNumber: sql<string | null>`${vendorPQSubmissions.pqNumber}`.as('pq_number'),
//견적,입찰, 계약
rfqCompanyId: sql<number | null>`${basicContract.rfqCompanyId}`.as('rfq_company_id'),
@@ -156,7 +163,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(vendorPQSubmissions, eq(basicContract.pqSubmissionId, vendorPQSubmissions.id));
});
// 타입 정의