From 3c8d864b5f68af5167199e0d5c9ff6c0c5852638 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期一, 20 一月 2025 11:35:45 +0800
Subject: [PATCH] !639 发布 5.3.0-BETA 公测版本 Merge pull request !639 from 疯狂的狮子Li/dev

---
 ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java |   27 ++++++++++++++++++++++-----
 1 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java
index 4b31343..dcdef6e 100644
--- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java
+++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java
@@ -1,5 +1,6 @@
 package org.dromara.common.tenant.handle;
 
+import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper;
 import lombok.extern.slf4j.Slf4j;
 import org.dromara.common.core.constant.GlobalConstants;
 import org.dromara.common.core.utils.StringUtils;
@@ -26,14 +27,22 @@
         if (StringUtils.isBlank(name)) {
             return null;
         }
+        try {
+            if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) {
+                return super.map(name);
+            }
+        } catch (NoClassDefFoundError ignore) {
+            // 鏈変簺鏈嶅姟涓嶉渶瑕乵p瀵艰嚧绫讳笉瀛樺湪 蹇界暐鍗冲彲
+        }
         if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) {
             return super.map(name);
         }
         String tenantId = TenantHelper.getTenantId();
         if (StringUtils.isBlank(tenantId)) {
-            log.error("鏃犳硶鑾峰彇鏈夋晥鐨勭鎴穒d -> Null");
+            log.debug("鏃犳硶鑾峰彇鏈夋晥鐨勭鎴穒d -> Null");
+            return super.map(name);
         }
-        if (StringUtils.startsWith(name, tenantId)) {
+        if (StringUtils.startsWith(name, tenantId + "")) {
             // 濡傛灉瀛樺湪鍒欑洿鎺ヨ繑鍥�
             return super.map(name);
         }
@@ -49,14 +58,22 @@
         if (StringUtils.isBlank(unmap)) {
             return null;
         }
+        try {
+            if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) {
+                return unmap;
+            }
+        } catch (NoClassDefFoundError ignore) {
+            // 鏈変簺鏈嶅姟涓嶉渶瑕乵p瀵艰嚧绫讳笉瀛樺湪 蹇界暐鍗冲彲
+        }
         if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) {
-            return super.unmap(name);
+            return unmap;
         }
         String tenantId = TenantHelper.getTenantId();
         if (StringUtils.isBlank(tenantId)) {
-            log.error("鏃犳硶鑾峰彇鏈夋晥鐨勭鎴穒d -> Null");
+            log.debug("鏃犳硶鑾峰彇鏈夋晥鐨勭鎴穒d -> Null");
+            return unmap;
         }
-        if (StringUtils.startsWith(unmap, tenantId)) {
+        if (StringUtils.startsWith(unmap, tenantId + "")) {
             // 濡傛灉瀛樺湪鍒欏垹闄�
             return unmap.substring((tenantId + ":").length());
         }

--
Gitblit v1.9.3