From 6439d1ccd9dd930d378c9268e45e5caa89a897ee Mon Sep 17 00:00:00 2001 From: cproudlock Date: Fri, 17 Jul 2026 08:00:35 -0400 Subject: [PATCH] printedparts stage 8: 1x0.5in bin labels New public print view at /print/printedparts-labels following the plugin-owned USB label precedent: multi-select with per-item copies, CODE128 of the item code via JsBarcode (a QR at this size is at the edge of scanner tolerance), one label per page on 1in x 0.5in roll stock via a new @page size. The Detail page's Bin Label button preselects its item through ?item=; the list header gains a batch Print Labels button. --- frontend/src/router/index.js | 6 + .../src/views/print/PrintedPartsLabels.vue | 207 ++++++++++++++++++ .../views/printedparts/PrintedItemDetail.vue | 2 + .../views/printedparts/PrintedItemsList.vue | 8 +- 4 files changed, 222 insertions(+), 1 deletion(-) create mode 100644 frontend/src/views/print/PrintedPartsLabels.vue diff --git a/frontend/src/router/index.js b/frontend/src/router/index.js index f472551..fadf850 100644 --- a/frontend/src/router/index.js +++ b/frontend/src/router/index.js @@ -117,6 +117,12 @@ const routes = [ component: () => import('../views/print/USBLabelBatch.vue'), meta: { plugin: 'usb' } }, + { + path: '/print/printedparts-labels', + name: 'print-printedparts-labels', + component: () => import('../views/print/PrintedPartsLabels.vue'), + meta: { plugin: 'printedparts' } + }, { path: '/', component: AppLayout, diff --git a/frontend/src/views/print/PrintedPartsLabels.vue b/frontend/src/views/print/PrintedPartsLabels.vue new file mode 100644 index 0000000..c2dd1c6 --- /dev/null +++ b/frontend/src/views/print/PrintedPartsLabels.vue @@ -0,0 +1,207 @@ + + + + + + + diff --git a/frontend/src/views/printedparts/PrintedItemDetail.vue b/frontend/src/views/printedparts/PrintedItemDetail.vue index d14a158..1bd805e 100644 --- a/frontend/src/views/printedparts/PrintedItemDetail.vue +++ b/frontend/src/views/printedparts/PrintedItemDetail.vue @@ -27,6 +27,8 @@ Edit + Bin Label diff --git a/frontend/src/views/printedparts/PrintedItemsList.vue b/frontend/src/views/printedparts/PrintedItemsList.vue index c444dc8..e17f700 100644 --- a/frontend/src/views/printedparts/PrintedItemsList.vue +++ b/frontend/src/views/printedparts/PrintedItemsList.vue @@ -2,7 +2,12 @@
@@ -131,6 +136,7 @@ function debouncedSearch() { text-overflow: ellipsis; white-space: nowrap; } +.header-actions { display: flex; gap: 0.5rem; } .lowstock-filter { display: inline-flex; align-items: center;