Files
Timetable-V2/server/prisma/schema.prisma
2022-05-01 22:32:50 +02:00

57 lines
1.4 KiB
Plaintext

generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model Timetable {
id Int @id @unique @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
class String
validFrom DateTime @default(now())
validUntil DateTime?
data Json
}
model Substitution {
id Int @id @unique @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
class String[]
date DateTime
type String
lesson Int
changedTeacher String?
changedRoom String?
changedSubject String?
notes String?
removed Boolean @default(false)
SubstitutionChange SubstitutionChange[]
}
model SubstitutionChange {
id Int @id @unique @default(autoincrement())
createdAt DateTime @default(now())
substitution Substitution @relation(fields: [substitutionId], references: [id])
substitutionId Int
type String
changes Json?
parseEvent ParseEvent @relation(fields: [parseEventId], references: [id])
parseEventId Int
}
model ParseEvent {
id Int @id @unique @default(autoincrement())
createdAt DateTime @default(now())
logFile String
originalData String
duration Int
SubstitutionChange SubstitutionChange[]
}