package com.moon.server.mapper.all; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.moon.server.entity.sys.AttachEntity; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import java.util.List; /** * 基础Mapper * @author WWW * @param 泛型 */ public interface BasicMapper extends BaseMapper { /** * 模糊搜索字段 * * @param tab 表名 * @param field 字段 * @param value 值 * @return 结果列表 */ @Select("select ${field} from ${tab} where upper(${field}) like #{value} order by ${field} limit 10") public List selectFieldFuzzy(@Param("tab") String tab, @Param("field") String field, @Param("value") String value); /** * 自定义批量插入 * 如果要自动填充,@Param(xx) xx参数名必须是 list/collection/array 3个的其中之一 * * @param list * @return */ public int insertBatch(@Param("list") List list); /** * 自定义批量更新,条件为主键 * 如果要自动填充,@Param(xx) xx参数名必须是 list/collection/array 3个的其中之一 * * @param list * @return */ public int updateBatch(@Param("list") List list); /** * 查询附件 * * @param tab 表名 * @param wrapper 查询包装器 * @return */ @Select("select * from lf.sys_attach where tab = #{tab} and tab_guid in (select eventid from ${tab} ${ew.customSqlSegment})") public List selectAnnex(@Param("tab") String tab, @Param("ew") QueryWrapper wrapper); }