From df4601a0941bd696ef682ca146867120f8d1b90f Mon Sep 17 00:00:00 2001 From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com> Date: 星期四, 26 九月 2024 17:36:09 +0800 Subject: [PATCH] 供应商 统计数据 --- src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 51 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 f9ae5d7..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,13 +9,16 @@ 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; import com.wechat.pay.java.core.notification.NotificationParser; import com.wechat.pay.java.core.notification.RequestParam; @@ -103,6 +106,18 @@ @Autowired private OrderRefundMapper orderRefundMapper; + + @Autowired + private OrderPointGoodsMapper orderPointGoodsMapper; + + @Autowired + private PointGoodsService pointGoodsService; + + @Autowired + private CouponRecordService couponRecordService; + + @Autowired + private OrderService orderService; /** * 微信预支付 @@ -439,11 +454,46 @@ } private void releasePrepayLock(Order order){ - log.info("恢复库存: " + order); + log.info("恢复库存 积分商品兑换券 优惠券: " + order); revertFlowerStock(order.getId()); + + //恢复积分商品兑换券 + revertPointGoodsRecord(order.getId()); + + //恢复优惠券 + String memberCouponId = order.getMemberCouponId(); + if(StringUtils.isNotEmpty(memberCouponId)) { + couponRecordService.cancelCouponUsage(order.getId()); + } + } + + private void revertPointGoodsRecord(String orderId){ + List<OrderPointGoods> ls = orderPointGoodsMapper.selectList(new QueryWrapper<OrderPointGoods>() + .eq("order_id", orderId)); + if(ls != null && ls.size() > 0){ + for(OrderPointGoods pg : ls){ + pointGoodsService.revertExchangeGoods(pg.getGoodsRecordId()); + } + } } 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