Add permission checks.

This commit is contained in:
Brian Cao 2022-11-20 00:48:13 -08:00
parent 51e2331315
commit 78225691df
20 changed files with 225 additions and 333 deletions

View file

@ -14,12 +14,12 @@ model User {
createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
isDeleted Boolean @default(false) @map("is_deleted")
groupRole GroupRole[]
groupUser GroupUser[]
userRole UserRole[]
teamWebsite TeamWebsite[]
teamUser TeamUser[]
userWebsite UserWebsite[]
groupRole GroupRole[]
groupUser GroupUser[]
userRole UserRole[]
teamUser TeamUser[]
Website Website? @relation(fields: [websiteId], references: [id])
websiteId String? @db.Uuid
@@map("user")
}
@ -47,11 +47,13 @@ model Website {
domain String? @db.VarChar(500)
shareId String? @unique @map("share_id") @db.VarChar(64)
revId Int @default(0) @map("rev_id") @db.Integer
userId String? @map("user_id") @db.Uuid
teamId String? @map("team_id") @db.Uuid
createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
isDeleted Boolean @default(false) @map("is_deleted")
teamWebsite TeamWebsite[]
userWebsite UserWebsite[]
team Team[]
user User[]
@@index([createdAt])
@@index([shareId])
@ -153,6 +155,7 @@ model RolePermission {
role Role @relation(fields: [roleId], references: [id])
permission Permission @relation(fields: [permissionId], references: [id])
@@unique([roleId, permissionId])
@@map("role_permission")
}
@ -168,6 +171,7 @@ model UserRole {
user User @relation(fields: [userId], references: [id])
team Team? @relation(fields: [teamId], references: [id])
@@unique([roleId, userId, teamId])
@@map("user_role")
}
@ -177,28 +181,14 @@ model Team {
createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
isDeleted Boolean @default(false) @map("is_deleted")
teamWebsites TeamWebsite[]
teamUsers TeamUser[]
UserRole UserRole[]
teamUsers TeamUser[]
UserRole UserRole[]
Website Website? @relation(fields: [websiteId], references: [id])
websiteId String? @db.Uuid
@@map("team")
}
model TeamWebsite {
id String @id() @unique() @map("team_website_id") @db.Uuid
teamId String @map("team_id") @db.Uuid
websiteId String @map("website_id") @db.Uuid
createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
isDeleted Boolean @default(false) @map("is_deleted")
website Website @relation(fields: [websiteId], references: [id])
team Team @relation(fields: [teamId], references: [id])
user User? @relation(fields: [userId], references: [id])
userId String? @db.Uuid
@@map("team_website")
}
model TeamUser {
id String @id() @unique() @map("team_user_id") @db.Uuid
teamId String @map("team_id") @db.Uuid
@ -212,16 +202,3 @@ model TeamUser {
@@map("team_user")
}
model UserWebsite {
id String @id() @unique() @map("user_website_id") @db.Uuid
userId String @map("user_id") @db.Uuid
websiteId String @map("website_id") @db.Uuid
createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz(6)
isDeleted Boolean @default(false) @map("is_deleted")
website Website @relation(fields: [websiteId], references: [id])
user User @relation(fields: [userId], references: [id])
@@map("user_website")
}