{ "name": "Equipment", "type": "object", "properties": { "equipment_id": { "type": "string", "description": "Equipment item ID" }, "equipment_name": { "type": "string", "description": "Name of the equipment item" }, "category": { "type": "string", "enum": [ "uniform", "kitchen", "service", "cleaning", "tech", "safety", "furniture", "bar", "other" ], "description": "Equipment category" }, "subcategory": { "type": "string", "description": "More specific type (e.g., chef coat, serving tray, POS tablet)" }, "description": { "type": "string" }, "vendor_id": { "type": "string", "description": "Vendor that owns or provides this equipment" }, "vendor_name": { "type": "string" }, "client_id": { "type": "string", "description": "Client/Business where equipment is assigned (if applicable)" }, "client_name": { "type": "string" }, "site_id": { "type": "string", "description": "Site where equipment is located" }, "shift_id": { "type": "string", "description": "Shift this equipment is assigned to (if temporary)" }, "event_id": { "type": "string", "description": "Event this equipment is for" }, "assigned_to_worker_id": { "type": "string", "description": "Worker currently assigned this equipment (for uniforms, tablets, etc.)" }, "assigned_to_worker_name": { "type": "string" }, "quantity": { "type": "number", "default": 1, "description": "Quantity of this item" }, "unit_cost": { "type": "number", "minimum": 0, "description": "Cost per unit" }, "replacement_value": { "type": "number", "minimum": 0, "description": "Replacement value per unit" }, "serial_number": { "type": "string", "description": "Serial or asset tag number" }, "condition": { "type": "string", "enum": [ "new", "good", "fair", "poor", "damaged", "lost" ], "default": "good" }, "status": { "type": "string", "enum": [ "available", "assigned", "in_use", "returned", "in_repair", "retired" ], "default": "available", "description": "Current status of the equipment" }, "purchase_date": { "type": "string", "format": "date" }, "last_inspection_date": { "type": "string", "format": "date" }, "next_inspection_date": { "type": "string", "format": "date" }, "requires_cleaning": { "type": "boolean", "default": false, "description": "Whether item needs cleaning before next use" }, "notes": { "type": "string" } }, "required": [ "equipment_name", "category", "status" ] }