From 95c01301f65379e7634e4619bf4c49186aa5be41 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期五, 07 二月 2025 14:19:28 +0800 Subject: [PATCH] !644 同步修复一些问题 Merge pull request !644 from 疯狂的狮子Li/dev --- ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java | 24 +++++++++--------------- 1 files changed, 9 insertions(+), 15 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java index 451dc71..6cfa11a 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java @@ -1,10 +1,9 @@ package org.dromara.common.core.validate.enumd; -import org.dromara.common.core.utils.StringUtils; import jakarta.validation.ConstraintValidator; import jakarta.validation.ConstraintValidatorContext; -import jakarta.validation.ValidationException; -import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.reflect.ReflectUtils; /** * 鑷畾涔夋灇涓炬牎楠屾敞瑙e疄鐜� @@ -24,20 +23,15 @@ @Override public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) { - try { - if (StringUtils.isNotBlank(value)) { - Class<? extends ValidateEnum> type = annotation.type(); - ValidateEnum[] constants = type.getEnumConstants(); - for (ValidateEnum e : constants) { - if (e.validate(value)) { - return true; - } + if (StringUtils.isNotBlank(value)) { + String fieldName = annotation.fieldName(); + for (Object e : annotation.type().getEnumConstants()) { + if (value.equals(ReflectUtils.invokeGetter(e, fieldName))) { + return true; } } - return false; - } catch (Exception e) { - throw new ValidationException(e); } + return false; } -} \ No newline at end of file +} -- Gitblit v1.9.3