From fa64762688830ff449812dd8cc8ebb57097ad3fb Mon Sep 17 00:00:00 2001
From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com>
Date: Wed, 7 Aug 2024 11:54:54 +0800
Subject: [PATCH] =?UTF-8?q?feat():=E5=A2=9E=E5=8A=A0=E7=B3=BB=E7=BB=9F?=
=?UTF-8?q?=E5=AD=97=E5=85=B8=E6=A0=A1=E9=AA=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 1 -
.../muyu/common/core/enums/SystemYesNo.java | 38 +++++++++++++++++++
.../core/validation/custom/IsSystemYesNo.java | 22 +++++++++++
.../custom/SystemYsNoValidator.java | 20 ++++++++++
4 files changed, 80 insertions(+), 1 deletion(-)
create mode 100644 src/main/java/com/muyu/common/core/enums/SystemYesNo.java
create mode 100644 src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java
create mode 100644 src/main/java/com/muyu/common/core/validation/custom/SystemYsNoValidator.java
diff --git a/pom.xml b/pom.xml
index 5b91b8d..df8a32c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,6 @@
com.muyu
cloud-common
3.6.3
-
4.0.0
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..57c230c
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/enums/SystemYesNo.java
@@ -0,0 +1,38 @@
+package com.muyu.common.core.enums;
+
+import java.util.Arrays;
+
+/**
+ * @Author:yang
+ * @Package:com.muyu.common.core.enums
+ * @Project:cloud-common-core
+ * @name:SystemYesNo
+ * @Date:2024/8/7 11:29
+ */
+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;
+ }
+
+ public static boolean isCode(String code){
+ return Arrays.stream(values())
+ .map(SystemYesNo::getCode)
+ .anyMatch(s -> s.equals(code));//传cou
+ }
+}
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..b4dd4a3
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/validation/custom/IsSystemYesNo.java
@@ -0,0 +1,22 @@
+package com.muyu.common.core.validation.custom;
+
+import jakarta.validation.Constraint;
+
+import java.lang.annotation.*;
+
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+/**
+ * @Author:yang
+ * @Package:com.muyu.common.core.validation.custom
+ * @Project:cloud-common-core
+ * @name:IsSystemYesNo
+ * @Date:2024/8/7 11:46
+ */
+@Target({ElementType.FIELD})
+@Retention(RUNTIME)
+@Documented
+@Constraint(validatedBy = {SystemYsNoValidator.class})
+public @interface IsSystemYesNo {
+ String message() default "数据字典:[系统是否] - 参数不合法";
+}
diff --git a/src/main/java/com/muyu/common/core/validation/custom/SystemYsNoValidator.java b/src/main/java/com/muyu/common/core/validation/custom/SystemYsNoValidator.java
new file mode 100644
index 0000000..26f7d70
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/validation/custom/SystemYsNoValidator.java
@@ -0,0 +1,20 @@
+package com.muyu.common.core.validation.custom;
+
+import com.muyu.common.core.enums.SystemYesNo;
+import jakarta.validation.Constraint;
+import jakarta.validation.ConstraintValidator;
+import jakarta.validation.ConstraintValidatorContext;
+
+/**
+ * @Author:yang
+ * @Package:com.muyu.common.core.validation.custom
+ * @Project:cloud-common-core
+ * @name:SystemYsNoValidator
+ * @Date:2024/8/7 11:46
+ */
+public class SystemYsNoValidator implements ConstraintValidator {
+ @Override
+ public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
+ return SystemYesNo.isCode(value);
+ }
+}