package com.iailab.module.infra.dal.mysql.codegen; import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.mybatis.core.mapper.BaseMapperX; import com.iailab.framework.mybatis.core.query.LambdaQueryWrapperX; import com.iailab.module.infra.controller.admin.codegen.vo.table.CodegenTablePageReqVO; import com.iailab.module.infra.dal.dataobject.codegen.CodegenTableDO; import org.apache.ibatis.annotations.Mapper; import java.util.List; @Mapper public interface CodegenTableMapper extends BaseMapperX { default CodegenTableDO selectByTableNameAndDataSourceConfigId(String tableName, Long dataSourceConfigId) { return selectOne(CodegenTableDO::getTableName, tableName, CodegenTableDO::getDataSourceConfigId, dataSourceConfigId); } default PageResult selectPage(CodegenTablePageReqVO pageReqVO) { return selectPage(pageReqVO, new LambdaQueryWrapperX() .likeIfPresent(CodegenTableDO::getTableName, pageReqVO.getTableName()) .likeIfPresent(CodegenTableDO::getTableComment, pageReqVO.getTableComment()) .likeIfPresent(CodegenTableDO::getClassName, pageReqVO.getClassName()) .betweenIfPresent(CodegenTableDO::getCreateTime, pageReqVO.getCreateTime()) .orderByDesc(CodegenTableDO::getUpdateTime) ); } default List selectListByDataSourceConfigId(Long dataSourceConfigId) { return selectList(CodegenTableDO::getDataSourceConfigId, dataSourceConfigId); } default List selectListByTemplateTypeAndMasterTableId(Integer templateType, Long masterTableId) { return selectList(CodegenTableDO::getTemplateType, templateType, CodegenTableDO::getMasterTableId, masterTableId); } }