Cui Zhi Feng
2024-09-27 a4bc4768c29886907b6aa8225236141e3af76472
退款代码 微信接口调用顺序调整
已修改2个文件
25 ■■■■ 文件已修改
src/main/java/com/mzl/flower/service/payment/OrderService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/service/payment/OrderService.java
@@ -1426,15 +1426,15 @@
            deductAmount = deductAmount.add(a.getDeductAmount());
        }
        o.setTransferTime(LocalDateTime.now());
        o.update(SecurityUtils.getUserId());
        transferId = "NoNeedRefund";
        if (deductAmount.doubleValue() > 0) {
            transferId = paymentV3Service.refundOrderSub(o, deductAmount);
        }
        o.setTransferId(transferId);
        o.setTransferTime(LocalDateTime.now());
        o.update(SecurityUtils.getUserId());
        orderMapper.updateById(o);
    }
    public void processLevelDown(OrderReduceDTO dto) {
src/main/java/com/mzl/flower/service/payment/UserPaymentV3Service.java
@@ -540,15 +540,6 @@
        request.setTransactionId(o.getPaymentTrId());
        request.setNotifyUrl(PyamentV3Configurer.notify_url_refund);
        AmountReq amount = new AmountReq();
        int oa = prepareAmount(o.getPaymentAmount());
        amount.setTotal((long)oa);
        amount.setRefund((long)oa);
        amount.setCurrency("CNY");
        request.setAmount(amount);
        // 调用接口
        refundService.create(request);
        o.setRefundAmount(o.getPaymentAmount());
        o.setRefundNo(request.getOutRefundNo());
        o.setRefundTime(LocalDateTime.now());
@@ -562,6 +553,16 @@
        deliveryOrderService.refundDelete(orderId);
        releasePrepayLock(o);
        //最后调用微信退款接口,防止回滚
        AmountReq amount = new AmountReq();
        int oa = prepareAmount(o.getPaymentAmount());
        amount.setTotal((long)oa);
        amount.setRefund((long)oa);
        amount.setCurrency("CNY");
        request.setAmount(amount);
        // 调用接口
        refundService.create(request);
    }
    public String refundOrderSub(Order o, BigDecimal refundAmount){