From 27615fb4c19ecb779f09b555ba2de04649c3b496 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期四, 02 九月 2021 10:19:27 +0800
Subject: [PATCH] 防止表格最后页最后项删除变成暂无数据

---
 src/main/java/com/ruoyi/framework/web/controller/BaseController.java |    3 ++-
 src/main/java/com/ruoyi/framework/web/page/TableSupport.java         |    6 ++++++
 src/main/java/com/ruoyi/common/utils/ServletUtils.java               |   16 ++++++++++++++++
 src/main/java/com/ruoyi/framework/web/page/PageDomain.java           |   13 +++++++++++++
 4 files changed, 37 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/common/utils/ServletUtils.java b/src/main/java/com/ruoyi/common/utils/ServletUtils.java
index 9e6fd59..a10c8ed 100644
--- a/src/main/java/com/ruoyi/common/utils/ServletUtils.java
+++ b/src/main/java/com/ruoyi/common/utils/ServletUtils.java
@@ -49,6 +49,22 @@
     }
 
     /**
+     * 鑾峰彇Boolean鍙傛暟
+     */
+    public static Boolean getParameterToBool(String name)
+    {
+        return Convert.toBool(getRequest().getParameter(name));
+    }
+
+    /**
+     * 鑾峰彇Boolean鍙傛暟
+     */
+    public static Boolean getParameterToBool(String name, Boolean defaultValue)
+    {
+        return Convert.toBool(getRequest().getParameter(name), defaultValue);
+    }
+
+    /**
      * 鑾峰彇request
      */
     public static HttpServletRequest getRequest()
diff --git a/src/main/java/com/ruoyi/framework/web/controller/BaseController.java b/src/main/java/com/ruoyi/framework/web/controller/BaseController.java
index 7add4d3..27baf0e 100644
--- a/src/main/java/com/ruoyi/framework/web/controller/BaseController.java
+++ b/src/main/java/com/ruoyi/framework/web/controller/BaseController.java
@@ -57,7 +57,8 @@
         if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize))
         {
             String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
-            PageHelper.startPage(pageNum, pageSize, orderBy);
+            Boolean reasonable = pageDomain.getReasonable();
+            PageHelper.startPage(pageNum, pageSize, orderBy).setReasonable(reasonable);
         }
     }
 
diff --git a/src/main/java/com/ruoyi/framework/web/page/PageDomain.java b/src/main/java/com/ruoyi/framework/web/page/PageDomain.java
index 366f9b1..86093ae 100644
--- a/src/main/java/com/ruoyi/framework/web/page/PageDomain.java
+++ b/src/main/java/com/ruoyi/framework/web/page/PageDomain.java
@@ -21,6 +21,9 @@
     /** 鎺掑簭鐨勬柟鍚慸esc鎴栬�卆sc */
     private String isAsc = "asc";
 
+    /** 鍒嗛〉鍙傛暟鍚堢悊鍖� */
+    private Boolean reasonable = false;
+
     public String getOrderBy()
     {
         if (StringUtils.isEmpty(orderByColumn))
@@ -81,4 +84,14 @@
             this.isAsc = isAsc;
         }
     }
+
+    public Boolean getReasonable()
+    {
+        return reasonable;
+    }
+
+    public void setReasonable(Boolean reasonable)
+    {
+        this.reasonable = reasonable;
+    }
 }
diff --git a/src/main/java/com/ruoyi/framework/web/page/TableSupport.java b/src/main/java/com/ruoyi/framework/web/page/TableSupport.java
index fa6a9ee..88cf7a2 100644
--- a/src/main/java/com/ruoyi/framework/web/page/TableSupport.java
+++ b/src/main/java/com/ruoyi/framework/web/page/TableSupport.java
@@ -30,6 +30,11 @@
     public static final String IS_ASC = "isAsc";
 
     /**
+     * 鍒嗛〉鍙傛暟鍚堢悊鍖�
+     */
+    public static final String REASONABLE = "reasonable";
+
+    /**
      * 灏佽鍒嗛〉瀵硅薄
      */
     public static PageDomain getPageDomain()
@@ -39,6 +44,7 @@
         pageDomain.setPageSize(ServletUtils.getParameterToInt(PAGE_SIZE));
         pageDomain.setOrderByColumn(ServletUtils.getParameter(ORDER_BY_COLUMN));
         pageDomain.setIsAsc(ServletUtils.getParameter(IS_ASC));
+        pageDomain.setReasonable(ServletUtils.getParameterToBool(REASONABLE));
         return pageDomain;
     }
 

--
Gitblit v1.9.3