refactor user accounts structure
This commit is contained in:
@@ -0,0 +1,126 @@
|
||||
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")
|
||||
// }
|
||||
Reference in New Issue
Block a user