package ${basePackage}.module.${table.moduleName}.dal.mysql.${table.businessName};
|
|
import java.util.*;
|
|
import ${PageResultClassName};
|
import ${QueryWrapperClassName};
|
import ${BaseMapperClassName};
|
import ${basePackage}.module.${table.moduleName}.dal.dataobject.${table.businessName}.${table.className}DO;
|
import org.apache.ibatis.annotations.Mapper;
|
import ${basePackage}.module.${table.moduleName}.controller.${sceneEnum.basePackage}.${table.businessName}.vo.*;
|
|
## 字段模板
|
#macro(listCondition)
|
#foreach ($column in $columns)
|
#if (${column.listOperation})
|
#set ($JavaField = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})##首字母大写
|
#if (${column.listOperationCondition} == "=")##情况一,= 的时候
|
.eqIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#if (${column.listOperationCondition} == "!=")##情况二,!= 的时候
|
.neIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#if (${column.listOperationCondition} == ">")##情况三,> 的时候
|
.gtIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#if (${column.listOperationCondition} == ">=")##情况四,>= 的时候
|
.geIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#if (${column.listOperationCondition} == "<")##情况五,< 的时候
|
.ltIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#if (${column.listOperationCondition} == "<=")##情况五,<= 的时候
|
.leIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#if (${column.listOperationCondition} == "LIKE")##情况七,Like 的时候
|
.likeIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#if (${column.listOperationCondition} == "BETWEEN")##情况八,Between 的时候
|
.betweenIfPresent(${table.className}DO::get${JavaField}, reqVO.get${JavaField}())
|
#end
|
#end
|
#end
|
#end
|
/**
|
* ${table.classComment} Mapper
|
*
|
* @author ${table.author}
|
*/
|
@Mapper
|
public interface ${table.className}Mapper extends BaseMapperX<${table.className}DO> {
|
|
## 特殊:树表专属逻辑(树不需要分页接口)
|
#if ( $table.templateType != 2 )
|
default PageResult<${table.className}DO> selectPage(${sceneEnum.prefixClass}${table.className}PageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<${table.className}DO>()
|
#listCondition()
|
.orderByDesc(${table.className}DO::getId));## 大多数情况下,id 倒序
|
|
}
|
#else
|
default List<${table.className}DO> selectList(${sceneEnum.prefixClass}${table.className}ListReqVO reqVO) {
|
return selectList(new LambdaQueryWrapperX<${table.className}DO>()
|
#listCondition()
|
.orderByDesc(${table.className}DO::getId));## 大多数情况下,id 倒序
|
|
}
|
#end
|
|
## 特殊:树表专属逻辑
|
#if ( $table.templateType == 2 )
|
#set ($TreeParentJavaField = $treeParentColumn.javaField.substring(0,1).toUpperCase() + ${treeParentColumn.javaField.substring(1)})##首字母大写
|
#set ($TreeNameJavaField = $treeNameColumn.javaField.substring(0,1).toUpperCase() + ${treeNameColumn.javaField.substring(1)})##首字母大写
|
default ${table.className}DO selectBy${TreeParentJavaField}And${TreeNameJavaField}(Long ${treeParentColumn.javaField}, String ${treeNameColumn.javaField}) {
|
return selectOne(${table.className}DO::get${TreeParentJavaField}, ${treeParentColumn.javaField}, ${table.className}DO::get${TreeNameJavaField}, ${treeNameColumn.javaField});
|
}
|
|
default Long selectCountBy${TreeParentJavaField}(${treeParentColumn.javaType} ${treeParentColumn.javaField}) {
|
return selectCount(${table.className}DO::get${TreeParentJavaField}, ${treeParentColumn.javaField});
|
}
|
|
#end
|
}
|