From 6447e4218f6414385b7b498c202bbd815b1e59d9 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Sat, 11 Apr 2026 10:48:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8B=E5=8D=95=E6=97=B6=20=E6=A3=80?= =?UTF-8?q?=E9=AA=8C=E5=BA=93=E5=AD=98=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/czg/product/vo/ConsStockRecord.java | 4 +++ .../order/mapper/OrderInfoCustomMapper.java | 3 +- .../impl/OrderInfoCustomServiceImpl.java | 33 ++++++++----------- .../mapper/OrderInfoCustomMapper.xml | 16 +++++---- 4 files changed, 28 insertions(+), 28 deletions(-) diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ConsStockRecord.java b/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ConsStockRecord.java index c61638344..53e149609 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ConsStockRecord.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ConsStockRecord.java @@ -12,5 +12,9 @@ import java.math.BigDecimal; public class ConsStockRecord { @Column("id") private Long consId; + //消耗值 private BigDecimal stockNumber; + private String conName; + //库存数 + private BigDecimal currentStockNumber; } diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/mapper/OrderInfoCustomMapper.java b/cash-service/order-service/src/main/java/com/czg/service/order/mapper/OrderInfoCustomMapper.java index c810e54c8..76151a8b2 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/mapper/OrderInfoCustomMapper.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/mapper/OrderInfoCustomMapper.java @@ -15,7 +15,7 @@ import java.util.Map; * @author ww * @since 2025-02-13 */ -public interface OrderInfoCustomMapper{ +public interface OrderInfoCustomMapper { /** * 交班售出商品明细 @@ -42,6 +42,7 @@ public interface OrderInfoCustomMapper{ int updatePayOrderId(@Param("orderId") Long orderId, @Param("paymentId") Long paymentId, @Param("payType") String payType, @Param("remark") String remark); List getConsByProductAndNum( + @Param("shopId") Long shopId, @Param("productUsageMap") Map productUsageMap ); } diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java index 10c4f10ad..bd50b79fb 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java @@ -43,7 +43,6 @@ import com.czg.order.enums.PayEnums; import com.czg.order.service.*; import com.czg.order.vo.*; import com.czg.pay.PayNotifyRespDTO; -import com.czg.product.entity.ConsInfo; import com.czg.product.entity.Product; import com.czg.product.entity.ShopProdCategory; import com.czg.product.service.ConsInfoService; @@ -81,7 +80,6 @@ import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; -import java.util.function.Function; import java.util.stream.Collectors; /** @@ -115,8 +113,6 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { @DubboReference private ProductService productService; @DubboReference - private ConsInfoService consInfoService; - @DubboReference private ShopProdCategoryService shopProdCategoryService; @DubboReference private ProductRpcService productRpcService; @@ -1090,23 +1086,20 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { if (CollUtil.isEmpty(productNumMap)) { return; } - List consStockList = consInfoService.list(new QueryWrapper().select(ConsInfo::getId, ConsInfo::getConName, ConsInfo::getConUnit, ConsInfo::getStockNumber) - .eq(ConsInfo::getShopId, shopId).eq(ConsInfo::getIsStock, 1)); - if (CollUtil.isEmpty(consStockList)) { - return; - } - Map map = consStockList.stream() - .collect(Collectors.toMap( - ConsInfo::getId, - Function.identity() - )); - List consNumList = orderInfoCustomMapper.getConsByProductAndNum(productNumMap); +// List consStockList = consInfoService.list(new QueryWrapper().select(ConsInfo::getId, ConsInfo::getConName, ConsInfo::getConUnit, ConsInfo::getStockNumber) +// .eq(ConsInfo::getShopId, shopId).eq(ConsInfo::getIsStock, 1)); +// if (CollUtil.isEmpty(consStockList)) { +// return; +// } +// Map map = consStockList.stream() +// .collect(Collectors.toMap( +// ConsInfo::getId, +// Function.identity() +// )); + List consNumList = orderInfoCustomMapper.getConsByProductAndNum(shopId, productNumMap); for (ConsStockRecord consStockRecord : consNumList) { - if (map.containsKey(consStockRecord.getConsId())) { - ConsInfo consInfo = map.get(consStockRecord.getConsId()); - if (consStockRecord.getStockNumber().compareTo(consInfo.getStockNumber()) > 0) { - throw new CzgException("耗材:" + consInfo.getConName() + "库存不足,当前库存:" + consInfo.getStockNumber() + consInfo.getConUnit()); - } + if (consStockRecord.getStockNumber().compareTo(consStockRecord.getCurrentStockNumber()) > 0) { + throw new CzgException("耗材:" + consStockRecord.getConName() + "库存不足,当前库存:" + consStockRecord.getCurrentStockNumber()); } } } diff --git a/cash-service/order-service/src/main/resources/mapper/OrderInfoCustomMapper.xml b/cash-service/order-service/src/main/resources/mapper/OrderInfoCustomMapper.xml index c4cdf6fb2..e5db36dfb 100644 --- a/cash-service/order-service/src/main/resources/mapper/OrderInfoCustomMapper.xml +++ b/cash-service/order-service/src/main/resources/mapper/OrderInfoCustomMapper.xml @@ -84,19 +84,21 @@ -