From 2f07589b54d56085af77b50d580890cd4130b444 Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期一, 19 十月 2026 15:19:53 +0800
Subject: [PATCH] 设备模块后端业务规则、计划接口与日期联动

---
 ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java
index f8288ce..d342f03 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java
@@ -58,12 +58,17 @@
      */
     public static <T> SerializedLambda resolve(SFunction<T, ?> func) {
         Class<?> clazz = func.getClass();
-        String canonicalName = clazz.getCanonicalName();
-        return Optional.ofNullable(FUNC_CACHE.get(canonicalName))
+        // lambda/鏂规硶寮曠敤鐢熸垚鐨勬槸闅愯棌绫伙紝getCanonicalName() 杩斿洖 null锛孋oncurrentHashMap 涓嶆帴鍙� null key
+        String cacheKey = clazz.getCanonicalName();
+        if (cacheKey == null) {
+            cacheKey = clazz.getName();
+        }
+        final String key = cacheKey;
+        return Optional.ofNullable(FUNC_CACHE.get(key))
             .map(WeakReference::get)
             .orElseGet(() -> {
                 SerializedLambda lambda = SerializedLambda.resolve(func);
-                FUNC_CACHE.put(canonicalName, new WeakReference<>(lambda));
+                FUNC_CACHE.put(key, new WeakReference<>(lambda));
                 return lambda;
             });
     }

--
Gitblit v1.9.3