| | |
| | | |
| | | 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"; |
| | |
| | | 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 || "" }, |
| | |
| | | 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 || "" }, |
| | | { |
| | |
| | | schema: [ |
| | | { |
| | | field: "code", |
| | | label: "托盘码(二维码内容)", |
| | | label: "托盘码(正式托盘码)", |
| | | span: 2, |
| | | }, |
| | | { |
| | | field: "tempCode", |
| | | label: "临时托盘码(未绑定批次)", |
| | | span: 2, |
| | | }, |
| | | { |
| | |
| | | schema: [ |
| | | { |
| | | field: "code", |
| | | label: "批次号(二维码内容)", |
| | | label: "批次号(正式批次号)", |
| | | span: 2, |
| | | }, |
| | | { |
| | | field: "tempCode", |
| | | label: "临时批次码(待补录)", |
| | | span: 2, |
| | | }, |
| | | { |
| | |
| | | <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> |