From dd6a088a92a11cccc4dced126ffacfdf7c32e4f6 Mon Sep 17 00:00:00 2001 From: WangXu10 Date: Thu, 5 Sep 2024 11:32:41 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B):=20?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E7=94=A8=E4=BE=8B=E5=AD=90=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E6=9C=AA=E5=AF=BC=E5=87=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --bug=1046089 --user=王旭 【测试用例】github#32941导出excle格式的用例,导出是选择了所属模块,但是excle中所属模块内容为空 https://www.tapd.cn/55049933/s/1574745 --- .../service/FunctionalCaseFileService.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseFileService.java b/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseFileService.java index badb80bbd2..514d2f111a 100644 --- a/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseFileService.java +++ b/backend/services/case-management/src/main/java/io/metersphere/functional/service/FunctionalCaseFileService.java @@ -330,7 +330,7 @@ public class FunctionalCaseFileService { XMindCaseParser xMindParser = new XMindCaseParser(request, customFields, user, lasePos); errList = xMindParser.parse(multipartFile); response.setErrorMessages(errList); - response.setSuccessCount(xMindParser.getList().size() + xMindParser.getUpdateList().size()+ xMindParser.getCheckSuccessList().size()); + response.setSuccessCount(xMindParser.getList().size() + xMindParser.getUpdateList().size() + xMindParser.getCheckSuccessList().size()); response.setFailCount(errList.size()); xMindParser.clear(); return response; @@ -407,7 +407,7 @@ public class FunctionalCaseFileService { } xmindParser.saveData(); response.setErrorMessages(errList); - response.setSuccessCount(xmindParser.getList().size() + xmindParser.getUpdateList().size()+ xmindParser.getCheckSuccessList().size()); + response.setSuccessCount(xmindParser.getList().size() + xmindParser.getUpdateList().size() + xmindParser.getCheckSuccessList().size()); response.setFailCount(errList.size()); xmindParser.clear(); return response; @@ -882,7 +882,17 @@ public class FunctionalCaseFileService { */ private Map getModuleMap(String projectId) { List moduleTree = functionalCaseModuleService.getTree(projectId); - Map moduleMap = moduleTree.stream().collect(Collectors.toMap(BaseTreeNode::getId, BaseTreeNode::getPath)); + Map moduleMap = buildModuleMap(moduleTree, new HashMap()); + return moduleMap; + } + + private Map buildModuleMap(List moduleTree, Map moduleMap) { + for (BaseTreeNode treeNode : moduleTree) { + moduleMap.put(treeNode.getId(), treeNode.getPath()); + if (CollectionUtils.isNotEmpty(treeNode.getChildren())) { + buildModuleMap(treeNode.getChildren(), moduleMap); + } + } return moduleMap; }