From f4190293dcd232acf37df2518623e1208c32f2bb Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期五, 17 四月 2026 16:21:48 +0800
Subject: [PATCH] 视图查询

---
 rsf-server/src/main/java/com/vincent/rsf/server/system/service/impl/ConfigServiceImpl.java |   28 +++++++++++++++++++++++-----
 1 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/system/service/impl/ConfigServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/system/service/impl/ConfigServiceImpl.java
index 5f78705..b45cd81 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/system/service/impl/ConfigServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/system/service/impl/ConfigServiceImpl.java
@@ -12,6 +12,7 @@
 import com.vincent.rsf.server.system.enums.StatusType;
 import com.vincent.rsf.server.system.mapper.ConfigMapper;
 import com.vincent.rsf.server.system.service.ConfigService;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.PostConstruct;
@@ -24,15 +25,21 @@
  * Created by vincent on 8/30/2024
  */
 @Service("configService")
+@Slf4j
 public class ConfigServiceImpl extends ServiceImpl<ConfigMapper, Config> implements ConfigService {
 
     public static final Map<String, Config> CONFIG_CACHE = new ConcurrentHashMap<>();
 
     @PostConstruct
     public void init() {
-        List<Config> list = this.list(new LambdaQueryWrapper<Config>().eq(Config::getStatus, StatusType.ENABLE.val));
-        for (Config config : list) {
-            CONFIG_CACHE.put(config.getFlag(), config);
+        try {
+            // List<Config> list = this.list(new LambdaQueryWrapper<Config>().eq(Config::getStatus, StatusType.ENABLE.val));
+            List<Config> list = safeList(new LambdaQueryWrapper<Config>().eq(Config::getStatus, StatusType.ENABLE.val));
+            for (Config config : list) {
+                CONFIG_CACHE.put(config.getFlag(), config);
+            }
+        } catch (Exception e) {
+            log.warn("閰嶇疆缂撳瓨鍒濆鍖栧け璐ワ紝璺宠繃閰嶇疆琛ㄥ姞杞斤紝鍚庣画鎸夐粯璁ゆ祦绋嬪鐞�", e);
         }
     }
 
@@ -41,7 +48,8 @@
     public <T> T getVal(String key, Class<T> clazz) {
         Config config = CONFIG_CACHE.get(key);
         if (config == null) {
-            List<Config> list = this.list(new LambdaQueryWrapper<Config>().eq(Config::getFlag, key));
+            // List<Config> list = this.list(new LambdaQueryWrapper<Config>().eq(Config::getFlag, key));
+            List<Config> list = safeList(new LambdaQueryWrapper<Config>().eq(Config::getFlag, key));
             config = list.stream().findFirst().orElse(null);
             if (null == config) {
                 return null;
@@ -80,7 +88,8 @@
     public <T> boolean setVal(String key, T val) {
         Config config = CONFIG_CACHE.get(key);
         if (config == null) {
-            List<Config> list = this.list(new LambdaQueryWrapper<Config>().eq(Config::getFlag, key));
+            // List<Config> list = this.list(new LambdaQueryWrapper<Config>().eq(Config::getFlag, key));
+            List<Config> list = safeList(new LambdaQueryWrapper<Config>().eq(Config::getFlag, key));
             config = list.stream().findFirst().orElse(null);
             if (null == config) {
                 return false;
@@ -124,6 +133,15 @@
         return this.updateById(config);
     }
 
+    private List<Config> safeList(LambdaQueryWrapper<Config> wrapper) {
+        try {
+            return this.list(wrapper);
+        } catch (Exception e) {
+            log.warn("閰嶇疆鏌ヨ澶辫触锛岃烦杩囬厤缃〃璇诲彇锛屾寜榛樿娴佺▼澶勭悊", e);
+            return java.util.Collections.emptyList();
+        }
+    }
+
     /**
      * 淇敼閰嶇疆
      * @param config

--
Gitblit v1.9.1