diff --git a/src/main/java/com/muyu/common/core/enums/SysPayType.java b/src/main/java/com/muyu/common/core/enums/SysPayType.java new file mode 100644 index 0000000..0078eae --- /dev/null +++ b/src/main/java/com/muyu/common/core/enums/SysPayType.java @@ -0,0 +1,36 @@ +package com.muyu.common.core.enums; + +import lombok.Getter; + +import java.util.Arrays; + +/** + * 支付方式 + * + * @author muyu + */ +@Getter +public enum SysPayType { + ALI_PAY("支付宝", "alipay"), + WEIXIN_PAY("微信", "weixinpay"), + JD_PAY("京东", "jdpay"); + + private final String code; + private final String info; + + SysPayType(String code, String info) { + this.code = code; + this.info = info; + } + + /** + * 鉴别参数是否是启用状态 + * @param code 需鉴别参数 + * @return 如果存在返回结果turn,否则返回false + */ + public static boolean isCode(String code){ + return Arrays.stream(values()) + .map(SysPayType::getCode) + .anyMatch(c -> c.equals(code)); + } +} diff --git a/src/main/java/com/muyu/common/core/validation/IsSysPayTypeValidator.java b/src/main/java/com/muyu/common/core/validation/IsSysPayTypeValidator.java new file mode 100644 index 0000000..47add11 --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/IsSysPayTypeValidator.java @@ -0,0 +1,24 @@ +package com.muyu.common.core.validation; + + +import com.muyu.common.core.enums.SysPayType; +import com.muyu.common.core.enums.SysYesNo; +import com.muyu.common.core.validation.custom.IsSysPayType; +import com.muyu.common.core.validation.custom.IsSysYesNo; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +/** + * @Author: 胡杨 + * @Name: IsSystemYesNoValidator + * @Description: 支付方式校验器 + * @CreatedDate: 2024/8/5 下午8:00 + * @FilePath: com.muyu.common.core.validation + */ + +public class IsSysPayTypeValidator implements ConstraintValidator { + @Override + public boolean isValid(String s, ConstraintValidatorContext constraintValidatorContext) { + return SysPayType.isCode(s); + } +} diff --git a/src/main/java/com/muyu/common/core/validation/IsSystemYesNoValidator.java b/src/main/java/com/muyu/common/core/validation/IsSysYesNoValidator.java similarity index 79% rename from src/main/java/com/muyu/common/core/validation/IsSystemYesNoValidator.java rename to src/main/java/com/muyu/common/core/validation/IsSysYesNoValidator.java index 3452b89..2791a73 100644 --- a/src/main/java/com/muyu/common/core/validation/IsSystemYesNoValidator.java +++ b/src/main/java/com/muyu/common/core/validation/IsSysYesNoValidator.java @@ -8,10 +8,9 @@ package com.muyu.common.core.validation;/** import com.muyu.common.core.enums.SysYesNo; -import com.muyu.common.core.validation.custom.IsSystemYesNo; +import com.muyu.common.core.validation.custom.IsSysYesNo; import jakarta.validation.ConstraintValidator; import jakarta.validation.ConstraintValidatorContext; -import org.bouncycastle.util.IPAddress; /** * @Author: 胡杨 @@ -21,7 +20,7 @@ import org.bouncycastle.util.IPAddress; * @FilePath: com.muyu.common.core.validation */ -public class IsSystemYesNoValidator implements ConstraintValidator { +public class IsSysYesNoValidator implements ConstraintValidator { @Override public boolean isValid(String s, ConstraintValidatorContext constraintValidatorContext) { return SysYesNo.isCode(s); diff --git a/src/main/java/com/muyu/common/core/validation/custom/IsSysPayType.java b/src/main/java/com/muyu/common/core/validation/custom/IsSysPayType.java new file mode 100644 index 0000000..18230c4 --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/custom/IsSysPayType.java @@ -0,0 +1,30 @@ +package com.muyu.common.core.validation.custom; + +import com.muyu.common.core.validation.IsSysPayTypeValidator; +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: 胡杨 + * @Name: IsSysPayType + * @Description: 选择支付方式 + * @CreatedDate: 2024/8/8 下午8:09 + * @FilePath: com.muyu.common.core.validation.custom + */ + +@Target({ElementType.FIELD}) +@Retention(RUNTIME) +@Documented +@Constraint(validatedBy = IsSysPayTypeValidator.class) +public @interface IsSysPayType { + String message() default "数据字典:[支付方式] - 参数不合法"; + Class[] groups() default {}; + Class[] payload() default {}; +} diff --git a/src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java b/src/main/java/com/muyu/common/core/validation/custom/IsSysYesNo.java similarity index 79% rename from src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java rename to src/main/java/com/muyu/common/core/validation/custom/IsSysYesNo.java index a5f71a1..3ba9ca0 100644 --- a/src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java +++ b/src/main/java/com/muyu/common/core/validation/custom/IsSysYesNo.java @@ -1,6 +1,6 @@ package com.muyu.common.core.validation.custom; -import com.muyu.common.core.validation.IsSystemYesNoValidator; +import com.muyu.common.core.validation.IsSysYesNoValidator; import jakarta.validation.Constraint; import jakarta.validation.Payload; @@ -18,8 +18,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; @Target({ElementType.FIELD}) @Retention(RUNTIME) @Documented -@Constraint(validatedBy = IsSystemYesNoValidator.class) -public @interface IsSystemYesNo { +@Constraint(validatedBy = IsSysYesNoValidator.class) +public @interface IsSysYesNo { String message() default "数据字典:[支付服务/客户启用状态] - 参数不合法"; Class[] groups() default {}; Class[] payload() default {};