using Edge.Core.Domain.FccOrderInfo.Input;
using Edge.Core.Domain.FccOrderInfo.Output;
using Microsoft.AspNetCore.Mvc;

namespace FccLite.Web.Services.FccOrderInfo
{
    public interface IOrderInfoService
    {
        /// <summary>
        /// 分页获取后支付订单
        /// </summary>
        /// <param name="orderInfoOutput">过滤条件</param>
        /// <returns></returns>
        Task<OrderInfoOutput> GetPage(OrderInfoPageInput orderInfoPageInput);

        /// <summary>
        /// 下载后支付订单excel
        /// </summary>
        /// <param name="orderInfoPageInput"></param>
        /// <returns></returns>
        Task<byte[]> DownloadAfterPayOrderExcel(OrderInfoPageInput orderInfoPageInput);

        /// <summary>
        /// 分页获取预支付订单
        /// </summary>
        /// <param name="orderInfoOutput">过滤条件</param>
        /// <returns></returns>
        Task<PrepayOrderInfoOutput> GetPrepayPage(OrderInfoPageInput orderInfoPageInput);

        /// <summary>
        /// 下载预支付订单excel
        /// </summary>
        /// <param name="orderInfoPageInput"></param>
        /// <returns></returns>
        Task<byte[]> DownloadPrepayOrderExcel(OrderInfoPageInput orderInfoPageInput);
    }
}
