From 5b3901770843cab6ba0e434fdbe3e3302c9ff88e Mon Sep 17 00:00:00 2001 From: 心如止水 <8902735+gaobinbin991314@user.noreply.gitee.com> Date: 星期四, 30 三月 2023 18:50:58 +0800 Subject: [PATCH] !324 系统配置读取方式变更 1、前端登录页面注册开关 对接后端数据库 2、密码最大错误次数与锁定时间转移到数据库 3、短信开关与验证码模板id 转移到数据库参数管理内 --- ruoyi-common/ruoyi-common-encrypt/src/main/java/com/ruoyi/common/encrypt/interceptor/MybatisDecryptInterceptor.java | 22 +++++++++++++--------- 1 files changed, 13 insertions(+), 9 deletions(-) diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/com/ruoyi/common/encrypt/interceptor/MybatisDecryptInterceptor.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/com/ruoyi/common/encrypt/interceptor/MybatisDecryptInterceptor.java index 925d4e4..2c209b4 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/com/ruoyi/common/encrypt/interceptor/MybatisDecryptInterceptor.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/com/ruoyi/common/encrypt/interceptor/MybatisDecryptInterceptor.java @@ -1,6 +1,7 @@ package com.ruoyi.common.encrypt.interceptor; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.encrypt.annotation.EncryptField; import com.ruoyi.common.encrypt.core.EncryptContext; @@ -15,10 +16,7 @@ import java.lang.reflect.Field; import java.sql.Statement; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.Set; +import java.util.*; /** * 鍑哄弬瑙e瘑鎷︽埅鍣� @@ -55,17 +53,23 @@ * @param sourceObject 寰呭姞瀵嗗璞� */ private void decryptHandler(Object sourceObject) { - if (sourceObject instanceof Map) { - ((Map<?, Object>) sourceObject).values().forEach(this::decryptHandler); + if (ObjectUtil.isNull(sourceObject)) { return; } - if (sourceObject instanceof List) { + if (sourceObject instanceof Map<?, ?> map) { + new HashSet<>(map.values()).forEach(this::decryptHandler); + return; + } + if (sourceObject instanceof List<?> list) { + if(CollectionUtil.isEmpty(list)) { + return; + } // 鍒ゆ柇绗竴涓厓绱犳槸鍚﹀惈鏈夋敞瑙c�傚鏋滄病鏈夌洿鎺ヨ繑鍥烇紝鎻愰珮鏁堢巼 - Object firstItem = ((List<?>) sourceObject).get(0); + Object firstItem = list.get(0); if (CollectionUtil.isEmpty(encryptorManager.getFieldCache(firstItem.getClass()))) { return; } - ((List<?>) sourceObject).forEach(this::decryptHandler); + list.forEach(this::decryptHandler); return; } Set<Field> fields = encryptorManager.getFieldCache(sourceObject.getClass()); -- Gitblit v1.9.3