From 4483b4ef337172a8d1522b63e57c9fbd3b38b468 Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com>
Date: 星期四, 26 九月 2024 15:44:23 +0800
Subject: [PATCH] 售后率计算

---
 src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java |   30 +++++++++++++++++++++++++++++-
 1 files changed, 29 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java b/src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java
index 8b75506..e93b82a 100644
--- a/src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java
+++ b/src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java
@@ -9,12 +9,14 @@
 import com.mzl.flower.dto.request.payment.TransferDetailReqDTO;
 import com.mzl.flower.dto.request.payment.TransferReqDTO;
 import com.mzl.flower.dto.request.payment.UserPaymentDTO;
+import com.mzl.flower.entity.flower.Flower;
 import com.mzl.flower.entity.payment.*;
 import com.mzl.flower.entity.system.UserWechat;
 import com.mzl.flower.mapper.flower.FlowerMapper;
 import com.mzl.flower.mapper.payment.*;
 import com.mzl.flower.mapper.system.UserWechatMapper;
 import com.mzl.flower.service.BaseService;
+import com.mzl.flower.service.coupon.CouponRecordService;
 import com.mzl.flower.service.flower.FlowerService;
 import com.mzl.flower.service.point.PointGoodsService;
 import com.mzl.flower.utils.UUIDGenerator;
@@ -110,6 +112,12 @@
 
     @Autowired
     private PointGoodsService pointGoodsService;
+
+    @Autowired
+    private CouponRecordService couponRecordService;
+
+    @Autowired
+    private OrderService orderService;
 
     /**
      * 微信预支付
@@ -452,7 +460,11 @@
         //恢复积分商品兑换券
         revertPointGoodsRecord(order.getId());
 
-        //TODO 恢复优惠券
+        //恢复优惠券
+        String memberCouponId = order.getMemberCouponId();
+        if(StringUtils.isNotEmpty(memberCouponId)) {
+            couponRecordService.cancelCouponUsage(order.getId());
+        }
     }
 
     private void revertPointGoodsRecord(String orderId){
@@ -466,6 +478,22 @@
     }
 
     public Map payAgain(String orderId){
+        // 获取订单里面的商品是否有限购的,如果有则判断是否已经超过限购数量
+        List<OrderItem> orderItemList = orderItemMapper.selectList(new QueryWrapper<OrderItem>()
+                .eq("order_id", orderId));
+
+        orderItemList.forEach(orderItem -> {
+            // 限购数量 鲜花数量校验
+            Integer completeNumToday=orderService.getFlowerCompleteNumToday(orderItem.getCreateBy(),orderItem.getFlowerId());
+            Integer tmp=completeNumToday+orderItem.getNum();
+            Flower flower=flowerMapper.selectById(orderItem.getFlowerId());
+            if(null!=flower.getLimited() && tmp.compareTo(flower.getLimited())>0){
+                throw new ValidationException("商品:'"+flower.getName()+"' 昨天17:00到今天17:00 超过限售数量:"+flower.getLimited()+"!");
+            }
+
+        });
+
+
         UserPayment up = userPaymentMapper.selectOne(
                 new QueryWrapper<UserPayment>().eq("order_id", orderId));
         if(StringUtils.isNotEmpty(up.getStatus())){

--
Gitblit v1.9.3