package com.neusoft.smart.pos.payorder.persistent.mapper;

import com.neusoft.smart.pos.payorder.persistent.domain.PaymentTradeLog;
import com.neusoft.smart.pos.payorder.persistent.domain.PaymentTradeLogExample;
import com.neusoft.smart.pos.payorder.persistent.domain.PaymentTradeLogWithBLOBs;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface PaymentTradeLogMapper {
    int countByExample(PaymentTradeLogExample example);

    int deleteByExample(PaymentTradeLogExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(PaymentTradeLogWithBLOBs record);

    int insertSelective(PaymentTradeLogWithBLOBs record);

    List<PaymentTradeLogWithBLOBs> selectByExampleWithBLOBs(PaymentTradeLogExample example);

    List<PaymentTradeLog> selectByExample(PaymentTradeLogExample example);

    PaymentTradeLogWithBLOBs selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") PaymentTradeLogWithBLOBs record, @Param("example") PaymentTradeLogExample example);

    int updateByExampleWithBLOBs(@Param("record") PaymentTradeLogWithBLOBs record, @Param("example") PaymentTradeLogExample example);

    int updateByExample(@Param("record") PaymentTradeLog record, @Param("example") PaymentTradeLogExample example);

    int updateByPrimaryKeySelective(PaymentTradeLogWithBLOBs record);

    int updateByPrimaryKeyWithBLOBs(PaymentTradeLogWithBLOBs record);

    int updateByPrimaryKey(PaymentTradeLog record);

    void batchInsert(@Param("items") List<PaymentTradeLog> items);
}