{
    "uuid": "5e0470b1dad9cb5b71ea6bdbb0428112",
    "elementtype": "equipment",
    "schema_kind": "equipment",
    "title": "Equipment - Bike Repair Stand",
    "description": "Inventory record for a workshop bike repair stand or self-service repair station: clamp type, max load, integrated tools, floor anchoring.",
    "export_date": "2026-05-31 10:00:00",
    "dolibarr_version": "18.0.0",
    "extrafields": [
        {
            "name": "stand_inventory_number",
            "label": "Inventory number",
            "type": "varchar",
            "size": "50",
            "required": 1,
            "unique": 1,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Internal asset tag",
            "pos": 100,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_serial_number",
            "label": "Serial number",
            "type": "varchar",
            "size": "100",
            "required": 0,
            "unique": 1,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Manufacturer serial number",
            "pos": 105,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_brand",
            "label": "Brand",
            "type": "varchar",
            "size": "100",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Manufacturer name",
            "pos": 110,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_model",
            "label": "Model",
            "type": "varchar",
            "size": "100",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Commercial model name",
            "pos": 115,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_type",
            "label": "Stand type",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "workshop_floor": "Workshop floor stand (professional)",
                    "workshop_wall": "Wall-mounted workshop stand",
                    "self_service_post": "Self-service repair post (public)",
                    "folding": "Folding portable stand",
                    "tripod": "Tripod stand"
                }
            },
            "help": "Type of repair stand",
            "pos": 200,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "workshop_floor",
            "alwayseditable": 0
        },
        {
            "name": "stand_clamp_type",
            "label": "Clamp / attachment type",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "seatpost_clamp": "Seatpost clamp",
                    "top_tube_clamp": "Top-tube clamp",
                    "thru_axle_fork": "Thru-axle fork holder",
                    "bottom_bracket": "Bottom bracket holder",
                    "wheel_hook": "Wheel hook (overhead)",
                    "multi": "Multi-position adjustable"
                }
            },
            "help": "How the bicycle is held on the stand",
            "pos": 205,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "seatpost_clamp",
            "alwayseditable": 0
        },
        {
            "name": "stand_frame_material",
            "label": "Frame material",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "steel": "Steel",
                    "aluminum": "Aluminum",
                    "stainless_steel": "Stainless steel"
                }
            },
            "help": "Main structural material",
            "pos": 210,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "steel",
            "alwayseditable": 0
        },
        {
            "name": "stand_max_load_kg",
            "label": "Maximum load capacity (kg)",
            "type": "double",
            "size": "5,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Max bike weight the stand can safely hold",
            "pos": 215,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_height_adjustment",
            "label": "Height adjustment",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "fixed": "Fixed height",
                    "manual_pin": "Manual pin adjustment",
                    "quick_release": "Quick-release lever",
                    "pneumatic": "Pneumatic / gas spring"
                }
            },
            "help": "Height adjustment mechanism",
            "pos": 220,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "quick_release",
            "alwayseditable": 0
        },
        {
            "name": "stand_rotation",
            "label": "360 degree rotation",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Clamp head rotates 360 degrees",
            "pos": 225,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "stand_tool_tray",
            "label": "Integrated tool tray",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Stand includes a parts / tool tray",
            "pos": 230,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "0",
            "alwayseditable": 0
        },
        {
            "name": "stand_tools_included",
            "label": "Tools included",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "List of tools provided with the stand (hex keys, tyre levers, pump...)",
            "pos": 235,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_anchoring",
            "label": "Floor anchoring",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "free_standing": "Free-standing (no anchor)",
                    "bolt_concrete": "Bolted to concrete",
                    "bolt_tile": "Bolted to tile floor",
                    "weighted_base": "Weighted base plate",
                    "wall_bracket": "Wall bracket"
                }
            },
            "help": "How the stand is secured to the floor or wall",
            "pos": 240,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "free_standing",
            "alwayseditable": 0
        },
        {
            "name": "stand_public_access",
            "label": "Public self-service use",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Stand is accessible to customers without staff supervision",
            "pos": 245,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "0",
            "alwayseditable": 0
        },
        {
            "name": "stand_location",
            "label": "Location in premises",
            "type": "varchar",
            "size": "150",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Room or area identifier",
            "pos": 400,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_status",
            "label": "Inventory status",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "in_service": "In service",
                    "in_repair": "In repair",
                    "out_of_order": "Out of order",
                    "decommissioned": "Decommissioned"
                }
            },
            "help": "Operational status",
            "pos": 500,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "in_service",
            "alwayseditable": 0
        },
        {
            "name": "stand_commissioning_date",
            "label": "Commissioning date",
            "type": "date",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "",
            "pos": 510,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_last_inspection_date",
            "label": "Last inspection date",
            "type": "date",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "",
            "pos": 515,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_supplier",
            "label": "Supplier",
            "type": "varchar",
            "size": "150",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "",
            "pos": 600,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "stand_notes",
            "label": "Notes",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Free-form notes",
            "pos": 700,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        }
    ],
    "pdf_layout": {
        "version": "1.1",
        "page": {
            "format": "A4",
            "orientation": "portrait",
            "margins": {
                "top": 20,
                "right": 15,
                "bottom": 20,
                "left": 15
            },
            "font_family": "helvetica",
            "font_size": 10
        },
        "header": {
            "title": "Equipment - Bike Repair Stand",
            "subtitle": "Workshop repair stand inventory record",
            "logo_placeholder": "top-right",
            "show_page_number": true,
            "show_generated_date": true
        },
        "footer": {
            "text": "Generated via schemas.cap-rel.fr"
        },
        "sections": [
            {
                "id": "identification",
                "title": "Identification",
                "layout": "two_columns",
                "fields": [
                    "stand_inventory_number",
                    "stand_serial_number",
                    "stand_brand",
                    "stand_model"
                ]
            },
            {
                "id": "technical",
                "title": "Technical specifications",
                "layout": "two_columns",
                "fields": [
                    "stand_type",
                    "stand_clamp_type",
                    "stand_frame_material",
                    "stand_max_load_kg",
                    "stand_height_adjustment",
                    "stand_rotation"
                ]
            },
            {
                "id": "tools",
                "title": "Tools and accessories",
                "layout": "two_columns",
                "fields": [
                    "stand_tool_tray",
                    "stand_tools_included"
                ]
            },
            {
                "id": "installation",
                "title": "Installation",
                "layout": "two_columns",
                "fields": [
                    "stand_anchoring",
                    "stand_public_access",
                    "stand_location"
                ]
            },
            {
                "id": "status",
                "title": "Status and follow-up",
                "layout": "highlight_box",
                "fields": [
                    "stand_status",
                    "stand_commissioning_date",
                    "stand_last_inspection_date"
                ]
            },
            {
                "id": "commercial",
                "title": "Purchase",
                "layout": "two_columns",
                "fields": [
                    "stand_supplier"
                ]
            },
            {
                "id": "notes",
                "title": "Notes",
                "layout": "full_width",
                "fields": [
                    "stand_notes"
                ]
            }
        ],
        "field_render": {
            "stand_status": {
                "style": "highlight",
                "color_by_value": {
                    "in_service": "#1f8a1f",
                    "in_repair": "#e69500",
                    "out_of_order": "#c00000",
                    "decommissioned": "#555555"
                }
            },
            "stand_inventory_number": {
                "style": "bold",
                "frame": true
            },
            "stand_max_load_kg": {
                "suffix": " kg"
            },
            "stand_notes": {
                "min_height": 30,
                "show_if_empty": false
            }
        }
    }
}
