From 3aa039f0ea94ac6556f7f75b592d5b1ab0c6c5e1 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Fri, 18 Jul 2025 09:30:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81=E8=B7=B3=E8=BF=87=E6=94=AF?= =?UTF-8?q?=E4=BB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ycwl/basic/model/aio/resp/AioDeviceCreateOrderResp.java | 1 + .../ycwl/basic/service/aio/impl/AioDeviceServiceImpl.java | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/ycwl/basic/model/aio/resp/AioDeviceCreateOrderResp.java b/src/main/java/com/ycwl/basic/model/aio/resp/AioDeviceCreateOrderResp.java index b1d8c89..80a0c79 100644 --- a/src/main/java/com/ycwl/basic/model/aio/resp/AioDeviceCreateOrderResp.java +++ b/src/main/java/com/ycwl/basic/model/aio/resp/AioDeviceCreateOrderResp.java @@ -4,6 +4,7 @@ import lombok.Data; @Data public class AioDeviceCreateOrderResp { + private boolean skipPay; private Long orderId; private String payCode; } diff --git a/src/main/java/com/ycwl/basic/service/aio/impl/AioDeviceServiceImpl.java b/src/main/java/com/ycwl/basic/service/aio/impl/AioDeviceServiceImpl.java index 8674880..8a81f01 100644 --- a/src/main/java/com/ycwl/basic/service/aio/impl/AioDeviceServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/aio/impl/AioDeviceServiceImpl.java @@ -52,8 +52,13 @@ public class AioDeviceServiceImpl implements AioDeviceService { if (face == null) { throw new BaseException("请选择人脸"); } + AioDeviceCreateOrderResp resp = new AioDeviceCreateOrderResp(); int sum = req.getItems().stream().mapToInt(AioDeviceCreateOrderReq.AioDeviceOrderItem::getCount).sum(); BigDecimal totalPrice = config.getEachPrice().multiply(new BigDecimal(sum)); + if (totalPrice.compareTo(BigDecimal.ZERO) <= 0) { + resp.setSkipPay(true); + return resp; + } OrderEntity order = new OrderEntity(); Long orderId = SnowFlakeUtil.getLongId(); order.setId(orderId); @@ -80,7 +85,6 @@ public class AioDeviceServiceImpl implements AioDeviceService { int addOrderItems = orderMapper.addOrderItems(orderItems); // 支付 IPayAdapter scenicPayAdapter = scenicService.getScenicPayAdapter(aioDevice.getScenicId()); - AioDeviceCreateOrderResp resp = new AioDeviceCreateOrderResp(); if (scenicPayAdapter instanceof WxMpPayAdapter adapter) { NativePayService service = new NativePayService.Builder().config(adapter.getConfig()).build(); PrepayRequest request = new PrepayRequest();