package com.jkcredit.invoice.service.lowerService;

import com.jkcredit.invoice.model.entity.customer.CustomerCarRec;
import com.jkcredit.invoice.model.entity.waybill.NoCarWayBill;
import com.jkcredit.invoice.service.lowerService.vo.HCInvoiceQueryVo;
import com.jkcredit.invoice.service.lowerService.vo.MonthAccountQueryVo;
import com.jkcredit.invoice.util.RespR;

import java.util.List;

/**
 * 无车接口
 */
public interface NoCarService {
    /**
     * 车辆备案
     * @param customerCarRec
     * @return
     */
    RespR customerCarRec(List<CustomerCarRec> customerCarRec);

    /**
     * 车辆备案查询查上游
     * @param customerCarRec
     * @return
     */
    RespR customerCarRecQueryUpper(CustomerCarRec customerCarRec);



    /**
     * 无车车辆备案查询
     * @param customerCarRec
     * @return
     */
    RespR customerCarRecQuery(CustomerCarRec customerCarRec);
    /**
     * 运单指令开始
     * @return
     */
    RespR noCarWaybillStart(NoCarWayBill noCarWayBill);

    /**
     * 运单指令结束
     * @return
     */
    RespR noCarWaybillEnd(NoCarWayBill noCarWayBill);

    /**
     * 历史运单指令开始
     * @return
     */
    RespR noCarHisWaybillStart(NoCarWayBill noCarWayBill);

    /**
     * 历史运单指令结束
     * @return
     */
    RespR noCarHisWaybillEnd(NoCarWayBill noCarWayBill);

    /**
     * 获取发票和运单状态 true 实时 false 走本地
     * @param noCarWayBill
     * @param isCurr
     * @return
     */
    RespR getInvoiceByWayBillNumReal(NoCarWayBill noCarWayBill,boolean isCurr);

    /**
     * 红冲发票查询
     * @param hcInvoiceQueryVo
     * @return
     */
    RespR hCInvoiceQuery(HCInvoiceQueryVo hcInvoiceQueryVo);

    /**
     * 月账单查询
     * @param monthAccountQueryVo
     * @return
     */
    RespR monthAccQuery(MonthAccountQueryVo monthAccountQueryVo);

}
