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

import cn.superdesk.uniorder.dao.entity.thirdpart.qchjc.accounting.QchjcAccountingScoreCustomerEntity;
import cn.superdesk.uniorder.dao.entity.thirdpart.qchjc.accounting.QchjcAccountingScoreCustomerEntityExample;
import cn.superdesk.uniorder.dto.param.accounting.qchjc.QchjcCustomerAccountingListRequest;
import cn.superdesk.uniorder.dto.vo.thirdpart.qchjc.accounting.QchjcCustomerStatementVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface QchjcAccountingScoreCustomerEntityMapper {
    long countByExample(QchjcAccountingScoreCustomerEntityExample example);

    int deleteByExample(QchjcAccountingScoreCustomerEntityExample example);

    int deleteByPrimaryKey(Long id);

    int insert(QchjcAccountingScoreCustomerEntity record);

    int insertSelective(QchjcAccountingScoreCustomerEntity record);

    List<QchjcAccountingScoreCustomerEntity> selectByExample(QchjcAccountingScoreCustomerEntityExample example);

    QchjcAccountingScoreCustomerEntity selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") QchjcAccountingScoreCustomerEntity record, @Param("example") QchjcAccountingScoreCustomerEntityExample example);

    int updateByExample(@Param("record") QchjcAccountingScoreCustomerEntity record, @Param("example") QchjcAccountingScoreCustomerEntityExample example);

    int updateByPrimaryKeySelective(QchjcAccountingScoreCustomerEntity record);

    int updateByPrimaryKey(QchjcAccountingScoreCustomerEntity record);

    QchjcCustomerStatementVo getTodoList(@Param("id") Long id);

    QchjcAccountingScoreCustomerEntity selectByAccountingOrderSn(@Param("accountingOrderSn") String accountingOrderSn);

    List<QchjcCustomerStatementVo> queryQchjcCustomerStatementList(QchjcCustomerAccountingListRequest request);

    QchjcCustomerStatementVo queryQchjcCustomerStatementVoById(@Param("id") Long id);

    List<Long> getTodoIdList();

}