From bf9f54c02196c3b0ae8d48cadabea7fe9622bfda Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期四, 09 十一月 2023 18:35:52 +0800
Subject: [PATCH] update 优化 数据权限拦截器优先判断方法是否有效 提高性能减少无用sql解析

---
 ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java |   29 +++++++++++++++++++++++++++++
 1 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java
index 32e1bca..7f6ab1f 100644
--- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java
+++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java
@@ -10,6 +10,7 @@
 
 import java.util.HashMap;
 import java.util.Map;
+import java.util.function.Supplier;
 
 /**
  * 鏁版嵁鏉冮檺鍔╂墜
@@ -61,4 +62,32 @@
         InterceptorIgnoreHelper.clearIgnoreStrategy();
     }
 
+    /**
+     * 鍦ㄥ拷鐣ユ暟鎹潈闄愪腑鎵ц
+     *
+     * @param handle 澶勭悊鎵ц鏂规硶
+     */
+    public static void ignore(Runnable handle) {
+        enableIgnore();
+        try {
+            handle.run();
+        } finally {
+            disableIgnore();
+        }
+    }
+
+    /**
+     * 鍦ㄥ拷鐣ユ暟鎹潈闄愪腑鎵ц
+     *
+     * @param handle 澶勭悊鎵ц鏂规硶
+     */
+    public static <T> T ignore(Supplier<T> handle) {
+        enableIgnore();
+        try {
+            return handle.get();
+        } finally {
+            disableIgnore();
+        }
+    }
+
 }

--
Gitblit v1.9.3