diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetController.java index f447a7bd..cc2b8e68 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetController.java @@ -29,6 +29,9 @@ public class DatasetController { @Resource private DatasetService datasetService; + @Resource + private DatasetVersionService datasetVersionService; + /** * 分页查询 * @@ -95,7 +98,7 @@ public class DatasetController { /** * 下载数据集 * - * @param id 主键 + * @param id ps:这里的id是dataset_version表的主键 * @return 单条数据 */ @GetMapping("/download/{id}") @@ -104,6 +107,12 @@ public class DatasetController { return datasetService.downloadDataset(id); } + /** + * 上传数据集 + * + * @param id ps:这里的id是dataset_version表的主键 + * @return 上传结果 + */ @PostMapping("/upload/{id}") @ApiOperation("上传数据集") public ResponseEntity uploadDataset(@RequestParam("file") MultipartFile file , @PathVariable("id") Integer id) throws Exception { 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 new file mode 100644 index 00000000..05605413 --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/DatasetVersionController.java @@ -0,0 +1,94 @@ +package com.ruoyi.platform.controller.dataset; + +import com.ruoyi.platform.domain.*; +import com.ruoyi.platform.service.*; +import io.swagger.annotations.ApiOperation; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +/** + * (DatasetVersion)表控制层 + * + * @author Xidaray + * @since 2024-01-03 16:55:19 + */ +@RestController +@RequestMapping("datasetVersion") +@ApiOperation(value = "数据集版本管理") +public class DatasetVersionController { + /** + * 服务对象 + */ + @Resource + private DatasetVersionService datasetVersionService; + + /** + * 分页查询 + * + * @param datasetVersion 筛选条件 + * @param page 页数 + * @param size 大小 + * @return 查询结果 + */ + @GetMapping + @ApiOperation("分页查询") + public ResponseEntity> queryByPage(DatasetVersion datasetVersion, int page,int size) { + PageRequest pageRequest = PageRequest.of(page,size); + return ResponseEntity.ok(this.datasetVersionService.queryByPage(datasetVersion, pageRequest)); + } + + + /** + * 通过主键查询单条数据 + * + * @param id 主键 + * @return 单条数据 + */ + @GetMapping("{id}") + @ApiOperation("根据id查询数据集版本") + public ResponseEntity queryById(@PathVariable("id") Integer id) { + return ResponseEntity.ok(this.datasetVersionService.queryById(id)); + } + + /** + * 新增数据 + * + * @param datasetVersion 实体 + * @return 新增结果 + */ + @PostMapping + @ApiOperation("添加数据集版本") + public ResponseEntity add(DatasetVersion datasetVersion) { + return ResponseEntity.ok(this.datasetVersionService.insert(datasetVersion)); + } + + /** + * 编辑数据 + * + * @param datasetVersion 实体 + * @return 编辑结果 + */ + @PutMapping + @ApiOperation("编辑数据集版本") + public ResponseEntity edit(DatasetVersion datasetVersion) { + return ResponseEntity.ok(this.datasetVersionService.update(datasetVersion)); + } + + /** + * 删除数据 + * + * @param id 主键 + * @return 删除是否成功 + */ + @DeleteMapping({"{id}"}) + @ApiOperation("删除数据集版本") + public ResponseEntity deleteById(@PathVariable("id") Integer id) { + return ResponseEntity.ok(this.datasetVersionService.removeById(id)); + } + +} + 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 new file mode 100644 index 00000000..5e40b699 --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/ModelsVersionController.java @@ -0,0 +1,88 @@ +package com.ruoyi.platform.controller.model; + +import com.ruoyi.platform.domain.*; +import com.ruoyi.platform.service.*; +import io.swagger.annotations.ApiOperation; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +/** + * (ModelsVersion)表控制层 + * + * @author Xidaray + * @since 2024-01-05 08:50:54 + */ +@RestController +@RequestMapping("modelsVersion") +public class ModelsVersionController { + /** + * 服务对象 + */ + @Resource + private ModelsVersionService modelsVersionService; + + /** + * 分页查询 + * + * @param modelsVersion 筛选条件 + * @param page 分页对象 + * @param size 分页对象 + * @return 查询结果 + */ + @GetMapping + @ApiOperation("分页查询") + public ResponseEntity> queryByPage(ModelsVersion modelsVersion, int page, int size) { + PageRequest pageRequest = PageRequest.of(page,size); + return ResponseEntity.ok(this.modelsVersionService.queryByPage(modelsVersion, pageRequest)); + } + + /** + * 通过主键查询单条数据 + * + * @param id 主键 + * @return 单条数据 + */ + @GetMapping("{id}") + public ResponseEntity queryById(@PathVariable("id") Integer id) { + return ResponseEntity.ok(this.modelsVersionService.queryById(id)); + } + + /** + * 新增数据 + * + * @param modelsVersion 实体 + * @return 新增结果 + */ + @PostMapping + public ResponseEntity add(ModelsVersion modelsVersion) { + return ResponseEntity.ok(this.modelsVersionService.insert(modelsVersion)); + } + + /** + * 编辑数据 + * + * @param modelsVersion 实体 + * @return 编辑结果 + */ + @PutMapping + public ResponseEntity edit(ModelsVersion modelsVersion) { + return ResponseEntity.ok(this.modelsVersionService.update(modelsVersion)); + } + + /** + * 删除数据 + * + * @param id 主键 + * @return 删除是否成功 + */ + @DeleteMapping("{id}") + public ResponseEntity deleteById(@PathVariable("id") Integer id) { + return ResponseEntity.ok(this.modelsVersionService.removeById(id)); + } + +} + diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/resources/ComputingResourceController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/resources/ComputingResourceController.java new file mode 100644 index 00000000..c9bfacee --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/resources/ComputingResourceController.java @@ -0,0 +1,92 @@ +package com.ruoyi.platform.controller.resources; + +import com.ruoyi.platform.domain.*; +import com.ruoyi.platform.service.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +/** + * (ComputingResource)表控制层 + * + * @author Xidaray + * @since 2023-11-29 14:13:20 + */ +@RestController +@RequestMapping("computingResource") +@Api("计算资源管理") +public class ComputingResourceController { + /** + * 服务对象 + */ + @Resource + private ComputingResourceService computingResourceService; + + /** + * 分页查询 + * + * @param computingResource 筛选条件 + * @return 查询结果 + */ + @GetMapping + @ApiOperation("分页查询") + public ResponseEntity> queryByPage(ComputingResource computingResource, int page, int size) { + PageRequest pageRequest = PageRequest.of(page,size); + return ResponseEntity.ok(this.computingResourceService.queryByPage(computingResource, pageRequest)); + } + + /** + * 通过主键查询单条数据 + * + * @param id 主键 + * @return 单条数据 + */ + @GetMapping("{id}") + @ApiOperation("根据id查询") + public ResponseEntity queryById(@PathVariable("id") Integer id) { + return ResponseEntity.ok(this.computingResourceService.queryById(id)); + } + + /** + * 新增数据 + * + * @param computingResource 实体 + * @return 新增结果 + */ + @PostMapping + @ApiOperation("新增计算资源") + public ResponseEntity add(ComputingResource computingResource) { + return ResponseEntity.ok(this.computingResourceService.insert(computingResource)); + } + + /** + * 编辑数据 + * + * @param computingResource 实体 + * @return 编辑结果 + */ + @PutMapping + @ApiOperation("编辑计算资源") + public ResponseEntity edit(ComputingResource computingResource) { + return ResponseEntity.ok(this.computingResourceService.update(computingResource)); + } + + /** + * 删除数据 + * + * @param id 主键 + * @return 删除是否成功 + */ + @DeleteMapping("{id}") + @ApiOperation("删除计算资源") + public ResponseEntity deleteById(@PathVariable("id") Integer id) { + return ResponseEntity.ok(this.computingResourceService.removeById(id)); + } + +} + diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java index 325655ff..22479094 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java @@ -54,7 +54,7 @@ public class WorkflowController { */ @GetMapping("name/{name}") @ApiOperation("按流水线名字模糊查询流水线") - public ResponseEntity> queryByName(@PathVariable("name")String name) { + public ResponseEntity> queryByName(@PathVariable("name") String name) { return ResponseEntity.ok(this.workflowService.queryByName(name)); } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Dataset.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Dataset.java index 8dca94a0..8af6a324 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Dataset.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Dataset.java @@ -20,11 +20,11 @@ public class Dataset implements Serializable { private String name; - private String version; +// private String version; private String description; - private String url; +// private String url; private Integer dataType; /** @@ -65,13 +65,13 @@ public class Dataset implements Serializable { this.name = name; } - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } +// public String getVersion() { +// return version; +// } +// +// public void setVersion(String version) { +// this.version = version; +// } public String getDescription() { return description; @@ -81,13 +81,13 @@ public class Dataset implements Serializable { this.description = description; } - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } +// public String getUrl() { +// return url; +// } +// +// public void setUrl(String url) { +// this.url = url; +// } public Integer getDataType() { return dataType; diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/DatasetVersion.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/DatasetVersion.java new file mode 100644 index 00000000..7649dc82 --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/DatasetVersion.java @@ -0,0 +1,171 @@ +package com.ruoyi.platform.domain; + +import java.util.Date; +import java.io.Serializable; + +/** + * (DatasetVersion)实体类 + * + * @author Xidaray + * @since 2024-01-03 16:57:12 + */ +public class DatasetVersion implements Serializable { + private static final long serialVersionUID = -96998451993465838L; +/** + * 主键 + */ + private Integer id; + + private Integer datasetId; +/** + * 版本 + */ + private String version; +/** + * 数据集存储地址 + */ + private String url; +/** + * 文件名 + */ + private String fileName; +/** + * 文件大小 + */ + private String fileSize; +/** + * 可用集群 + */ + private String availableCluster; +/** + * 状态 + */ + private Integer status; +/** + * 创建者 + */ + private String createBy; +/** + * 创建时间 + */ + private Date createTime; +/** + * 更新者 + */ + private String updateBy; +/** + * 更新时间 + */ + private Date updateTime; +/** + * 0失效,1生效 + */ + private Integer state; + + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getDatasetId() { + return datasetId; + } + + public void setDatasetId(Integer datasetId) { + this.datasetId = datasetId; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileSize() { + return fileSize; + } + + public void setFileSize(String fileSize) { + this.fileSize = fileSize; + } + + public String getAvailableCluster() { + return availableCluster; + } + + public void setAvailableCluster(String availableCluster) { + this.availableCluster = availableCluster; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public Integer getState() { + return state; + } + + public void setState(Integer state) { + this.state = state; + } + +} + diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Models.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Models.java index 307222e8..185476c5 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Models.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/Models.java @@ -16,11 +16,11 @@ public class Models implements Serializable { private String name; - private String version; +// private String version; private String description; - private String url; +// private String url; private Integer modelType; /** @@ -61,13 +61,13 @@ public class Models implements Serializable { this.name = name; } - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } +// public String getVersion() { +// return version; +// } +// +// public void setVersion(String version) { +// this.version = version; +// } public String getDescription() { return description; @@ -77,13 +77,13 @@ public class Models implements Serializable { this.description = description; } - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } +// public String getUrl() { +// return url; +// } +// +// public void setUrl(String url) { +// this.url = url; +// } public Integer getModelType() { return modelType; diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/ModelsVersion.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/ModelsVersion.java new file mode 100644 index 00000000..8dd03f39 --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/ModelsVersion.java @@ -0,0 +1,159 @@ +package com.ruoyi.platform.domain; + +import java.util.Date; +import java.io.Serializable; + +/** + * (ModelsVersion)实体类 + * + * @author Xidaray + * @since 2024-01-05 09:02:42 + */ +public class ModelsVersion implements Serializable { + private static final long serialVersionUID = -20181111893295288L; +/** + * 主键 + */ + private Integer id; + + private Integer modelsId; +/** + * 版本 + */ + private String version; +/** + * 模型存储地址 + */ + private String url; +/** + * 文件名 + */ + private String fileName; +/** + * 文件大小 + */ + private String fileSize; +/** + * 状态 + */ + private Integer status; +/** + * 创建者 + */ + private String createBy; +/** + * 创建时间 + */ + private Date createTime; +/** + * 更新者 + */ + private String updateBy; +/** + * 更新时间 + */ + private Date updateTime; +/** + * 0失效,1生效 + */ + private Integer state; + + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getModelsId() { + return modelsId; + } + + public void setModelsId(Integer modelsId) { + this.modelsId = modelsId; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileSize() { + return fileSize; + } + + public void setFileSize(String fileSize) { + this.fileSize = fileSize; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public Integer getState() { + return state; + } + + public void setState(Integer state) { + this.state = state; + } + +} + diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ComponentDao.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ComponentDao.java index 96752ffc..3b7f3685 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ComponentDao.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ComponentDao.java @@ -1,6 +1,9 @@ package com.ruoyi.platform.mapper; import com.ruoyi.platform.domain.Component; + + +import com.ruoyi.platform.vo.ComponentVo; import org.apache.ibatis.annotations.Param; import org.springframework.data.domain.Pageable; diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetDao.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetDao.java index 0c401684..aba5a35b 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetDao.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetDao.java @@ -1,7 +1,6 @@ package com.ruoyi.platform.mapper; - import com.ruoyi.platform.domain.Dataset; import org.apache.ibatis.annotations.Param; import org.springframework.data.domain.Pageable; 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 new file mode 100644 index 00000000..0389be86 --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/DatasetVersionDao.java @@ -0,0 +1,84 @@ +package com.ruoyi.platform.mapper; + +import com.ruoyi.platform.domain.DatasetVersion; +import org.apache.ibatis.annotations.Param; +import org.springframework.data.domain.Pageable; + +import java.util.List; + +/** + * (DatasetVersion)表数据库访问层 + * + * @author Xidaray + * @since 2024-01-03 16:57:12 + */ +public interface DatasetVersionDao { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + DatasetVersion queryById(Integer id); + + /** + * 查询指定行数据 + * + * @param datasetVersion 查询条件 + * @param pageable 分页对象 + * @return 对象列表 + */ + List queryAllByLimit(@Param("datasetVersion") DatasetVersion datasetVersion, @Param("pageable") Pageable pageable); + + /** + * 统计总行数 + * + * @param datasetVersion 查询条件 + * @return 总行数 + */ + long count(@Param("datasetVersion") DatasetVersion datasetVersion); + + /** + * 新增数据 + * + * @param datasetVersion 实例对象 + * @return 影响行数 + */ + int insert(@Param("datasetVersion") DatasetVersion datasetVersion); + + /** + * 批量新增数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + */ + int insertBatch(@Param("entities") List entities); + + /** + * 批量新增或按主键更新数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参 + */ + int insertOrUpdateBatch(@Param("entities") List entities); + + /** + * 修改数据 + * + * @param datasetVersion 实例对象 + * @return 影响行数 + */ + int update(@Param("datasetVersion") DatasetVersion datasetVersion); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 影响行数 + */ + int deleteById(Integer id); + +} + diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelsVersionDao.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelsVersionDao.java new file mode 100644 index 00000000..5d7e8768 --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelsVersionDao.java @@ -0,0 +1,84 @@ +package com.ruoyi.platform.mapper; + +import com.ruoyi.platform.domain.ModelsVersion; +import org.apache.ibatis.annotations.Param; +import org.springframework.data.domain.Pageable; + +import java.util.List; + +/** + * (ModelsVersion)表数据库访问层 + * + * @author Xidaray + * @since 2024-01-05 09:02:42 + */ +public interface ModelsVersionDao { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + ModelsVersion queryById(Integer id); + + /** + * 查询指定行数据 + * + * @param modelsVersion 查询条件 + * @param pageable 分页对象 + * @return 对象列表 + */ + List queryAllByLimit(@Param("modelsVersion") ModelsVersion modelsVersion, @Param("pageable") Pageable pageable); + + /** + * 统计总行数 + * + * @param modelsVersion 查询条件 + * @return 总行数 + */ + long count(@Param("modelsVersion") ModelsVersion modelsVersion); + + /** + * 新增数据 + * + * @param modelsVersion 实例对象 + * @return 影响行数 + */ + int insert(@Param("modelsVersion") ModelsVersion modelsVersion); + + /** + * 批量新增数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + */ + int insertBatch(@Param("entities") List entities); + + /** + * 批量新增或按主键更新数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参 + */ + int insertOrUpdateBatch(@Param("entities") List entities); + + /** + * 修改数据 + * + * @param modelsVersion 实例对象 + * @return 影响行数 + */ + int update(@Param("modelsVersion") ModelsVersion modelsVersion); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 影响行数 + */ + int deleteById(Integer id); + +} + diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetService.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetService.java index 03fa4ee0..36d49a15 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetService.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetService.java @@ -1,8 +1,5 @@ package com.ruoyi.platform.service; - - - import com.ruoyi.platform.domain.Dataset; import org.springframework.core.io.InputStreamResource; import org.springframework.data.domain.Page; 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 new file mode 100644 index 00000000..2c15b384 --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/DatasetVersionService.java @@ -0,0 +1,61 @@ +package com.ruoyi.platform.service; + + + + +import com.ruoyi.platform.domain.DatasetVersion; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; + +/** + * (DatasetVersion)表服务接口 + * + * @author Xidaray + * @since 2024-01-03 16:57:12 + */ +public interface DatasetVersionService { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + DatasetVersion queryById(Integer id); + + /** + * 分页查询 + * + * @param datasetVersion 筛选条件 + * @param pageRequest 分页对象 + * @return 查询结果 + */ + Page queryByPage(DatasetVersion datasetVersion, PageRequest pageRequest); + + /** + * 新增数据 + * + * @param datasetVersion 实例对象 + * @return 实例对象 + */ + DatasetVersion insert(DatasetVersion datasetVersion); + + /** + * 修改数据 + * + * @param datasetVersion 实例对象 + * @return 实例对象 + */ + DatasetVersion update(DatasetVersion datasetVersion); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + boolean deleteById(Integer id); + + String removeById(Integer id); + +} 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 new file mode 100644 index 00000000..a6086e1e --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsVersionService.java @@ -0,0 +1,61 @@ +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; + +/** + * (ModelsVersion)表服务接口 + * + * @author Xidaray + * @since 2024-01-05 09:02:42 + */ +public interface ModelsVersionService { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + ModelsVersion queryById(Integer id); + + /** + * 分页查询 + * + * @param modelsVersion 筛选条件 + * @param pageRequest 分页对象 + * @return 查询结果 + */ + Page queryByPage(ModelsVersion modelsVersion, PageRequest pageRequest); + + /** + * 新增数据 + * + * @param modelsVersion 实例对象 + * @return 实例对象 + */ + ModelsVersion insert(ModelsVersion modelsVersion); + + /** + * 修改数据 + * + * @param modelsVersion 实例对象 + * @return 实例对象 + */ + ModelsVersion update(ModelsVersion modelsVersion); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + boolean deleteById(Integer id); + + String removeById(Integer id); + +} diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java index f341e131..9b5bd44d 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java @@ -2,17 +2,17 @@ package com.ruoyi.platform.service.impl; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.platform.domain.Component; -import com.ruoyi.platform.mapper.ComponentDao; import com.ruoyi.platform.service.ComponentService; +import com.ruoyi.platform.mapper.ComponentDao; import com.ruoyi.platform.utils.ConvertUtil; import com.ruoyi.platform.vo.ComponentVo; import com.ruoyi.system.api.model.LoginUser; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageRequest; -import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetServiceImpl.java index 0470c6de..425992fa 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetServiceImpl.java @@ -3,8 +3,11 @@ package com.ruoyi.platform.service.impl; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.platform.domain.Dataset; +import com.ruoyi.platform.domain.DatasetVersion; import com.ruoyi.platform.mapper.DatasetDao; +import com.ruoyi.platform.mapper.DatasetVersionDao; import com.ruoyi.platform.service.DatasetService; +import com.ruoyi.platform.service.DatasetVersionService; import com.ruoyi.platform.utils.MinioUtil; import com.ruoyi.system.api.model.LoginUser; import io.minio.MinioClient; @@ -40,6 +43,12 @@ public class DatasetServiceImpl implements DatasetService { private DatasetDao datasetDao; private DatasetService datasetService; + @Resource + private DatasetVersionDao datasetVersionDao; + + @Resource + private DatasetVersionService datasetVersionService; + private MinioClient minioClient; @@ -163,13 +172,13 @@ public class DatasetServiceImpl implements DatasetService { @Override public ResponseEntity downloadDataset(Integer id) { - Dataset dataset = this.datasetDao.queryById(id); - if (dataset == null) { + DatasetVersion datasetVersion = this.datasetVersionDao.queryById(id); + if (datasetVersion == null) { return ResponseEntity.status(HttpStatus.NOT_FOUND).body(null); } // 从数据库中获取存储路径(即MinIO中的对象名称) - String objectName = dataset.getUrl(); + String objectName = datasetVersion.getUrl(); if(objectName == null || objectName.isEmpty() ){ return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null); } @@ -196,7 +205,7 @@ public class DatasetServiceImpl implements DatasetService { * 上传数据集 * * @param file 文件 - * @param id 主键 + * @param id 注意是dataset_version表的主键 * @return 是否成功 */ @Override @@ -204,7 +213,14 @@ public class DatasetServiceImpl implements DatasetService { if(file.isEmpty()){ throw new Exception("文件为空,无法上传"); } - Dataset dataset = this.datasetDao.queryById(id); + + //拿到dataset表的id去查数据集名字 + DatasetVersion datasetVersion = this.datasetVersionDao.queryById(id); + if (datasetVersion == null) { + throw new Exception("未找到数据集版本记录"); + } + Integer datasetID = datasetVersion.getDatasetId(); + Dataset dataset = this.datasetDao.queryById(datasetID); if (dataset == null) { throw new Exception("未找到数据集记录"); } @@ -212,20 +228,22 @@ public class DatasetServiceImpl implements DatasetService { LoginUser loginUser = SecurityUtils.getLoginUser(); //拼接objectName String username = loginUser.getUsername(); - String version = dataset.getVersion(); - Date createTime = dataset.getCreateTime(); + String version = datasetVersion.getVersion(); + Date createTime = datasetVersion.getCreateTime(); + String fileName = file.getOriginalFilename(); //格式化日期为时间戳字符串 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd-HHmmss"); String timestamp = sdf.format(createTime); - String objectName = "datasets/" + username + "/" + dataset.getName() + "-" + timestamp + "/" + version + "/" + file.getOriginalFilename(); + String objectName = "datasets/" + username + "/" + dataset.getName() + "-" + timestamp + "/" + version + "/" + fileName; // 上传文件到MinIO try (InputStream inputStream = file.getInputStream()) { minioUtil.uploadObject(bucketName, objectName, inputStream); - // 更新数据库url记录 - dataset.setUrl(objectName); - update(dataset); + // 更新数据库中dataset_version表url记录 + datasetVersion.setUrl(objectName); + datasetVersion.setFileName(fileName); + datasetVersionDao.update(datasetVersion); return "数据集成功上传到: " + objectName; } catch (Exception e) { throw new Exception("上传到MinIO失败: " + e.getMessage(), e); 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 new file mode 100644 index 00000000..9cd7110a --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetVersionServiceImpl.java @@ -0,0 +1,120 @@ +package com.ruoyi.platform.service.impl; + +import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.platform.domain.DatasetVersion; +import com.ruoyi.platform.mapper.DatasetVersionDao; +import com.ruoyi.platform.service.DatasetVersionService; +import com.ruoyi.system.api.model.LoginUser; +import org.apache.commons.lang3.StringUtils; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageImpl; +import org.springframework.data.domain.PageRequest; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; + +/** + * (DatasetVersion)表服务实现类 + * + * @author Xidaray + * @since 2024-01-03 16:57:12 + */ +@Service("datasetVersionService") +public class DatasetVersionServiceImpl implements DatasetVersionService { + @Resource + private DatasetVersionDao datasetVersionDao; + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + @Override + public DatasetVersion queryById(Integer id) { + return this.datasetVersionDao.queryById(id); + } + + /** + * 分页查询 + * + * @param datasetVersion 筛选条件 + * @param pageRequest 分页对象 + * @return 查询结果 + */ + @Override + public Page queryByPage(DatasetVersion datasetVersion, PageRequest pageRequest) { + long total = this.datasetVersionDao.count(datasetVersion); + return new PageImpl<>(this.datasetVersionDao.queryAllByLimit(datasetVersion, pageRequest), pageRequest, total); + } + + /** + * 新增数据 + * + * @param datasetVersion 实例对象 + * @return 实例对象 + */ + @Override + public DatasetVersion insert(DatasetVersion datasetVersion) { + + LoginUser loginUser = SecurityUtils.getLoginUser(); + datasetVersion.setCreateBy(loginUser.getUsername()); + datasetVersion.setUpdateBy(loginUser.getUsername()); + datasetVersion.setUpdateTime(new Date()); + datasetVersion.setCreateTime(new Date()); + datasetVersion.setState(1); + this.datasetVersionDao.insert(datasetVersion); + return datasetVersion; + } + + /** + * 修改数据 + * + * @param datasetVersion 实例对象 + * @return 实例对象 + */ + @Override + public DatasetVersion update(DatasetVersion datasetVersion) { + int currentState = datasetVersion.getState(); + if (currentState == 0){ + throw new RuntimeException("数据集版本已被删除,无法更新。"); + } + LoginUser loginUser = SecurityUtils.getLoginUser(); + datasetVersion.setUpdateBy(loginUser.getUsername()); + datasetVersion.setUpdateTime(new Date()); + this.datasetVersionDao.update(datasetVersion); + return this.queryById(datasetVersion.getId()); + } + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + @Override + public boolean deleteById(Integer id) { + return this.datasetVersionDao.deleteById(id) > 0; + } + + + @Override + public String removeById(Integer id) { + DatasetVersion datasetVersion = this.datasetVersionDao.queryById(id); + if (datasetVersion == null){ + return "数据集版本信息不存在"; + } + //判断权限,只有admin和创建者本身可以删除该数据集版本信息 + LoginUser loginUser = SecurityUtils.getLoginUser(); + String username = loginUser.getUsername(); + String createdBy = datasetVersion.getCreateBy(); + if (!(StringUtils.equals(username,"admin") || StringUtils.equals(username,createdBy))){ + return "无权限删除该数据集版本"; + } + + datasetVersion.setState(0); + return this.datasetVersionDao.update(datasetVersion)>0?"删除数据集版本成功":"删除数据集版本失败"; + } + +} 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 7e9f1b43..ec2a041d 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 @@ -10,7 +10,6 @@ import com.ruoyi.platform.utils.HttpUtils; import com.ruoyi.platform.utils.JsonUtils; import com.ruoyi.system.api.model.LoginUser; import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageImpl; @@ -18,7 +17,10 @@ import org.springframework.data.domain.PageRequest; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.*; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * (ExperimentIns)表服务实现类 @@ -30,6 +32,14 @@ import java.util.*; public class ExperimentInsServiceImpl implements ExperimentInsService { @Resource private ExperimentInsDao experimentInsDao; + @Resource + private ExperimentDao experimentDao; + @Resource + private WorkflowService + + + workflowService; + @Value("${argo.url}") private String argoUrl; diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentServiceImpl.java index 4ce46006..644f206c 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentServiceImpl.java @@ -13,7 +13,6 @@ import com.ruoyi.platform.utils.JsonUtils; import com.ruoyi.system.api.model.LoginUser; import org.apache.commons.collections4.MapUtils; import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Lazy; import org.springframework.data.domain.Page; @@ -39,7 +38,9 @@ public class ExperimentServiceImpl implements ExperimentService { @Resource @Lazy private WorkflowService workflowService; + @Resource + @Lazy private ExperimentInsService experimentInsService; @Value("${argo.url}") diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java index 9b30974d..e0ba2305 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java @@ -2,7 +2,9 @@ package com.ruoyi.platform.service.impl; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.platform.domain.Models; +import com.ruoyi.platform.domain.ModelsVersion; import com.ruoyi.platform.mapper.ModelsDao; +import com.ruoyi.platform.mapper.ModelsVersionDao; import com.ruoyi.platform.service.ModelsService; import com.ruoyi.platform.utils.MinioUtil; import com.ruoyi.system.api.model.LoginUser; @@ -37,6 +39,8 @@ import java.util.Date; public class ModelsServiceImpl implements ModelsService { @Resource private ModelsDao modelsDao; + @Resource + private ModelsVersionDao modelsVersionDao; private MinioClient minioClient; @@ -115,7 +119,6 @@ public class ModelsServiceImpl implements ModelsService { LoginUser loginUser = SecurityUtils.getLoginUser(); models.setUpdateBy(loginUser.getUsername()); models.setUpdateTime(new Date()); - this.modelsDao.update(models); return this.queryById(models.getId()); } @@ -153,18 +156,18 @@ public class ModelsServiceImpl implements ModelsService { /** * 下载模型 * - * @param id 主键 + * @param id models_version表的主键 * @return 文件内容 */ @Override public ResponseEntity downloadModels(Integer id) { - Models models = this.modelsDao.queryById(id); - if (models == null) { + ModelsVersion modelsVersion = this.modelsVersionDao.queryById(id); + if (modelsVersion == null) { return ResponseEntity.status(HttpStatus.NOT_FOUND).body(null); } // 从数据库中获取存储路径(即MinIO中的对象名称) - String objectName = models.getUrl(); + String objectName = modelsVersion.getUrl(); if(objectName == null || objectName.isEmpty() ){ return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null); } @@ -186,33 +189,49 @@ public class ModelsServiceImpl implements ModelsService { } } + /** + * 上传模型 + * + * @param file 文件 + * @param id 注意是models_version表的主键 + * @return 是否成功 + */ + @Override public String uploadModels(MultipartFile file, Integer id) throws Exception{ if(file.isEmpty()){ throw new Exception("文件为空,无法上传"); } - Models models = this.modelsDao.queryById(id); + //拿到models表的id去查模型名字 + ModelsVersion modelsVersion = this.modelsVersionDao.queryById(id); + if (modelsVersion == null){ + throw new Exception("未找到模型版本记录"); + } + Integer modelsId = modelsVersion.getModelsId(); + Models models = this.modelsDao.queryById(modelsId); if (models == null) { throw new Exception("未找到模型记录"); } //得到用户名 LoginUser loginUser = SecurityUtils.getLoginUser(); - String version = models.getVersion(); + String version = modelsVersion.getVersion(); String username = loginUser.getUsername(); Date createTime = models.getCreateTime(); + String fileName = file.getOriginalFilename(); //格式化日期为时间戳字符串 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd-HHmmss"); String timestamp = sdf.format(createTime); //拼接objectName - String objectName = "models/" + username + "/" + models.getName() + "-" + timestamp + "/" + version + "/" + file.getOriginalFilename(); + String objectName = "models/" + username + "/" + models.getName() + "-" + timestamp + "/" + version + "/" + fileName; // 上传文件到MinIO try (InputStream inputStream = file.getInputStream()) { minioUtil.uploadObject(bucketName, objectName, inputStream); // 更新数据库url - models.setUrl(objectName); - update(models); + modelsVersion.setUrl(objectName); + modelsVersion.setFileName(fileName); + modelsVersionDao.update(modelsVersion); return "模型成功上传到: " + objectName; } catch (Exception e) { throw new Exception("上传到MinIO失败: " + e.getMessage(), e); 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 new file mode 100644 index 00000000..be91ad3d --- /dev/null +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsVersionServiceImpl.java @@ -0,0 +1,125 @@ +package com.ruoyi.platform.service.impl; + +import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.platform.domain.ModelsVersion; +import com.ruoyi.platform.mapper.ModelsDao; +import com.ruoyi.platform.mapper.ModelsVersionDao; +import com.ruoyi.platform.service.ModelsVersionService; +import com.ruoyi.system.api.model.LoginUser; +import org.apache.commons.lang3.StringUtils; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageImpl; +import org.springframework.data.domain.PageRequest; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; + +/** + * (ModelsVersion)表服务实现类 + * + * @author Xidaray + * @since 2024-01-05 09:02:42 + */ +@Service("modelsVersionService") +public class ModelsVersionServiceImpl implements ModelsVersionService { + @Resource + private ModelsVersionDao modelsVersionDao; + + @Resource + private ModelsDao modelsDao; + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + @Override + public ModelsVersion queryById(Integer id) { + return this.modelsVersionDao.queryById(id); + } + + /** + * 分页查询 + * + * @param modelsVersion 筛选条件 + * @param pageRequest 分页对象 + * @return 查询结果 + */ + @Override + public Page queryByPage(ModelsVersion modelsVersion, PageRequest pageRequest) { + long total = this.modelsVersionDao.count(modelsVersion); + return new PageImpl<>(this.modelsVersionDao.queryAllByLimit(modelsVersion, pageRequest), pageRequest, total); + } + + /** + * 新增数据 + * + * @param modelsVersion 实例对象 + * @return 实例对象 + */ + @Override + public ModelsVersion insert(ModelsVersion modelsVersion) { + LoginUser loginUser = SecurityUtils.getLoginUser(); + modelsVersion.setCreateBy(loginUser.getUsername()); + modelsVersion.setUpdateBy(loginUser.getUsername()); + modelsVersion.setUpdateTime(new Date()); + modelsVersion.setCreateTime(new Date()); + modelsVersion.setState(1); + this.modelsVersionDao.insert(modelsVersion); + return modelsVersion; + } + + /** + * 修改数据 + * + * @param modelsVersion 实例对象 + * @return 实例对象 + */ + @Override + public ModelsVersion update(ModelsVersion modelsVersion) { + int currentState = modelsVersion.getState(); + if(currentState == 0){ + throw new RuntimeException("模型版本已被删除,无法更新。"); + } + LoginUser loginUser = SecurityUtils.getLoginUser(); + modelsVersion.setUpdateBy(loginUser.getUsername()); + modelsVersion.setUpdateTime(new Date()); + this.modelsVersionDao.update(modelsVersion); + return this.queryById(modelsVersion.getId()); + } + + + + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + @Override + public boolean deleteById(Integer id) { + return this.modelsVersionDao.deleteById(id) > 0; + } + + @Override + public String removeById(Integer id) { + ModelsVersion modelsVersion = this.modelsVersionDao.queryById(id); + if (modelsVersion == null){ + return "模型版本信息不存在"; + } + + //判断权限,只有admin和创建者本身可以删除该数据集 + LoginUser loginUser = SecurityUtils.getLoginUser(); + String username = loginUser.getUsername(); + String createdBy = modelsVersion.getCreateBy(); + if (!(StringUtils.equals(username,"admin") || StringUtils.equals(username,createdBy))){ + return "无权限删除该模型版本信息"; + } + + modelsVersion.setState(0); + return this.modelsVersionDao.update(modelsVersion)>0?"删除成功":"删除失败"; + } +} diff --git a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetDaoMapper.xml b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetDaoMapper.xml index 5dce1b08..cfd32b32 100644 --- a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetDaoMapper.xml +++ b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/DatasetDaoMapper.xml @@ -5,9 +5,7 @@ - - @@ -19,7 +17,7 @@ @@ -27,7 +25,7 @@ + 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 + where id = #{id} and state = 1 + + + + + + + + + + + insert into dataset_version(dataset_id,version,url,file_name,file_size,available_cluster,status,create_by,create_time,update_by,update_time,state) + values (#{datasetVersion.datasetId},#{datasetVersion.version},#{datasetVersion.url},#{datasetVersion.fileName},#{datasetVersion.fileSize},#{datasetVersion.availableCluster},#{datasetVersion.status},#{datasetVersion.createBy},#{datasetVersion.createTime},#{datasetVersion.updateBy},#{datasetVersion.updateTime},#{datasetVersion.state}) + + + + insert into dataset_version(dataset_idversionurlfile_namefile_sizeavailable_clusterstatuscreate_bycreate_timeupdate_byupdate_timestate) + values + + (#{entity.datasetId},#{entity.version},#{entity.url},#{entity.fileName},#{entity.fileSize},#{entity.availableCluster},#{entity.status},#{entity.createBy},#{entity.createTime},#{entity.updateBy},#{entity.updateTime},#{entity.state}) + + + + + insert into dataset_version(dataset_idversionurlfile_namefile_sizeavailable_clusterstatuscreate_bycreate_timeupdate_byupdate_timestate) + values + + (#{entity.datasetId},#{entity.version},#{entity.url},#{entity.fileName},#{entity.fileSize},#{entity.availableCluster},#{entity.status},#{entity.createBy},#{entity.createTime},#{entity.updateBy},#{entity.updateTime},#{entity.state}) + + on duplicate key update +dataset_id = values(dataset_id)version = values(version)url = values(url)file_name = values(file_name)file_size = values(file_size)available_cluster = values(available_cluster)status = values(status)create_by = values(create_by)create_time = values(create_time)update_by = values(update_by)update_time = values(update_time)state = values(state) + + + + + update dataset_version + + + id = #{datasetVersion.id}, + + + dataset_id = #{datasetVersion.datasetId}, + + + version = #{datasetVersion.version}, + + + url = #{datasetVersion.url}, + + + file_name = #{datasetVersion.fileName}, + + + file_size = #{datasetVersion.fileSize}, + + + available_cluster = #{datasetVersion.availableCluster}, + + + status = #{datasetVersion.status}, + + + create_by = #{datasetVersion.createBy}, + + + create_time = #{datasetVersion.createTime}, + + + update_by = #{datasetVersion.updateBy}, + + + update_time = #{datasetVersion.updateTime}, + + + state = #{datasetVersion.state} + + + where id = #{datasetVersion.id} + + + + + delete from dataset_version where id = #{id} + + + + diff --git a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelsDaoMapper.xml b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelsDaoMapper.xml index 3fec052f..ca40ba8a 100644 --- a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelsDaoMapper.xml +++ b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelsDaoMapper.xml @@ -5,9 +5,7 @@ - - @@ -19,7 +17,7 @@ @@ -27,7 +25,7 @@ + select + id,models_id,version,url,file_name,file_size,status,create_by,create_time,update_by,update_time,state + from models_version + where id = #{id} and state = 1 + + + + + + + + + + + insert into models_version(models_id, version, url, file_name, file_size, status, create_by, create_time, update_by, update_time, state) + values (#{modelsVersion.modelsId}, #{modelsVersion.version}, #{modelsVersion.url}, #{modelsVersion.fileName}, #{modelsVersion.fileSize}, #{modelsVersion.status}, #{modelsVersion.createBy}, #{modelsVersion.createTime}, #{modelsVersion.updateBy}, #{modelsVersion.updateTime}, #{modelsVersion.state}) + + + + + insert into models_version(models_id,version,url,file_name,file_size,status,create_by,create_time,update_by,update_time,state) + values + + (#{entity.modelsId}#{entity.version}#{entity.url}#{entity.fileName}#{entity.fileSize}#{entity.status}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) + + + + + insert into models_version(models_id,version,url,file_name,file_size,status,create_by,create_time,update_by,update_time,state) + values + + (#{entity.modelsId}#{entity.version}#{entity.url}#{entity.fileName}#{entity.fileSize}#{entity.status}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) + + on duplicate key update +models_id = values(models_id)version = values(version)url = values(url)file_name = values(file_name)file_size = values(file_size)status = values(status)create_by = values(create_by)create_time = values(create_time)update_by = values(update_by)update_time = values(update_time)state = values(state) + + + + + update models_version + + + id = #{modelsVersion.id}, + + + models_id = #{modelsVersion.modelsId}, + + + version = #{modelsVersion.version}, + + + url = #{modelsVersion.url}, + + + file_name = #{modelsVersion.fileName}, + + + file_size = #{modelsVersion.fileSize}, + + + status = #{modelsVersion.status}, + + + create_by = #{modelsVersion.createBy}, + + + create_time = #{modelsVersion.createTime}, + + + update_by = #{modelsVersion.updateBy}, + + + update_time = #{modelsVersion.updateTime}, + + + state = #{modelsVersion.state} + + + where id = #{modelsVersion.id} + + + + + delete from models_version where id = #{id} + + + +