printedparts: kiosk tag prefix + labels use the gage lab tag

Kiosk item lookup shows a fixed "WJ" prefix addon so operators type only the
number off the label. The label page - and the detail "Part Label" button,
renamed from "Bin Label" - now barcodes and prints the gage lab tag, falling
back to the internal item code when a part has no tag assigned.
This commit is contained in:
cproudlock
2026-07-20 11:18:16 -04:00
parent 31139267d1
commit 108d4d396c
3 changed files with 43 additions and 10 deletions

View File

@@ -5,7 +5,8 @@
<h3>Print 3D Parts Bin Labels (1in x 0.5in)</h3>
<p>
Each label is one page on 1in x 0.5in roll stock: CODE128 barcode of
the item code, scannable at the parts kiosk.
the gage lab tag (the internal code is used when a part has no tag),
scannable at the parts kiosk.
</p>
<div v-if="loading" class="loading-msg">Loading parts...</div>
@@ -20,7 +21,7 @@
>
<input type="checkbox" :checked="isSelected(item)" @click.stop />
<label>
<strong><code>{{ item.itemcode }}</code></strong>
<strong><code>{{ item.gagelabtag || item.itemcode }}</code></strong>
<div class="alias">{{ item.itemname }}</div>
</label>
</div>
@@ -43,7 +44,7 @@
<div class="labels-container">
<div v-for="(label, index) in printLabels" :key="index" class="bin-label">
<svg :ref="element => setBarcodeElement(element, index)" class="bin-barcode"></svg>
<div class="bin-code">{{ label.itemcode }}</div>
<div class="bin-code">{{ label.gagelabtag || label.itemcode }}</div>
</div>
</div>
</div>
@@ -111,9 +112,9 @@ watch(printLabels, async labels => {
labels.forEach((label, index) => {
const element = barcodeElements.value[index]
if (element) {
// CODE128 of the short item code fits 1x0.5in with comfortable
// scanner tolerance; a QR at this size would be marginal.
JsBarcode(element, label.itemcode, {
// CODE128 of the gage lab tag (or the internal code when untagged) fits
// 1x0.5in with comfortable scanner tolerance; a QR here would be marginal.
JsBarcode(element, label.gagelabtag || label.itemcode, {
format: 'CODE128',
displayValue: false,
width: 1.4,