From 54bbbd62a3298e0671f8dd7aba0763775a4f733c Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期二, 27 十月 2026 13:14:02 +0800
Subject: [PATCH] fix(首页): 应收应付统计对 null 金额做保护,避免 BigDecimal.add(null) 抛 NPE 导致首页报“系统未知错误”
---
src/main/java/com/ruoyi/common/handler/CustomTenantLineHandler.java | 12 +++++++++++-
1 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/ruoyi/common/handler/CustomTenantLineHandler.java b/src/main/java/com/ruoyi/common/handler/CustomTenantLineHandler.java
index 031f614..f6b13da 100644
--- a/src/main/java/com/ruoyi/common/handler/CustomTenantLineHandler.java
+++ b/src/main/java/com/ruoyi/common/handler/CustomTenantLineHandler.java
@@ -19,15 +19,25 @@
@Override
public Expression getTenantId() {
try {
- Integer tenantId = SecurityUtils.getLoginUser().getTenantId();
+ Long tenantId = SecurityUtils.getLoginUser().getTenantId();
return new LongValue(tenantId);
} catch (Exception e) {
return null;
}
}
+ /**
+ * 绾跨▼绾т复鏃跺拷鐣ュ紑鍏筹細鏌愪簺 insert 鍦烘櫙涓� jsqlparser 瑙f瀽浼氭姏
+ * ClassCastException: SetOperationList cannot be cast to PlainSelect锛�
+ * 鍙湪璇ョ嚎绋嬪唴涓存椂璺宠繃绉熸埛鎻掍欢锛坱enant_id 鐢� MybatisHandler 鑷姩濉厖淇濊瘉锛夈��
+ */
+ public static final ThreadLocal<Boolean> TEMP_IGNORE = new ThreadLocal<>();
+
@Override
public boolean ignoreTable(String tableName) {
+ if (Boolean.TRUE.equals(TEMP_IGNORE.get())) {
+ return true;
+ }
// 鎸囧畾涓嶉渶瑕佹坊鍔犺繃婊ゆ潯浠剁殑琛�
Set<String> ignoreTables = IgnoreTableConfig.IGNORE_TABLES;
return ignoreTables.contains(tableName);
--
Gitblit v1.9.3