From 08bb5d242135e2c1f0fc17d2b5f7ae548275a3a2 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期五, 28 八月 2026 17:15:33 +0800
Subject: [PATCH] feat(mes): 实现临时码预生成和补录功能
---
src/views/mes/pro/components/qr-trace-modal.vue | 44 ++++++++++++++++++++++++++++++++++++++------
1 files changed, 38 insertions(+), 6 deletions(-)
diff --git a/src/views/mes/pro/components/qr-trace-modal.vue b/src/views/mes/pro/components/qr-trace-modal.vue
index 710a2e7..f94946a 100644
--- a/src/views/mes/pro/components/qr-trace-modal.vue
+++ b/src/views/mes/pro/components/qr-trace-modal.vue
@@ -35,13 +35,19 @@
const traceTypeLabel = ref("");
- /** 璇嗗埆浜岀淮鐮佸唴瀹圭被鍨嬶細鎵规鍙� / 鎵樼洏鐮� / 琚嬬爜 */
+ /** 璇嗗埆浜岀淮鐮佸唴瀹圭被鍨嬶細鎵规鍙凤紙鍚复鏃舵壒娆$爜锛�/ 鎵樼洏鐮侊紙鍚复鏃舵墭鐩樼爜锛�/ 琚嬬爜 */
function resolveCodeType(raw: string): TraceType | undefined {
const value = raw.trim().toUpperCase();
+ if (/^PB-\d{8}$/.test(value)) {
+ return "batch";
+ }
+ if (/^PL-\d{8}$/.test(value)) {
+ return "pallet";
+ }
if (/^.*-P\d{2}$/.test(value)) {
return "pallet";
}
- if (/^.*-\d{4}$/.test(value)) {
+ if (/^BAG-\d{8}$/.test(value) || /^.*-\d{4}$/.test(value)) {
return "bag";
}
return "batch";
@@ -125,7 +131,7 @@
if (traceType.value === "pallet" && palletTrace.value) {
const d = palletTrace.value;
return [
- { label: "鎵樼洏鐮�", value: d.code || "" },
+ { label: "鎵樼洏鐮�", value: d.code || d.tempCode || "" },
{ label: "鎵樼洏搴忓彿", value: d.palletNo ? String(d.palletNo) : "" },
{ label: "鎵规鍙�", value: d.batchCode || "" },
{ label: "鍝佺", value: d.itemName || "" },
@@ -141,7 +147,7 @@
if (batchTrace.value) {
const d = batchTrace.value;
return [
- { label: "鎵规鍙�", value: d.code || "" },
+ { label: "鎵规鍙�", value: d.code || d.tempCode || "" },
{ label: "鍝佺", value: d.itemName || "" },
{ label: "瑙勬牸", value: d.itemSpecification || "" },
{
@@ -357,7 +363,12 @@
schema: [
{
field: "code",
- label: "鎵樼洏鐮侊紙浜岀淮鐮佸唴瀹癸級",
+ label: "鎵樼洏鐮侊紙姝e紡鎵樼洏鐮侊級",
+ span: 2,
+ },
+ {
+ field: "tempCode",
+ label: "涓存椂鎵樼洏鐮侊紙鏈粦瀹氭壒娆★級",
span: 2,
},
{
@@ -419,7 +430,12 @@
schema: [
{
field: "code",
- label: "鎵规鍙凤紙浜岀淮鐮佸唴瀹癸級",
+ label: "鎵规鍙凤紙姝e紡鎵规鍙凤級",
+ span: 2,
+ },
+ {
+ field: "tempCode",
+ label: "涓存椂鎵规鐮侊紙寰呰ˉ褰曪級",
span: 2,
},
{
@@ -502,6 +518,22 @@
<p class="text-lg font-bold break-all">{{ currentCode }}</p>
<p class="mt-1 text-xs text-gray-500">
鐮佺被鍨嬶細{{ traceTypeLabel }}
+ <Tag
+ v-if="traceType === 'batch' && batchTrace && !batchTrace.code"
+ color="warning"
+ class="ml-2"
+ >
+ 寰呰ˉ褰�
+ </Tag>
+ <Tag
+ v-else-if="
+ traceType === 'pallet' && palletTrace && !palletTrace.code
+ "
+ color="warning"
+ class="ml-2"
+ >
+ 鏈粦瀹氭壒娆�
+ </Tag>
</p>
</div>
</div>
--
Gitblit v1.9.3