package com.brilliance.isc.mda.dao;

import com.brilliance.isc.bo.Ebl;
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 EblMapper {

    int insert(Ebl record);

    int insertSelective(Ebl record);

    int updateByPrimaryKeySelective(Ebl record);

    int updateByPrimaryKey(Ebl record);

    int deleteByPrimaryKey(Ebl record);

    int deleteByIds(Collection<Object> collection);

    Ebl selectByPrimaryKey(Ebl record);

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

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

    Ebl selectByTrninr(@Param("trninr") String trninr);

    Ebl selectEBAByOwnref(@Param("ownref") String ownref);

    String selectMaxinrByOwnref(@Param("ownref") String ownref);

    /**
     * 通过业务编号获取最大 inr 报送使用
     */
    String selectMaxInrByOwnrefAndObjtyp(@Param("ownref") String ownref,@Param("objtyp") String objtyp);

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

    /**
     *通过流水 以及 报送类型 查询 ebl 记录
     * @param trninr 交易流水
     * @param objtyp 报送类型
     * @return
     */
    Ebl selectByTrninrAndObjtyp(@Param("trninr") String trninr,@Param("objtyp") String objtyp);

}