diff --git a/src/main/java/com/muyu/common/core/enums/SystemYesNo.java b/src/main/java/com/muyu/common/core/enums/SystemYesNo.java new file mode 100644 index 0000000..c52e68b --- /dev/null +++ b/src/main/java/com/muyu/common/core/enums/SystemYesNo.java @@ -0,0 +1,27 @@ +package com.muyu.common.core.enums; + +import lombok.Getter; + +import java.util.Arrays; + +@Getter +public enum SystemYesNo { + + YES("Y","是"),NO("N","否"); + + private final String code; + private final String info; + + SystemYesNo(String code,String info){ + this.code=code; + this.info=info; + } + + public static boolean isCode(String code){ + return Arrays.stream(values()) + .map(SystemYesNo::getCode) + .anyMatch(s -> s.equals(code)); + } + + +} diff --git a/src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java b/src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java new file mode 100644 index 0000000..207c33b --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java @@ -0,0 +1,18 @@ +package com.muyu.common.core.validation.custom; + +import jakarta.validation.Constraint; +import jakarta.validation.Payload; + +import java.lang.annotation.*; + +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +@Target(ElementType.FIELD) +@Retention(RUNTIME) +@Documented +@Constraint(validatedBy = {SystemYesNoValidator.class}) +public @interface IsSystemYesNo { + String message() default "数据字典:[系统是否]-参数不合法"; + Class[] groups() default {}; + Class[] payload() default {}; +} diff --git a/src/main/java/com/muyu/common/core/validation/custom/SystemYesNoValidator.java b/src/main/java/com/muyu/common/core/validation/custom/SystemYesNoValidator.java new file mode 100644 index 0000000..4f69f48 --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/custom/SystemYesNoValidator.java @@ -0,0 +1,13 @@ +package com.muyu.common.core.validation.custom; + +import com.muyu.common.core.enums.SystemYesNo; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +public class SystemYesNoValidator implements ConstraintValidator { + + @Override + public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) { + return SystemYesNo.isCode(value); + } +}