feat(customers): add DTOs for individual and legal customer creation

- Created CreateCustomerIndividualDto for individual customer data with fields: first_name, last_name, national_code, postal_code, is_favorite, and economic_code.
- Created CreateCustomerLegalDto for legal customer data with fields: company_name, economic_code, registration_number, and postal_code.
This commit is contained in:
2026-02-24 12:42:10 +03:30
parent c7cd7cd855
commit b949500482
27 changed files with 4116 additions and 600 deletions
+39 -14
View File
@@ -1,19 +1,44 @@
model Customer {
id String @id @default(uuid())
first_name String @db.VarChar(255)
last_name String @db.VarChar(255)
email String? @db.VarChar(255)
mobile_number String @unique @db.Char(11)
address String? @db.Text
is_active Boolean @default(true)
account_id String
complex_id String
id String @id @default(uuid())
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt @db.Timestamp(0)
deleted_at DateTime? @db.Timestamp(0)
type CustomerType
complex_id String
is_favorite Boolean? @default(false)
created_at DateTime @default(now()) @db.Timestamp(0)
updated_at DateTime @updatedAt @db.Timestamp(0)
deleted_at DateTime? @db.Timestamp(0)
sales_invoices SalesInvoice[]
sales_invoices SalesInvoice[]
customerIndividuals CustomerIndividual?
customerLegals CustomerLegal?
@@map("customers")
}
model CustomerIndividual {
customer_id String @id
first_name String @db.VarChar(255)
last_name String @db.VarChar(255)
national_id String @db.Char(10)
postal_code String @db.Char(10)
economic_code String? @db.Char(10)
complex_id String
customer Customer @relation(fields: [customer_id], references: [id])
@@unique([complex_id, national_id])
@@map("customer_individuals")
}
model CustomerLegal {
customer_id String @id
company_name String @db.VarChar(255)
economic_code String @db.Char(10)
registration_number String @db.Char(20)
postal_code String @db.Char(10)
complex_id String
customer Customer @relation(fields: [customer_id], references: [id])
@@unique([complex_id, registration_number])
@@map("customer_legal")
}