diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentInsServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentInsServiceImpl.java index a8a0bf21..df91c8bc 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentInsServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentInsServiceImpl.java @@ -462,29 +462,36 @@ public class ExperimentInsServiceImpl implements ExperimentInsService { if (StringUtils.isNotEmpty(nodesResult)) { Map nodesResultMap = JsonUtils.jsonToMap(nodesResult); Map paramOutput = (Map) nodesResultMap.get("param_output"); + Map nodesStatusMap = JsonUtils.jsonToMap(experimentIns.getNodesStatus()); for (String key : paramOutput.keySet()) { //删除导出模型版本 if (key.contains("model-export")) { - HashMap queryMap = new HashMap(); - queryMap.put("insId", experimentIns.getId()); - ModelDependency1 modelDependency1 = modelDependency1Dao.queryByInsId(JSON.toJSONString(queryMap)); - if (modelDependency1 != null) { - if (StringUtils.isNotEmpty(modelDependency1.getVersion())) { - String relativePath = ci4sUsername + "/model/" + modelDependency1.getRepoId() + "/" + modelDependency1.getIdentifier() + "/" + modelDependency1.getVersion() + "/model"; - modelsService.deleteVersion(modelDependency1.getRepoId(), modelDependency1.getIdentifier(), modelDependency1.getOwner(), modelDependency1.getVersion(), relativePath); - } else { - modelDependency1Dao.deleteModelById(modelDependency1.getId()); + Map modelExportMap = (Map) nodesStatusMap.get(key); + if (Constant.Running.equals(modelExportMap.get("phase")) || Constant.Succeeded.equals(modelExportMap.get("phase"))) { + HashMap queryMap = new HashMap(); + queryMap.put("insId", experimentIns.getId()); + ModelDependency1 modelDependency1 = modelDependency1Dao.queryByInsId(JSON.toJSONString(queryMap)); + if (modelDependency1 != null) { + if (StringUtils.isNotEmpty(modelDependency1.getVersion())) { + String relativePath = ci4sUsername + "/model/" + modelDependency1.getRepoId() + "/" + modelDependency1.getIdentifier() + "/" + modelDependency1.getVersion() + "/model"; + modelsService.deleteVersion(modelDependency1.getRepoId(), modelDependency1.getIdentifier(), modelDependency1.getOwner(), modelDependency1.getVersion(), relativePath); + } else { + modelDependency1Dao.deleteModelById(modelDependency1.getId()); + } } } } //删除导出数据集版本 if (key.contains("dataset-export")) { - HashMap queryMap = new HashMap(); - queryMap.put("ins_id", experimentIns.getId()); - DatasetTempStorage datasetTempStorage = datasetTempStorageDao.queryByInsId(JSON.toJSONString(queryMap)); - String relativePath = ci4sUsername + "/datasets/" + datasetTempStorage.getRepoId() + "/" + datasetTempStorage.getName() + "/" + datasetTempStorage.getVersion() + "/dataset"; - newDatasetService.deleteDatasetVersionNew(datasetTempStorage.getRepoId(), datasetTempStorage.getName(), datasetTempStorage.getCreateBy(), datasetTempStorage.getVersion(), relativePath); + Map datasetExportMap = (Map) nodesStatusMap.get(key); + if (Constant.Running.equals(datasetExportMap.get("phase")) || Constant.Succeeded.equals(datasetExportMap.get("phase"))) { + HashMap queryMap = new HashMap(); + queryMap.put("ins_id", experimentIns.getId()); + DatasetTempStorage datasetTempStorage = datasetTempStorageDao.queryByInsId(JSON.toJSONString(queryMap)); + String relativePath = ci4sUsername + "/datasets/" + datasetTempStorage.getRepoId() + "/" + datasetTempStorage.getName() + "/" + datasetTempStorage.getVersion() + "/dataset"; + newDatasetService.deleteDatasetVersionNew(datasetTempStorage.getRepoId(), datasetTempStorage.getName(), datasetTempStorage.getCreateBy(), datasetTempStorage.getVersion(), relativePath); + } } } }