package com.fs.huifuPay.service;

import com.fs.huifuPay.domain.*;
import com.fs.huifuPay.sdk.opps.core.request.*;
import org.springframework.stereotype.Service;


public interface HuiFuService {
    /**创建订单**/
    HuifuCreateOrderResult createOrder(HuiFuCreateOrder request);
    /**查询订单**/
    HuiFuQueryOrderResult queryOrder(V2TradePaymentScanpayQueryRequest request)throws Exception;
    /**关闭订单**/
    HuiFuCloseResult closeOrder(V2TradePaymentScanpayCloseRequest request)throws Exception;
    /**退款**/
    HuiFuRefundResult refund(V2TradePaymentScanpayRefundRequest request);
    /**查询退款**/
    HuiFuRefundResult queryRefundOrder(V2TradePaymentScanpayRefundqueryRequest request)throws Exception;
    /**大额支付**/
    HuiFuOnlinePayResult onlinepaymentTransferAccount(V2TradeOnlinepaymentTransferAccountRequest request)throws Exception;
    /**大额支付查询**/
    HuiFuOnlinePayQueryResult onlinepaymentTransferAccountQuery(V2TradeOnlinepaymentTransferAccountQueryRequest request)throws Exception;
    /**大额支付退款**/
    HuiFuOnlineRefundResult onlinepaymentRefund(V2TradeOnlinepaymentRefundRequest request)throws Exception;
    /**大额支付退款查询**/
    HuiFuOnlineRefundQueryResult onlinepaymentRefundQuery(V2TradeOnlinepaymentRefundQueryRequest request)throws Exception;
    /**余额支付**/
    acctPayResult acctPay(V2TradeAcctpaymentPayRequest request)throws Exception;

    /**余额支付查询**/
    acctPayQueryResult acctPayQuery(V2TradeAcctpaymentPayQueryRequest request)throws Exception;

    /**余额支付退款**/
    acctPayRefundResult acctPayRefund(V2TradeAcctpaymentRefundRequest request)throws Exception;

    /**余额支付退款查询**/
    acctPayRefundQueryResult acctPayRefundQuery(V2TradeAcctpaymentRefundQueryRequest request)throws Exception;

}
