dev #46
|
|
@ -1,94 +0,0 @@
|
|||
// 화면관리 시스템 Prisma 스키마
|
||||
// 기존 schema.prisma에 추가할 모델들
|
||||
|
||||
model screen_definitions {
|
||||
screen_id Int @id @default(autoincrement())
|
||||
screen_name String @db.VarChar(100)
|
||||
screen_code String @unique @db.VarChar(50)
|
||||
table_name String @db.VarChar(100)
|
||||
company_code String @db.VarChar(50)
|
||||
description String? @db.Text
|
||||
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)
|
||||
|
||||
// 관계
|
||||
layouts screen_layouts[]
|
||||
menu_assignments screen_menu_assignments[]
|
||||
|
||||
@@index([company_code])
|
||||
}
|
||||
|
||||
model screen_layouts {
|
||||
layout_id Int @id @default(autoincrement())
|
||||
screen_id Int
|
||||
component_type String @db.VarChar(50)
|
||||
component_id String @unique @db.VarChar(100)
|
||||
parent_id String? @db.VarChar(100)
|
||||
position_x Int
|
||||
position_y Int
|
||||
width Int
|
||||
height Int
|
||||
properties Json?
|
||||
display_order Int @default(0)
|
||||
created_date DateTime @default(now()) @db.Timestamp(6)
|
||||
|
||||
// 관계
|
||||
screen screen_definitions @relation(fields: [screen_id], references: [screen_id], onDelete: Cascade)
|
||||
widgets screen_widgets[]
|
||||
|
||||
@@index([screen_id])
|
||||
}
|
||||
|
||||
model screen_widgets {
|
||||
widget_id Int @id @default(autoincrement())
|
||||
layout_id Int
|
||||
table_name String @db.VarChar(100)
|
||||
column_name String @db.VarChar(100)
|
||||
widget_type String @db.VarChar(50)
|
||||
label String? @db.VarChar(200)
|
||||
placeholder String? @db.VarChar(200)
|
||||
is_required Boolean @default(false)
|
||||
is_readonly Boolean @default(false)
|
||||
validation_rules Json?
|
||||
display_properties Json?
|
||||
created_date DateTime @default(now()) @db.Timestamp(6)
|
||||
|
||||
// 관계
|
||||
layout screen_layouts @relation(fields: [layout_id], references: [layout_id], onDelete: Cascade)
|
||||
|
||||
@@index([layout_id])
|
||||
}
|
||||
|
||||
model screen_templates {
|
||||
template_id Int @id @default(autoincrement())
|
||||
template_name String @db.VarChar(100)
|
||||
template_type String @db.VarChar(50)
|
||||
company_code String @db.VarChar(50)
|
||||
description String? @db.Text
|
||||
layout_data Json?
|
||||
is_public Boolean @default(false)
|
||||
created_by String? @db.VarChar(50)
|
||||
created_date DateTime @default(now()) @db.Timestamp(6)
|
||||
|
||||
@@index([company_code])
|
||||
}
|
||||
|
||||
model screen_menu_assignments {
|
||||
assignment_id Int @id @default(autoincrement())
|
||||
screen_id Int
|
||||
menu_objid Decimal @db.Decimal
|
||||
company_code String @db.VarChar(50)
|
||||
display_order Int @default(0)
|
||||
is_active String @default("Y") @db.Char(1)
|
||||
created_date DateTime @default(now()) @db.Timestamp(6)
|
||||
created_by String? @db.VarChar(50)
|
||||
|
||||
// 관계
|
||||
screen screen_definitions @relation(fields: [screen_id], references: [screen_id], onDelete: Cascade)
|
||||
|
||||
@@unique([screen_id, menu_objid, company_code])
|
||||
@@index([company_code])
|
||||
}
|
||||
Loading…
Reference in New Issue