package com.ruoyi.common.pay;

import java.time.LocalDateTime;

/**
 * @author wjh
 * 2024/12/10
 */
public interface PayApi {

    // 发起支付
    Object pay(Payable payable);

    // 关闭支付单
    void closeByOutTradeNo(String outTradeNo);

    // 查询支付单
    Object queryByOutTradeNo(String outTradeNo);

    // 退款
    Object refund(Refundable refundAble);

    // 是否支付成功
    boolean isPaySuccessByOutTradeNo(String outTradeNo);

    // 是否支付成功
    boolean isPaySuccess(Object result);

    // 获取支付成功的时间
    LocalDateTime getPayTime(Object result);
}
