59 lines
1.8 KiB
Plaintext
59 lines
1.8 KiB
Plaintext
model SalesInvoice {
|
|
id String @id @default(uuid())
|
|
code String @unique @db.VarChar(100)
|
|
total_amount Decimal @db.Decimal(15, 2)
|
|
notes String? @db.Text
|
|
unknown_customer Json? @db.Json
|
|
invoice_date DateTime? @default(now()) @db.Timestamp(0)
|
|
created_at DateTime @default(now()) @db.Timestamp(0)
|
|
updated_at DateTime @updatedAt @db.Timestamp(0)
|
|
|
|
customer_id String?
|
|
account_id String
|
|
complex_id String
|
|
|
|
customer Customer? @relation(fields: [customer_id], references: [id])
|
|
items SalesInvoiceItem[]
|
|
payments SalesInvoicePayment[]
|
|
|
|
@@map("sales_invoices")
|
|
}
|
|
|
|
model SalesInvoiceItem {
|
|
id String @id @default(uuid())
|
|
quantity Decimal @db.Decimal(10, 0)
|
|
unit_type UnitType
|
|
unit_price Decimal @default(0.00) @db.Decimal(15, 2)
|
|
total_amount Decimal @default(0.00) @db.Decimal(15, 2)
|
|
created_at DateTime @default(now()) @db.Timestamp(0)
|
|
discount Decimal @default(0.00) @db.Decimal(15, 2)
|
|
notes String? @db.Text
|
|
|
|
invoice_id String
|
|
good_id String?
|
|
service_id String?
|
|
|
|
payload Json?
|
|
|
|
invoice SalesInvoice @relation(fields: [invoice_id], references: [id])
|
|
good Good? @relation(fields: [good_id], references: [id])
|
|
service Service? @relation(fields: [service_id], references: [id])
|
|
|
|
@@index([invoice_id, good_id])
|
|
@@map("sales_invoice_items")
|
|
}
|
|
|
|
model SalesInvoicePayment {
|
|
id String @id @default(uuid())
|
|
invoice_id String
|
|
amount Decimal @db.Decimal(15, 2)
|
|
payment_method PaymentMethodType
|
|
paid_at DateTime
|
|
created_at DateTime @default(now())
|
|
|
|
invoice SalesInvoice @relation(fields: [invoice_id], references: [id])
|
|
|
|
@@index([invoice_id])
|
|
@@map("sales_invoice_payments")
|
|
}
|