xuxueyang
2024-09-24 272188e47087a8ef92eb0a48b122fa1c73ea94d3
src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java
@@ -9,6 +9,7 @@
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;
@@ -114,6 +115,9 @@
    @Autowired
    private CouponRecordService couponRecordService;
    @Autowired
    private OrderService orderService;
    /**
     * 微信预支付
@@ -474,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())){