81 lines
2.2 KiB
Plaintext
81 lines
2.2 KiB
Plaintext
generator client {
|
||
provider = "prisma-client-js"
|
||
binaryTargets = ["darwin-arm64", "linux-arm64-openssl-3.0.x", "debian-openssl-3.0.x", "linux-musl-openssl-3.0.x"]
|
||
output = "../node_modules/.prisma/client"
|
||
}
|
||
|
||
datasource db {
|
||
provider = "sqlite"
|
||
url = "file:./praktika.db"
|
||
}
|
||
|
||
model Admin {
|
||
id Int @id @default(1)
|
||
password String
|
||
}
|
||
|
||
model Dienststelle {
|
||
id Int @id @default(autoincrement())
|
||
name String @unique
|
||
plaetze Int
|
||
anmeldungenWunsch1 Anmeldung[] @relation("Wunsch1")
|
||
anmeldungenWunsch2 Anmeldung[] @relation("Wunsch2")
|
||
anmeldungenWunsch3 Anmeldung[] @relation("Wunsch3")
|
||
zugewiesene Anmeldung[] @relation("Zugewiesen")
|
||
}
|
||
|
||
model Praktikumszeitraum {
|
||
id Int @id @default(autoincrement())
|
||
bezeichnung String @unique // z. B. "Frühjahr 2025"
|
||
startDatum DateTime
|
||
endDatum DateTime
|
||
}
|
||
|
||
enum Status {
|
||
OFFEN
|
||
ANGENOMMEN
|
||
ABGELEHNT
|
||
}
|
||
|
||
model Anmeldung {
|
||
id Int @id @default(autoincrement())
|
||
anrede String
|
||
vorname String
|
||
nachname String
|
||
geburtsdatum String
|
||
strasse String
|
||
hausnummer String
|
||
ort String
|
||
plz String
|
||
telefon String
|
||
email String @unique
|
||
noteDeutsch Int
|
||
noteMathe Int
|
||
sozialverhalten String
|
||
schulart String
|
||
motivation String
|
||
|
||
praktikumId Int
|
||
|
||
wunsch1 Dienststelle @relation("Wunsch1", fields: [wunsch1Id], references: [id])
|
||
wunsch1Id Int
|
||
wunsch2 Dienststelle @relation("Wunsch2", fields: [wunsch2Id], references: [id])
|
||
wunsch2Id Int
|
||
wunsch3 Dienststelle @relation("Wunsch3", fields: [wunsch3Id], references: [id])
|
||
wunsch3Id Int
|
||
status Status @default(OFFEN)
|
||
zugewiesenId Int?
|
||
zugewiesen Dienststelle? @relation("Zugewiesen", fields: [zugewiesenId], references: [id])
|
||
|
||
timestamp DateTime @default(now())
|
||
|
||
pdfs PdfDatei[] @relation("AnmeldungPdfs")
|
||
}
|
||
|
||
model PdfDatei {
|
||
id Int @id @default(autoincrement())
|
||
pfad String
|
||
anmeldung Anmeldung @relation("AnmeldungPdfs", fields: [anmeldungId], references: [id])
|
||
anmeldungId Int
|
||
}
|