From 8d329e6b05a9957ea18c39cf6047086811a045f1 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Sun, 2 Mar 2025 23:25:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A4=E6=96=AD=E9=87=91=E9=A2=9D=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/mobile/AppWxPayController.java | 2 -- .../model/pc/order/resp/OrderAppRespVO.java | 1 + .../service/impl/pc/OrderServiceImpl.java | 24 ++++++++++++------- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/ycwl/basic/controller/mobile/AppWxPayController.java b/src/main/java/com/ycwl/basic/controller/mobile/AppWxPayController.java index d82274c..0ab3633 100644 --- a/src/main/java/com/ycwl/basic/controller/mobile/AppWxPayController.java +++ b/src/main/java/com/ycwl/basic/controller/mobile/AppWxPayController.java @@ -44,7 +44,6 @@ public class AppWxPayController { @ApiOperation(value = "微信支付回调", notes = "微信支付回调") @PostMapping("/payNotify") @IgnoreToken - @RequestToFile public ApiResponse payNotify(HttpServletRequest request) { wxPayService.payNotify(request); return ApiResponse.success(BizCodeEnum.REQUEST_OK); @@ -61,7 +60,6 @@ public class AppWxPayController { @ApiOperation(value = "微信支付退款回调", notes = "微信支付退款回调") @PostMapping("/refundNotify") @IgnoreToken - @RequestToFile public ApiResponse refundNotify(@RequestBody String refundResult) throws GeneralSecurityException, IOException { return ApiResponse.buildResult(wxPayService.refundNotify(refundResult) ? BizCodeEnum.SUCCESS : diff --git a/src/main/java/com/ycwl/basic/model/pc/order/resp/OrderAppRespVO.java b/src/main/java/com/ycwl/basic/model/pc/order/resp/OrderAppRespVO.java index 035e000..032a85f 100644 --- a/src/main/java/com/ycwl/basic/model/pc/order/resp/OrderAppRespVO.java +++ b/src/main/java/com/ycwl/basic/model/pc/order/resp/OrderAppRespVO.java @@ -17,6 +17,7 @@ import java.util.List; @ApiModel("移动端订单信息响应类") public class OrderAppRespVO { private Long id; + private Integer type; /** * 价格 */ diff --git a/src/main/java/com/ycwl/basic/service/impl/pc/OrderServiceImpl.java b/src/main/java/com/ycwl/basic/service/impl/pc/OrderServiceImpl.java index 9cb8e8c..a37bec6 100644 --- a/src/main/java/com/ycwl/basic/service/impl/pc/OrderServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/impl/pc/OrderServiceImpl.java @@ -163,7 +163,7 @@ public class OrderServiceImpl implements OrderService { goodsName = "景区照片包"; } } - if (order.getPayPrice().equals(BigDecimal.ZERO)) { + if (order.getPayPrice().compareTo(BigDecimal.ZERO) <= 0) { // 0元支付 WxPayRespVO wxPayRespVO = new WxPayRespVO(); wxPayRespVO.setNeedPay(false); @@ -172,7 +172,7 @@ public class OrderServiceImpl implements OrderService { wxPayOrderReqVO.setOpenId(order.getOpenId()) .setMemberId(order.getMemberId()) .setOrderSn(order.getId()) - .setTotalPrice(BigDecimalUtil.convertToCents(order.getPrice())) + .setTotalPrice(BigDecimalUtil.convertToCents(order.getPayPrice())) .setGoodsName(goodsName) .setDescription(goodsName); @@ -350,9 +350,13 @@ public class OrderServiceImpl implements OrderService { return ApiResponse.fail("订单添加失败"); } //点击支付按钮统计 - - WxPayRespVO wxPayRespVO = initiatePayment(order, orderItems); - return ApiResponse.success(wxPayRespVO); + if (order.getPayPrice().compareTo(BigDecimal.ZERO) <= 0) { + orderBiz.paidOrder(order.getId()); + return ApiResponse.success(new WxPayRespVO()); + } else { + WxPayRespVO wxPayRespVO = initiatePayment(order, orderItems); + return ApiResponse.success(wxPayRespVO); + } } @Override @@ -404,9 +408,13 @@ public class OrderServiceImpl implements OrderService { log.error("订单明细添加失败"); return ApiResponse.fail("订单添加失败"); } - - WxPayRespVO wxPayRespVO = initiatePayment(order, orderItems); - return ApiResponse.success(wxPayRespVO); + if (order.getPayPrice().equals(BigDecimal.ZERO)) { + orderBiz.paidOrder(order.getId()); + return ApiResponse.success(new WxPayRespVO()); + } else { + WxPayRespVO wxPayRespVO = initiatePayment(order, orderItems); + return ApiResponse.success(wxPayRespVO); + } } }