package com.brilliance.isc.mda.dao;

import com.brilliance.isc.bo.Fep;
import com.brilliance.isc.vo.lg.*;
import com.brilliance.isc.vo.manager.FeeConVo;
import com.brilliance.isc.vo.report.DomLcFeeReportVo;
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 FepMapper {

    int insert(Fep record);

    int insertSelective(Fep record);

    int updateByPrimaryKeySelective(Fep record);

    int updateByPrimaryKey(Fep record);

    int deleteByPrimaryKey(Fep record);

    int deleteByIds(Collection<Object> collection);

    Fep selectByPrimaryKey(Fep record);

    Fep selectByInr(String inr);

    List<Fep> selectByCommonConditions(String relObjTyp, String relObjInr, String feeCod, String rplTrnInr, String src, String fepInr, Date dat1, Date dat2);

    Date selectMinDat1(String relObjInr, Date dat2);

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

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

    List<FepFcpInfVo> queryFep(@Param("objtyp") String objtyp, @Param("objinr") String objinr, @Param("feecod") String feecod, @Param("fepdsp") String fepdsp);


    int deleteBySrctrninr(String srctrninr);

    int updateDontrninrByDontrninr(String dontrninr);

    int updateRpltrninrByRpltrninr(String rpltrninr);

    Fep selectByDontrninr(@Param("dontrninr") String dontrninr);

    List<ComselVo> getComselList(QueryConditionInfoVo conditionInfoVo);

    List<ComcalVo> getComcalList(QueryConditionInfoVo conditionInfoVo);

    // 收费优惠明细列表查询
    List<FeeConVo> listByFeeConVo(FeeConVo record);

    //国内信用证手续费收入汇总报表
    List<DomLcFeeReportVo> getDomLcReport(RptselRequestVo rptselRequestVo);

}