From 0496bba153a2af1567d314075c8dc21de6a8ec69 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Wed, 6 Aug 2025 11:25:20 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=99=BA=E6=85=A7=E8=B6=85=E5=B8=82):?= =?UTF-8?q?=E5=BA=93=E5=AD=98=E5=AF=BC=E5=85=A5=E5=AF=BC=E5=87=BA=E9=80=82?= =?UTF-8?q?=E9=85=8D,=E5=A2=9E=E5=8A=A0=E8=A6=86=E7=9B=96=E5=AF=BC?= =?UTF-8?q?=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/SmErpSpuController.java | 22 +++++++++++++++++++ .../supermarket/service/SmErpSpuService.java | 8 +++++++ 2 files changed, 30 insertions(+) diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java index 1d185ea0b..6bc4b7eae 100644 --- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java +++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java @@ -275,6 +275,28 @@ public class SmErpSpuController { return smErpSpuService.importErpSpuNew(collect, bindingResult); } + /** + * 新的导入方法(更新模式)- 允许覆盖现有数据 + * 参考图片数据结构:商品编码、商品名称、规格、包装单位编码、换算率、是否主单位、辅助条码、条码类型 + * + * @param dtos 导入数据列表 + * @param bindingResult 错误信息列表 + * @return R + */ + @PostMapping("/importNewUpdate") + @PreAuthorize("@pms.hasPermission('supermarket_supermarketSpu_import')" ) + @Idempotent(expireTime = 10, info = "请勿重复导入,10秒后再重新尝试") + @Operation(summary = "新的商品导入(更新模式)", description = "支持包装单位、辅助条码等详细信息的导入,允许覆盖现有数据") + public R importErpSpuNewUpdate(@RequestExcel List dtos, BindingResult bindingResult) { + List collect = dtos.stream() + .filter(dto -> StringUtils.isNotBlank(dto.getProductCode())) + .collect(Collectors.toList()); + if (CollectionUtils.isEmpty(collect)) { + return R.failed("导入数据不能为空"); + } + return smErpSpuService.importErpSpuNewUpdate(collect, bindingResult); + } + /** * 条件查询spu单表 列表信息 * @param supermarketSpuQueryDTO 商品spu diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/SmErpSpuService.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/SmErpSpuService.java index 995a18c0b..2378f8de9 100644 --- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/SmErpSpuService.java +++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/SmErpSpuService.java @@ -121,6 +121,14 @@ public interface SmErpSpuService extends IService { */ R importErpSpuNew(List smErpSpuImportNewDtos, BindingResult bindingResult); + /** + * 新的导入方法(更新模式)- 允许覆盖现有数据 + * @param smErpSpuImportNewDtos + * @param bindingResult + * @return + */ + R importErpSpuNewUpdate(List smErpSpuImportNewDtos, BindingResult bindingResult); + /** * 导出