package com.brilliance.isc.mda.dao;

import com.brilliance.isc.bo.Ecb;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

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

@Mapper
public interface EcbMapper {

    int insert(Ecb record);

    int insertSelective(Ecb record);

    int updateByPrimaryKeySelective(Ecb record);

    int updateByPrimaryKey(Ecb record);

    int deleteByPrimaryKey(Ecb record);

    int deleteByIds(Collection<Object> collection);

    Ecb selectByPrimaryKey(Ecb record);

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

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

    Ecb selectByInr(@Param("inr") String inr);

    /**
     * 报送使用 查询最新的期末余额
     * @param dofoexlocode 国内外汇贷款编号
     * @return
     */
    Ecb selectLastEndbalan(@Param("dofoexlocode") String dofoexlocode);

    /**
     * 通过 eblinr  查询 ead 表
     * @param eblinr
     * @return
     */
    Ecb selectByEblinr(@Param("eblinr") String eblinr);

    /**
     * 通过   objinr trn.relflg 查询关联的变动信息
     * @param objinr
     * @return
     */
    List<Ecb> selectByObjinrAndTrn(@Param("objtyp") String objtyp,@Param("objinr") String objinr);

    /**
     * 通过   objinr 且trninr 为空 查询关联的变动信息
     * @param objinr
     * @return
     */
    List<Ecb> selectByObjinr(@Param("objinr") String objinr);

    /**
     * 通过国内外汇贷款编号更新状态
     * @param dofoexlocode
     * @param sta
     * @return
     */
    int updateStaByRptno(@Param("dofoexlocode") String dofoexlocode,@Param("sta") String sta);

}