From f47bca3a8b41f6e78f290544a85ae3aa1157b968 Mon Sep 17 00:00:00 2001 From: wyn <1074145239@qq.com> Date: Wed, 6 May 2026 18:08:27 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=80=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/book/controller/BuyOrderController.java | 4 ++-- .../book/service/impl/BuyOrderServiceImpl.java | 13 +++++++++---- .../service/impl/TransactionDetailsServiceImpl.java | 1 + .../controller/TransactionDetailsController.java | 2 +- .../peanut/modules/common/dao/UserCourseBuyDao.java | 4 ++++ .../modules/common/dao/UserCourseBuyLogDao.java | 3 +++ .../weChatPay/service/impl/WxpayServiceImpl.java | 6 +++--- 7 files changed, 23 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java b/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java index 6a7533c..e6f0947 100644 --- a/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java +++ b/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java @@ -707,7 +707,7 @@ public class BuyOrderController { int refundId = buyOrderRefund.getId(); if (Constants.PAYMENT_METHOD_VIRTUAL.equals(buyOrder.getPaymentMethod())) { - if(refundFee.compareTo(BigDecimal.ZERO)>0){ + //if(refundFee.compareTo(BigDecimal.ZERO)>0){ //退还虚拟币 transactionDetailsService.refundRecord(buyOrder,user,refundFee); user.setPeanutCoin(user.getPeanutCoin().add(refundFee)); @@ -720,7 +720,7 @@ public class BuyOrderController { buyOrder.setOrderStatus(Constants.ORDER_STATUS_REFUND); buyOrderService.updateById(buyOrder); return R.ok("ok"); - } + //} } else if (Constants.PAYMENT_METHOD_WECHAT_PAY.equals(buyOrder.getPaymentMethod())) { buyOrderRefundLogService.insertRefundLog(refundId,1,0); if (refundFee.compareTo(BigDecimal.ZERO) > 0) { 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 586ef46..afb0595 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 @@ -734,10 +734,14 @@ public class BuyOrderServiceImpl extends ServiceImpl impl public void removeCourseToUser(BuyOrder orderEntity){ QueryWrapper buyLogQueryWrapper = new QueryWrapper<>(); buyLogQueryWrapper.eq("order_sn",orderEntity.getOrderSn()); + log.info("order+sn===="+orderEntity.getOrderSn()); List userCourseBuyLogList = userCourseBuyLogDao.selectList(buyLogQueryWrapper); + log.info("size===="+userCourseBuyLogList.size()); for (UserCourseBuyLog userCourseBuyLog:userCourseBuyLogList){ - userCourseBuyDao.deleteById(userCourseBuyLog.getUserCourseBuyId()); - userCourseBuyLogDao.deleteById(userCourseBuyLog.getId()); + log.info("===delete====="+userCourseBuyLog.getUserCourseBuyId()); + log.info("===delete2====="+userCourseBuyLog.getId()); + userCourseBuyDao.realDeleteById(userCourseBuyLog.getUserCourseBuyId()); + userCourseBuyLogDao.realDeleteById(userCourseBuyLog.getId()); } } @Override @@ -1059,7 +1063,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl return refundFee; } @Override - public void refundOrder(BuyOrder buyOrder, MyUserEntity user, int refundId){ + public void refundOrder(BuyOrder buyOrder, MyUserEntity user, int refundId){ if(buyOrder.getCouponId()!=null && buyOrder.getCouponId()!=0){ couponService.rollbackCoupon(buyOrder.getCouponId()); } @@ -1073,7 +1077,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl jfTransactionDetailsService.refundJfTransaction(buyOrder,user); user.setJf(jf.add(user.getJf())); myUserService.updateById(user); - buyOrderRefundLogService.insertRefundLog(refundId,2,1); + buyOrderRefundLogService.insertRefundLog(refundId,5,1); } if(buyOrder.getOrderType().equals("vip")){ userVipService.refundVip(buyOrder); @@ -1085,6 +1089,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl //撤回电子书权限 userEbookBuyService.rollbackUserEbooks(buyOrder, orderProducts); //撤回课程权限 + log.info("====remove========="+buyOrder.getOrderSn()); removeCourseToUser(buyOrder); //回滚库存 shopProductService.rollbackStock(buyOrder); diff --git a/src/main/java/com/peanut/modules/book/service/impl/TransactionDetailsServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/TransactionDetailsServiceImpl.java index 2318221..e719649 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/TransactionDetailsServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/TransactionDetailsServiceImpl.java @@ -88,6 +88,7 @@ public class TransactionDetailsServiceImpl extends ServiceImpl() .eq(BuyOrder::getOrderSn,orderSn)); if (buyOrder!=null){ - if ("购买商品".equals(detail.getOrderType())){ + if ("购买商品".equals(detail.getOrderType())||"订单退款".equals(detail.getOrderType())){ List products = buyOrderProductService.list(new LambdaQueryWrapper() .eq(BuyOrderProduct::getOrderId,buyOrder.getOrderId())); for (BuyOrderProduct buyOrderProduct : products) { diff --git a/src/main/java/com/peanut/modules/common/dao/UserCourseBuyDao.java b/src/main/java/com/peanut/modules/common/dao/UserCourseBuyDao.java index b6eadb7..1c2142f 100644 --- a/src/main/java/com/peanut/modules/common/dao/UserCourseBuyDao.java +++ b/src/main/java/com/peanut/modules/common/dao/UserCourseBuyDao.java @@ -2,6 +2,7 @@ package com.peanut.modules.common.dao; import com.github.yulichang.base.MPJBaseMapper; import com.peanut.modules.common.entity.UserCourseBuyEntity; +import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -18,4 +19,7 @@ public interface UserCourseBuyDao extends MPJBaseMapper { List> getIncome(@Param("date") String date); List> getCoursePurchaseDetails(int courseId,int catalogueId,Integer limit,Integer offset); + + @Delete("DELETE FROM user_course_buy WHERE id = #{userCourseBuyId}") + int realDeleteById(int userCourseBuyId); } diff --git a/src/main/java/com/peanut/modules/common/dao/UserCourseBuyLogDao.java b/src/main/java/com/peanut/modules/common/dao/UserCourseBuyLogDao.java index 6fa100b..29c7dc4 100644 --- a/src/main/java/com/peanut/modules/common/dao/UserCourseBuyLogDao.java +++ b/src/main/java/com/peanut/modules/common/dao/UserCourseBuyLogDao.java @@ -2,8 +2,11 @@ package com.peanut.modules.common.dao; import com.github.yulichang.base.MPJBaseMapper; import com.peanut.modules.common.entity.UserCourseBuyLog; +import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Mapper; @Mapper public interface UserCourseBuyLogDao extends MPJBaseMapper { + @Delete("DELETE FROM user_course_buy_log WHERE id = #{userCourseBuyLogId}") + int realDeleteById(int userCourseBuyLogId); } diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java b/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java index 4d73df8..ce617a1 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java @@ -519,9 +519,9 @@ public class WxpayServiceImpl extends ServiceImpl