diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetVersionController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetVersionController.java index 7183b2fe..b36ede47 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetVersionController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetVersionController.java @@ -103,5 +103,19 @@ public class DatasetVersionController { return AjaxResult.success(this.datasetVersionService.removeById(id)); } + /** + * 删除版本下的所有数据 + * + * @param datasetId 模型主键 + * @param version 版本 + * @return 删除是否成功 + */ + @DeleteMapping("/deleteVersion") + @ApiOperation(value = "逻辑删除模型版本", notes = "根据模型ID和版本逻辑删除模型版本记录。") + public AjaxResult deleteModelsVersion(@RequestParam("dataset_id") Integer datasetId, + @RequestParam("version") String version) { + return AjaxResult.success(this.datasetVersionService.deleteDatasetVersion(datasetId, version)); + } + } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/ModelsVersionController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/ModelsVersionController.java index 88b82547..b3b24382 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/ModelsVersionController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/ModelsVersionController.java @@ -92,7 +92,7 @@ public class ModelsVersionController { } /** - * 删除数据 + * 根据id删除单条数据 * * @param id 主键 * @return 删除是否成功 @@ -102,5 +102,21 @@ public class ModelsVersionController { return AjaxResult.success(this.modelsVersionService.removeById(id)); } + + + /** + * 删除版本下的所有数据 + * + * @param modelsId 模型主键 + * @param version 版本 + * @return 删除是否成功 + */ + @DeleteMapping("/deleteVersion") + @ApiOperation(value = "逻辑删除模型版本", notes = "根据模型ID和版本逻辑删除模型版本记录。") + public AjaxResult deleteModelsVersion(@RequestParam("models_id") Integer modelsId, + @RequestParam("version") String version) { + return AjaxResult.success(this.modelsVersionService.deleteModelsVersion(modelsId, version)); + } + } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetVersionDao.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetVersionDao.java index fb924330..bf60956b 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetVersionDao.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetVersionDao.java @@ -86,7 +86,7 @@ public interface DatasetVersionDao { DatasetVersion queryByDatasetVersion(DatasetVersion datasetVersion); - List queryByDatasetIdAndVersion(@Param("datasetId") Integer datasetId, @Param("version") String version); + List queryAllByDatasetVersion(@Param("datasetId") Integer datasetId, @Param("version") String version); diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetVersionService.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetVersionService.java index 29b6afec..8efa1260 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetVersionService.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetVersionService.java @@ -8,6 +8,7 @@ import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import java.util.List; +import java.util.Map; /** * (DatasetVersion)表服务接口 @@ -67,4 +68,6 @@ public interface DatasetVersionService { DatasetVersion queryByDatasetVersion(DatasetVersion datasetVersion); List queryByDatasetIdAndVersion(Integer datasetId, String version); + + Map deleteDatasetVersion(Integer datasetId, String version); } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsVersionService.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsVersionService.java index 24802210..e5a99d15 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsVersionService.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsVersionService.java @@ -2,12 +2,12 @@ package com.ruoyi.platform.service; -import com.ruoyi.platform.domain.Models; import com.ruoyi.platform.domain.ModelsVersion; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import java.util.List; +import java.util.Map; /** * (ModelsVersion)表服务接口 @@ -67,4 +67,6 @@ public interface ModelsVersionService { ModelsVersion queryByModelsVersion(ModelsVersion modelsVersion); List queryByModelsIdAndVersion(Integer modelsId, String version); + + Map deleteModelsVersion(Integer modelsId, String version); } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetVersionServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetVersionServiceImpl.java index 30d00e42..6886ec98 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetVersionServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetVersionServiceImpl.java @@ -2,6 +2,7 @@ package com.ruoyi.platform.service.impl; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.platform.domain.DatasetVersion; +import com.ruoyi.platform.domain.ModelsVersion; import com.ruoyi.platform.domain.Workflow; import com.ruoyi.platform.mapper.DatasetVersionDao; import com.ruoyi.platform.service.DatasetVersionService; @@ -14,7 +15,9 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * (DatasetVersion)表服务实现类 @@ -147,7 +150,20 @@ public class DatasetVersionServiceImpl implements DatasetVersionService { @Override public List queryByDatasetIdAndVersion(Integer datasetId, String version) { - return this.datasetVersionDao.queryByDatasetIdAndVersion(datasetId, version); + return this.datasetVersionDao.queryAllByDatasetVersion(datasetId, version); + } + + @Override + public Map deleteDatasetVersion(Integer datasetId, String version) { + Map results = new HashMap(); + // 根据模型ID和版本查询所有模型版本 + List versions = this.datasetVersionDao.queryAllByDatasetVersion(datasetId, version); + //逻辑删除列表中的数据项 + for(DatasetVersion datasetVersion:versions){ + String result = this.removeById(datasetVersion.getId()); + results.put(datasetVersion.getId(), result); + } + return results; } } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsVersionServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsVersionServiceImpl.java index f676b3a6..95f7ee18 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsVersionServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsVersionServiceImpl.java @@ -1,7 +1,6 @@ package com.ruoyi.platform.service.impl; import com.ruoyi.common.security.utils.SecurityUtils; -import com.ruoyi.platform.domain.DatasetVersion; import com.ruoyi.platform.domain.ModelsVersion; import com.ruoyi.platform.mapper.ModelsDao; import com.ruoyi.platform.mapper.ModelsVersionDao; @@ -15,7 +14,9 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * (ModelsVersion)表服务实现类 @@ -110,7 +111,7 @@ public class ModelsVersionServiceImpl implements ModelsVersionService { public String removeById(Integer id) { ModelsVersion modelsVersion = this.modelsVersionDao.queryById(id); if (modelsVersion == null){ - return "模型版本信息不存在"; + return "该版本下模型文件信息不存在"; } //判断权限,只有admin和创建者本身可以删除该数据集 @@ -118,7 +119,7 @@ public class ModelsVersionServiceImpl implements ModelsVersionService { String username = loginUser.getUsername(); String createdBy = modelsVersion.getCreateBy(); if (!(StringUtils.equals(username,"admin") || StringUtils.equals(username,createdBy))){ - return "无权限删除该模型版本信息"; + return "无权限删除该版本下模型信息"; } modelsVersion.setState(0); @@ -165,4 +166,17 @@ public class ModelsVersionServiceImpl implements ModelsVersionService { } + @Override + public Map deleteModelsVersion(Integer modelsId, String version) { + Map results = new HashMap(); + // 根据模型ID和版本查询所有模型版本 + List versions = this.modelsVersionDao.queryAllByModelsVersion(modelsId, version); + //逻辑删除列表中的数据项 + for(ModelsVersion modelsVersion:versions){ + String result = this.removeById(modelsVersion.getId()); + results.put(modelsVersion.getId(), result); + } + return results; + } + } diff --git a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetVersionDaoMapper.xml b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetVersionDaoMapper.xml index 366171f4..f1495025 100644 --- a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetVersionDaoMapper.xml +++ b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetVersionDaoMapper.xml @@ -50,7 +50,7 @@ limit 1 - select id,dataset_id,version,url,file_name,file_size,available_cluster,status,create_by,create_time,update_by,update_time,state from dataset_version