疯狂的狮子li
2023-04-12 1983c517479316aefbeb2b97c29c0f767d8aeaae
fix 修复 加解密拦截器 对象属性为null问题
已修改2个文件
15 ■■■■ 文件已修改
ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/interceptor/MybatisDecryptInterceptor.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/interceptor/MybatisEncryptInterceptor.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/interceptor/MybatisDecryptInterceptor.java
@@ -1,6 +1,7 @@
package org.dromara.common.encrypt.interceptor;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Opt;
import cn.hutool.core.util.ObjectUtil;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.encrypt.annotation.EncryptField;
@@ -75,7 +76,12 @@
        Set<Field> fields = encryptorManager.getFieldCache(sourceObject.getClass());
        try {
            for (Field field : fields) {
                field.set(sourceObject, this.decryptField(String.valueOf(field.get(sourceObject)), field));
                // 防止对象不是null 属性内容是null
                Object obj = field.get(sourceObject);
                if (ObjectUtil.isNull(obj)) {
                    continue;
                }
                field.set(sourceObject, this.decryptField(String.valueOf(obj), field));
            }
        } catch (Exception e) {
            log.error("处理解密字段时出错", e);
ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/interceptor/MybatisEncryptInterceptor.java
@@ -84,7 +84,12 @@
        Set<Field> fields = encryptorManager.getFieldCache(sourceObject.getClass());
        try {
            for (Field field : fields) {
                field.set(sourceObject, this.encryptField(String.valueOf(field.get(sourceObject)), field));
                // 防止对象不是null 属性内容是null
                Object obj = field.get(sourceObject);
                if (ObjectUtil.isNull(obj)) {
                    continue;
                }
                field.set(sourceObject, this.encryptField(String.valueOf(field.get(obj)), field));
            }
        } catch (Exception e) {
            log.error("处理加密字段时出错", e);