package com.brilliance.isc.mda.dao;

import com.brilliance.isc.common.rmbbop.entity.Tgb;
import com.brilliance.isc.common.rmbbop.entity.Tgc;
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 TgbMapper {
    int insert(Tgb record);

    int insertSelective(Tgb record);

    int updateByPrimaryKeySelective(Tgb record);

    int updateByPrimaryKey(Tgb record);

    int deleteByPrimaryKey(Tgb record);

    int deleteByIds(Collection<Object> collection);

    Tgb selectByPrimaryKey(Tgb record);

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

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

    Tgb selectByObjInfo(Tgc newtgc);

    List<Tgb> selectByObjtypAndObjinr(@Param("objtyp") String objtyp, @Param("objinr") String objinr);

    int deleteByobjtypAndobjinr (@Param("objtyp") String objtyp, @Param("objinr") String objinr);

    /**
     * 批量新增数据（MyBatis原生foreach方法）
     *
     * @param entities List<Tgb> 实例对象列表
     * @return 影响行数
     */
    int insertBatch(@Param("entities") List<Tgb> entities);
}
