From e533cf6a298081779a7751091d356b8c32d2ef74 Mon Sep 17 00:00:00 2001 From: Charles7c Date: Wed, 9 Aug 2023 23:34:48 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=AE=8C=E5=96=84=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=E9=85=8D=E7=BD=AE=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E6=8E=A5=E5=8F=A3=E7=9A=84=E5=8F=82=E6=95=B0=E9=AA=8C?= =?UTF-8?q?=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cnadmin/common/constant/RegexConsts.java | 5 +++++ .../cnadmin/tool/model/entity/GenConfigDO.java | 11 +++++++++++ .../cnadmin/tool/model/request/GenConfigRequest.java | 5 +++++ 3 files changed, 21 insertions(+) diff --git a/continew-admin-common/src/main/java/top/charles7c/cnadmin/common/constant/RegexConsts.java b/continew-admin-common/src/main/java/top/charles7c/cnadmin/common/constant/RegexConsts.java index 89ca0c43..6cbf5827 100644 --- a/continew-admin-common/src/main/java/top/charles7c/cnadmin/common/constant/RegexConsts.java +++ b/continew-admin-common/src/main/java/top/charles7c/cnadmin/common/constant/RegexConsts.java @@ -49,4 +49,9 @@ public class RegexConsts implements RegexPool { * 通用名称正则(长度为 1 到 20 位,可以包含中文、字母、数字、下划线,短横线) */ public static final String GENERAL_NAME = "^[\\u4e00-\\u9fa5a-zA-Z0-9_-]{1,20}$"; + + /** + * 包名正则(可以包含大小写字母、数字、下划线,每一级包名不能以数字开头) + */ + public static final String PACKAGE_NAME = "^(?:[a-zA-Z_][a-zA-Z0-9_]*\\.)*[a-zA-Z_][a-zA-Z0-9_]*$"; } diff --git a/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/entity/GenConfigDO.java b/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/entity/GenConfigDO.java index 8530a643..96a6261b 100644 --- a/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/entity/GenConfigDO.java +++ b/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/entity/GenConfigDO.java @@ -21,6 +21,7 @@ import java.time.LocalDateTime; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; +import javax.validation.constraints.Pattern; import lombok.Data; import lombok.NoArgsConstructor; @@ -28,8 +29,12 @@ import lombok.experimental.Accessors; import io.swagger.v3.oas.annotations.media.Schema; +import org.hibernate.validator.constraints.Length; + import com.baomidou.mybatisplus.annotation.*; +import top.charles7c.cnadmin.common.constant.RegexConsts; + /** * 生成配置实体 * @@ -58,6 +63,7 @@ public class GenConfigDO implements Serializable { */ @Schema(description = "模块名称") @NotBlank(message = "模块名称不能为空") + @Length(max = 60, message = "模块名称不能超过 {max} 个字符") private String moduleName; /** @@ -65,12 +71,15 @@ public class GenConfigDO implements Serializable { */ @Schema(description = "包名称") @NotBlank(message = "包名称不能为空") + @Pattern(regexp = RegexConsts.PACKAGE_NAME, message = "包名称格式错误") + @Length(max = 60, message = "包名称不能超过 {max} 个字符") private String packageName; /** * 前端路径 */ @Schema(description = "前端路径") + @Length(max = 255, message = "前端路径不能超过 {max} 个字符") private String frontendPath; /** @@ -78,6 +87,7 @@ public class GenConfigDO implements Serializable { */ @Schema(description = "业务名称") @NotBlank(message = "业务名称不能为空") + @Length(max = 50, message = "业务名称不能超过 {max} 个字符") private String businessName; /** @@ -85,6 +95,7 @@ public class GenConfigDO implements Serializable { */ @Schema(description = "作者") @NotBlank(message = "作者名称不能为空") + @Length(max = 100, message = "作者名称不能超过 {max} 个字符") private String author; /** diff --git a/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/request/GenConfigRequest.java b/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/request/GenConfigRequest.java index e4d416ba..dc850c80 100644 --- a/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/request/GenConfigRequest.java +++ b/continew-admin-tool/src/main/java/top/charles7c/cnadmin/tool/model/request/GenConfigRequest.java @@ -20,6 +20,9 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.List; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + import lombok.Data; import io.swagger.v3.oas.annotations.media.Schema; @@ -43,11 +46,13 @@ public class GenConfigRequest implements Serializable { * 列映射信息列表 */ @Schema(description = "列映射信息列表") + @NotEmpty(message = "列映射信息不能为空") private List columnMappings = new ArrayList<>(); /** * 生成配置信息 */ @Schema(description = "生成配置信息") + @NotNull(message = "生成配置信息不能为空") private GenConfigDO genConfig; }