Merge branch 'feature-db-schema' into dev

+ Extend the admin model
+ more
This commit is contained in:
Stephan
2021-11-10 10:42:40 +01:00
+18 -13
View File
@@ -10,10 +10,11 @@ generator client {
} }
model Event { model Event {
id Int @id @default(autoincrement()) // Primary key id Int @id @default(autoincrement()) // Primary key
pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid // Public key pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid // Public key
date DateTime date DateTime
name String name String
description String
disciplines Discipline[] disciplines Discipline[]
admins Admin[] admins Admin[]
@@ -24,11 +25,12 @@ model Event {
model Campaign { model Campaign {
id Int @id @default(autoincrement()) id Int @id @default(autoincrement())
pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid
start DateTime
expiresAt DateTime expiresAt DateTime
event Event @relation(fields: [eventId], references: [id])
links Link[] links Link[]
eventId Int @unique event Event @relation(fields: [eventId], references: [id])
eventId Int @unique
} }
model Link { model Link {
@@ -38,7 +40,7 @@ model Link {
campaign Campaign @relation(fields: [campaignId], references: [id]) campaign Campaign @relation(fields: [campaignId], references: [id])
campaignId Int campaignId Int
group Group @relation(fields: [groupId], references: [id]) group Group? @relation(fields: [groupId], references: [id])
groupId Int @unique groupId Int @unique
} }
@@ -48,6 +50,8 @@ model Admin {
name String name String
password String // TODO: Probably specify hash size (VarChar or some other type) password String // TODO: Probably specify hash size (VarChar or some other type)
permission_level AdminLevel @default(STANDARD) permission_level AdminLevel @default(STANDARD)
revision String
groups Group[]
event Event @relation(fields: [eventId], references: [id]) event Event @relation(fields: [eventId], references: [id])
eventId Int eventId Int
@@ -117,16 +121,17 @@ model Organisation {
} }
model Group { model Group {
id Int @id @default(autoincrement()) id Int @id @default(autoincrement())
pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid
name String name String
user_limit Int @default(40) user_limit Int @default(40)
level Int level Int
oragnisation Organisation @relation(fields: [oragnisationId], references: [id]) oragnisation Organisation @relation(fields: [oragnisationId], references: [id])
oragnisationId Int oragnisationId Int
participants Participant[] participants Participant[]
link Link? link Link?
admins Admin[]
} }
enum AdminLevel { enum AdminLevel {
@@ -137,5 +142,5 @@ enum AdminLevel {
enum Gender { enum Gender {
MALE MALE
FEMALE FEMALE
OTHERS OTHER
} }