From 8dffb993a45d7536312e2c88573f71753d6c8372 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Fri, 13 Jun 2025 13:03:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B6=85=E5=B8=82=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=EF=BC=8C=E5=A2=9E=E5=8A=A0=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/SmErpSpuController.java | 1 + .../service/impl/SmErpSpuServiceImpl.java | 20 +++++++++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) 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 65d9aa540..293fc6bf1 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 @@ -84,6 +84,7 @@ public class SmErpSpuController { wrapper.eq(StringUtils.isNotBlank(supermarketSpu.getProductCode()), SmErpSpuEntity::getProductCode,supermarketSpu.getProductCode()); wrapper.eq(StringUtils.isNotBlank(supermarketSpu.getBarcode()), SmErpSpuEntity::getBarcode,supermarketSpu.getBarcode()); wrapper.like(StringUtils.isNotBlank(supermarketSpu.getProductName()), SmErpSpuEntity::getProductName,supermarketSpu.getProductName()); + wrapper.orderByDesc(SmErpSpuEntity::getCreateTime); return R.ok(smErpSpuService.pageScope(page, wrapper)); } diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SmErpSpuServiceImpl.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SmErpSpuServiceImpl.java index 2472f4764..ee971116b 100644 --- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SmErpSpuServiceImpl.java +++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SmErpSpuServiceImpl.java @@ -173,6 +173,7 @@ public class SmErpSpuServiceImpl extends ServiceImpl smErpUnitEntityList = supermarketSpu.getSmErpUnitEntityList(); List insertUnits= new ArrayList<>(); + List updateUnits= new ArrayList<>(); if (CollectionUtils.isNotEmpty(smErpUnitEntityList)) { List baseUnits = smErpUnitEntityList.stream() @@ -188,7 +189,7 @@ public class SmErpSpuServiceImpl extends ServiceImpl supermarketUnitEntity.getId() == null).collect(Collectors.toList()); insertUnits.forEach(supermarketUnitEntity -> supermarketUnitEntity.setSpuId(supermarketSpu.getId())); - List updateUnits = smErpUnitEntityList.stream() + updateUnits = smErpUnitEntityList.stream() .filter(supermarketUnitEntity -> supermarketUnitEntity.getId() != null).collect(Collectors.toList()); smErpUnitService.updateBatchById(updateUnits); smErpUnitService.saveBatch(insertUnits); @@ -241,12 +242,19 @@ public class SmErpSpuServiceImpl extends ServiceImpl insertCollect = smErpAuxiliaryCodeEntityList.stream().filter(supermarketAuxiliaryCodeEntity -> supermarketAuxiliaryCodeEntity.getId() == null).collect(Collectors.toList()); List updateCollect = smErpAuxiliaryCodeEntityList.stream().filter(supermarketAuxiliaryCodeEntity -> supermarketAuxiliaryCodeEntity.getId() != null).collect(Collectors.toList()); - Map unitMap = insertUnits.stream().collect(Collectors.toMap(smErpUnitEntity -> smErpUnitEntity.getUnit(), smErpUnitEntity -> smErpUnitEntity)); - for (int i = 0; i < insertCollect.size(); i++) { - SmErpAuxiliaryCodeEntity smErpAuxiliaryCodeEntity = insertCollect.get(i); - smErpAuxiliaryCodeEntity.setSpuId(supermarketSpu.getId()); - smErpAuxiliaryCodeEntity.setUnitId(unitMap.get(smErpAuxiliaryCodeEntity.getUnit()).getId()); + Map unitMap; + if (CollectionUtils.isNotEmpty(insertUnits)){ + unitMap = insertUnits.stream().collect(Collectors.toMap(smErpUnitEntity -> smErpUnitEntity.getUnit(), smErpUnitEntity -> smErpUnitEntity)); + }else { + unitMap = updateUnits.stream().collect(Collectors.toMap(smErpUnitEntity -> smErpUnitEntity.getUnit(), smErpUnitEntity -> smErpUnitEntity)); } + for (int i = 0; i < insertCollect.size(); i++) { + SmErpAuxiliaryCodeEntity smErpAuxiliaryCodeEntity = insertCollect.get(i); + smErpAuxiliaryCodeEntity.setSpuId(supermarketSpu.getId()); + smErpAuxiliaryCodeEntity.setUnitId(unitMap.get(smErpAuxiliaryCodeEntity.getUnit()).getId()); + } + + smErpAuxiliaryCodeService.saveBatch(insertCollect); smErpAuxiliaryCodeService.updateBatchById(updateCollect);