From 9c0007a8172208e170784c72199d948ca2e3fb22 Mon Sep 17 00:00:00 2001 From: zhang96110 Date: Wed, 1 Apr 2026 09:08:19 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=88=9B=E5=BB=BA?= =?UTF-8?q?=E8=80=97=E6=9D=90=E6=97=B6=E6=89=8B=E5=8A=A8=E5=A1=AB=E5=86=99?= =?UTF-8?q?=E5=BA=93=E5=AD=98=E8=A2=AB=E7=A9=BASN=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E8=A6=86=E7=9B=96=E4=B8=BA0=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 空snList不再覆盖currentStock - 有SN时取手动库存与SN数量的较大值,允许后续补扫 --- backend/routes/consumables.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/backend/routes/consumables.js b/backend/routes/consumables.js index ca841ab..46d3fff 100644 --- a/backend/routes/consumables.js +++ b/backend/routes/consumables.js @@ -122,8 +122,12 @@ router.post('/', async (req, res) => { ...req.body, consumableId: req.body.consumableId || `CON${Date.now()}`, }; - if (Array.isArray(consumableData.snList)) { - consumableData.currentStock = consumableData.snList.length; + // SN 列表非空时,取手动填写的库存和 SN 数量中的较大值 + if (Array.isArray(consumableData.snList) && consumableData.snList.length > 0) { + consumableData.currentStock = Math.max( + Number(consumableData.currentStock) || 0, + consumableData.snList.length + ); } const consumable = await Consumable.create(consumableData, { transaction });