refactor: mapper.xml 模板完善
This commit is contained in:
@@ -5,25 +5,53 @@
|
||||
<!-- 获取${businessName}分页列表 -->
|
||||
<select id="get${entityName}Page" resultType="${package}.model.vo.${entityName}VO">
|
||||
SELECT
|
||||
*
|
||||
#if($fieldConfigs)
|
||||
#set ($fields = [])
|
||||
#foreach($fieldConfig in ${fieldConfigs})
|
||||
#if($fieldConfig.isShowInList)
|
||||
#set ($discard = $fields.add(${fieldConfig.columnName}))
|
||||
#end
|
||||
#end
|
||||
#foreach($field in $fields)
|
||||
${field}#if($foreach.hasNext),#end
|
||||
#end
|
||||
#end
|
||||
FROM
|
||||
${tableName}
|
||||
<where>
|
||||
is_deleted = 0
|
||||
<if test='queryParams.keywords!=null and queryParams.keywords.trim() neq ""'>
|
||||
AND (
|
||||
name LIKE CONCAT('%',#{queryParams.keywords},'%')
|
||||
)
|
||||
</if>
|
||||
<if test="queryParams.startTime != null">
|
||||
AND create_time >= #{queryParams.startTime}
|
||||
</if>
|
||||
<if test="queryParams.endTime != null">
|
||||
AND create_time <= #{queryParams.endTime}
|
||||
</if>
|
||||
#if($fieldConfigs)
|
||||
#foreach($fieldConfig in ${fieldConfigs})
|
||||
#if($fieldConfig.isShowInQuery)
|
||||
<if test="queryParams.${fieldConfig.fieldName} != null">
|
||||
#set ($queryType = ${fieldConfig.queryType})
|
||||
#if($queryType == "EQ")
|
||||
AND ${fieldConfig.columnName} = #{queryParams.${fieldConfig.fieldName}}
|
||||
#elseif($queryType == "LIKE")
|
||||
AND ${fieldConfig.columnName} LIKE CONCAT('%', #{queryParams.${fieldConfig.fieldName}}, '%')
|
||||
#elseif($queryType == "IN")
|
||||
AND ${fieldConfig.columnName} IN
|
||||
#elseif($queryType == "BETWEEN")
|
||||
AND ${fieldConfig.columnName} BETWEEN #{queryParams.${fieldConfig.fieldName}Start} AND #{queryParams.${fieldConfig.fieldName}End}
|
||||
#elseif($queryType == "GT")
|
||||
AND ${fieldConfig.columnName} > #{queryParams.${fieldConfig.fieldName}}
|
||||
#elseif($queryType == "GE")
|
||||
AND ${fieldConfig.columnName} >= #{queryParams.${fieldConfig.fieldName}}
|
||||
#elseif($queryType == "LT")
|
||||
AND ${fieldConfig.columnName} < #{queryParams.${fieldConfig.fieldName}}
|
||||
#elseif($queryType == "LE")
|
||||
AND ${fieldConfig.columnName} <= #{queryParams.${fieldConfig.fieldName}}
|
||||
#elseif($queryType == "NE")
|
||||
AND ${fieldConfig.columnName} != #{queryParams.${fieldConfig.fieldName}}
|
||||
#elseif($queryType == "LIKE_LEFT")
|
||||
AND ${fieldConfig.columnName} LIKE CONCAT('%', #{queryParams.${fieldConfig.fieldName}})
|
||||
#elseif($queryType == "LIKE_RIGHT")
|
||||
AND ${fieldConfig.columnName} LIKE CONCAT(#{queryParams.${fieldConfig.fieldName}}, '%')
|
||||
#end
|
||||
</if>
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
</where>
|
||||
ORDER BY
|
||||
create_time DESC
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user