package cn.superdesk.uniorder.dao.mapper.thirdpart.qchjc.invoice;

import cn.superdesk.uniorder.dao.entity.thirdpart.qchjc.invoice.QchjcInvoiceApplyEntity;
import cn.superdesk.uniorder.dao.entity.thirdpart.qchjc.invoice.QchjcInvoiceApplyEntityExample;
import cn.superdesk.uniorder.dto.vo.thirdpart.qchjc.invoice.QchjcInvoiceApplyVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface QchjcInvoiceApplyEntityMapper {
    long countByExample(QchjcInvoiceApplyEntityExample example);

    int deleteByExample(QchjcInvoiceApplyEntityExample example);

    int deleteByPrimaryKey(Long id);

    int insert(QchjcInvoiceApplyEntity record);

    int insertSelective(QchjcInvoiceApplyEntity record);

    List<QchjcInvoiceApplyEntity> selectByExampleWithBLOBs(QchjcInvoiceApplyEntityExample example);

    List<QchjcInvoiceApplyEntity> selectByExample(QchjcInvoiceApplyEntityExample example);

    QchjcInvoiceApplyEntity selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") QchjcInvoiceApplyEntity record, @Param("example") QchjcInvoiceApplyEntityExample example);

    int updateByExampleWithBLOBs(@Param("record") QchjcInvoiceApplyEntity record, @Param("example") QchjcInvoiceApplyEntityExample example);

    int updateByExample(@Param("record") QchjcInvoiceApplyEntity record, @Param("example") QchjcInvoiceApplyEntityExample example);

    int updateByPrimaryKeySelective(QchjcInvoiceApplyEntity record);

    int updateByPrimaryKeyWithBLOBs(QchjcInvoiceApplyEntity record);

    int updateByPrimaryKey(QchjcInvoiceApplyEntity record);

    List<QchjcInvoiceApplyVo> queryQchjcInvoiceApplyVoListByAccountingOrderSn(String accountingOrderSn);

    List<String> selectInvoiceApplyResByQchjcApplyId(@Param("id") Long id);
}