From af8f6fb713ec7991d259424399963ec84ea3b288 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期六, 25 四月 2026 09:16:25 +0800
Subject: [PATCH] lsh#
---
asrs-schedule/src/main/java/com/vincent/rsf/schedule/system/service/impl/ConfigServiceImpl.java | 19 +++++++++++++++++++
1 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/asrs-schedule/src/main/java/com/vincent/rsf/schedule/system/service/impl/ConfigServiceImpl.java b/asrs-schedule/src/main/java/com/vincent/rsf/schedule/system/service/impl/ConfigServiceImpl.java
index 9299ff4..ca7dcae 100644
--- a/asrs-schedule/src/main/java/com/vincent/rsf/schedule/system/service/impl/ConfigServiceImpl.java
+++ b/asrs-schedule/src/main/java/com/vincent/rsf/schedule/system/service/impl/ConfigServiceImpl.java
@@ -12,6 +12,7 @@
import com.vincent.rsf.schedule.system.enums.StatusType;
import com.vincent.rsf.schedule.system.mapper.ConfigMapper;
import com.vincent.rsf.schedule.system.service.ConfigService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import jakarta.annotation.PostConstruct;
@@ -23,6 +24,7 @@
/**
* Created by vincent on 8/30/2024
*/
+@Slf4j
@Service("configService")
public class ConfigServiceImpl extends ServiceImpl<ConfigMapper, Config> implements ConfigService {
@@ -34,6 +36,18 @@
for (Config config : list) {
CONFIG_CACHE.put(config.getFlag(), config);
}
+ }
+
+ @Override
+ public void refreshCache() {
+ List<Config> list = this.list(new LambdaQueryWrapper<Config>().eq(Config::getStatus, StatusType.ENABLE.val));
+ Map<String, Config> newCache = new ConcurrentHashMap<>();
+ for (Config config : list) {
+ newCache.put(config.getFlag(), config);
+ }
+ CONFIG_CACHE.clear();
+ CONFIG_CACHE.putAll(newCache);
+ log.info("CONFIG_CACHE 宸插埛鏂帮紝鍏� {} 鏉¢厤缃�", newCache.size());
}
@Override
@@ -134,6 +148,11 @@
if (!this.update(new LambdaUpdateWrapper<Config>().set(Config::getVal, config.getVal()).eq(Config::getFlag, config.getFlag()))) {
throw new CoolException("淇敼澶辫触锛侊紒");
}
+ // 鍚屾鏇存柊缂撳瓨
+ Config cached = CONFIG_CACHE.get(config.getFlag());
+ if (cached != null) {
+ cached.setVal(config.getVal());
+ }
return R.ok();
}
--
Gitblit v1.9.1