package com.brilliance.isc.mda.dao;

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

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

@Mapper
public interface EarMapper {

    int insert(Ear record);

    int insertSelective(Ear record);

    int updateByPrimaryKeySelective(Ear record);

    int updateByPrimaryKey(Ear record);

    int deleteByPrimaryKey(Ear record);

    int deleteByIds(Collection<Object> collection);

    Ear selectByPrimaryKey(Ear record);

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

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

    /**
     * 通过 eblinr  查询 ear 表,可能一笔交易出现多条ear
     * @param eblinr
     * @return
     */
    List<Ear> selectByEblinr(@Param("eblinr") String eblinr);

    /**
     * 通过INR 查询数据
     * @param inr
     * @return
     */
    Ear selectByInr(@Param("inr") String inr);

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

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

    /**
     * 通过外债编号更新状态
     * @param exdebtcode
     * @param sta
     * @return
     */
    int updateStaByRptno(@Param("exdebtcode") String exdebtcode,@Param("sta") String sta);

}