package com.jkcredit.invoice.hub.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jkcredit.invoice.hub.model.dto.carFreeCarrierBillStart.BillRecordDto;
import com.jkcredit.invoice.hub.model.po.carFreeCarrierBillStart.BillRecordPo;
import com.jkcredit.invoice.hub.model.po.carFreeCarrierBillStart.CarFreeCarrierBillStartPo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @description:
 * @author: xusonglin
 * @create: 2020/1/16 23:22
 * @version: V1.0
 **/
public interface CarFreeCarrierBillStartMapper extends BaseMapper<CarFreeCarrierBillStartPo> {
    // 根据运单编号查询运单开始记录
    CarFreeCarrierBillStartPo getBillStartByNum(String num);

    // 查询状态为已结束和开票中运单的实时运单
    List<CarFreeCarrierBillStartPo> getRealTimeBills();

    // 查询状态为已结束和开票中运单的历史运单
    List<CarFreeCarrierBillStartPo> getHistoryBills();

    // 查询状态为空的运单（状态为空为老平台遗留数据，通过此项目接口上传的运单状态不为空）
    List<CarFreeCarrierBillStartPo> getBillsWithoutIsHistoryFlag();

    // 查询未被查询过的运单编号
    List<String> getNoSearchNums(String userId);

    IPage<BillRecordPo> getBillRecord(Page page, @Param("query") BillRecordDto dto);
}
