diff --git a/src/main/java/com/muyu/common/core/domain/Result.java b/src/main/java/com/muyu/common/core/domain/Result.java index 70faa40..93aa9e8 100644 --- a/src/main/java/com/muyu/common/core/domain/Result.java +++ b/src/main/java/com/muyu/common/core/domain/Result.java @@ -2,6 +2,8 @@ package com.muyu.common.core.domain; import com.muyu.common.core.constant.Constants; import com.muyu.common.core.constant.HttpStatus; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -18,6 +20,7 @@ import java.io.Serializable; @Builder @NoArgsConstructor @AllArgsConstructor +@Tag(name ="公共返回值",description = "系统公共返回值,统一返回格式内容") public class Result implements Serializable { /** * 成功 @@ -33,10 +36,14 @@ public class Result implements Serializable { public static final int WARN = HttpStatus.WARN; private static final long serialVersionUID = 1L; + + @Schema(name = "code",description ="整体返回相应状态码200表示成功,其余表示请求有异常,详情请见每个接口") private int code; + @Schema(description ="返回状态码的描述") private String msg; + @Schema(description ="返回数据") private T data; public static Result success () { 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..fad2bf5 --- /dev/null +++ b/src/main/java/com/muyu/common/core/enums/SystemYesNo.java @@ -0,0 +1,41 @@ +package com.muyu.common.core.enums; + +import java.util.Arrays; + + +/** + * 系统是否枚举 + */ +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; + } + + + /** + * 鉴别code是否合法 + * @param code 传code + * @return 如果存在code则返回true,不存在则返回false + */ + public static boolean isCode(String code) { + return Arrays.stream(values()) + .map(SystemYesNo::getCode) + .anyMatch(s -> s.equals(code)); + } + +} diff --git a/src/main/java/com/muyu/common/core/validation/IsSystemYesNo.java b/src/main/java/com/muyu/common/core/validation/IsSystemYesNo.java new file mode 100644 index 0000000..ebacde0 --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/IsSystemYesNo.java @@ -0,0 +1,21 @@ +package com.muyu.common.core.validation; + +import jakarta.validation.Constraint; + +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; + +/** + * validation自定义系统字典校验 + */ +@Target({ElementType.FIELD}) +@Retention(RUNTIME) +@Documented +@Constraint(validatedBy = {SystemYesNoValidator.class}) +public @interface IsSystemYesNo { + String message() default "数据字典:[系统是否] - 参数不合法"; +} diff --git a/src/main/java/com/muyu/common/core/validation/SystemYesNoValidator.java b/src/main/java/com/muyu/common/core/validation/SystemYesNoValidator.java new file mode 100644 index 0000000..21e42e9 --- /dev/null +++ b/src/main/java/com/muyu/common/core/validation/SystemYesNoValidator.java @@ -0,0 +1,15 @@ +package com.muyu.common.core.validation; + +import com.muyu.common.core.enums.SystemYesNo; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +/** + * 是否系统字典的校验器 + */ +public class SystemYesNoValidator implements ConstraintValidator { + @Override + public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) { + return SystemYesNo.isCode(value); + } +}