From ff80fb362e0155d0099b54142c0beb25ec338328 Mon Sep 17 00:00:00 2001 From: shiziyuan9527 Date: Tue, 2 Aug 2022 14:49:14 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E7=B3=BB=E7=BB=9F=E8=AE=BE=E7=BD=AE):=20?= =?UTF-8?q?=E5=88=9B=E5=BB=BA=E9=A1=B9=E7=9B=AE=E6=8E=A5=E5=8F=A3=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E7=A9=BA=E9=97=B4ID=E4=B8=BA=E7=A9=BA=E5=8F=AF?= =?UTF-8?q?=E6=88=90=E5=8A=9F=E5=88=9B=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --bug=1015603 --user=李玉号 【系统设置】创建项目接口工作空间ID为空可成功创建 https://www.tapd.cn/55049933/s/1217342 --- .../metersphere/service/ProjectService.java | 36 +++++++++++++------ 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/backend/src/main/java/io/metersphere/service/ProjectService.java b/backend/src/main/java/io/metersphere/service/ProjectService.java index 3b3655b0bc..b8eb2f1b10 100644 --- a/backend/src/main/java/io/metersphere/service/ProjectService.java +++ b/backend/src/main/java/io/metersphere/service/ProjectService.java @@ -126,18 +126,11 @@ public class ProjectService { private ApiScenarioReportStructureMapper apiScenarioReportStructureMapper; @Resource private ApiScenarioReportResultMapper apiScenarioReportResultMapper; + @Resource + private WorkspaceMapper workspaceMapper; public Project addProject(AddProjectRequest project) { - if (StringUtils.isBlank(project.getName())) { - MSException.throwException(Translator.get("project_name_is_null")); - } - ProjectExample example = new ProjectExample(); - example.createCriteria() - .andWorkspaceIdEqualTo(project.getWorkspaceId()) - .andNameEqualTo(project.getName()); - if (projectMapper.countByExample(example) > 0) { - MSException.throwException(Translator.get("project_name_already_exists")); - } + this.checkCreateProjectParam(project); QuotaService quotaService = CommonBeanFactory.getBean(QuotaService.class); if (quotaService != null) { @@ -193,6 +186,29 @@ public class ProjectService { return project; } + private void checkCreateProjectParam(AddProjectRequest project) { + String name = project.getName(); + if (StringUtils.isBlank(name)) { + MSException.throwException(Translator.get("project_name_is_null")); + } + + String workspaceId = project.getWorkspaceId(); + if (StringUtils.isBlank(workspaceId)) { + MSException.throwException("project workspace_id is null"); + } + + Workspace workspace = workspaceMapper.selectByPrimaryKey(workspaceId); + if (workspace == null) { + MSException.throwException("project workspace_id is not exist."); + } + + ProjectExample example = new ProjectExample(); + example.createCriteria().andWorkspaceIdEqualTo(workspaceId).andNameEqualTo(name); + if (projectMapper.countByExample(example) > 0) { + MSException.throwException(Translator.get("project_name_already_exists")); + } + } + public void addProjectVersion(Project project) { ProjectVersion projectVersion = new ProjectVersion(); projectVersion.setId(UUID.randomUUID().toString());