Files
psp_api/prisma/schema/admin/consumers.prisma
T

127 lines
3.4 KiB
Plaintext

model Consumer {
id String @id @default(uuid())
mobile_number String @unique()
first_name String
last_name String
status ConsumerStatus @default(ACTIVE)
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt() @db.Timestamp(0)
accounts ConsumerAccount[]
businessActivities BusinessActivity[]
@@map("consumers")
}
model ConsumerAccount {
id String @id @default(uuid())
role ConsumerRole
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt() @db.Timestamp(0)
user_id String
user Consumer @relation(fields: [user_id], references: [id])
account_id String @unique
account Account @relation(fields: [account_id], references: [id])
permissions PermissionConsumer[]
@@map("consumer_accounts")
}
model BusinessActivity {
id String @id @default(uuid())
name String
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt() @db.Timestamp(0)
guild_id String
user_id String
guild Guild @relation(fields: [guild_id], references: [id])
user Consumer @relation(fields: [user_id], references: [id])
complexes Complex[]
permissionBusinesses PermissionBusiness[]
@@map("business_activities")
}
model Complex {
id String @id @default(uuid())
name String
address String?
tax_id String?
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt() @db.Timestamp(0)
business_activity_id String
business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])
pos_list Pos[]
goods Good[]
good_categories GoodCategory[]
permissionComplexes PermissionComplex[]
@@map("complexes")
}
model Pos {
id String @id @default(uuid())
name String
serial String @unique
model String?
status POSStatus @default(ACTIVE)
pos_type POSType
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt() @db.Timestamp(0)
complex_id String
complex Complex @relation(fields: [complex_id], references: [id])
device_id String?
device Device? @relation(fields: [device_id], references: [id])
provider_id String?
provider Provider? @relation(fields: [provider_id], references: [id])
licenses License[]
permissionPos PermissionPos[]
@@map("poses")
}
// model BusinessAccount {
// id String @id @default(uuid())
// role BusinessRole
// status AccountStatus @default(ACTIVE)
// created_at DateTime @default(now())
// business_activity_id String
// account_id String @unique
// account Account @relation(fields: [account_id], references: [id])
// owned_activities BusinessActivity[] @relation("business_owner")
// @@unique([business_activity_id, account_id])
// @@map("business_accounts")
// }
// model PosAccount {
// id String @id @default(uuid())
// pos_id String
// account_id String
// role POSRole
// created_at DateTime @default(now())
// pos Pos @relation(fields: [pos_id], references: [id])
// account Account @relation(fields: [account_id], references: [id])
// @@unique([pos_id, account_id])
// @@map("pos_accounts")
// }