From 22c8ce55eb2248d78783baf92ffba0a9485ca3be Mon Sep 17 00:00:00 2001 From: yueli Date: Mon, 31 Aug 2026 14:28:02 +0800 Subject: [PATCH] =?UTF-8?q?fix(purchase):=20=E6=89=B9=E6=AC=A1=E5=8F=B7?= =?UTF-8?q?=E5=88=86=E7=BB=84=E6=94=B9=E4=B8=BA=E5=8F=96=E5=8D=95=E5=8F=B7?= =?UTF-8?q?=E5=89=8D3=E6=AE=B5=EF=BC=88PUR-=E6=97=A5=E6=9C=9F-=E6=97=B6?= =?UTF-8?q?=E9=97=B4=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 原逻辑 lastIndexOf 去末尾流水,导致同一天单子被合并成 PUR-日期 - 改为 split('-').slice(0,3) → PUR-20260625-1345 - 同一天不同分钟的单子正确分为不同批次;同一分钟内多条视为一批 --- inventory-web/src/views/purchase/index.vue | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/inventory-web/src/views/purchase/index.vue b/inventory-web/src/views/purchase/index.vue index 087e524..3ece0d8 100644 --- a/inventory-web/src/views/purchase/index.vue +++ b/inventory-web/src/views/purchase/index.vue @@ -1041,12 +1041,13 @@ const syncRemarkToAll = () => { ElMessage.success('已将第一行备注同步到所有行') } -// ★ 推导批次前缀:request_no 去掉末尾"-流水号"(如 PUR-20260831-1021-0001 → PUR-20260831-1021) +// ★ 推导批次前缀:取单号前 3 段(PUR-日期-时间) +// 例: PUR-20260625-1345-0001-0001 → PUR-20260625-1345 +// 同一天不同时间(分钟)的单子不会合并;同一分钟内的多条视为同一批 const getBatchKey = (requestNo: string): string => { if (!requestNo) return '' - // 去掉末尾的 -0001 段(最后5个字符:- + 4位流水) - const idx = requestNo.lastIndexOf('-') - return idx > 0 ? requestNo.slice(0, idx) : requestNo + const parts = requestNo.split('-') + return parts.length >= 3 ? parts.slice(0, 3).join('-') : requestNo } // ★ 照片一键同步所有行:取第一行的照片深拷贝到所有行