This commit is contained in:
2026-09-16 11:07:00 +08:00
3 changed files with 5 additions and 4 deletions
@@ -43,7 +43,7 @@ public class BuildController {
} }
/** /**
* 批量删除教学楼(已绑定教学场地的跳过不删) * 批量删除教学楼(已绑定教学场地的跳过不删,暂定
*/ */
@PostMapping("/batchDelete") @PostMapping("/batchDelete")
public Result<BuildDeleteResultVO> batchDelete(@RequestBody List<String> ids) { public Result<BuildDeleteResultVO> batchDelete(@RequestBody List<String> ids) {
@@ -36,11 +36,11 @@
AND DEL_FLAG = #{jxlb.delFlag} AND DEL_FLAG = #{jxlb.delFlag}
</if> </if>
</where> </where>
ORDER BY 序号 ORDER BY CASE WHEN REGEXP_LIKE(序号, '^[0-9]+$') THEN CAST(序号 AS INT) END NULLS LAST, 序号
</select> </select>
<select id="selectMaxXh" resultType="java.lang.String"> <select id="selectMaxXh" resultType="java.lang.String">
SELECT MAX(序号) FROM 教学楼表 WHERE DEL_FLAG = 0 SELECT MAX(CAST(序号 AS INT)) FROM 教学楼表 WHERE DEL_FLAG = 0 AND REGEXP_LIKE(序号, '^[0-9]+$')
</select> </select>
</mapper> </mapper>
@@ -173,7 +173,8 @@ public class BuildServiceImpl implements BuildService {
} }
// 只返回未删除的教学楼(与 pageList 口径一致,避免已删除数据出现在下拉/全量列表里) // 只返回未删除的教学楼(与 pageList 口径一致,避免已删除数据出现在下拉/全量列表里)
wrapper.eq(JXLB::getDelFlag, 0); wrapper.eq(JXLB::getDelFlag, 0);
wrapper.orderByAsc(JXLB::getXh); // 序号为字符串列,按自然数排序(非数字排在最后按字典序),与 pageList 口径一致
wrapper.last("ORDER BY CASE WHEN REGEXP_LIKE(序号, '^[0-9]+$') THEN CAST(序号 AS INT) END NULLS LAST, 序号");
return buildMapper.selectList(wrapper); return buildMapper.selectList(wrapper);
} }