package com.ruoyi.common.pay;

import com.wechat.pay.java.service.refund.model.AmountReq;

import java.math.BigDecimal;
import java.math.RoundingMode;

/**
 * @author wjh
 * 2024/7/10
 */
public interface Refundable {

    // 原商户订单号
    String refundOutTradeNo();

    // 退款单号
    String refundOutRefundNo();

    // 退款原因
    String refundReason();

    // 退款金额（分）
    AmountReq refundAmount();

    default BigDecimal refundAmountYuan() {
        return BigDecimal.valueOf(refundAmount().getRefund())
                .divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP);
    }

}
