pick orders

This commit is contained in:
2026-03-18 07:27:33 -05:00
parent e00639bb8b
commit 02e14319ac
10 changed files with 763 additions and 40 deletions

View File

@@ -28,6 +28,7 @@ model User {
workOrderCompletions WorkOrderCompletion[]
workOrderOperationLaborEntries WorkOrderOperationLaborEntry[]
assignedWorkOrderOperations WorkOrderOperation[]
shipmentPicks ShipmentPick[]
approvedSalesQuotes SalesQuote[] @relation("SalesQuoteApprovedBy")
approvedSalesOrders SalesOrder[] @relation("SalesOrderApprovedBy")
salesQuoteRevisionsCreated SalesQuoteRevision[] @relation("SalesQuoteRevisionCreatedBy")
@@ -164,6 +165,7 @@ model InventoryItem {
purchaseOrderLines PurchaseOrderLine[]
workOrders WorkOrder[]
workOrderMaterialIssues WorkOrderMaterialIssue[]
shipmentPicks ShipmentPick[]
operations InventoryItemOperation[]
reservations InventoryReservation[]
transfers InventoryTransfer[]
@@ -224,6 +226,7 @@ model Warehouse {
purchaseReceipts PurchaseReceipt[]
workOrders WorkOrder[]
workOrderMaterialIssues WorkOrderMaterialIssue[]
shipmentPicks ShipmentPick[]
reservations InventoryReservation[]
transferSources InventoryTransfer[] @relation("InventoryTransferFromWarehouse")
transferDestinations InventoryTransfer[] @relation("InventoryTransferToWarehouse")
@@ -295,6 +298,7 @@ model WarehouseLocation {
purchaseReceipts PurchaseReceipt[]
workOrders WorkOrder[]
workOrderMaterialIssues WorkOrderMaterialIssue[]
shipmentPicks ShipmentPick[]
reservations InventoryReservation[]
transferSourceLocations InventoryTransfer[] @relation("InventoryTransferFromLocation")
transferDestinationLocations InventoryTransfer[] @relation("InventoryTransferToLocation")
@@ -509,6 +513,7 @@ model SalesOrderLine {
item InventoryItem @relation(fields: [itemId], references: [id], onDelete: Restrict)
workOrders WorkOrder[]
purchaseOrderLines PurchaseOrderLine[]
shipmentPicks ShipmentPick[]
@@index([orderId, position])
}
@@ -560,10 +565,35 @@ model Shipment {
updatedAt DateTime @updatedAt
salesOrder SalesOrder @relation(fields: [salesOrderId], references: [id], onDelete: Restrict)
projects Project[]
picks ShipmentPick[]
@@index([salesOrderId, createdAt])
}
model ShipmentPick {
id String @id @default(cuid())
shipmentId String
salesOrderLineId String
itemId String
warehouseId String
locationId String
quantity Int
notes String
createdById String?
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
shipment Shipment @relation(fields: [shipmentId], references: [id], onDelete: Cascade)
salesOrderLine SalesOrderLine @relation(fields: [salesOrderLineId], references: [id], onDelete: Restrict)
item InventoryItem @relation(fields: [itemId], references: [id], onDelete: Restrict)
warehouse Warehouse @relation(fields: [warehouseId], references: [id], onDelete: Restrict)
location WarehouseLocation @relation(fields: [locationId], references: [id], onDelete: Restrict)
createdBy User? @relation(fields: [createdById], references: [id], onDelete: SetNull)
@@index([shipmentId, createdAt])
@@index([salesOrderLineId, createdAt])
@@index([warehouseId, locationId, createdAt])
}
model Project {
id String @id @default(cuid())
projectNumber String @unique