Files
psp_api/prisma/schema/shared/customers.prisma
T

54 lines
1.5 KiB
Plaintext
Raw Normal View History

model Customer {
id String @id @default(ulid())
is_favorite Boolean? @default(false)
type CustomerType
2026-03-29 18:06:41 +03:30
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt @db.Timestamp(0)
deleted_at DateTime? @db.Timestamp(0)
individual CustomerIndividual?
legal CustomerLegal?
sales_invoices SalesInvoice[]
@@map("customers")
}
model CustomerIndividual {
first_name String @db.VarChar(255)
last_name String @db.VarChar(255)
national_id String @db.Char(10)
mobile_number String @db.Char(15)
postal_code String @db.Char(10)
economic_code String? @db.Char(10)
2026-04-08 18:15:44 +03:30
customer_id String @id
customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)
business_activity_id String
business_activity BusinessActivity @relation(fields: [business_activity_id], references: id)
@@unique([business_activity_id, national_id])
@@index([business_activity_id])
@@map("customer_individuals")
}
model CustomerLegal {
name String @db.VarChar(255)
economic_code String @db.Char(10)
registration_number String? @db.Char(20)
postal_code String @db.Char(10)
2026-04-08 18:15:44 +03:30
customer_id String @id
customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)
business_activity_id String
business_activity BusinessActivity @relation(fields: [business_activity_id], references: id)
@@unique([business_activity_id, economic_code])
@@index([business_activity_id])
@@map("customer_legal")
}