From 7175dc17be1737f209547d3f29583797a8572c59 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Sun, 22 Feb 2026 18:49:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=95=86=E5=93=81=E6=9B=B4=E6=96=B0=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/product/service/spu/ProductSpuServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java index 793c983..44d171b 100644 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java @@ -211,11 +211,13 @@ public class ProductSpuServiceImpl implements ProductSpuService { ProductSpuSaveReqVO spuSaveReqVO = convertDeviceSpuToSpu(updateReqVO, deviceImei); // 7. 更新 SPU(复用现有逻辑) - ProductSpuDO updateObj = BeanUtils.toBean(spuSaveReqVO, ProductSpuDO.class).setStatus(spu.getStatus()); + ProductSpuDO updateObj = BeanUtils.toBean(spuSaveReqVO, ProductSpuDO.class) + .setId(spu.getId()) // 关键:更新场景必须带上原 SPU 主键,避免误新增/误更新 + .setStatus(spu.getStatus()); initSpuFromSkus(updateObj, skuSaveReqList); productSpuMapper.updateById(updateObj); // 批量更新 SKU - productSkuService.updateSkuList(updateObj.getId(), skuSaveReqList); + productSkuService.updateSkuList(spu.getId(), skuSaveReqList); } @Override