enterprise-saa-s-dashboard-.../prisma/schema.prisma

280 lines
9.7 KiB
Plaintext

generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "sqlite"
url = env("DATABASE_URL")
}
model app_platform_versions {
id Int @id @default(autoincrement())
app_id Int
platform_id Int
major_version Int @default(0)
minor_version Int @default(0)
patch_version Int @default(0)
version_name String
description String? @default("")
file_type String? @default("")
file_url String? @default("")
file_size Int? @default(0)
distribution_type String? @default("")
primary_url String? @default("")
fallback_url String? @default("")
url_expire_time String? @default("")
signature_info String? @default("")
min_support_version String? @default("")
os_min_version String? @default("")
status Int @default(1)
is_force_update Int @default(0)
release_date String
changelog String? @default("[]")
app_platforms app_platforms @relation(fields: [platform_id], references: [id], onDelete: NoAction, onUpdate: NoAction)
applications applications @relation(fields: [app_id], references: [id], onDelete: NoAction, onUpdate: NoAction)
}
model app_platforms {
id Int @id @default(autoincrement())
app_id Int
platform_type Int @default(2)
description String? @default("")
extend_info String? @default("")
create_time String
app_platform_versions app_platform_versions[]
applications applications @relation(fields: [app_id], references: [id], onDelete: NoAction, onUpdate: NoAction)
}
model app_statistics {
id Int @id @default(autoincrement())
app_id Int
version_id Int?
date String
download_count Int? @default(0)
install_count Int? @default(0)
active_count Int? @default(0)
crash_count Int? @default(0)
create_time String
applications applications @relation(fields: [app_id], references: [id], onDelete: NoAction, onUpdate: NoAction)
}
model applications {
id Int @id @default(autoincrement())
name String
package_name String? @default("")
description String? @default("")
logo_url String? @default("")
status Int @default(1)
create_time String
update_time String
app_platform_versions app_platform_versions[]
app_platforms app_platforms[]
app_statistics app_statistics[]
}
model board_types {
id Int @id @default(autoincrement())
name String
category String
device_models String @default("[]")
description String? @default("")
status String @default("启用")
}
model board_versions {
id Int @id @default(autoincrement())
type String
version String
status String @default("在产")
}
model bom_templates {
id Int @id @default(autoincrement())
model_code String
name String
material_name String @default("")
model String
versions String @default("[]")
qty Int @default(1)
required Int @default(1)
need_calibration Int @default(0)
enforce_version_match Int @default(0)
device_models device_models @relation(fields: [model_code], references: [code], onDelete: NoAction, onUpdate: NoAction)
}
model checklist_templates {
id Int @id @default(autoincrement())
model_code String
name String
required Int @default(1)
sort_order Int @default(0)
device_models device_models @relation(fields: [model_code], references: [code], onDelete: NoAction, onUpdate: NoAction)
}
model config_files {
id Int @id @default(autoincrement())
name String
model String
version String
create_time String
status String @default("生效")
voltage String? @default("")
current String? @default("")
duty_cycle String? @default("")
pulse_width String? @default("")
iterations String? @default("")
channels Int? @default(0)
sample_rate String? @default("")
voltage_range String? @default("")
waveform String? @default("")
ssid String? @default("")
license_templates license_templates[]
}
model device_bom_records {
id Int @id @default(autoincrement())
device_sn String
name String
material_sn String? @default("")
model String? @default("")
version String? @default("")
calibration String? @default("无需校准")
}
model device_logs {
id Int @id @default(autoincrement())
device_sn String
action String
operator String? @default("")
detail String? @default("")
date String
}
model device_models {
id Int @id @default(autoincrement())
name String
code String @unique(map: "sqlite_autoindex_device_models_1")
status String @default("在产")
description String? @default("")
create_date String
bom_templates bom_templates[]
checklist_templates checklist_templates[]
}
model devices {
id Int @id @default(autoincrement())
sn String @unique(map: "sqlite_autoindex_devices_1")
model String
type String
status String @default("装配中")
firmware String? @default("")
production_date String
customer String? @default("-")
batch String? @default("")
}
model firmware {
id Int @id @default(autoincrement())
version String
board_version String? @default("-")
type String
date String
status String @default("草稿")
size String? @default("")
downloads Int? @default(0)
hw_range String? @default("")
upgrade_type String? @default("可选")
signed Int? @default(0)
md5 String? @default("")
sha256 String? @default("")
notes String? @default("[]")
model_code String? @default("")
}
model license_download_logs {
id Int @id @default(autoincrement())
license_id Int
device_sn String
download_time String
ip_address String? @default("")
app_version String? @default("")
licenses licenses @relation(fields: [license_id], references: [id], onDelete: NoAction, onUpdate: NoAction)
}
model license_templates {
id Int @id @default(autoincrement())
name String
model_code String
auth_items String @default("[]")
config_id Int?
status String @default("启用")
created_at String @default("datetime('now')")
config_files config_files? @relation(fields: [config_id], references: [id], onDelete: NoAction, onUpdate: NoAction)
}
model licenses {
id Int @id @default(autoincrement())
model String
modules String
expiry String? @default("")
status String @default("生效")
config_id Int?
license_file String? @default("")
device_sn String? @default("")
license_download_logs license_download_logs[]
}
model material_categories {
id Int @id @default(autoincrement())
name String @unique(map: "sqlite_autoindex_material_categories_1")
description String? @default("")
has_firmware Int @default(0)
has_calibration Int @default(0)
sort_order Int @default(0)
status String @default("启用")
}
model materials {
id Int @id @default(autoincrement())
sn String @unique(map: "sqlite_autoindex_materials_1")
name String @default("")
category String @default("")
type String
device_model String @default("")
version String
description String? @default("")
firmware String? @default("-")
status String @default("在库")
device_sn String? @default("-")
production_date String
calib_status String? @default("-")
calib_date String? @default("-")
}
/// The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client.
model repair_orders {
id String? @id
sn String
fault_type String
status String @default("待处理")
priority String @default("中")
assignee String? @default("")
create_date String
description String? @default("")
@@ignore
}
model scrap_records {
id Int @id @default(autoincrement())
sn String
model String
reason String
applicant String? @default("")
status String @default("待审批")
order_id String? @default("")
date String
value Int? @default(0)
materials String? @default("[]")
}