Files

116 lines
5.1 KiB
Plaintext
Raw Permalink Normal View History

model LicenseChargeTransaction {
2026-05-07 20:30:24 +03:30
id String @id @default(ulid())
activation_expires_at DateTime
2026-05-07 20:30:24 +03:30
tracking_code String @unique
purchased_count Int
2026-05-07 20:30:24 +03:30
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[]
2026-05-07 20:30:24 +03:30
@@index([partner_id])
@@map("license_charged_transactions")
}
model License {
2026-05-07 20:30:24 +03:30
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])
2026-05-07 20:30:24 +03:30
activation LicenseActivation?
2026-05-07 20:30:24 +03:30
@@index([charge_transaction_id])
@@map("licenses")
}
model LicenseActivation {
2026-05-07 20:30:24 +03:30
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
business_activity_id String @unique
account_allocations LicenseAccountAllocation[]
license_renews LicenseRenew[]
business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])
license License @relation(fields: [license_id], references: [id])
@@map("licenses_activated")
}
model LicenseRenewChargeTransaction {
2026-05-07 20:30:24 +03:30
id String @id @default(ulid())
activation_expires_at DateTime
2026-05-07 20:30:24 +03:30
tracking_code String @unique
purchased_count Int
2026-05-07 20:30:24 +03:30
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt @db.Timestamp(0)
partner_id String
license_renews LicenseRenew[]
partner Partner @relation(fields: [partner_id], references: [id])
2026-05-07 20:30:24 +03:30
@@index([partner_id])
@@map("license_renew_charge_transaction")
}
model LicenseRenew {
2026-05-07 20:30:24 +03:30
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
2026-05-07 20:30:24 +03:30
activation_id String?
activation LicenseActivation? @relation(fields: [activation_id], references: [id])
charge_transaction LicenseRenewChargeTransaction @relation(fields: [charge_transaction_id], references: [id])
2026-05-07 20:30:24 +03:30
@@index([activation_id])
@@index([charge_transaction_id])
@@map("license_renew")
}
model PartnerAccountQuotaChargeTransaction {
2026-05-07 20:30:24 +03:30
id String @id @default(ulid())
activation_expires_at DateTime
2026-05-07 20:30:24 +03:30
tracking_code String @unique
purchased_count Int
2026-05-07 20:30:24 +03:30
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[]
2026-05-07 20:30:24 +03:30
@@index([partner_id])
@@map("partner_account_quota_charge_transaction")
}
model PartnerAccountQuotaCredit {
2026-05-07 20:30:24 +03:30
id String @id @default(ulid())
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt @db.Timestamp(0)
charge_transaction_id String?
2026-05-07 20:30:24 +03:30
allocation LicenseAccountAllocation?
charge_transaction PartnerAccountQuotaChargeTransaction? @relation(fields: [charge_transaction_id], references: [id])
2026-05-07 20:30:24 +03:30
@@index([charge_transaction_id])
@@map("partner_account_quota_credit")
}
model LicenseAccountAllocation {
2026-05-07 20:30:24 +03:30
id String @id @default(ulid())
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt @db.Timestamp(0)
license_activation_id String?
2026-05-07 20:30:24 +03:30
account_id String? @unique
credit_id String? @unique
account ConsumerAccount? @relation(fields: [account_id], references: [id])
credit PartnerAccountQuotaCredit? @relation(fields: [credit_id], references: [id])
license_activation LicenseActivation? @relation(fields: [license_activation_id], references: [id])
2026-05-07 20:30:24 +03:30
@@index([license_activation_id])
@@map("license_account_allocation")
}