{ "version": "2.0", "components": [ { "id": "comp_search", "url": "@/lib/registry/components/v2-table-search-widget", "size": { "width": 1920, "height": 80 }, "position": { "x": 0, "y": 20, "z": 1 }, "overrides": { "type": "v2-table-search-widget", "label": "검색 필터", "webTypeConfig": {} }, "displayOrder": 0 }, { "id": "comp_table", "url": "@/lib/registry/components/v2-table-list", "size": { "width": 1920, "height": 800 }, "position": { "x": 0, "y": 150, "z": 1 }, "overrides": { "type": "v2-table-list", "label": "수주 목록", "filter": { "enabled": true, "filters": [] }, "height": "auto", "actions": { "actions": [], "bulkActions": false, "showActions": false }, "columns": [ { "align": "left", "order": 0, "format": "text", "visible": true, "sortable": true, "columnName": "order_no", "searchable": true, "displayName": "수주번호" }, { "align": "left", "order": 1, "format": "text", "visible": true, "sortable": true, "columnName": "partner_id", "searchable": true, "displayName": "거래처" }, { "align": "left", "order": 2, "format": "text", "visible": true, "sortable": true, "columnName": "part_code", "searchable": true, "displayName": "품목코드" }, { "align": "left", "order": 3, "format": "text", "visible": true, "sortable": true, "columnName": "part_name", "searchable": true, "displayName": "품명" }, { "align": "left", "order": 4, "format": "text", "visible": true, "sortable": true, "columnName": "spec", "searchable": true, "displayName": "규격" }, { "align": "left", "order": 5, "format": "text", "visible": true, "sortable": true, "columnName": "material", "searchable": true, "displayName": "재질" }, { "align": "right", "order": 6, "format": "number", "visible": true, "sortable": true, "columnName": "order_qty", "searchable": false, "displayName": "수주수량" }, { "align": "right", "order": 7, "format": "number", "visible": true, "sortable": true, "columnName": "ship_qty", "searchable": false, "displayName": "출하수량" }, { "align": "right", "order": 8, "format": "number", "visible": true, "sortable": true, "columnName": "balance_qty", "searchable": false, "displayName": "잔량" }, { "align": "right", "order": 9, "format": "number", "visible": true, "sortable": true, "columnName": "inventory_qty", "searchable": false, "displayName": "현재고" }, { "align": "right", "order": 10, "format": "number", "visible": true, "sortable": true, "columnName": "plan_ship_qty", "searchable": false, "displayName": "출하계획량" }, { "align": "right", "order": 11, "format": "number", "visible": true, "sortable": true, "columnName": "unit_price", "searchable": false, "displayName": "단가" }, { "align": "right", "order": 12, "format": "number", "visible": true, "sortable": true, "columnName": "total_amount", "searchable": false, "displayName": "금액" }, { "align": "left", "order": 13, "format": "text", "visible": true, "sortable": true, "columnName": "delivery_partner_id", "searchable": true, "displayName": "납품처" }, { "align": "left", "order": 14, "format": "text", "visible": true, "sortable": true, "columnName": "delivery_address", "searchable": true, "displayName": "납품장소" }, { "align": "center", "order": 15, "format": "text", "visible": true, "sortable": true, "columnName": "shipping_method", "searchable": true, "displayName": "배송방법" }, { "align": "center", "order": 16, "format": "date", "visible": true, "sortable": true, "columnName": "due_date", "searchable": false, "displayName": "납기일" }, { "align": "center", "order": 17, "format": "date", "visible": true, "sortable": true, "columnName": "order_date", "searchable": false, "displayName": "수주일" }, { "align": "center", "order": 18, "format": "text", "visible": true, "sortable": true, "columnName": "status", "searchable": true, "displayName": "상태" }, { "align": "left", "order": 19, "format": "text", "visible": true, "sortable": true, "columnName": "manager_name", "searchable": true, "displayName": "담당자" }, { "align": "left", "order": 20, "format": "text", "visible": true, "sortable": true, "columnName": "memo", "searchable": true, "displayName": "메모" } ], "autoLoad": true, "checkbox": { "enabled": true, "multiple": true, "position": "left", "selectAll": true }, "pagination": { "enabled": true, "pageSize": 20, "showPageInfo": true, "pageSizeOptions": [10, 20, 50, 100], "showSizeSelector": true }, "showFooter": true, "showHeader": true, "tableStyle": { "theme": "default", "rowHeight": "normal", "borderStyle": "light", "headerStyle": "default", "hoverEffect": true, "alternateRows": true }, "displayMode": "table", "stickyHeader": false, "selectedTable": "sales_order_mng", "webTypeConfig": {}, "horizontalScroll": { "enabled": true, "maxColumnWidth": 300, "minColumnWidth": 80, "maxVisibleColumns": 10 } }, "displayOrder": 1 }, { "id": "comp_btn_upload", "url": "@/lib/registry/components/v2-button-primary", "size": { "width": 100, "height": 40 }, "position": { "x": 1610, "y": 30, "z": 1 }, "overrides": { "text": "엑셀 업로드", "type": "v2-button-primary", "label": "엑셀 업로드 버튼", "action": { "type": "excel_upload" }, "variant": "secondary", "actionType": "button", "webTypeConfig": { "variant": "secondary", "actionType": "custom" } }, "displayOrder": 2 }, { "id": "comp_btn_download", "url": "@/lib/registry/components/v2-button-primary", "size": { "width": 110, "height": 40 }, "position": { "x": 1720, "y": 30, "z": 1 }, "overrides": { "text": "엑셀 다운로드", "type": "v2-button-primary", "label": "엑셀 다운로드 버튼", "action": { "type": "excel_download" }, "variant": "secondary", "actionType": "button", "webTypeConfig": { "variant": "secondary", "actionType": "custom" } }, "displayOrder": 3 }, { "id": "comp_btn_register", "url": "@/lib/registry/components/v2-button-primary", "size": { "width": 100, "height": 40 }, "position": { "x": 1500, "y": 100, "z": 1 }, "overrides": { "text": "수주 등록", "type": "v2-button-primary", "label": "수주 등록 버튼", "action": { "type": "modal", "modalSize": "lg", "modalTitle": "수주 등록", "targetScreenId": 3732, "successMessage": "저장되었습니다.", "errorMessage": "저장 중 오류가 발생했습니다." }, "variant": "success", "actionType": "button", "webTypeConfig": { "variant": "default", "actionType": "custom" } }, "displayOrder": 4 }, { "id": "comp_btn_edit", "url": "@/lib/registry/components/v2-button-primary", "size": { "width": 80, "height": 40 }, "position": { "x": 1610, "y": 100, "z": 1 }, "overrides": { "text": "수정", "type": "v2-button-primary", "label": "수정 버튼", "action": { "type": "edit", "modalSize": "lg", "modalTitle": "수주 수정", "targetScreenId": 3732, "successMessage": "수정되었습니다.", "errorMessage": "수정 중 오류가 발생했습니다." }, "variant": "secondary", "actionType": "button", "webTypeConfig": { "variant": "secondary", "actionType": "custom" } }, "displayOrder": 5 }, { "id": "comp_btn_delete", "url": "@/lib/registry/components/v2-button-primary", "size": { "width": 80, "height": 40 }, "position": { "x": 1700, "y": 100, "z": 1 }, "overrides": { "text": "삭제", "type": "v2-button-primary", "label": "삭제 버튼", "action": { "type": "delete", "successMessage": "삭제되었습니다.", "errorMessage": "삭제 중 오류가 발생했습니다." }, "variant": "danger", "actionType": "button", "webTypeConfig": { "variant": "secondary", "actionType": "custom" } }, "displayOrder": 6 }, { "id": "comp_btn_shipment", "url": "@/lib/registry/components/v2-button-primary", "size": { "width": 100, "height": 40 }, "position": { "x": 1790, "y": 100, "z": 1 }, "overrides": { "text": "출하계획", "type": "v2-button-primary", "label": "출하계획 버튼", "action": { "type": "custom" }, "variant": "secondary", "actionType": "button", "webTypeConfig": { "variant": "secondary", "actionType": "custom" } }, "displayOrder": 7 } ] }