Commit e6b6097d1e9186ae2f0a814599104da898577d2c
1 parent
fbfd1155
排序字段兼容
Showing
1 changed file
with
21 additions
and
5 deletions
urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/pojo/PageParam.java
| ... | ... | @@ -36,21 +36,37 @@ public class PageParam implements Serializable { |
| 36 | 36 | private Integer pageSize = PAGE_SIZE; |
| 37 | 37 | |
| 38 | 38 | /** |
| 39 | - * 排序字段 | |
| 39 | + * 排序字段(默认 id) | |
| 40 | 40 | */ |
| 41 | 41 | private String orderByColumn = "id"; |
| 42 | 42 | /** |
| 43 | - * 排序方向:asc(升序)/ desc(降序) | |
| 43 | + * 排序方向:仅支持 asc(升序)/ desc(降序),默认 desc | |
| 44 | 44 | */ |
| 45 | 45 | private String isAsc = "desc"; |
| 46 | 46 | /** |
| 47 | - * sortAsc=true(升序) | |
| 47 | + * 排序方向布尔值:true=asc,false=desc(与 isAsc 联动,无需前端传递) | |
| 48 | 48 | */ |
| 49 | 49 | private Boolean sortAsc = true; |
| 50 | 50 | |
| 51 | 51 | public void setIsAsc(String isAsc) { |
| 52 | - this.isAsc = StringUtils.hasText(isAsc) ? isAsc.trim() : "desc"; | |
| 53 | - this.sortAsc = "asc".equalsIgnoreCase(this.isAsc); | |
| 52 | + // 步骤1:处理空值/空白字符串 → 直接设为默认 desc | |
| 53 | + if (!StringUtils.hasText(isAsc)) { | |
| 54 | + this.isAsc = "desc"; | |
| 55 | + this.sortAsc = false; | |
| 56 | + return; | |
| 57 | + } | |
| 58 | + | |
| 59 | + // 步骤2:去空格并转为小写,判断是否为合法值 | |
| 60 | + String trimmedIsAsc = isAsc.trim().toLowerCase(); | |
| 61 | + if ("asc".equals(trimmedIsAsc) || "desc".equals(trimmedIsAsc)) { | |
| 62 | + // 合法值:直接赋值并同步 sortAsc | |
| 63 | + this.isAsc = trimmedIsAsc; | |
| 64 | + this.sortAsc = "asc".equals(trimmedIsAsc); | |
| 65 | + } else { | |
| 66 | + // 非法值:兜底为 desc,同步 sortAsc 为 false | |
| 67 | + this.isAsc = "desc"; | |
| 68 | + this.sortAsc = false; | |
| 69 | + } | |
| 54 | 70 | } |
| 55 | 71 | |
| 56 | 72 | } | ... | ... |