// This is your Prisma schema file, // learn more about it in the docs: https://pris.ly/d/prisma-schema // Looking for ways to speed up your queries, or scale easily with your serverless or edge functions? // Try Prisma Accelerate: https://pris.ly/cli/accelerate-init generator client { provider = "prisma-client-js" } datasource db { provider = "mysql" url = env("DATABASE_URL") } // https://github.com/pantharshit00/prisma-docs-generator generator docs { provider = "node node_modules/prisma-docs-generator" output = "../docs" } // https://github.com/notiz-dev/prisma-dbml-generator // Viewer: https://dbdiagram.io/d generator dbml { provider = "prisma-dbml-generator" output = "../docs" outputName = "schema.dbml" projectName = "AssetFlow" } enum contentType { voice_alarm voice_explainer voice_acknowledgement voice_ending } enum alertType { generic fire fault intrusion clear } model AlarmContacts { id Int @id @unique @default(autoincrement()) name String phone String @unique comment String? Prios Priorities[] } model Priorities { id Int @id @unique @default(autoincrement()) Contact AlarmContacts @relation(fields: [contactId], references: [id]) contactId Int priority Int actionplan ActionPlan @relation(fields: [actionplanId], references: [id]) actionplanId Int @@unique([priority, actionplanId]) // TODO: Does this work with sqlite??? } model ActionPlan { id Int @id @unique @default(autoincrement()) name String comment String? prio Priorities[] content Content[] // aka. all voice files Alerts Alerts[] } model Content { id Int @id @unique @default(autoincrement()) type contentType name String filename String actionplan ActionPlan[] } model Alerts { id Int @id @unique @default(autoincrement()) type alertType message String? actionplan ActionPlan? @relation(fields: [actionplanId], references: [id]) actionplanId Int? // TODO: TBD // Quelle: BMA / EMA // Date // Date (Clear) ??? } // https://spacecdn.de/file/bma_stoe_v1.mp3 // https://spacecdn.de/file/quittiert_v1.mp3 // https://spacecdn.de/file/angenehmen_tag_v1.mp3 // https://spacecdn.de/file/erklaerung_v1.mp3