From 5fd19e89092a3f3b82b3e3860a0c401aa42cb622 Mon Sep 17 00:00:00 2001 From: Anthony Date: Mon, 11 Jul 2022 01:07:56 +0100 Subject: [PATCH] feat(database): add restrict, ban, tempban and more roles --- .gitignore | 3 +++ prisma/schema.prisma | 45 +++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 45 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 9eec09c..2373892 100644 --- a/.gitignore +++ b/.gitignore @@ -105,3 +105,6 @@ dist # IntelliJ IDEA /.idea/ + +# Prisma migration files +/prisma/migrations/ diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 4536a1c..3bfcc26 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -10,7 +10,46 @@ datasource db { url = env("DATABASE_URL") } -model user { - id Int @id - vegan Boolean @default(false) +model User { + id String @id @db.VarChar(255) + level Int @default(0) + xp Int @default(0) + balance Int @default(0) + lastDaily DateTime + vegan Boolean @default(false) + activist Boolean @default(false) + trusted Boolean @default(false) + plus Boolean @default(false) + muted Boolean @default(false) + Restrict Restrict[] + Ban Ban[] + TempBan TempBan[] +} + +model Restrict { + id Int @id @default(autoincrement()) + user User @relation(fields: [userId], references: [id]) + userId String + startTime DateTime @default(now()) + endedTime DateTime? + reason String +} + +model Ban { + id Int @id @default(autoincrement()) + user User @relation(fields: [userId], references: [id]) + userId String + time DateTime @default(now()) + active Boolean @default(true) + reason String +} + +model TempBan { + id Int @id @default(autoincrement()) + user User @relation(fields: [userId], references: [id]) + userId String + startTime DateTime @default(now()) + endedTime DateTime + active Boolean @default(true) + reason String }