model LicenseChargeTransaction { id String @id @default(ulid()) activation_expires_at DateTime tracking_code String @unique() purchased_count Int created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) partner_id String partner Partner @relation(fields: [partner_id], references: [id]) licenses License[] @@map("license_charged_transactions") } model License { id String @id @default(ulid()) accounts_limit Int @default(2) created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) charge_transaction_id String charge_transaction LicenseChargeTransaction @relation(fields: [charge_transaction_id], references: [id]) activation LicenseActivation? @@map("licenses") } model LicenseActivation { id String @id @unique() @default(ulid()) starts_at DateTime expires_at DateTime created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) license_id String @unique license License @relation(fields: [license_id], references: [id]) business_activity_id String @unique business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id]) license_renews LicenseRenew[] account_allocations LicenseAccountAllocation[] @@map("licenses_activated") } model LicenseRenewChargeTransaction { id String @id @default(ulid()) activation_expires_at DateTime tracking_code String @unique() purchased_count Int created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) partner_id String partner Partner @relation(fields: [partner_id], references: [id]) license_renews LicenseRenew[] @@map("license_renew_charge_transaction") } model LicenseRenew { id String @id @default(ulid()) expires_at DateTime created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) charge_transaction_id String charge_transaction LicenseRenewChargeTransaction @relation(fields: [charge_transaction_id], references: [id]) activation_id String? activation LicenseActivation? @relation(fields: [activation_id], references: [id]) @@map("license_renew") } model PartnerAccountQuotaChargeTransaction { id String @id @default(ulid()) activation_expires_at DateTime tracking_code String @unique() purchased_count Int created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) partner_id String partner Partner @relation(fields: [partner_id], references: [id]) credits PartnerAccountQuotaCredit[] @@map("partner_account_quota_charge_transaction") } model PartnerAccountQuotaCredit { id String @id @default(ulid()) created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) charge_transaction_id String? charge_transaction PartnerAccountQuotaChargeTransaction? @relation(fields: [charge_transaction_id], references: [id]) allocation LicenseAccountAllocation? @@map("partner_account_quota_credit") } model LicenseAccountAllocation { id String @id @default(ulid()) created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) license_activation_id String? license_activation LicenseActivation? @relation(fields: [license_activation_id], references: [id]) account_id String? @unique account ConsumerAccount? @relation(fields: [account_id], references: [id]) credit_id String? @unique credit PartnerAccountQuotaCredit? @relation(fields: [credit_id], references: [id]) @@map("license_account_allocation") }