@@ -88,6 +93,10 @@ import { printedpartsApi } from '@/api'
import { withBase } from '@/utils/basePath'
import TouchKeypad from '@/components/TouchKeypad.vue'
+// Fixed tag prefix shown before the label number at the kiosk. Change here if
+// the gage lab tags use a different leading string.
+const LABEL_PREFIX = 'WJ'
+
const step = ref('item')
const item = ref(null)
const badge = ref('')
@@ -255,6 +264,29 @@ function reset() {
outline: none;
}
.entry-input:focus { border-color: var(--primary); }
+.entry-input-group {
+ display: flex;
+ align-items: stretch;
+ width: 16.9rem;
+}
+.entry-prefix {
+ display: flex;
+ align-items: center;
+ padding: 0 0.7rem;
+ font-size: 2rem;
+ font-weight: 700;
+ color: var(--text-light);
+ background: var(--bg-card);
+ border: 1px solid var(--border);
+ border-right: none;
+ border-radius: 0.75rem 0 0 0.75rem;
+}
+.entry-input.has-prefix {
+ width: auto;
+ flex: 1;
+ min-width: 0;
+ border-radius: 0 0.75rem 0.75rem 0;
+}
.entry-input::placeholder {
color: var(--text-light);
font-weight: 400;
diff --git a/plugins/printedparts/frontend/views/PrintedItemDetail.vue b/plugins/printedparts/frontend/views/PrintedItemDetail.vue
index ae69613..52a4cc1 100644
--- a/plugins/printedparts/frontend/views/PrintedItemDetail.vue
+++ b/plugins/printedparts/frontend/views/PrintedItemDetail.vue
@@ -29,7 +29,7 @@
EditBin Label
+ class="btn btn-secondary btn-sm">Part Label
@@ -43,7 +44,7 @@
-
{{ label.itemcode }}
+
{{ label.gagelabtag || label.itemcode }}
@@ -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,