package com.dxhy.core.service.export;

import java.util.List;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dxhy.common.service.MpBaseService;
import com.dxhy.core.entity.TDxRecordInvoice;
import com.dxhy.core.model.CautionAbnormalReqVO;
import com.dxhy.core.model.CautionExpirationReqVO;
import com.dxhy.core.model.CautionMaximalReqVO;
import com.dxhy.core.model.RecordInvoiceModel;
import com.github.pagehelper.PageInfo;

/**
 * 发票预警相关导出
 *
 * @author aa
 */

public interface IExportCautionService extends MpBaseService<TDxRecordInvoice> {

    /**
     * 发票预警 -> 逾期预警导出
     *
     * @param page
     * @param reqVO
     * @param allTaxNo
     * @return
     */
    PageInfo<RecordInvoiceModel> listExpiration(Page<RecordInvoiceModel> page, CautionExpirationReqVO reqVO,
        List<String> allTaxNo);

    /**
     * 异常发票
     *
     * @param page
     * @param reqVO
     * @param allTaxNo
     * @return
     */
    PageInfo<TDxRecordInvoice> listAnomaly(Page<TDxRecordInvoice> page, CautionAbnormalReqVO reqVO,
        List<String> allTaxNo);

    /**
     * 普票跨年度
     *
     * @param page
     * @param reqVO
     * @param allTaxNo
     * @return
     */
    PageInfo<TDxRecordInvoice> listMaximal(Page<TDxRecordInvoice> page, CautionMaximalReqVO reqVO,
        List<String> allTaxNo);
}
