diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/cabinet/smartCabinet/SmartCabinetApplicationService.java b/agileboot-domain/src/main/java/com/agileboot/domain/cabinet/smartCabinet/SmartCabinetApplicationService.java index b324454..ba8b687 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/cabinet/smartCabinet/SmartCabinetApplicationService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/cabinet/smartCabinet/SmartCabinetApplicationService.java @@ -182,15 +182,24 @@ public class SmartCabinetApplicationService { .eq("deleted", false); List cabinetCells = cabinetCellService.list(cabinetCellEntityQueryWrapper); - QueryWrapper shopGoodsEntityQueryWrapper = new QueryWrapper<>(); - shopGoodsEntityQueryWrapper.in("goods_id", - cabinetCells.stream() + List goodsList = new ArrayList<>(); + List goodsIds = cabinetCells.stream() .map(CabinetCellEntity::getGoodsId) .filter(Objects::nonNull) .distinct() - .collect(Collectors.toList())) - .eq("deleted", false); - List goodsList = shopGoodsService.list(shopGoodsEntityQueryWrapper); + .collect(Collectors.toList()); + if (goodsIds != null && !goodsIds.isEmpty()) { + QueryWrapper shopGoodsEntityQueryWrapper = new QueryWrapper<>(); + shopGoodsEntityQueryWrapper.in("goods_id", + cabinetCells.stream() + .map(CabinetCellEntity::getGoodsId) + .filter(Objects::nonNull) + .distinct() + .collect(Collectors.toList())) + .eq("deleted", false); + goodsList = shopGoodsService.list(shopGoodsEntityQueryWrapper); + } + final List finalGoodsList = goodsList; List result = new ArrayList<>(); // 遍历每个智能柜构建详细信息 @@ -214,7 +223,7 @@ public class SmartCabinetApplicationService { // 处理单元格关联的商品信息 if (cell.getGoodsId() != null) { - ShopGoodsEntity goods = goodsList.stream() + ShopGoodsEntity goods = finalGoodsList.stream() .filter(g -> g.getGoodsId().equals(cell.getGoodsId())) .findFirst().orElse(null); if (goods != null) {