Merge branch 'dev' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management
This commit is contained in:
@@ -5211,53 +5211,6 @@ model grid_standards {
|
||||
@@index([company_code], map: "idx_grid_standards_company")
|
||||
}
|
||||
|
||||
/// This model or at least one of its fields has comments in the database, and requires an additional setup for migrations: Read more: https://pris.ly/d/database-comments
|
||||
model data_relationship_bridge {
|
||||
bridge_id Int @id @default(autoincrement())
|
||||
relationship_id Int?
|
||||
from_table_name String @db.VarChar(100)
|
||||
from_column_name String @db.VarChar(100)
|
||||
from_key_value String? @db.VarChar(500)
|
||||
from_record_id String? @db.VarChar(100)
|
||||
to_table_name String @db.VarChar(100)
|
||||
to_column_name String @db.VarChar(100)
|
||||
to_key_value String? @db.VarChar(500)
|
||||
to_record_id String? @db.VarChar(100)
|
||||
connection_type String @db.VarChar(20)
|
||||
company_code String @db.VarChar(50)
|
||||
created_at DateTime? @default(now()) @db.Timestamp(6)
|
||||
created_by String? @db.VarChar(50)
|
||||
updated_at DateTime? @default(now()) @db.Timestamp(6)
|
||||
updated_by String? @db.VarChar(50)
|
||||
is_active String? @default("Y") @db.Char(1)
|
||||
bridge_data Json?
|
||||
table_relationships table_relationships? @relation(fields: [relationship_id], references: [relationship_id], onDelete: NoAction, onUpdate: NoAction)
|
||||
|
||||
@@index([company_code, is_active], map: "idx_data_bridge_company_active")
|
||||
@@index([connection_type], map: "idx_data_bridge_connection_type")
|
||||
}
|
||||
|
||||
/// This model or at least one of its fields has comments in the database, and requires an additional setup for migrations: Read more: https://pris.ly/d/database-comments
|
||||
model table_relationships {
|
||||
relationship_id Int @id @default(autoincrement())
|
||||
relationship_name String @db.VarChar(200)
|
||||
from_table_name String @db.VarChar(100)
|
||||
from_column_name String @db.VarChar(100)
|
||||
to_table_name String @db.VarChar(100)
|
||||
to_column_name String @db.VarChar(100)
|
||||
relationship_type String @db.VarChar(20)
|
||||
connection_type String @db.VarChar(20)
|
||||
company_code String @db.VarChar(50)
|
||||
settings Json?
|
||||
is_active String? @default("Y") @db.Char(1)
|
||||
created_date DateTime? @default(now()) @db.Timestamp(6)
|
||||
created_by String? @db.VarChar(50)
|
||||
updated_date DateTime? @default(now()) @db.Timestamp(6)
|
||||
updated_by String? @db.VarChar(50)
|
||||
data_relationship_bridge data_relationship_bridge[]
|
||||
|
||||
@@index([to_table_name], map: "idx_table_relationships_to_table")
|
||||
}
|
||||
|
||||
// 템플릿 표준 관리 테이블
|
||||
model template_standards {
|
||||
@@ -5333,3 +5286,88 @@ model layout_standards {
|
||||
@@index([category], map: "idx_layout_standards_category")
|
||||
@@index([company_code], map: "idx_layout_standards_company")
|
||||
}
|
||||
model table_relationships {
|
||||
relationship_id Int @id @default(autoincrement())
|
||||
diagram_id Int // 관계도 그룹 식별자
|
||||
relationship_name String @db.VarChar(200)
|
||||
from_table_name String @db.VarChar(100)
|
||||
from_column_name String @db.VarChar(100)
|
||||
to_table_name String @db.VarChar(100)
|
||||
to_column_name String @db.VarChar(100)
|
||||
relationship_type String @db.VarChar(20) // 'one-to-one', 'one-to-many', 'many-to-one', 'many-to-many'
|
||||
connection_type String @db.VarChar(20) // 'simple-key', 'data-save', 'external-call'
|
||||
company_code String @db.VarChar(50)
|
||||
settings Json? // 연결 종류별 세부 설정
|
||||
is_active String? @default("Y") @db.Char(1)
|
||||
created_date DateTime? @default(now()) @db.Timestamp(6)
|
||||
created_by String? @db.VarChar(50)
|
||||
updated_date DateTime? @default(now()) @db.Timestamp(6)
|
||||
updated_by String? @db.VarChar(50)
|
||||
|
||||
// 역참조 관계
|
||||
bridges data_relationship_bridge[]
|
||||
|
||||
@@index([company_code], map: "idx_table_relationships_company_code")
|
||||
@@index([diagram_id], map: "idx_table_relationships_diagram_id")
|
||||
@@index([from_table_name], map: "idx_table_relationships_from_table")
|
||||
@@index([to_table_name], map: "idx_table_relationships_to_table")
|
||||
@@index([company_code, diagram_id], map: "idx_table_relationships_company_diagram")
|
||||
}
|
||||
|
||||
// 테이블 간 데이터 관계 중계 테이블 - 실제 데이터 연결 정보 저장
|
||||
model data_relationship_bridge {
|
||||
bridge_id Int @id @default(autoincrement())
|
||||
relationship_id Int
|
||||
|
||||
// 소스 테이블 정보
|
||||
from_table_name String @db.VarChar(100)
|
||||
from_column_name String @db.VarChar(100)
|
||||
|
||||
// 타겟 테이블 정보
|
||||
to_table_name String @db.VarChar(100)
|
||||
to_column_name String @db.VarChar(100)
|
||||
|
||||
// 메타데이터
|
||||
connection_type String @db.VarChar(20) // 'simple-key', 'data-save', 'external-call'
|
||||
company_code String @db.VarChar(50)
|
||||
created_at DateTime @default(now()) @db.Timestamp(6)
|
||||
created_by String? @db.VarChar(50)
|
||||
updated_at DateTime @default(now()) @db.Timestamp(6)
|
||||
updated_by String? @db.VarChar(50)
|
||||
is_active String @default("Y") @db.Char(1)
|
||||
|
||||
// 추가 설정 (JSON)
|
||||
bridge_data Json? // 연결 종류별 추가 데이터
|
||||
|
||||
// 관계 설정
|
||||
relationship table_relationships @relation(fields: [relationship_id], references: [relationship_id], onDelete: Cascade)
|
||||
|
||||
@@index([relationship_id], map: "idx_data_bridge_relationship")
|
||||
@@index([from_table_name], map: "idx_data_bridge_from_table")
|
||||
@@index([to_table_name], map: "idx_data_bridge_to_table")
|
||||
@@index([company_code], map: "idx_data_bridge_company")
|
||||
@@index([is_active], map: "idx_data_bridge_active")
|
||||
@@index([connection_type], map: "idx_data_bridge_connection_type")
|
||||
@@index([from_table_name, from_column_name], map: "idx_data_bridge_from_lookup")
|
||||
@@index([to_table_name, to_column_name], map: "idx_data_bridge_to_lookup")
|
||||
@@index([company_code, is_active], map: "idx_data_bridge_company_active")
|
||||
}
|
||||
|
||||
// 데이터플로우 관계도 - JSON 구조로 저장
|
||||
model dataflow_diagrams {
|
||||
diagram_id Int @id @default(autoincrement())
|
||||
diagram_name String @db.VarChar(255)
|
||||
relationships Json // 모든 관계 정보를 JSON으로 저장
|
||||
node_positions Json? // 테이블 노드의 캔버스 위치 정보 (JSON 형태)
|
||||
company_code String @db.VarChar(50)
|
||||
created_at DateTime? @default(now()) @db.Timestamp(6)
|
||||
updated_at DateTime? @default(now()) @updatedAt @db.Timestamp(6)
|
||||
created_by String? @db.VarChar(50)
|
||||
updated_by String? @db.VarChar(50)
|
||||
|
||||
@@unique([company_code, diagram_name], map: "unique_diagram_name_per_company")
|
||||
@@index([company_code], map: "idx_dataflow_diagrams_company")
|
||||
@@index([diagram_name], map: "idx_dataflow_diagrams_name")
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user