From 6ab08f7a2942590039eb7fa62d2fc8bc173f115e Mon Sep 17 00:00:00 2001 From: Cauchy Date: Mon, 9 Oct 2023 17:55:28 +0800 Subject: [PATCH] bug fix --- .../book/service/impl/BuyOrderServiceImpl.java | 1 - .../weChatPay/controller/WeChatPayController.java | 15 +++------------ 2 files changed, 3 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java index bb05ad8b..cc03bac2 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java @@ -163,7 +163,6 @@ public class BuyOrderServiceImpl extends ServiceImpl().eq("user_id", userId) .eq("order_sn", orderSn)); - if (type.equals("0")) { orderEntity.setOrderStatus("1"); } else if (type.equals("9")) { diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java b/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java index 54884e10..b04da959 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java @@ -188,16 +188,9 @@ public class WeChatPayController { String orderNo = resourceMap.get("out_trade_no").toString(); // 根据订单号,做幂等处理,并且在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱 BuyOrderEntity order = this.buyOrderService.getOne(new QueryWrapper().eq("order_sn", orderNo)); - PayWechatOrderEntity wechatEntity; - if (!ObjectUtils.isEmpty(order)) { - wechatEntity = this.payWechatOrderService.getOne(new QueryWrapper().eq("order_sn", order.getOrderSn())); - } else { - log.error("无效订单!"); - return R.error(500, "无效订单!"); - } // 1.根据订单id获取订单信息 if ("order".equals(order.getOrderType())) { - BuyOrderEntity orderEntity = buyOrderService.getBaseMapper().selectOne(new QueryWrapper().eq("order_sn", wechatEntity.getOrderSn())); + BuyOrderEntity orderEntity = buyOrderService.getBaseMapper().selectOne(new QueryWrapper().eq("order_sn", orderNo)); BigDecimal realMoney = orderEntity.getRealMoney(); // 查询订单的所有 book_id List orderBookIdList = shopProudictBookService.getOrderBookId(order.getOrderSn()); @@ -217,10 +210,8 @@ public class WeChatPayController { entity.setBookId(bookId); userEbookBuyEntities.add(entity); } - boolean b = userEbookBuyService.saveBatch(userEbookBuyEntities); - if (wechatEntity.getTotalAmount().compareTo(realMoney) == 0) { - buyOrderService.updateOrderStatus(order.getUserId(), order.getOrderSn(), "0"); - } + userEbookBuyService.saveBatch(userEbookBuyEntities); + buyOrderService.updateOrderStatus(order.getUserId(), order.getOrderSn(), "0"); } if ("point".equals(order.getOrderType())) { PayWechatOrderEntity buy_order_id = payWechatOrderService.getBaseMapper().selectOne(new QueryWrapper().eq("order_sn", order.getOrderSn()));