增加系统字典校验

master
zhang chengzhi 2024-07-31 20:33:26 +08:00
parent 868a4c903a
commit 42db9b9e02
3 changed files with 96 additions and 0 deletions

View File

@ -0,0 +1,51 @@
package com.muyu.common.core.enums;
import java.lang.reflect.Array;
import java.util.Arrays;
/**
* @Authorzhangchengzhi
* @Packagecom.muyu.common.core.enums
* @Projectcloud-common-core
* @nameSystemYesNo
* @Date2024/7/31 20:07
*/
public enum SystemYesNo {
YES("Y","是"),
NO("N","否")
;
private final String code;
private final String info;
public String getCode() {
return code;
}
public String getInfo() {
return info;
}
SystemYesNo(String code, String info) {
this.code = code;
this.info = info;
}
/**
* Code
* @param code
* @return codetrue,
*/
public static boolean isCode(String code){
return Arrays.stream(values())
.map(SystemYesNo::getCode)
.anyMatch(s -> s.equals(code)); //传cou
}
}

View File

@ -0,0 +1,24 @@
package com.muyu.common.core.validation.custom;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Constraint;
import java.lang.annotation.*;
/**
* @Authorzhangchengzhi
* @Packagecom.muyu.common.core.validation.custom
* @Projectcloud-common-core
* @nameIsSystemYesNo
* @Date2024/7/31 20:22
*/
@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Constraint(validatedBy = {SystemYesNoValidator.class})
public @interface IsSystemYesNo {
String message() default "数据字典: [系统是否] - 参数不合法";
}

View File

@ -0,0 +1,21 @@
package com.muyu.common.core.validation.custom;
import com.muyu.common.core.enums.SystemYesNo;
import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;
import jakarta.validation.Validator;
/**
* @Authorzhangchengzhi
* @Packagecom.muyu.common.core.validation.custom
* @Projectcloud-common-core
* @nameSystemYesNoValidator
* @Date2024/7/31 20:22
*/
public class SystemYesNoValidator implements ConstraintValidator<IsSystemYesNo,String> {
@Override
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
return SystemYesNo.isCode(value);
}
}