From ff83833abb8d93381a258da12c7b0bf58ebb41db Mon Sep 17 00:00:00 2001
From: yuan <1363654894@qq.com>
Date: Fri, 23 Aug 2024 19:35:09 +0800
Subject: [PATCH] =?UTF-8?q?feat():=E6=B7=BB=E5=8A=A0=E5=88=A4=E6=96=AD?=
=?UTF-8?q?=E8=A7=84=E5=88=99=E7=B1=BB=E5=9E=8B=E6=B3=A8=E8=A7=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 3 +-
.../muyu/common/core/enums/SysRuleType.java | 38 +++++++++++++++++++
.../core/validation/custom/IsSysRuleZM.java | 30 +++++++++++++++
.../custom/IsSysRuleZMValidator.java | 21 ++++++++++
4 files changed, 91 insertions(+), 1 deletion(-)
create mode 100644 src/main/java/com/muyu/common/core/enums/SysRuleType.java
create mode 100644 src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZM.java
create mode 100644 src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZMValidator.java
diff --git a/pom.xml b/pom.xml
index c329de5..27354e5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
com.muyu
cloud-common
- 3.6.3
+ 3.6.4
4.0.0
@@ -17,6 +17,7 @@
+
org.springframework.cloud
diff --git a/src/main/java/com/muyu/common/core/enums/SysRuleType.java b/src/main/java/com/muyu/common/core/enums/SysRuleType.java
new file mode 100644
index 0000000..ab11c5e
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/enums/SysRuleType.java
@@ -0,0 +1,38 @@
+package com.muyu.common.core.enums;
+
+import java.util.Arrays;
+
+/**
+ * @Author:蓬叁
+ * @Package:com.muyu.common.core.enums
+ * @Project:cloud-common-core
+ * @name:SysRuleType
+ * @Date:2024/8/23 下午7:24
+ */
+public enum SysRuleType {
+ Z("Z","自定义规则"), M("M","规则模板");
+
+ private final String code;
+ private final String info;
+
+ SysRuleType(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(SysRuleType::getCode)
+ .anyMatch(s -> s.equals(code));
+
+ }
+
+}
diff --git a/src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZM.java b/src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZM.java
new file mode 100644
index 0000000..1170f7a
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZM.java
@@ -0,0 +1,30 @@
+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:IsSysRuleZM
+ * @Date:2024/8/23 下午7:30
+ */
+@Target({ElementType.FIELD})
+@Retention(RUNTIME)
+@Documented
+@Constraint(validatedBy = IsSysRuleZMValidator.class)
+public @interface IsSysRuleZM {
+
+ String message() default "数据字典:[系统是否] - 参数不合法";
+ Class>[] groups() default { };
+ Class extends Payload>[] payload() default { };
+
+}
diff --git a/src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZMValidator.java b/src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZMValidator.java
new file mode 100644
index 0000000..afa1a10
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/validation/custom/IsSysRuleZMValidator.java
@@ -0,0 +1,21 @@
+package com.muyu.common.core.validation.custom;
+
+import com.muyu.common.core.enums.SysRuleType;
+import jakarta.validation.ConstraintValidator;
+import jakarta.validation.ConstraintValidatorContext;
+
+/**
+ * @Author:蓬叁
+ * @Package:com.muyu.common.core.validation.custom
+ * @Project:cloud-common-core
+ * @name:IsSysRuleZMValidator
+ * @Date:2024/8/23 下午7:31
+ */
+public class IsSysRuleZMValidator implements ConstraintValidator {
+
+ @Override
+ public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
+ return SysRuleType.isCode(value);
+ }
+
+}