diff --git a/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java b/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java index c7ca407d1e..2d2b78e48f 100644 --- a/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java +++ b/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java @@ -494,6 +494,13 @@ public class ApiScenarioReportService { public void delete(String id) { apiScenarioReportDetailMapper.deleteByPrimaryKey(id); apiScenarioReportMapper.deleteByPrimaryKey(id); + ApiScenarioReportResultExample example = new ApiScenarioReportResultExample(); + example.createCriteria().andReportIdEqualTo(id); + apiScenarioReportResultMapper.deleteByExample(example); + + ApiScenarioReportStructureExample structureExample = new ApiScenarioReportStructureExample(); + structureExample.createCriteria().andReportIdEqualTo(id); + apiScenarioReportStructureMapper.deleteByExample(structureExample); } public void deleteByIds(List ids) { @@ -503,6 +510,14 @@ public class ApiScenarioReportService { detailExample.createCriteria().andReportIdIn(ids); apiScenarioReportDetailMapper.deleteByExample(detailExample); apiScenarioReportMapper.deleteByExample(example); + + ApiScenarioReportResultExample reportResultExample = new ApiScenarioReportResultExample(); + reportResultExample.createCriteria().andReportIdIn(ids); + apiScenarioReportResultMapper.deleteByExample(reportResultExample); + + ApiScenarioReportStructureExample structureExample = new ApiScenarioReportStructureExample(); + structureExample.createCriteria().andReportIdIn(ids); + apiScenarioReportStructureMapper.deleteByExample(structureExample); } public void deleteAPIReportBatch(APIReportBatchRequest reportRequest) { @@ -742,7 +757,10 @@ public class ApiScenarioReportService { List apiScenarioReports = apiScenarioReportMapper.selectByExample(example); List ids = apiScenarioReports.stream().map(ApiScenarioReport::getId).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(ids)) { - deleteByIds(ids); + APIReportBatchRequest request = new APIReportBatchRequest(); + request.setIds(ids); + request.setSelectAllDate(false); + deleteAPIReportBatch(request); } }