123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #set ($subTable = $subTables.get($subIndex))##当前表
- #set ($subColumns = $subJoinColumnsList.get($subIndex))##当前字段数组
- #set ($subJoinColumn = $subJoinColumns.get($subIndex))##当前 join 字段
- #set ($SubJoinColumnName = $subJoinColumn.javaField.substring(0,1).toUpperCase() + ${subJoinColumn.javaField.substring(1)})##首字母大写
- package ${basePackage}.module.${subTable.moduleName}.dal.mysql.${subTable.businessName};
- import java.util.*;
- import ${PageResultClassName};
- import ${PageParamClassName};
- import ${QueryWrapperClassName};
- import ${BaseMapperClassName};
- import ${basePackage}.module.${subTable.moduleName}.dal.dataobject.${subTable.businessName}.${subTable.className}DO;
- import org.apache.ibatis.annotations.Mapper;
- /**
- * ${subTable.classComment} Mapper
- *
- * @author ${subTable.author}
- */
- @Mapper
- public interface ${subTable.className}Mapper extends BaseMapperX<${subTable.className}DO> {
- ## 情况一:MASTER_ERP 时,需要分查询页子表
- #if ( $table.templateType == 11 )
- default PageResult<${subTable.className}DO> selectPage(PageParam reqVO, ${subJoinColumn.javaType} ${subJoinColumn.javaField}) {
- return selectPage(reqVO, new LambdaQueryWrapperX<${subTable.className}DO>()
- .eq(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField})
- .orderByDesc(${subTable.className}DO::getId));## 大多数情况下,id 倒序
- }
- ## 主表与子表是一对一时
- #if (!$subTable.subJoinMany)
- default ${subTable.className}DO selectBy${SubJoinColumnName}(${subJoinColumn.javaType} ${subJoinColumn.javaField}) {
- return selectOne(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField});
- }
- #end
- ## 情况二:非 MASTER_ERP 时,需要列表查询子表
- #else
- #if ( $subTable.subJoinMany)
- default List<${subTable.className}DO> selectListBy${SubJoinColumnName}(${subJoinColumn.javaType} ${subJoinColumn.javaField}) {
- return selectList(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField});
- }
- #else
- default ${subTable.className}DO selectBy${SubJoinColumnName}(${subJoinColumn.javaType} ${subJoinColumn.javaField}) {
- return selectOne(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField});
- }
- #end
- #end
- default int deleteBy${SubJoinColumnName}(${subJoinColumn.javaType} ${subJoinColumn.javaField}) {
- return delete(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField});
- }
- }
|