package com.yijia.station.service;

import java.util.List;
import com.yijia.station.domain.PayOrder;

/**
 * 订单支付Service接口
 * 
 * @author yijia
 * @date 2020-12-10
 */
public interface IPayOrderService 
{
    /**
     * 查询订单支付
     * 
     * @param orderId 订单支付ID
     * @return 订单支付
     */
    public PayOrder selectPayOrderById(Long orderId);

    /**
     * 查询订单支付列表
     * 
     * @param payOrder 订单支付
     * @return 订单支付集合
     */
    public List<PayOrder> selectPayOrderList(PayOrder payOrder);

    /**
     * 新增订单支付
     * 
     * @param payOrder 订单支付
     * @return 结果
     */
    public int insertPayOrder(PayOrder payOrder);

    /**
     * 修改订单支付
     * 
     * @param payOrder 订单支付
     * @return 结果
     */
    public int updatePayOrder(PayOrder payOrder);

    /**
     * 批量删除订单支付
     * 
     * @param orderIds 需要删除的订单支付ID
     * @return 结果
     */
    public int deletePayOrderByIds(Long[] orderIds);

    /**
     * 删除订单支付信息
     * 
     * @param orderId 订单支付ID
     * @return 结果
     */
    public int deletePayOrderById(Long orderId);

    /**
     * 查询当天的油品信息
     * @param payOrder
     * @return
     */
    public PayOrder selectDaySources(PayOrder payOrder);

    /**
     * 按照油品分类获取数据
     * @param payOrder
     * @return
     */
    public List<PayOrder> selectOilTypeSources(PayOrder payOrder);

    /**
     * 收入数据概览，获取数据
     * @param payOrder
     * @return
     */
    public  PayOrder selectOverViewData(PayOrder payOrder);

    public List<PayOrder> selectDayReport(PayOrder payOrder);
    /**
     * 日报折线图获取油品数据
     * @param payOrder
     * @return
     */
    public List<PayOrder> listQydata(PayOrder payOrder);

    /**
     * 获取x轴数据
     * @param payOrder
     * @return
     */
    public List<PayOrder> listXdata(PayOrder payOrder);

    /**
     * 查询导出信息
     * @param payOrder
     * @return
     */
    public List<PayOrder> selectPayOrderExport(PayOrder payOrder);

    /**
     * 查询数据，根据员工汇总数据
     * @param payOrder
     * @return
     */
    public  List<PayOrder> selectPersonnelStructure(PayOrder payOrder);

    /**
     * 查询数据， 根据油品汇总
     * @param payOrder
     * @return
     */
    public List<PayOrder> selectOilStructure(PayOrder payOrder);

    /**
     * 初始化数据班结数据，根据员工/支付方式汇总
     * @param payOrder
     * @return
     */
    public List<PayOrder> selectPersonnelPayStructure(PayOrder payOrder);

    /**
     * 查询本站第一笔订单
     * @param payOrder
     * @return
     */
    public PayOrder getPayOrderInfoMin(PayOrder payOrder);

    /**
     * 日报数据详情
     * @param payOrder
     * @return
     */
    public List<PayOrder> dayOilTypeSources(PayOrder payOrder);
}
