From c394b6fdbdf20f4d0bfd67eb7f65277f1c95821d Mon Sep 17 00:00:00 2001
From: Number7 <1845377266@qq.com>
Date: Wed, 7 Aug 2024 10:18:08 +0800
Subject: [PATCH] =?UTF-8?q?feat():=E5=A2=9E=E5=8A=A0=E4=BA=86=E6=94=AF?=
=?UTF-8?q?=E4=BB=98=E6=B8=A0=E9=81=93=E6=9E=9A=E4=B8=BE=E5=92=8C=E6=94=AF?=
=?UTF-8?q?=E4=BB=98=E6=B8=A0=E9=81=93=E6=A0=A1=E9=AA=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/compiler.xml | 4 +
.idea/encodings.xml | 2 +
.idea/misc.xml | 6 +
pom.xml | 1 -
.../muyu/common/core/enums/SysPayType.java | 62 ++++++++
.../validation/custom/IsSystemPayType.java | 30 ++++
.../custom/SystemPayTypeValidator.java | 23 +++
.../core/domain/Result$ResultBuilder.class | Bin 2355 -> 2355 bytes
.../com/muyu/common/core/domain/Result.class | Bin 6911 -> 7397 bytes
.../muyu/common/core/enums/SysPayType.class | Bin 0 -> 3913 bytes
.../validation/custom/IsSystemPayType.class | Bin 0 -> 876 bytes
.../custom/SystemPayTypeValidator.class | Bin 0 -> 1142 bytes
target/cloud-common-core-3.6.3.jar | Bin 145637 -> 149215 bytes
target/maven-archiver/pom.properties | 2 +-
.../compile/default-compile/createdFiles.lst | 3 +
.../compile/default-compile/inputFiles.lst | 134 +++++++++---------
16 files changed, 201 insertions(+), 66 deletions(-)
create mode 100644 src/main/java/com/muyu/common/core/enums/SysPayType.java
create mode 100644 src/main/java/com/muyu/common/core/validation/custom/IsSystemPayType.java
create mode 100644 src/main/java/com/muyu/common/core/validation/custom/SystemPayTypeValidator.java
create mode 100644 target/classes/com/muyu/common/core/enums/SysPayType.class
create mode 100644 target/classes/com/muyu/common/core/validation/custom/IsSystemPayType.class
create mode 100644 target/classes/com/muyu/common/core/validation/custom/SystemPayTypeValidator.class
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 08d283f..a043927 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -9,9 +9,13 @@
+
+
+
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
index 63574ec..a154e1c 100644
--- a/.idea/encodings.xml
+++ b/.idea/encodings.xml
@@ -3,6 +3,8 @@
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 681b54b..604d447 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -5,8 +5,14 @@
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index dc483c3..15bb0fc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,6 @@
4.0.0
cloud-common-core
-
3.6.3
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..81272f4
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/enums/SysPayType.java
@@ -0,0 +1,62 @@
+package com.muyu.common.core.enums;
+
+import java.util.Arrays;
+
+/**
+ * @Author:liuxinyue
+ * @Package:com.muyu.common.core.enums
+ * @Project:cloud-common-core
+ * @name:SysPayType
+ * @Date:2024/8/6 21:07
+ */
+public enum SysPayType {
+
+ ALIPAY("aliPay","支付宝"),
+ WEI_PAY("weichatPay","微信支付"),
+ JD_PAY("jdPay","京东支付");
+ private final String code;
+
+ private final String info;
+
+ SysPayType(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(SysPayType::getCode)
+ .anyMatch(c -> c.equals(code));
+ }
+
+
+ /**
+ * 通过code获取支付渠道
+ * @param code code编码
+ * @return 支付渠道
+ */
+ public static String getInfoByCode(String code) {
+
+ return Arrays.stream(values())
+ .filter(s->s.getCode().equals(code))
+ .findFirst()
+ .map(SysPayType::getInfo)
+ .orElseGet(() -> "-");
+
+ }
+
+}
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..f7ddc73
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/validation/custom/IsSystemPayType.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:liuxinyue
+ * @Package:com.muyu.common.core.validation.custom
+ * @Project:cloud-common-core
+ * @name:IsSystemPayType validation自定义支付渠道校验
+ * @Date:2024/8/6 21:21
+ */
+@Target({ElementType.FIELD})
+@Retention(RUNTIME)
+@Documented
+@Constraint(validatedBy = {SystemPayTypeValidator.class})
+public @interface IsSystemPayType {
+
+ String message () default "[支付渠道] - 参数不合法";
+ Class>[] groups() default {};
+ Class extends Payload>[] 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..29c55b9
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/validation/custom/SystemPayTypeValidator.java
@@ -0,0 +1,23 @@
+package com.muyu.common.core.validation.custom;
+
+
+
+import com.muyu.common.core.enums.SysPayType;
+import jakarta.validation.ConstraintValidator;
+import jakarta.validation.ConstraintValidatorContext;
+
+/**
+ * @Author:liuxinyue
+ * @Package:com.muyu.common.core.validation.custom
+ * @Project:cloud-common-core
+ * @name:SystemPayTypeValidator
+ * @Date:2024/8/6 23:12
+ */
+public class SystemPayTypeValidator implements ConstraintValidator {
+
+
+ @Override
+ public boolean isValid(String s, ConstraintValidatorContext constraintValidatorContext) {
+ return SysPayType.isCode(s);
+ }
+}
diff --git a/target/classes/com/muyu/common/core/domain/Result$ResultBuilder.class b/target/classes/com/muyu/common/core/domain/Result$ResultBuilder.class
index a883239c39f187b27d09127ef0ab5a4ba803385b..4843b190a08e36b925e49d06f0e67c68346f3227 100644
GIT binary patch
delta 43
qcmdliv{`7w4mL)S$vfEsfFu`tE|9DMlh4>&fb49JWFUE-BLx5=VhrQ}
delta 43
qcmdliv{`7w4mL)i$vfEsfFu`tE|9DMlh4>&fb49JWFUE-BLx5A6Ngci&)oL{Frmn+-FYv;@MjdpbM2V=)2IQ_lV65zInFpgd!kmP>SZL+^Hdryfn}
zsiEkGZQG5w)zagcidmUNYN%yt?>9?qkxE_@!EC9awx*+}S4y1|K^3a0&9-bJIcQ`A
zRyGvFZHdzGF14$r9JQDm#Zk4-k
zj^GyD%J|tS=QlhkFt=f=zX%PtMeqaski9>9B4NOPH!ylJ1RQEAA7xc0}J{bf!~r-P)3{xU6cC?R}rZ;L+NVFoPkh
z%J4JXAI1Z+gfV??^3C8}>GQ~~_Q>c-S;ml&VLZh#7={tSgVGXDJUJA!E|IeASdxN=
zWm(e0*iNWz7!&De%*Z74Wa43cTaxjnZRyy&UZBDiY;O$$fqRL(X_F2Z88eYi-P6;>
zlDaNL(Bz*GsN0-PS&0#2AYmrRtRt05vucx+s5SRel(|bEqT11&w?@;t8P)Ry(Gg=X
zp+{r!VPiyRd`1S12X&TjHw$iAv4Xl;yGN;FIA`0eLBot^5~EUvz{bfJKe%||;H6Jq
zn0V#2saM7)&b~19%-H0fy;Dc_Hc#vuyLjQ{ORv8(_2$`2C(cZsdTjF5rzg%oHZeZl
zeCfp7laKG??4@ISCr|9ZIR5VB^KVV;KPoWKVdk=#I`qWk{{5FeIY|vC4?cJC!mE={
z9hi9LFhfuUD+@&|F_hw2m66HY-!E-ZOeSAEIr-dsRNr*#h^BILc5fnOtj~^YGcx_k
z2_3Edt3BR!BC5Tps?|!F?UZ`EU)B{FYQ-E4t_kaWOz^;R1!n^B7?@e7tK;cv88R}NG|%$_z^_cV*bKUT
zJH=Kt_!O#Q@F!aRGiY>`99^umU3!L@x@89LjE`?AAe=C}l{
z*oww?^y#Bc{Lchc5t0>4?@8e{3IZEuz^E8i3tJ#pam^Y|FgZgFOYO20Hr?hxV=p+s
z62=Mp6fQWh-AE>Z+@a3Y0t)xQlPnr!igO^+6qL4xWusdvgJ|mkZY7RF0^rTPhU61vX!@ceNC|rEm53Gt+ZQ~8~l>NlV2Vq>ikF@yGmQ*NvCsa
z_jl0cJk`v!la|_-$I{tM+*p&4=k6@k=P#G1G9QS(;k2~$Av4;q50Q(OV%Zg#J+bfj
z#J*GNsF~PvUSRpu`{$<49iBGd%&Cjxdz>Tb$oYx$`zM~v)
zhfpzHtEUE&hPk9So!*fhZSi2|gq>%mU}HbeA0P7jJoK(dJyQ;gPCc27B`l+*6rTxP
zr;z6}=%CRin(G;;@**RsO|bKi^rTWorZcIVra@dP3LeP9_=ms^m%-p?T^L^oEc$v<
zhO&YJi`mQeK_J04u}(hivc;;C&y@Cc2d@H2jsqCMe58=h-H&pPtvv5DT(9NTL=cvV
zEOwgMg@;V+CJB4|X(U{DSknDM(*2So?DP5kD_hDVHn&+eHz9dEibW{H9^62Zy(C#o
zA@Z+GoJLTLqwFMa1Rmpe39rD-4yVWMZBLL~ZtLb%u9h`=wgo-gZo@tiJQDzMse)
z@NwcCJ^}eebD*sB)q4wT0xPAJ0QR6855*6gz
zEPl&f9lT1cLX97w^*9IK*lh5q7{bfb(2+9|9U)&j`LJux2ZK7Xnu=t{7fy~%UhO)j
zvs+#iJLRQA)bAC%>agwQRf1L0xZp#yo|Sn+s=
zJY*$UjPh{le{oG1TI5Ul>p>s?OU0L%r-o%Y_}(CVntXq&V6(GC#$8C_H9gt9Vdo~B
zEIUW3lya78+T65r!tSUY5q$AVBAL+tp)C0hv8%GBRcl*V*)lAh@Iaf5zPu&&rIk&`
z5MDNhd+hm5t2Mb$r#UO7(j#12=#TVD#os|X$P)4=yFCu!4!p}z05w>FKU3`>mf>0)
z=ScHZ)h-8BiRC(IU&-E_SPDV-_}cR;Zp+^Xo&m|jH`>1brdsI<6
z>>&cC@mkYJc6LE(Y-Yh|T;`L|b8YU8ir!I{J99^84eD7xWQf(+2W!w1%r%ZFYV8q9
zml4F{R2D8-SMtezf?hnCvo~rZ$>a1iemaJ2?<05`L-wFTTCbi-%5A9&c^K9+g;dQr
zh0|OQ;C=g9M^?uVc=w@+G5NrA2IE}SI9rR4IFe6TXZiUQf8|{jDQmg%
F_kTS7afko_
literal 6911
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
literal 0
HcmV?d00001
diff --git a/target/classes/com/muyu/common/core/validation/custom/IsSystemPayType.class b/target/classes/com/muyu/common/core/validation/custom/IsSystemPayType.class
new file mode 100644
index 0000000000000000000000000000000000000000..5ae68d197943d22514230a53f40b5f9cbf715776
GIT binary patch
literal 876
zcma))OKTKC5XY-Gk1>glM58fk+|@%!3_1tF%lbgG8(3I1?5?>i9y+t-&~c`F=|^CW
zdh#L)8t~{hQ1B8I`~ZHAWWg^XR%gXs&43=7?yCCLzq_jI+mFv*0pJ!C11K=K5vepx
zUFJeMq)O7JG2G^f=x{5%?TjU)W}2C?n6C4zm31+IQ3lgne4B>}mvQ)Ta|&q&c0TUyzTAKPqW5Ws!Fa5d>zV`E_K@ys!i^!>iKd7pw@%Z|b4$yIkegR-
z6BTrMmMGp~a6OM%A>pT7TRz+*>WWV(`~1nKayr5_k@y1t>f1G6Era=nlUAg-A&l5e
za8NEieqre4Lk(p#iEYqe^o!
literal 0
HcmV?d00001
diff --git a/target/classes/com/muyu/common/core/validation/custom/SystemPayTypeValidator.class b/target/classes/com/muyu/common/core/validation/custom/SystemPayTypeValidator.class
new file mode 100644
index 0000000000000000000000000000000000000000..e1008e6490dc2e3b9d3dd9a5ef25a3aa9af775bb
GIT binary patch
literal 1142
zcmbtTO>fgc5Pj<;H8FvPK>28)v_Pw-Mfk!kZ4nAWLJCkRRSvyvl2y7Tw$XZBkw3t%
z;lc$F2gI2lg?NtLl0cCfaq!O0?!NbC#xp;De*Feu2kRaj6kHT5C}B>ZdL)mfKa}CX
zf89M&Ju5J`twU{h1qvJWj)w~E~kFADr186`e9K@`#$<*P6WV!u6#_vC1Q
z^j48W$IYnE&B8|Ow?f+*9S$1x0~eR4q_YbTRa|jVtKcfG3GAGybu5RvFRf0slh`sG
z>RJ`#(w*!&G6JrS$DY8mGlF1PZ=|u(pCD{TVQh`mp*^MHkyY>PIOgjD>*qrW6tnc_
zTRK#)lAx>1zU&TJkXkG1$zewto%;D<(H`np;7RMhQf>$cvef>rxWHoXpScP6GZusY
z?xnJaQGZVw87Qj^Wv7aq^-^O--ui(+xvdAGw25J@-cMvQ8{_tQEBPXxYM(UXlX=Ly
zb(dxJ+EHS9>bXw;;L;T0v{N3XNUXAl9kA~?Z3S8m8P^;1d|E+U+WZXhksAj$xu(}3
z=oZ&X_5h1mq9@WZ;Hwneq*tIVZGD0JftyM2!Wg`gJ;=d)ircu86E5Q}5i7)%9UcSA
vlzdA5)tvt^!70DDx%C~F9)807pCXeHdb!96VU>jZ9NZ&?gZp?ewrjrt;CC@*
literal 0
HcmV?d00001
diff --git a/target/cloud-common-core-3.6.3.jar b/target/cloud-common-core-3.6.3.jar
index 8bd643dd902d3d7fd00ef4ff4a316a70b6e0325d..c122c828a7a1017447280f8e3be10b5b53b886ed 100644
GIT binary patch
delta 12910
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
C&8j;9
delta 9597
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