From 9f3a45da6d1dc9c71187f15131665eb9806f5588 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期二, 28 十月 2025 15:58:03 +0800
Subject: [PATCH] yys 1.修改配置文件 2.增加模板
---
src/main/java/com/ruoyi/project/system/service/impl/SysConfigServiceImpl.java | 80 +++++++++++++++++++++++++++++++---------
1 files changed, 62 insertions(+), 18 deletions(-)
diff --git a/src/main/java/com/ruoyi/project/system/service/impl/SysConfigServiceImpl.java b/src/main/java/com/ruoyi/project/system/service/impl/SysConfigServiceImpl.java
index 88f5475..0396057 100644
--- a/src/main/java/com/ruoyi/project/system/service/impl/SysConfigServiceImpl.java
+++ b/src/main/java/com/ruoyi/project/system/service/impl/SysConfigServiceImpl.java
@@ -5,9 +5,10 @@
import javax.annotation.PostConstruct;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import com.ruoyi.common.constant.Constants;
+import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.text.Convert;
+import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.redis.RedisCache;
import com.ruoyi.project.system.domain.SysConfig;
@@ -34,11 +35,7 @@
@PostConstruct
public void init()
{
- List<SysConfig> configsList = configMapper.selectConfigList(new SysConfig());
- for (SysConfig config : configsList)
- {
- redisCache.setCacheObject(getCacheKey(config.getConfigKey()), config.getConfigValue());
- }
+ loadingConfigCache();
}
/**
@@ -81,6 +78,22 @@
}
/**
+ * 鑾峰彇楠岃瘉鐮佸紑鍏�
+ *
+ * @return true寮�鍚紝false鍏抽棴
+ */
+ @Override
+ public boolean selectCaptchaEnabled()
+ {
+ String captchaEnabled = selectConfigByKey("sys.account.captchaEnabled");
+ if (StringUtils.isEmpty(captchaEnabled))
+ {
+ return true;
+ }
+ return Convert.toBool(captchaEnabled);
+ }
+
+ /**
* 鏌ヨ鍙傛暟閰嶇疆鍒楄〃
*
* @param config 鍙傛暟閰嶇疆淇℃伅
@@ -118,6 +131,12 @@
@Override
public int updateConfig(SysConfig config)
{
+ SysConfig temp = configMapper.selectConfigById(config.getConfigId());
+ if (!StringUtils.equals(temp.getConfigKey(), config.getConfigKey()))
+ {
+ redisCache.deleteObject(getCacheKey(temp.getConfigKey()));
+ }
+
int row = configMapper.updateConfig(config);
if (row > 0)
{
@@ -130,28 +149,53 @@
* 鎵归噺鍒犻櫎鍙傛暟淇℃伅
*
* @param configIds 闇�瑕佸垹闄ょ殑鍙傛暟ID
- * @return 缁撴灉
*/
@Override
- public int deleteConfigByIds(Long[] configIds)
+ public void deleteConfigByIds(Long[] configIds)
{
- int count = configMapper.deleteConfigByIds(configIds);
- if (count > 0)
+ for (Long configId : configIds)
{
- Collection<String> keys = redisCache.keys(Constants.SYS_CONFIG_KEY + "*");
- redisCache.deleteObject(keys);
+ SysConfig config = selectConfigById(configId);
+ if (StringUtils.equals(UserConstants.YES, config.getConfigType()))
+ {
+ throw new ServiceException(String.format("鍐呯疆鍙傛暟銆�%1$s銆戜笉鑳藉垹闄� ", config.getConfigKey()));
+ }
+ configMapper.deleteConfigById(configId);
+ redisCache.deleteObject(getCacheKey(config.getConfigKey()));
}
- return count;
}
/**
- * 娓呯┖缂撳瓨鏁版嵁
+ * 鍔犺浇鍙傛暟缂撳瓨鏁版嵁
*/
@Override
- public void clearCache()
+ public void loadingConfigCache()
{
- Collection<String> keys = redisCache.keys(Constants.SYS_CONFIG_KEY + "*");
+ List<SysConfig> configsList = configMapper.selectConfigList(new SysConfig());
+ for (SysConfig config : configsList)
+ {
+ redisCache.setCacheObject(getCacheKey(config.getConfigKey()), config.getConfigValue());
+ }
+ }
+
+ /**
+ * 娓呯┖鍙傛暟缂撳瓨鏁版嵁
+ */
+ @Override
+ public void clearConfigCache()
+ {
+ Collection<String> keys = redisCache.keys(CacheConstants.SYS_CONFIG_KEY + "*");
redisCache.deleteObject(keys);
+ }
+
+ /**
+ * 閲嶇疆鍙傛暟缂撳瓨鏁版嵁
+ */
+ @Override
+ public void resetConfigCache()
+ {
+ clearConfigCache();
+ loadingConfigCache();
}
/**
@@ -161,7 +205,7 @@
* @return 缁撴灉
*/
@Override
- public String checkConfigKeyUnique(SysConfig config)
+ public boolean checkConfigKeyUnique(SysConfig config)
{
Long configId = StringUtils.isNull(config.getConfigId()) ? -1L : config.getConfigId();
SysConfig info = configMapper.checkConfigKeyUnique(config.getConfigKey());
@@ -180,6 +224,6 @@
*/
private String getCacheKey(String configKey)
{
- return Constants.SYS_CONFIG_KEY + configKey;
+ return CacheConstants.SYS_CONFIG_KEY + configKey;
}
}
--
Gitblit v1.9.3