package com.brilliance.isc.mda.dao;

import com.brilliance.isc.bo.Xrt;
import com.brilliance.isc.vo.manager.XrtVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;

@Mapper
public interface XrtMapper {

    int insertSelective(Xrt record);

    int updateByPrimaryKeySelective(Xrt record);

    int updateByPrimaryKey(Xrt record);

    int deleteByPrimaryKey(Xrt record);

    int deleteByIds(Collection<Object> collection);

    Xrt selectByPrimaryKey(Xrt record);

    Xrt selectByCurWithDatRng(@Param("cur") String cur, @Param("curDat")Date curDat);

    int dyncDelete(Map<String, Object> dyncMap);

    List<Xrt> dyncRead(Map<String, Object> dyncMap);

    String getMaxXrtInr(@Param("argCur")String argCur, @Param("dateString")String dateString);

    List<Xrt> getXrtByConditionSql(@Param(value = "conditionSql") String conditionSql);

    Xrt queryById(@Param("inr") String inr);

    List<Xrt> queryAllByLimit(XrtVo xrtVo);

    List<XrtVo> queryAllByLimit1(XrtVo xrtVo);

    long count(Xrt xrt);

    int insert(Xrt xrt);

    int update(Xrt xrt);

    int deleteById(@Param("inr") String inr);

    List<XrtVo> queryFXRateList(XrtVo xrtVo);

    List<Xrt> selectRepeat(Xrt xrt);

    int setHistoryAvailableDat(Xrt xrt);

    Xrt selectAvailable(Xrt xrt);

    List<Xrt> selectInfoByTimeAndCur(@Param("cur") String cur);
}