feat: user usage gql & test case improve (#5076)

This commit is contained in:
DarkSky
2023-12-14 09:50:41 +00:00
parent ad23ead5e4
commit a93c12e122
22 changed files with 364 additions and 132 deletions
-28
View File
@@ -28,7 +28,6 @@ model User {
invoices UserInvoice[]
workspacePermissions WorkspaceUserPermission[]
pagePermissions WorkspacePageUserPermission[]
UserQuotaGates UserQuotaGates[]
@@map("users")
}
@@ -158,33 +157,6 @@ model Features {
@@map("features")
}
// quota gates is a way to enable/disable quotas for a user
// for example, pro plan is a quota that allow some users access to more resources after they pay
model UserQuotaGates {
id String @id @default(uuid()) @db.VarChar
userId String @map("user_id") @db.VarChar
quotaId String? @db.VarChar
reason String @db.VarChar
createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz(6)
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
quota UserQuotas? @relation(fields: [quotaId], references: [id])
@@map("user_quota_gates")
}
model UserQuotas {
id String @id @default(uuid()) @db.VarChar
quota String @db.VarChar
configs Json @db.Json
createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz(6)
UserQuotaGates UserQuotaGates[]
@@map("user_quotas")
}
model Account {
id String @id @default(cuid())
userId String @map("user_id")