pdf-trainer-ui / backend /templates /T7_SALES_ORDER_ZIMMER.json
Avinash
baseline: initial monorepo snapshot
2d5e892
{
"template_id": "T7_SALES_ORDER_ZIMMER",
"name": "Zimmer Sales Order",
"status": "active",
"version": 2,
"match": {
"keywords_all": [],
"keywords_any": [
"zimmer",
"zimmer biomet",
"biomet",
"sales order",
"purchase order",
"po number"
]
},
"schema": {
"form_id": "trainer_2a12b374e66646689308af1beea88933",
"version": 3,
"page": 1,
"scalar_value_region_mode": "offset_from_anchor_v1",
"fields": [
{
"field_id": "facility_organization",
"label": "Facility / Organization",
"type": "entity",
"anchor_bbox_norm": {
"x": 0.292484,
"y": 0.183081,
"w": 0.01634,
"h": 0.045455
},
"value_bbox_norm": null,
"value_offset_norm": {
"dx": -0.003268,
"dy": 0.045455,
"w": 0.017974,
"h": 0.162879
}
},
{
"field_id": "case_location",
"label": "Case Location / Address",
"type": "text",
"anchor_bbox_norm": {
"x": 0.271242,
"y": 0.14899,
"w": 0.013072,
"h": 0.080808
},
"value_bbox_norm": null,
"value_offset_norm": {
"dx": 0,
"dy": 0.079545,
"w": 0.017974,
"h": 0.165404
}
},
{
"field_id": "vendor",
"label": "Vendor",
"type": "entity",
"anchor_bbox_norm": {
"x": 0.785948,
"y": 0.147727,
"w": 0.027778,
"h": 0.151515
},
"value_bbox_norm": null,
"value_offset_norm": null
},
{
"field_id": "physician_name",
"label": "Physician Name",
"type": "person",
"anchor_bbox_norm": {
"x": 0.248366,
"y": 0.145202,
"w": 0.022876,
"h": 0.084596
},
"value_bbox_norm": null,
"value_offset_norm": {
"dx": 0.003268,
"dy": 0.084596,
"w": 0.02451,
"h": 0.165404
}
},
{
"field_id": "date_of_surgery",
"label": "Date of Surgery",
"type": "date",
"anchor_bbox_norm": {
"x": 0.21732,
"y": 0.156566,
"w": 0.013072,
"h": 0.074495
},
"value_bbox_norm": null,
"value_offset_norm": {
"dx": -0.006536,
"dy": 0.073232,
"w": 0.027778,
"h": 0.167929
}
},
{
"field_id": "items",
"label": "Items / Line Items",
"type": "table",
"table_bbox_norm": {
"x": 0.473856,
"y": 0.109848,
"w": 0.256536,
"h": 0.707071
},
"header_bbox_norm": {
"x": 0.707516,
"y": 0.109848,
"w": 0.021242,
"h": 0.707071
},
"row_height_hint_norm": null,
"columns": [
{
"key": "item_number",
"label": "Item Number",
"bbox_rel_norm": null
},
{
"key": "lot_number",
"label": "Lot Number",
"bbox_rel_norm": null
},
{
"key": "description",
"label": "Description",
"bbox_rel_norm": null
},
{
"key": "qty",
"label": "Qty",
"bbox_rel_norm": null
},
{
"key": "price",
"label": "Price",
"bbox_rel_norm": null
}
],
"table_anchors": [
{
"key": "item_number",
"expected_text": "Item Number",
"bbox_norm": null
},
{
"key": "description",
"expected_text": "Description",
"bbox_norm": null
},
{
"key": "qty",
"expected_text": "Qty",
"bbox_norm": null
}
],
"notes": "Anchors are used at runtime to localize table/header/columns under drift."
}
],
"notes": "Trainer exports config only. Runtime should localize anchors then apply offsets/table mappings to extract values + line items."
}
}