fix: 删除接口时删除关联的用例

This commit is contained in:
CaptainB 2022-01-20 17:15:20 +08:00 committed by jianxing
parent d871cc4f16
commit f5a895c05c
1 changed files with 11 additions and 4 deletions

View File

@ -721,7 +721,7 @@ public class ApiDefinitionService {
reSetImportMocksApiId(mocks, originId, apiDefinition.getId(), apiDefinition.getNum()); reSetImportMocksApiId(mocks, originId, apiDefinition.getId(), apiDefinition.getNum());
apiDefinition.setRequest(requestStr); apiDefinition.setRequest(requestStr);
importApiCase(apiDefinition, apiTestImportRequest); importApiCase(apiDefinition, apiTestImportRequest);
}else { } else {
//不覆盖的接口如果没有sameRequest则不导入此时清空mock信息 //不覆盖的接口如果没有sameRequest则不导入此时清空mock信息
mocks.clear(); mocks.clear();
} }
@ -1383,7 +1383,7 @@ public class ApiDefinitionService {
BeanUtils.copyBean(swaggerUrlProject, request); BeanUtils.copyBean(swaggerUrlProject, request);
swaggerUrlProject.setId(UUID.randomUUID().toString()); swaggerUrlProject.setId(UUID.randomUUID().toString());
// 设置鉴权信息 // 设置鉴权信息
if(request.getHeaders() !=null || request.getArguments() !=null || request.getAuthManager() != null){ if (request.getHeaders() != null || request.getArguments() != null || request.getAuthManager() != null) {
String config = setAuthParams(request); String config = setAuthParams(request);
swaggerUrlProject.setConfig(config); swaggerUrlProject.setConfig(config);
} }
@ -1410,10 +1410,10 @@ public class ApiDefinitionService {
SwaggerUrlProject swaggerUrlProject = new SwaggerUrlProject(); SwaggerUrlProject swaggerUrlProject = new SwaggerUrlProject();
BeanUtils.copyBean(swaggerUrlProject, request); BeanUtils.copyBean(swaggerUrlProject, request);
// 设置鉴权信息 // 设置鉴权信息
if(request.getHeaders() !=null || request.getArguments() !=null || request.getAuthManager() != null){ if (request.getHeaders() != null || request.getArguments() != null || request.getAuthManager() != null) {
String config = setAuthParams(request); String config = setAuthParams(request);
swaggerUrlProject.setConfig(config); swaggerUrlProject.setConfig(config);
}else{ } else {
swaggerUrlProject.setConfig(null); swaggerUrlProject.setConfig(null);
} }
scheduleService.updateSwaggerUrlSchedule(swaggerUrlProject); scheduleService.updateSwaggerUrlSchedule(swaggerUrlProject);
@ -1870,6 +1870,13 @@ public class ApiDefinitionService {
public void deleteApiDefinitionByVersion(String refId, String version) { public void deleteApiDefinitionByVersion(String refId, String version) {
ApiDefinitionExample example = new ApiDefinitionExample(); ApiDefinitionExample example = new ApiDefinitionExample();
example.createCriteria().andRefIdEqualTo(refId).andVersionIdEqualTo(version); example.createCriteria().andRefIdEqualTo(refId).andVersionIdEqualTo(version);
List<ApiDefinition> apiDefinitions = apiDefinitionMapper.selectByExample(example);
List<String> ids = apiDefinitions.stream().map(ApiDefinition::getId).collect(Collectors.toList());
ApiTestCaseExample apiTestCaseExample = new ApiTestCaseExample();
apiTestCaseExample.createCriteria().andApiDefinitionIdIn(ids);
apiTestCaseMapper.deleteByExample(apiTestCaseExample);
//
apiDefinitionMapper.deleteByExample(example); apiDefinitionMapper.deleteByExample(example);
} }