diff --git a/pom.xml b/pom.xml index b67bb82..08e00e1 100644 --- a/pom.xml +++ b/pom.xml @@ -161,6 +161,12 @@ apm-toolkit-logback-1.x + + com.dtflys.forest + forest-spring-boot3-starter + + + cn.hutool hutool-all diff --git a/src/main/java/com/muyu/common/core/validation/custom/IsSystemPayType.java b/src/main/java/com/muyu/common/core/validation/custom/IsSystemPayType.java new file mode 100644 index 0000000..617ce0a --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/custom/IsSystemPayType.java @@ -0,0 +1,28 @@ +package com.muyu.common.core.validation.custom; + +import jakarta.validation.Constraint; +import jakarta.validation.Payload; + +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:杨鹏 + * @Package:com.muyu.common.core.validation.custom + * @Project:cloud-common-core + * @name:IsSystemPayType + * @Date:2024/8/9 16:57 + */ +@Target({ElementType.FIELD}) +@Retention(RUNTIME) +@Documented +@Constraint(validatedBy = {SystemPayTypeValidator.class}) +public @interface IsSystemPayType { + String message () default "[支付渠道] - 参数不合法"; + Class[] groups () default { }; + Class[] payload () default { }; +} diff --git a/src/main/java/com/muyu/common/core/validation/custom/SystemPayTypeValidator.java b/src/main/java/com/muyu/common/core/validation/custom/SystemPayTypeValidator.java new file mode 100644 index 0000000..35b9aab --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/custom/SystemPayTypeValidator.java @@ -0,0 +1,19 @@ +package com.muyu.common.core.validation.custom; + +import com.muyu.common.core.enums.SysPayType; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +/** + * @Author:杨鹏 + * @Package:com.muyu.common.core.validation.custom + * @Project:cloud-common-core + * @name:SystemPayTypeValidator + * @Date:2024/8/9 16:58 + */ +public class SystemPayTypeValidator implements ConstraintValidator { + @Override + public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) { + return SysPayType.isCode(value); + } +}