From d4af02f600325aacb1789f1928175d4317ab530f Mon Sep 17 00:00:00 2001
From: 抓蛙师 <770492966@qq.com>
Date: 星期五, 15 七月 2022 18:16:26 +0800
Subject: [PATCH] 首页允许匿名访问
---
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 49 insertions(+), 8 deletions(-)
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java
index 4559ac9..f3e2c4a 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java
@@ -1,8 +1,11 @@
package com.ruoyi.common.core.domain;
-import io.swagger.annotations.ApiModelProperty;
+import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.sql.SqlUtil;
import lombok.Data;
-import lombok.experimental.Accessors;
import java.io.Serializable;
@@ -13,33 +16,71 @@
*/
@Data
-@Accessors(chain = true)
public class PageQuery implements Serializable {
- private static final long serialVersionUID = 1L;
+ private static final long serialVersionUID = 1L;
/**
* 鍒嗛〉澶у皬
*/
- @ApiModelProperty("鍒嗛〉澶у皬")
private Integer pageSize;
/**
* 褰撳墠椤垫暟
*/
- @ApiModelProperty("褰撳墠椤垫暟")
private Integer pageNum;
/**
* 鎺掑簭鍒�
*/
- @ApiModelProperty("鎺掑簭鍒�")
private String orderByColumn;
/**
* 鎺掑簭鐨勬柟鍚慸esc鎴栬�卆sc
*/
- @ApiModelProperty(value = "鎺掑簭鐨勬柟鍚�", example = "asc,desc")
private String isAsc;
+ /**
+ * 褰撳墠璁板綍璧峰绱㈠紩 榛樿鍊�
+ */
+ public static final int DEFAULT_PAGE_NUM = 1;
+
+ /**
+ * 姣忛〉鏄剧ず璁板綍鏁� 榛樿鍊� 榛樿鏌ュ叏閮�
+ */
+ public static final int DEFAULT_PAGE_SIZE = Integer.MAX_VALUE;
+
+ public <T> Page<T> build() {
+ Integer pageNum = ObjectUtil.defaultIfNull(getPageNum(), DEFAULT_PAGE_NUM);
+ Integer pageSize = ObjectUtil.defaultIfNull(getPageSize(), DEFAULT_PAGE_SIZE);
+ if (pageNum <= 0) {
+ pageNum = DEFAULT_PAGE_NUM;
+ }
+ Page<T> page = new Page<>(pageNum, pageSize);
+ OrderItem orderItem = buildOrderItem();
+ if (ObjectUtil.isNotNull(orderItem)) {
+ page.addOrder(orderItem);
+ }
+ return page;
+ }
+
+ private OrderItem buildOrderItem() {
+ // 鍏煎鍓嶇鎺掑簭绫诲瀷
+ if ("ascending".equals(isAsc)) {
+ isAsc = "asc";
+ } else if ("descending".equals(isAsc)) {
+ isAsc = "desc";
+ }
+ if (StringUtils.isNotBlank(orderByColumn)) {
+ String orderBy = SqlUtil.escapeOrderBySql(orderByColumn);
+ orderBy = StringUtils.toUnderScoreCase(orderBy);
+ if ("asc".equals(isAsc)) {
+ return OrderItem.asc(orderBy);
+ } else if ("desc".equals(isAsc)) {
+ return OrderItem.desc(orderBy);
+ }
+ }
+ return null;
+ }
+
}
--
Gitblit v1.9.3