From 04d411554616b0079a62778e17bf964e791da7d2 Mon Sep 17 00:00:00 2001 From: guoyuqi Date: Thu, 20 Jun 2024 16:23:06 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=8A=9F=E8=83=BD=E7=94=A8=E4=BE=8B):=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=94=A8=E4=BE=8B=E8=84=91=E5=9B=BE=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=96=87=E6=9C=AC=E8=8A=82=E7=82=B9=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/FunctionalCaseMinderService.java | 30 +++++++++++++++---- .../TestPlanCollectionMinderService.java | 6 ++++ 2 files changed, 30 insertions(+), 6 deletions(-) diff --git a/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseMinderService.java b/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseMinderService.java index 50ba310125..fb88f19387 100644 --- a/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseMinderService.java +++ b/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseMinderService.java @@ -779,6 +779,9 @@ public class FunctionalCaseMinderService { private MindAdditionalNode updateNode(String userId, MindAdditionalNodeRequest mindAdditionalNodeRequest, MindAdditionalNodeMapper mindAdditionalNodeMapper) { MindAdditionalNode mindAdditionalNode = new MindAdditionalNode(); mindAdditionalNode.setId(mindAdditionalNodeRequest.getId()); + if (mindAdditionalNodeRequest.getName().length()>255) { + mindAdditionalNodeRequest.setName(mindAdditionalNodeRequest.getName().substring(0,249)); + } mindAdditionalNode.setName(mindAdditionalNodeRequest.getName()); mindAdditionalNode.setParentId(mindAdditionalNodeRequest.getParentId()); mindAdditionalNode.setUpdateTime(System.currentTimeMillis()); @@ -791,6 +794,9 @@ public class FunctionalCaseMinderService { private MindAdditionalNode buildNode(FunctionalCaseMinderEditRequest request, String userId, MindAdditionalNodeRequest mindAdditionalNodeRequest, MindAdditionalNodeMapper additionalNodeMapper) { MindAdditionalNode mindAdditionalNode = new MindAdditionalNode(); mindAdditionalNode.setId(IDGenerator.nextStr()); + if (mindAdditionalNodeRequest.getName().length()>255) { + mindAdditionalNodeRequest.setName(mindAdditionalNodeRequest.getName().substring(0,249)); + } mindAdditionalNode.setName(mindAdditionalNodeRequest.getName()); mindAdditionalNode.setParentId(mindAdditionalNodeRequest.getParentId()); mindAdditionalNode.setProjectId(request.getProjectId()); @@ -813,7 +819,7 @@ public class FunctionalCaseMinderService { if (CollectionUtils.isNotEmpty(addList)) { List modules = new ArrayList<>(); //查出已存在同层级的节点 - Map> parentIdInDBMap = getParentIdInDBMap(addList); + Map> parentIdInDBMap = getParentIdInDBMap(addList,request.getProjectId()); for (FunctionalCaseModuleEditRequest functionalCaseModuleEditRequest : addList) { FunctionalCaseModule functionalCaseModule = buildModule(request, userId, functionalCaseModuleEditRequest); modules.add(functionalCaseModule); @@ -832,7 +838,7 @@ public class FunctionalCaseMinderService { List updateList = resourceMap.get(OperationLogType.UPDATE.toString()); if (CollectionUtils.isNotEmpty(updateList)) { List modules = new ArrayList<>(); - Map> parentIdInDBMap = getParentIdInDBMap(updateList); + Map> parentIdInDBMap = getParentIdInDBMap(updateList, request.getProjectId()); for (FunctionalCaseModuleEditRequest functionalCaseModuleEditRequest : updateList) { FunctionalCaseModule updateModule = updateModule(userId, functionalCaseModuleEditRequest); modules.add(updateModule); @@ -843,7 +849,7 @@ public class FunctionalCaseMinderService { module.setParentId(sourceIdAndInsertIdMap.get(module.getParentId())); } checkModules(module, parentIdInDBMap, OperationLogType.UPDATE.toString()); - moduleMapper.updateByPrimaryKeySelective(module); + moduleMapper.updateByPrimaryKeySelective(module); } } } @@ -856,10 +862,10 @@ public class FunctionalCaseMinderService { } @NotNull - private Map> getParentIdInDBMap(List functionalCaseModuleEditRequests) { + private Map> getParentIdInDBMap(List functionalCaseModuleEditRequests, String projectId) { List parentIds = functionalCaseModuleEditRequests.stream().map(FunctionalCaseModuleEditRequest::getParentId).toList(); FunctionalCaseModuleExample functionalCaseModuleExample = new FunctionalCaseModuleExample(); - functionalCaseModuleExample.createCriteria().andParentIdIn(parentIds); + functionalCaseModuleExample.createCriteria().andParentIdIn(parentIds).andProjectIdEqualTo(projectId); List sameParentListInDB = functionalCaseModuleMapper.selectByExample(functionalCaseModuleExample); return sameParentListInDB.stream().collect(Collectors.groupingBy(FunctionalCaseModule::getParentId)); } @@ -963,6 +969,9 @@ public class FunctionalCaseMinderService { private FunctionalCaseModule buildModule(FunctionalCaseMinderEditRequest request, String userId, FunctionalCaseModuleEditRequest functionalCaseModuleEditRequest) { FunctionalCaseModule functionalCaseModule = new FunctionalCaseModule(); functionalCaseModule.setId(IDGenerator.nextStr()); + if (functionalCaseModuleEditRequest.getName().length()>255) { + functionalCaseModuleEditRequest.setName(functionalCaseModuleEditRequest.getName().substring(0,249)); + } functionalCaseModule.setName(functionalCaseModuleEditRequest.getName()); functionalCaseModule.setParentId(functionalCaseModuleEditRequest.getParentId()); functionalCaseModule.setProjectId(request.getProjectId()); @@ -978,6 +987,9 @@ public class FunctionalCaseMinderService { private FunctionalCaseModule updateModule(String userId, FunctionalCaseModuleEditRequest functionalCaseModuleEditRequest) { FunctionalCaseModule updateModule = new FunctionalCaseModule(); updateModule.setId(functionalCaseModuleEditRequest.getId()); + if (functionalCaseModuleEditRequest.getName().length()>255) { + functionalCaseModuleEditRequest.setName(functionalCaseModuleEditRequest.getName().substring(0,249)); + } updateModule.setName(functionalCaseModuleEditRequest.getName()); updateModule.setParentId(functionalCaseModuleEditRequest.getParentId()); updateModule.setUpdateTime(System.currentTimeMillis()); @@ -990,6 +1002,9 @@ public class FunctionalCaseMinderService { private FunctionalCase updateCase(FunctionalCaseChangeRequest request, String userId, FunctionalCaseMapper caseMapper) { FunctionalCase functionalCase = new FunctionalCase(); BeanUtils.copyBean(functionalCase, request); + if (functionalCase.getName().length()>255) { + functionalCase.setName(functionalCase.getName().substring(0,249)); + } functionalCase.setUpdateUser(userId); functionalCase.setUpdateTime(System.currentTimeMillis()); functionalCase.setCreateUser(null); @@ -1112,6 +1127,9 @@ public class FunctionalCaseMinderService { if (StringUtils.isNotBlank(sourceIdAndInsertModuleIdMap.get(functionalCaseChangeRequest.getModuleId()))) { functionalCase.setModuleId(sourceIdAndInsertModuleIdMap.get(functionalCaseChangeRequest.getModuleId())); } + if (functionalCase.getName().length()>255) { + functionalCase.setName(functionalCase.getName().substring(0,249)); + } functionalCase.setProjectId(request.getProjectId()); functionalCase.setVersionId(request.getVersionId()); functionalCase.setNum(functionalCaseService.getNextNum(request.getProjectId())); @@ -1153,7 +1171,7 @@ public class FunctionalCaseMinderService { } List additionalOptionDTOS = resourceMap.get(ModuleConstants.ROOT_NODE_PARENT_ID); if (CollectionUtils.isNotEmpty(additionalOptionDTOS)) { - List mindAdditionalNodeIds = caseModuleOptionDTOS.stream().map(MinderOptionDTO::getId).toList(); + List mindAdditionalNodeIds = additionalOptionDTOS.stream().map(MinderOptionDTO::getId).toList(); dealMindAdditionalMode(mindAdditionalNodeIds, mindAdditionalNodeMapper); } } diff --git a/backend/services/test-plan/src/main/java/io/metersphere/plan/service/TestPlanCollectionMinderService.java b/backend/services/test-plan/src/main/java/io/metersphere/plan/service/TestPlanCollectionMinderService.java index 4001d7fdbe..1ad4649eff 100644 --- a/backend/services/test-plan/src/main/java/io/metersphere/plan/service/TestPlanCollectionMinderService.java +++ b/backend/services/test-plan/src/main/java/io/metersphere/plan/service/TestPlanCollectionMinderService.java @@ -371,6 +371,9 @@ public class TestPlanCollectionMinderService { } else { testPlanCollection.setParentId(parent.getId()); } + if (testPlanCollectionMinderEditDTO.getText().length()>255) { + testPlanCollectionMinderEditDTO.setText(testPlanCollectionMinderEditDTO.getText().substring(0,249)); + } testPlanCollection.setName(testPlanCollectionMinderEditDTO.getText()); testPlanCollection.setTestPlanId(request.getPlanId()); testPlanCollection.setType(testPlanCollectionMinderEditDTO.getType()); @@ -393,6 +396,9 @@ public class TestPlanCollectionMinderService { BeanUtils.copyBean(testPlanCollection, testPlanCollectionMinderEditDTO); } testPlanCollection.setParentId(parent.getId()); + if (testPlanCollectionMinderEditDTO.getText().length()>255) { + testPlanCollectionMinderEditDTO.setText(testPlanCollectionMinderEditDTO.getText().substring(0,249)); + } testPlanCollection.setName(testPlanCollectionMinderEditDTO.getText()); testPlanCollection.setId(IDGenerator.nextStr()); testPlanCollection.setTestPlanId(request.getPlanId());