sales documents
This commit is contained in:
@@ -24,6 +24,10 @@ model User {
|
||||
ownedProjects Project[] @relation("ProjectOwner")
|
||||
workOrderMaterialIssues WorkOrderMaterialIssue[]
|
||||
workOrderCompletions WorkOrderCompletion[]
|
||||
approvedSalesQuotes SalesQuote[] @relation("SalesQuoteApprovedBy")
|
||||
approvedSalesOrders SalesOrder[] @relation("SalesOrderApprovedBy")
|
||||
salesQuoteRevisionsCreated SalesQuoteRevision[] @relation("SalesQuoteRevisionCreatedBy")
|
||||
salesOrderRevisionsCreated SalesOrderRevision[] @relation("SalesOrderRevisionCreatedBy")
|
||||
}
|
||||
|
||||
model Role {
|
||||
@@ -305,6 +309,8 @@ model SalesQuote {
|
||||
status String
|
||||
issueDate DateTime
|
||||
expiresAt DateTime?
|
||||
approvedAt DateTime?
|
||||
approvedById String?
|
||||
discountPercent Float @default(0)
|
||||
taxPercent Float @default(0)
|
||||
freightAmount Float @default(0)
|
||||
@@ -312,8 +318,10 @@ model SalesQuote {
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
customer Customer @relation(fields: [customerId], references: [id], onDelete: Restrict)
|
||||
approvedBy User? @relation("SalesQuoteApprovedBy", fields: [approvedById], references: [id], onDelete: SetNull)
|
||||
lines SalesQuoteLine[]
|
||||
projects Project[]
|
||||
revisions SalesQuoteRevision[]
|
||||
}
|
||||
|
||||
model SalesQuoteLine {
|
||||
@@ -339,6 +347,8 @@ model SalesOrder {
|
||||
customerId String
|
||||
status String
|
||||
issueDate DateTime
|
||||
approvedAt DateTime?
|
||||
approvedById String?
|
||||
discountPercent Float @default(0)
|
||||
taxPercent Float @default(0)
|
||||
freightAmount Float @default(0)
|
||||
@@ -346,9 +356,11 @@ model SalesOrder {
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
customer Customer @relation(fields: [customerId], references: [id], onDelete: Restrict)
|
||||
approvedBy User? @relation("SalesOrderApprovedBy", fields: [approvedById], references: [id], onDelete: SetNull)
|
||||
lines SalesOrderLine[]
|
||||
shipments Shipment[]
|
||||
projects Project[]
|
||||
revisions SalesOrderRevision[]
|
||||
}
|
||||
|
||||
model SalesOrderLine {
|
||||
@@ -368,6 +380,38 @@ model SalesOrderLine {
|
||||
@@index([orderId, position])
|
||||
}
|
||||
|
||||
model SalesQuoteRevision {
|
||||
id String @id @default(cuid())
|
||||
quoteId String
|
||||
revisionNumber Int
|
||||
reason String
|
||||
snapshot String
|
||||
createdById String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
quote SalesQuote @relation(fields: [quoteId], references: [id], onDelete: Cascade)
|
||||
createdBy User? @relation("SalesQuoteRevisionCreatedBy", fields: [createdById], references: [id], onDelete: SetNull)
|
||||
|
||||
@@unique([quoteId, revisionNumber])
|
||||
@@index([quoteId, createdAt])
|
||||
}
|
||||
|
||||
model SalesOrderRevision {
|
||||
id String @id @default(cuid())
|
||||
orderId String
|
||||
revisionNumber Int
|
||||
reason String
|
||||
snapshot String
|
||||
createdById String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
order SalesOrder @relation(fields: [orderId], references: [id], onDelete: Cascade)
|
||||
createdBy User? @relation("SalesOrderRevisionCreatedBy", fields: [createdById], references: [id], onDelete: SetNull)
|
||||
|
||||
@@unique([orderId, revisionNumber])
|
||||
@@index([orderId, createdAt])
|
||||
}
|
||||
|
||||
model Shipment {
|
||||
id String @id @default(cuid())
|
||||
shipmentNumber String @unique
|
||||
|
||||
Reference in New Issue
Block a user