mirror of
https://github.com/detleph/server.git
synced 2026-09-04 08:36:06 +02:00
updating Role model (v.2.0)
This commit is contained in:
+31
-16
@@ -46,8 +46,9 @@ model Link {
|
|||||||
model Admin {
|
model Admin {
|
||||||
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 // TODO: This should maybe be unique
|
name String @unique
|
||||||
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 DateTime @default(now())
|
revision DateTime @default(now())
|
||||||
groups Group[]
|
groups Group[]
|
||||||
@@ -59,34 +60,33 @@ model Discipline {
|
|||||||
name String
|
name String
|
||||||
minTeamSize Int
|
minTeamSize Int
|
||||||
maxTeamSize Int
|
maxTeamSize Int
|
||||||
roles Role[]
|
roles RoleSchema[]
|
||||||
|
|
||||||
teams Team[]
|
teams Team[]
|
||||||
event Event @relation(fields: [eventId], references: [id])
|
event Event @relation(fields: [eventId], references: [id])
|
||||||
eventId Int
|
eventId Int
|
||||||
}
|
}
|
||||||
|
|
||||||
model Role {
|
model RoleSchema {
|
||||||
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
|
||||||
schema Json
|
schema Json
|
||||||
|
|
||||||
participant Participant[]
|
roles Role[]
|
||||||
discipline Discipline @relation(fields: [disciplineId], references: [id])
|
discipline Discipline @relation(fields: [disciplineId], references: [id])
|
||||||
disciplineId Int
|
disciplineId Int
|
||||||
}
|
}
|
||||||
|
|
||||||
model Team {
|
model Team {
|
||||||
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
|
||||||
|
leaderEmail String
|
||||||
|
|
||||||
participants Participant[] @relation(name: "participants")
|
roles Role[] @relation(name: "participants")
|
||||||
discipline Discipline @relation(fields: [disciplineId], references: [id])
|
discipline Discipline @relation(fields: [disciplineId], references: [id])
|
||||||
disciplineId Int
|
disciplineId Int
|
||||||
leader Participant? @relation(name: "leader", fields: [leaderId], references: [id])
|
|
||||||
leaderId Int @unique
|
|
||||||
}
|
}
|
||||||
|
|
||||||
model Participant {
|
model Participant {
|
||||||
@@ -94,18 +94,28 @@ model Participant {
|
|||||||
pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid
|
pid String @unique @default(dbgenerated("gen_random_uuid()")) @db.Uuid
|
||||||
firstName String
|
firstName String
|
||||||
lastName String
|
lastName String
|
||||||
email String
|
|
||||||
gender Gender
|
gender Gender
|
||||||
|
|
||||||
verified Boolean @default(false)
|
verified Boolean @default(false)
|
||||||
|
|
||||||
group Group @relation(fields: [groupId], references: [id])
|
group Group @relation(fields: [groupId], references: [id])
|
||||||
groupId Int
|
groupId Int
|
||||||
team Team @relation(name: "participants", fields: [teamId], references: [id])
|
|
||||||
teamId Int
|
|
||||||
leaderOf Team? @relation(name: "leader")
|
|
||||||
roles Role[]
|
roles Role[]
|
||||||
|
}
|
||||||
|
|
||||||
|
model Role {
|
||||||
|
id Int @id @default(autoincrement())
|
||||||
|
pid String @unique @default(dbgenerated("gen_random"))
|
||||||
|
name String //e.g. runner, swimmer,...
|
||||||
|
importance Job
|
||||||
|
score String
|
||||||
|
|
||||||
|
participant Participant? @relation(fields: [participantId], references: [id])
|
||||||
|
participantId Int?
|
||||||
|
team Team @relation(name: "participants", fields: [teamId], references: [id])
|
||||||
|
teamId Int
|
||||||
|
schema RoleSchema @relation(fields: [schemaId], references: [id])
|
||||||
|
schemaId Int
|
||||||
}
|
}
|
||||||
|
|
||||||
model Organisation {
|
model Organisation {
|
||||||
@@ -142,3 +152,8 @@ enum Gender {
|
|||||||
FEMALE
|
FEMALE
|
||||||
OTHER
|
OTHER
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum Job {
|
||||||
|
TEAMLEADER
|
||||||
|
MEMBER
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user