feat(qo): 新增物料查询排序字段支持
- QmsQcMaterialSearchQO中增加sortField和sortOrder字段 - 根据sortField动态选择排序字段,支持多种物料相关字段排序 - 支持sortOrder指定升序或降序,默认降序排序 - QmsQcMaterialMapper.xml中修改SQL实现根据请求参数动态排序 - 默认排序仍为物料编号倒序,兼容无排序参数情况
This commit is contained in:
parent
260e533cc0
commit
b06c07dc6c
|
|
@ -34,4 +34,15 @@ public class QmsQcMaterialSearchQO extends PageQO {
|
|||
* 物料名称(模糊匹配)
|
||||
*/
|
||||
private String materialName;
|
||||
|
||||
/**
|
||||
* 排序字段(对应 QmsQcMaterialVO 中的字段名,如 materialNo、createTime 等)
|
||||
* 为空时默认按物料编号倒序
|
||||
*/
|
||||
private String sortField;
|
||||
|
||||
/**
|
||||
* 排序类型:asc=升序,desc=降序,默认 desc
|
||||
*/
|
||||
private String sortOrder;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -48,7 +48,36 @@
|
|||
AND material_name ilike concat('%', #{request.materialName}, '%')
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY material_no DESC
|
||||
ORDER BY
|
||||
<choose>
|
||||
<when test="request.sortField != null and request.sortField != ''">
|
||||
<choose>
|
||||
<when test="request.sortField == 'id'">id</when>
|
||||
<when test="request.sortField == 'materialNo'">material_no</when>
|
||||
<when test="request.sortField == 'materialDesc'">material_desc</when>
|
||||
<when test="request.sortField == 'materialDescIsUpgrade'">material_desc_is_upgrade</when>
|
||||
<when test="request.sortField == 'materialCategoryCode'">material_category_code</when>
|
||||
<when test="request.sortField == 'materialCategoryCodePathName'">material_category_code_path_name</when>
|
||||
<when test="request.sortField == 'drawingNo'">drawing_no</when>
|
||||
<when test="request.sortField == 'drawingNoVer'">drawing_no_ver</when>
|
||||
<when test="request.sortField == 'materialName'">material_name</when>
|
||||
<when test="request.sortField == 'materialTexture'">material_texture</when>
|
||||
<when test="request.sortField == 'materialSpecifications'">material_specifications</when>
|
||||
<when test="request.sortField == 'isStandardMaintained'">is_standard_maintained</when>
|
||||
<when test="request.sortField == 'createdType'">created_type</when>
|
||||
<when test="request.sortField == 'createByName'">create_by_name</when>
|
||||
<when test="request.sortField == 'createTime'">create_time</when>
|
||||
<when test="request.sortField == 'updateByName'">update_by_name</when>
|
||||
<when test="request.sortField == 'updateTime'">update_time</when>
|
||||
<otherwise>material_no</otherwise>
|
||||
</choose>
|
||||
<choose>
|
||||
<when test="request.sortOrder != null and request.sortOrder.equalsIgnoreCase('asc')">ASC</when>
|
||||
<otherwise>DESC</otherwise>
|
||||
</choose>
|
||||
</when>
|
||||
<otherwise>material_no DESC</otherwise>
|
||||
</choose>
|
||||
</select>
|
||||
|
||||
<!--
|
||||
|
|
@ -94,7 +123,36 @@
|
|||
AND material_name ilike concat('%', #{request.materialName}, '%')
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY material_no DESC
|
||||
ORDER BY
|
||||
<choose>
|
||||
<when test="request.sortField != null and request.sortField != ''">
|
||||
<choose>
|
||||
<when test="request.sortField == 'id'">id</when>
|
||||
<when test="request.sortField == 'materialNo'">material_no</when>
|
||||
<when test="request.sortField == 'materialDesc'">material_desc</when>
|
||||
<when test="request.sortField == 'materialDescIsUpgrade'">material_desc_is_upgrade</when>
|
||||
<when test="request.sortField == 'materialCategoryCode'">material_category_code</when>
|
||||
<when test="request.sortField == 'materialCategoryCodePathName'">material_category_code_path_name</when>
|
||||
<when test="request.sortField == 'drawingNo'">drawing_no</when>
|
||||
<when test="request.sortField == 'drawingNoVer'">drawing_no_ver</when>
|
||||
<when test="request.sortField == 'materialName'">material_name</when>
|
||||
<when test="request.sortField == 'materialTexture'">material_texture</when>
|
||||
<when test="request.sortField == 'materialSpecifications'">material_specifications</when>
|
||||
<when test="request.sortField == 'isStandardMaintained'">is_standard_maintained</when>
|
||||
<when test="request.sortField == 'createdType'">created_type</when>
|
||||
<when test="request.sortField == 'createByName'">create_by_name</when>
|
||||
<when test="request.sortField == 'createTime'">create_time</when>
|
||||
<when test="request.sortField == 'updateByName'">update_by_name</when>
|
||||
<when test="request.sortField == 'updateTime'">update_time</when>
|
||||
<otherwise>material_no</otherwise>
|
||||
</choose>
|
||||
<choose>
|
||||
<when test="request.sortOrder != null and request.sortOrder.equalsIgnoreCase('asc')">ASC</when>
|
||||
<otherwise>DESC</otherwise>
|
||||
</choose>
|
||||
</when>
|
||||
<otherwise>material_no DESC</otherwise>
|
||||
</choose>
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
|||
Loading…
Reference in New Issue