1、系统登录改造:首页移除机构、新用户用手机号登录(机构新增组织管理员移除账号密码、新增用户移除账号密码)、需要验证码的部分(首页忘记密码、修改密保手机);2、组织权限菜单树增加visiable属性过滤;3、支持钉钉、阿里云短信配置加密、对接系统发送短信;

This commit is contained in:
gaoqr
2024-08-28 09:28:52 +08:00
parent 2248f89e70
commit 156ff82411
67 changed files with 973 additions and 316 deletions
@@ -0,0 +1,77 @@
package com.cf.imes.framework.redis.config;
import cn.hutool.core.bean.BeanUtil;
import com.cf.imes.framework.common.util.encrypt.AesUtils;
import org.redisson.config.ClusterServersConfig;
import org.redisson.config.Config;
import org.redisson.config.MasterSlaveServersConfig;
import org.redisson.config.ReplicatedServersConfig;
import org.redisson.config.SentinelServersConfig;
import org.redisson.config.SingleServerConfig;
import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.util.StringUtils;
/**
* @author Gqr
* @since 2024/8/27 9:46
*/
@AutoConfiguration
public class ChenfengRedisEncryptAutoConfiguration {
@Value("${chenfeng.encrypt.publicKey:}")
private String publicKey;
@Bean
@ConditionalOnProperty(name = "chenfeng.encrypt.enable", havingValue = "true")
public RedissonAutoConfigurationCustomizer redissonAutoConfigurationCustomizer() {
return configuration -> {
Config redissonConfig = new Config();
BeanUtil.copyProperties(configuration, redissonConfig);
String password;
SingleServerConfig singleServerConfig = redissonConfig.useSingleServer();
if (singleServerConfig != null) {
password = singleServerConfig.getPassword();
singleServerConfig.setPassword(
StringUtils.isEmpty(password) ? null : AesUtils.decrypt(password, publicKey));
return;
}
MasterSlaveServersConfig masterSlaveServersConfig = redissonConfig.useMasterSlaveServers();
if (masterSlaveServersConfig != null) {
password = masterSlaveServersConfig.getPassword();
masterSlaveServersConfig.setPassword(
StringUtils.isEmpty(password) ? null : AesUtils.decrypt(password, publicKey));
return;
}
SentinelServersConfig sentinelServersConfig = redissonConfig.useSentinelServers();
if (sentinelServersConfig != null) {
password = sentinelServersConfig.getPassword();
sentinelServersConfig.setPassword(
StringUtils.isEmpty(password) ? null : AesUtils.decrypt(password, publicKey));
return;
}
ClusterServersConfig clusterServersConfig = redissonConfig.useClusterServers();
if (clusterServersConfig != null) {
password = clusterServersConfig.getPassword();
clusterServersConfig.setPassword(
StringUtils.isEmpty(password) ? null : AesUtils.decrypt(password, publicKey));
return;
}
ReplicatedServersConfig replicatedServersConfig = redissonConfig.useReplicatedServers();
if (replicatedServersConfig != null) {
password = replicatedServersConfig.getPassword();
replicatedServersConfig.setPassword(
StringUtils.isEmpty(password) ? null : AesUtils.decrypt(password, publicKey));
}
};
}
}
@@ -1,2 +1,3 @@
com.cf.imes.framework.redis.config.ChenfengRedisAutoConfiguration
com.cf.imes.framework.redis.config.ChenfengRedisEncryptAutoConfiguration
com.cf.imes.framework.redis.config.ChenfengCacheAutoConfiguration