feat():增加系统字典校验
parent
0ddeede408
commit
6dd2f20dcb
|
@ -0,0 +1,44 @@
|
||||||
|
package com.muyu.common.core.enums;
|
||||||
|
|
||||||
|
import java.lang.reflect.Array;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author:chaiyapeng
|
||||||
|
* @Package:com.muyu.common.core.enums
|
||||||
|
* @Project:cloud-common-core
|
||||||
|
* @name:SystemYesNo
|
||||||
|
* @Date:2024/8/9 17:27
|
||||||
|
*/
|
||||||
|
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 String getCode(){
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo(){
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 鉴别code是否合法
|
||||||
|
* @param code 传code
|
||||||
|
* @return 如果存在code则返回true,不存在则返回false
|
||||||
|
*/
|
||||||
|
public static boolean isCode(String code){
|
||||||
|
return Arrays.stream(values())
|
||||||
|
.map(SystemYesNo::getCode)
|
||||||
|
.anyMatch(s -> s.equals(code));
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.muyu.common.core.validation.custom;
|
||||||
|
|
||||||
|
import jakarta.validation.Constraint;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
import static java.lang.annotation.RetentionPolicy.RUNTIME;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author:chaiyapeng
|
||||||
|
* @Package:com.muyu.common.core.validation.custom
|
||||||
|
* @Project:cloud-common-core
|
||||||
|
* @name:IsSystemYesNo
|
||||||
|
* @Date:2024/8/9 19:09
|
||||||
|
*/
|
||||||
|
@Target({ElementType.FIELD})
|
||||||
|
@Retention(RUNTIME)
|
||||||
|
@Documented
|
||||||
|
@Constraint(validatedBy = {SystemYesNoValidator.class})
|
||||||
|
public @interface IsSystemYesNo {
|
||||||
|
String message() default "数据字典:[系统是否] - 参数不合法";
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
package com.muyu.common.core.validation.custom;
|
||||||
|
|
||||||
|
import com.muyu.common.core.enums.SystemYesNo;
|
||||||
|
import jakarta.validation.ConstraintValidator;
|
||||||
|
import jakarta.validation.ConstraintValidatorContext;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author:chaiyapeng
|
||||||
|
* @Package:com.muyu.common.core.validation.custom
|
||||||
|
* @Project:cloud-common-core
|
||||||
|
* @name:SystemYesNoValidator
|
||||||
|
* @Date:2024/8/9 19:12
|
||||||
|
*/
|
||||||
|
public class SystemYesNoValidator implements ConstraintValidator<IsSystemYesNo,String> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
|
||||||
|
return SystemYesNo.isCode(value);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue