WFDASH-WEBAPP/docs/pocketbase/order_items_v2.collection.json
SJCoetz 7df7a8850f feat(item-history): add getItemHistory service with 5 PB queries
Co-authored-by: Orca <help@stably.ai>
2026-07-29 14:51:58 +02:00

55 lines
4.7 KiB
JSON

{
"name": "order_items_v2",
"type": "base",
"system": false,
"listRule": "@request.auth.id != ''",
"viewRule": "@request.auth.id != ''",
"createRule": "@request.auth.id != ''",
"updateRule": "@request.auth.id != ''",
"deleteRule": "@request.auth.id != ''",
"fields": [
{ "name": "order", "type": "relation", "required": true, "options": { "collectionId": "REPLACE_ORDERS_COLLECTION_ID", "maxSelect": 1, "minSelect": null, "displayFields": [] } },
{ "name": "quote_item", "type": "relation", "required": false, "options": { "collectionId": "REPLACE_QUOTE_ITEMS_COLLECTION_ID", "maxSelect": 1, "minSelect": null, "displayFields": [] } },
{ "name": "purchase_order", "type": "relation", "required": false, "options": { "collectionId": "REPLACE_PURCHASE_ORDERS_COLLECTION_ID", "maxSelect": 1, "minSelect": null, "displayFields": [] } },
{ "name": "supplier", "type": "relation", "required": false, "options": { "collectionId": "REPLACE_SUPPLIERS_COLLECTION_ID", "maxSelect": 1, "minSelect": null, "displayFields": [] } },
{ "name": "drv_id", "type": "relation", "required": false, "options": { "collectionId": "_pb_users_auth_", "maxSelect": 1, "minSelect": null, "displayFields": ["name", "email"] } },
{ "name": "description", "type": "text", "required": true, "options": { "min": 1, "max": 5000, "pattern": "" } },
{ "name": "po_description", "type": "text", "required": false, "options": { "min": null, "max": 5000, "pattern": "" } },
{ "name": "notes", "type": "text", "required": false, "options": { "min": null, "max": 5000, "pattern": "" } },
{ "name": "problem_notes", "type": "text", "required": false, "options": { "min": null, "max": 5000, "pattern": "" } },
{ "name": "quantity", "type": "number", "required": true, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "order_qty", "type": "number", "required": false, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "qty_processed", "type": "number", "required": false, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "qty_assigned", "type": "number", "required": false, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "qty_collected", "type": "number", "required": false, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "qty_delivered", "type": "number", "required": false, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "cost_price", "type": "number", "required": false, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "selling_price", "type": "number", "required": false, "options": { "min": 0, "max": null, "noDecimal": false } },
{ "name": "markup", "type": "number", "required": false, "options": { "min": null, "max": null, "noDecimal": false } },
{ "name": "markup_percent", "type": "number", "required": false, "options": { "min": null, "max": null, "noDecimal": false } },
{ "name": "item_status", "type": "select", "required": true, "options": { "maxSelect": 1, "values": ["pending", "processed", "po_generated", "ready_delivery", "delivered", "cancelled"] } },
{ "name": "drv_status", "type": "select", "required": true, "options": { "maxSelect": 1, "values": ["unassigned", "assigned", "en_route", "collected", "failed"] } },
{ "name": "delivery_status", "type": "select", "required": false, "options": { "maxSelect": 1, "values": ["pending", "ready", "in_transit", "delivered", "failed"] } },
{ "name": "invoice_status", "type": "select", "required": false, "options": { "maxSelect": 1, "values": ["pending", "invoiced", "paid", "cancelled"] } },
{ "name": "problem_flag", "type": "bool", "required": false },
{ "name": "problem_type", "type": "select", "required": false, "options": { "maxSelect": 1, "values": ["stock", "supplier", "driver", "delivery", "pricing", "other"] } },
{ "name": "drv_assigned_at", "type": "date", "required": false, "options": { "min": "", "max": "" } },
{ "name": "drv_collected_at", "type": "date", "required": false, "options": { "min": "", "max": "" } },
{ "name": "delivered_at", "type": "date", "required": false, "options": { "min": "", "max": "" } },
{ "name": "legacy_order_item_id", "type": "text", "required": false, "options": { "min": null, "max": 64, "pattern": "" } }
],
"indexes": [
"CREATE INDEX idx_order_items_v2_order ON order_items_v2 (order)",
"CREATE INDEX idx_order_items_v2_item_status ON order_items_v2 (item_status)",
"CREATE INDEX idx_order_items_v2_drv_status ON order_items_v2 (drv_status)",
"CREATE INDEX idx_order_items_v2_supplier ON order_items_v2 (supplier)",
"CREATE INDEX idx_order_items_v2_drv_id ON order_items_v2 (drv_id)"
]
}