Updated Media, Adding referential actions(v.2.2)

This commit is contained in:
Laurin
2022-03-20 17:44:11 +01:00
committed by La_Felx
parent fe31a7fa34
commit 9b8c6b18b7
+20 -21
View File
@@ -19,7 +19,7 @@ model Event {
disciplines Discipline[] disciplines Discipline[]
organisations Organisation[] organisations Organisation[]
campaign Campaign[] campaign Campaign[]
visual VisualElement[] visual Media[]
} }
model Campaign { model Campaign {
@@ -29,7 +29,7 @@ model Campaign {
expiresAt DateTime expiresAt DateTime
links Link[] links Link[]
event Event @relation(fields: [eventId], references: [id]) event Event @relation(fields: [eventId], references: [id], onDelete: Cascade)
eventId Int @unique eventId Int @unique
} }
@@ -38,9 +38,9 @@ model Link {
pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid
link String link String
campaign Campaign @relation(fields: [campaignId], references: [id]) campaign Campaign @relation(fields: [campaignId], references: [id], onDelete: Cascade)
campaignId Int campaignId Int
group Group? @relation(fields: [groupId], references: [id]) group Group @relation(fields: [groupId], references: [id], onDelete: Cascade)
groupId Int @unique groupId Int @unique
} }
@@ -56,17 +56,17 @@ model Admin {
} }
model Discipline { model Discipline {
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
minTeamSize Int minTeamSize Int
maxTeamSize Int maxTeamSize Int
roles RoleSchema[]
roles RoleSchema[]
teams Team[] teams Team[]
event Event @relation(fields: [eventId], references: [id]) event Event @relation(fields: [eventId], references: [id], onDelete: Cascade)
eventId Int eventId Int
visual VisualElement[] visual Media[]
} }
model RoleSchema { model RoleSchema {
@@ -76,9 +76,9 @@ model RoleSchema {
schema Json schema Json
roles Role[] roles Role[]
discipline Discipline @relation(fields: [disciplineId], references: [id]) discipline Discipline @relation(fields: [disciplineId], references: [id], onDelete: Cascade)
disciplineId Int disciplineId Int
visual VisualElement[] visual Media[]
} }
model Team { model Team {
@@ -88,7 +88,7 @@ model Team {
leaderEmail String leaderEmail String
roles Role[] @relation(name: "participants") roles Role[] @relation(name: "participants")
discipline Discipline @relation(fields: [disciplineId], references: [id]) discipline Discipline @relation(fields: [disciplineId], references: [id], onDelete: Cascade)
disciplineId Int disciplineId Int
} }
@@ -100,7 +100,7 @@ model Participant {
gender Gender gender Gender
relevance Job relevance Job
group Group @relation(fields: [groupId], references: [id]) group Group @relation(fields: [groupId], references: [id], onDelete: Cascade)
groupId Int groupId Int
roles Role[] roles Role[]
} }
@@ -108,14 +108,13 @@ model Participant {
model Role { model Role {
id Int @id @default(autoincrement()) id Int @id @default(autoincrement())
pid String @unique @default(dbgenerated("gen_random")) pid String @unique @default(dbgenerated("gen_random"))
name String //e.g. runner, swimmer,...
score String score String
participant Participant? @relation(fields: [participantId], references: [id]) participant Participant? @relation(fields: [participantId], references: [id], onDelete: SetNull)
participantId Int? participantId Int?
team Team @relation(name: "participants", fields: [teamId], references: [id]) team Team @relation(name: "participants", fields: [teamId], references: [id], onDelete: Cascade)
teamId Int teamId Int
schema RoleSchema @relation(fields: [schemaId], references: [id]) schema RoleSchema @relation(fields: [schemaId], references: [id], onDelete: Cascade)
schemaId Int schemaId Int
} }
@@ -125,7 +124,7 @@ model Organisation {
name String name String
groups Group[] groups Group[]
event Event @relation(fields: [eventId], references: [id]) event Event @relation(fields: [eventId], references: [id], onDelete: Cascade)
eventId Int eventId Int
} }
@@ -136,18 +135,18 @@ model Group {
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], onDelete: Cascade)
oragnisationId Int oragnisationId Int
participants Participant[] participants Participant[]
link Link? link Link?
admins Admin[] admins Admin[]
} }
model VisualElement { model Media {
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
description String description String
location String location String @unique
event Event[] event Event[]
discipline Discipline[] discipline Discipline[]