| @@ -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<String> uploadDataset(@RequestParam("file") MultipartFile file , @PathVariable("id") Integer id) throws Exception { | |||
| @@ -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<Page<DatasetVersion>> 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<DatasetVersion> queryById(@PathVariable("id") Integer id) { | |||
| return ResponseEntity.ok(this.datasetVersionService.queryById(id)); | |||
| } | |||
| /** | |||
| * 新增数据 | |||
| * | |||
| * @param datasetVersion 实体 | |||
| * @return 新增结果 | |||
| */ | |||
| @PostMapping | |||
| @ApiOperation("添加数据集版本") | |||
| public ResponseEntity<DatasetVersion> add(DatasetVersion datasetVersion) { | |||
| return ResponseEntity.ok(this.datasetVersionService.insert(datasetVersion)); | |||
| } | |||
| /** | |||
| * 编辑数据 | |||
| * | |||
| * @param datasetVersion 实体 | |||
| * @return 编辑结果 | |||
| */ | |||
| @PutMapping | |||
| @ApiOperation("编辑数据集版本") | |||
| public ResponseEntity<DatasetVersion> edit(DatasetVersion datasetVersion) { | |||
| return ResponseEntity.ok(this.datasetVersionService.update(datasetVersion)); | |||
| } | |||
| /** | |||
| * 删除数据 | |||
| * | |||
| * @param id 主键 | |||
| * @return 删除是否成功 | |||
| */ | |||
| @DeleteMapping({"{id}"}) | |||
| @ApiOperation("删除数据集版本") | |||
| public ResponseEntity<String> deleteById(@PathVariable("id") Integer id) { | |||
| return ResponseEntity.ok(this.datasetVersionService.removeById(id)); | |||
| } | |||
| } | |||
| @@ -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<Page<ModelsVersion>> 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<ModelsVersion> queryById(@PathVariable("id") Integer id) { | |||
| return ResponseEntity.ok(this.modelsVersionService.queryById(id)); | |||
| } | |||
| /** | |||
| * 新增数据 | |||
| * | |||
| * @param modelsVersion 实体 | |||
| * @return 新增结果 | |||
| */ | |||
| @PostMapping | |||
| public ResponseEntity<ModelsVersion> add(ModelsVersion modelsVersion) { | |||
| return ResponseEntity.ok(this.modelsVersionService.insert(modelsVersion)); | |||
| } | |||
| /** | |||
| * 编辑数据 | |||
| * | |||
| * @param modelsVersion 实体 | |||
| * @return 编辑结果 | |||
| */ | |||
| @PutMapping | |||
| public ResponseEntity<ModelsVersion> edit(ModelsVersion modelsVersion) { | |||
| return ResponseEntity.ok(this.modelsVersionService.update(modelsVersion)); | |||
| } | |||
| /** | |||
| * 删除数据 | |||
| * | |||
| * @param id 主键 | |||
| * @return 删除是否成功 | |||
| */ | |||
| @DeleteMapping("{id}") | |||
| public ResponseEntity<String> deleteById(@PathVariable("id") Integer id) { | |||
| return ResponseEntity.ok(this.modelsVersionService.removeById(id)); | |||
| } | |||
| } | |||
| @@ -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<Page<ComputingResource>> 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<ComputingResource> queryById(@PathVariable("id") Integer id) { | |||
| return ResponseEntity.ok(this.computingResourceService.queryById(id)); | |||
| } | |||
| /** | |||
| * 新增数据 | |||
| * | |||
| * @param computingResource 实体 | |||
| * @return 新增结果 | |||
| */ | |||
| @PostMapping | |||
| @ApiOperation("新增计算资源") | |||
| public ResponseEntity<ComputingResource> add(ComputingResource computingResource) { | |||
| return ResponseEntity.ok(this.computingResourceService.insert(computingResource)); | |||
| } | |||
| /** | |||
| * 编辑数据 | |||
| * | |||
| * @param computingResource 实体 | |||
| * @return 编辑结果 | |||
| */ | |||
| @PutMapping | |||
| @ApiOperation("编辑计算资源") | |||
| public ResponseEntity<ComputingResource> edit(ComputingResource computingResource) { | |||
| return ResponseEntity.ok(this.computingResourceService.update(computingResource)); | |||
| } | |||
| /** | |||
| * 删除数据 | |||
| * | |||
| * @param id 主键 | |||
| * @return 删除是否成功 | |||
| */ | |||
| @DeleteMapping("{id}") | |||
| @ApiOperation("删除计算资源") | |||
| public ResponseEntity<String> deleteById(@PathVariable("id") Integer id) { | |||
| return ResponseEntity.ok(this.computingResourceService.removeById(id)); | |||
| } | |||
| } | |||
| @@ -54,7 +54,7 @@ public class WorkflowController { | |||
| */ | |||
| @GetMapping("name/{name}") | |||
| @ApiOperation("按流水线名字模糊查询流水线") | |||
| public ResponseEntity<Page<Workflow>> queryByName(@PathVariable("name")String name) { | |||
| public ResponseEntity<Page<Workflow>> queryByName(@PathVariable("name") String name) { | |||
| return ResponseEntity.ok(this.workflowService.queryByName(name)); | |||
| } | |||
| @@ -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; | |||
| @@ -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; | |||
| } | |||
| } | |||
| @@ -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; | |||
| @@ -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; | |||
| } | |||
| } | |||
| @@ -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; | |||
| @@ -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; | |||
| @@ -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<DatasetVersion> 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<DatasetVersion> 实例对象列表 | |||
| * @return 影响行数 | |||
| */ | |||
| int insertBatch(@Param("entities") List<DatasetVersion> entities); | |||
| /** | |||
| * 批量新增或按主键更新数据(MyBatis原生foreach方法) | |||
| * | |||
| * @param entities List<DatasetVersion> 实例对象列表 | |||
| * @return 影响行数 | |||
| * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参 | |||
| */ | |||
| int insertOrUpdateBatch(@Param("entities") List<DatasetVersion> entities); | |||
| /** | |||
| * 修改数据 | |||
| * | |||
| * @param datasetVersion 实例对象 | |||
| * @return 影响行数 | |||
| */ | |||
| int update(@Param("datasetVersion") DatasetVersion datasetVersion); | |||
| /** | |||
| * 通过主键删除数据 | |||
| * | |||
| * @param id 主键 | |||
| * @return 影响行数 | |||
| */ | |||
| int deleteById(Integer id); | |||
| } | |||
| @@ -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<ModelsVersion> 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<ModelsVersion> 实例对象列表 | |||
| * @return 影响行数 | |||
| */ | |||
| int insertBatch(@Param("entities") List<ModelsVersion> entities); | |||
| /** | |||
| * 批量新增或按主键更新数据(MyBatis原生foreach方法) | |||
| * | |||
| * @param entities List<ModelsVersion> 实例对象列表 | |||
| * @return 影响行数 | |||
| * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参 | |||
| */ | |||
| int insertOrUpdateBatch(@Param("entities") List<ModelsVersion> entities); | |||
| /** | |||
| * 修改数据 | |||
| * | |||
| * @param modelsVersion 实例对象 | |||
| * @return 影响行数 | |||
| */ | |||
| int update(@Param("modelsVersion") ModelsVersion modelsVersion); | |||
| /** | |||
| * 通过主键删除数据 | |||
| * | |||
| * @param id 主键 | |||
| * @return 影响行数 | |||
| */ | |||
| int deleteById(Integer id); | |||
| } | |||
| @@ -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; | |||
| @@ -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<DatasetVersion> 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); | |||
| } | |||
| @@ -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<ModelsVersion> 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); | |||
| } | |||
| @@ -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; | |||
| @@ -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<InputStreamResource> 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); | |||
| @@ -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<DatasetVersion> 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?"删除数据集版本成功":"删除数据集版本失败"; | |||
| } | |||
| } | |||
| @@ -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; | |||
| @@ -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}") | |||
| @@ -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<InputStreamResource> 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); | |||
| @@ -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<ModelsVersion> 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?"删除成功":"删除失败"; | |||
| } | |||
| } | |||
| @@ -5,9 +5,7 @@ | |||
| <resultMap type="com.ruoyi.platform.domain.Dataset" id="DatasetMap"> | |||
| <result property="id" column="id" jdbcType="INTEGER"/> | |||
| <result property="name" column="name" jdbcType="VARCHAR"/> | |||
| <result property="version" column="version" jdbcType="VARCHAR"/> | |||
| <result property="description" column="description" jdbcType="VARCHAR"/> | |||
| <result property="url" column="url" jdbcType="VARCHAR"/> | |||
| <result property="dataType" column="data_type" jdbcType="INTEGER"/> | |||
| <result property="createBy" column="create_by" jdbcType="VARCHAR"/> | |||
| <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> | |||
| @@ -19,7 +17,7 @@ | |||
| <!--查询单个--> | |||
| <select id="queryById" resultMap="DatasetMap"> | |||
| select | |||
| id,name,version,description,url,data_type,create_by,create_time,update_by,update_time,state | |||
| id,name,description,data_type,create_by,create_time,update_by,update_time,state | |||
| from dataset | |||
| where id = #{id} and state = 1 | |||
| </select> | |||
| @@ -27,7 +25,7 @@ | |||
| <!--查询指定行数据--> | |||
| <select id="queryAllByLimit" resultMap="DatasetMap"> | |||
| select | |||
| id,name,version,description,url,data_type,create_by,create_time,update_by,update_time,state | |||
| id,name,description,data_type,create_by,create_time,update_by,update_time,state | |||
| from dataset | |||
| <where> | |||
| state = 1 | |||
| @@ -37,15 +35,9 @@ | |||
| <if test="dataset.name != null and dataset.name != ''"> | |||
| and name = #{dataset.name} | |||
| </if> | |||
| <if test="dataset.version != null and dataset.version != ''"> | |||
| and version = #{dataset.version} | |||
| </if> | |||
| <if test="dataset.description != null and dataset.description != ''"> | |||
| and description = #{dataset.description} | |||
| </if> | |||
| <if test="dataset.url != null and dataset.url != ''"> | |||
| and url = #{dataset.url} | |||
| </if> | |||
| <if test="dataset.dataType != null"> | |||
| and data_type = #{dataset.dataType} | |||
| </if> | |||
| @@ -80,15 +72,9 @@ | |||
| <if test="dataset.name != null and dataset.name != ''"> | |||
| and name = #{dataset.name} | |||
| </if> | |||
| <if test="dataset.version != null and dataset.version != ''"> | |||
| and version = #{dataset.version} | |||
| </if> | |||
| <if test="dataset.description != null and dataset.description != ''"> | |||
| and description = #{dataset.description} | |||
| </if> | |||
| <if test="dataset.url != null and dataset.url != ''"> | |||
| and url = #{dataset.url} | |||
| </if> | |||
| <if test="dataset.dataType != null"> | |||
| and data_type = #{dataset.dataType} | |||
| </if> | |||
| @@ -112,26 +98,26 @@ | |||
| <!--新增所有列--> | |||
| <insert id="insert" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into dataset(name,version,description,url,data_type,create_by,create_time,update_by,update_time,state) | |||
| values (#{dataset.name},#{dataset.version},#{dataset.description},#{dataset.url},#{dataset.dataType},#{dataset.createBy},#{dataset.createTime},#{dataset.updateBy},#{dataset.updateTime},#{dataset.state}) | |||
| insert into dataset(name,description,data_type,create_by,create_time,update_by,update_time,state) | |||
| values (#{dataset.name},#{dataset.description},#{dataset.dataType},#{dataset.createBy},#{dataset.createTime},#{dataset.updateBy},#{dataset.updateTime},#{dataset.state}) | |||
| </insert> | |||
| <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into dataset(nameversiondescriptionurldata_typecreate_bycreate_timeupdate_byupdate_timestate) | |||
| insert into dataset(name,description,data_type,create_by,create_time,update_by,update_time,state) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.name}#{entity.version}#{entity.description}#{entity.url}#{entity.dataType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| (#{entity.name}#{entity.description}#{entity.dataType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| </foreach> | |||
| </insert> | |||
| <insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into dataset(nameversiondescriptionurldata_typecreate_bycreate_timeupdate_byupdate_timestate) | |||
| insert into dataset(name,description,data_type,create_by,create_time,update_by,update_time,state) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.name}#{entity.version}#{entity.description}#{entity.url}#{entity.dataType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| (#{entity.name}#{entity.description}#{entity.dataType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| </foreach> | |||
| on duplicate key update | |||
| name = values(name)version = values(version)description = values(description)url = values(url)data_type = values(data_type)create_by = values(create_by)create_time = values(create_time)update_by = values(update_by)update_time = values(update_time)state = values(state) | |||
| name = values(name)description = values(description)data_type = values(data_type)create_by = values(create_by)create_time = values(create_time)update_by = values(update_by)update_time = values(update_time)state = values(state) | |||
| </insert> | |||
| <!--通过主键修改数据--> | |||
| @@ -141,15 +127,9 @@ name = values(name)version = values(version)description = values(description)url | |||
| <if test="dataset.name != null and dataset.name != ''"> | |||
| name = #{dataset.name}, | |||
| </if> | |||
| <if test="dataset.version != null and dataset.version != ''"> | |||
| version = #{dataset.version}, | |||
| </if> | |||
| <if test="dataset.description != null and dataset.description != ''"> | |||
| description = #{dataset.description}, | |||
| </if> | |||
| <if test="dataset.url != null and dataset.url != ''"> | |||
| url = #{dataset.url}, | |||
| </if> | |||
| <if test="dataset.dataType != null"> | |||
| data_type = #{dataset.dataType}, | |||
| </if> | |||
| @@ -172,11 +152,9 @@ name = values(name)version = values(version)description = values(description)url | |||
| where id = #{dataset.id} | |||
| </update> | |||
| <!--通过主键删除--> | |||
| <delete id="deleteById"> | |||
| delete from dataset where id = #{id} | |||
| </delete> | |||
| </mapper> | |||
| @@ -0,0 +1,208 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | |||
| <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.ruoyi.platform.mapper.DatasetVersionDao"> | |||
| <resultMap type="com.ruoyi.platform.domain.DatasetVersion" id="DatasetVersionMap"> | |||
| <result property="id" column="id" jdbcType="INTEGER"/> | |||
| <result property="datasetId" column="dataset_id" jdbcType="INTEGER"/> | |||
| <result property="version" column="version" jdbcType="VARCHAR"/> | |||
| <result property="url" column="url" jdbcType="VARCHAR"/> | |||
| <result property="fileName" column="file_name" jdbcType="VARCHAR"/> | |||
| <result property="fileSize" column="file_size" jdbcType="VARCHAR"/> | |||
| <result property="availableCluster" column="available_cluster" jdbcType="VARCHAR"/> | |||
| <result property="status" column="status" jdbcType="INTEGER"/> | |||
| <result property="createBy" column="create_by" jdbcType="VARCHAR"/> | |||
| <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> | |||
| <result property="updateBy" column="update_by" jdbcType="VARCHAR"/> | |||
| <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/> | |||
| <result property="state" column="state" jdbcType="INTEGER"/> | |||
| </resultMap> | |||
| <!--查询单个--> | |||
| <select id="queryById" resultMap="DatasetVersionMap"> | |||
| 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 | |||
| </select> | |||
| <!--查询指定行数据--> | |||
| <select id="queryAllByLimit" resultMap="DatasetVersionMap"> | |||
| 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> | |||
| state = 1 | |||
| <if test="datasetVersion.id != null"> | |||
| and id = #{datasetVersion.id} | |||
| </if> | |||
| <if test="datasetVersion.datasetId != null"> | |||
| and dataset_id = #{datasetVersion.datasetId} | |||
| </if> | |||
| <if test="datasetVersion.version != null and datasetVersion.version != ''"> | |||
| and version = #{datasetVersion.version} | |||
| </if> | |||
| <if test="datasetVersion.url != null and datasetVersion.url != ''"> | |||
| and url = #{datasetVersion.url} | |||
| </if> | |||
| <if test="datasetVersion.fileName != null and datasetVersion.fileName != ''"> | |||
| and file_name = #{datasetVersion.fileName} | |||
| </if> | |||
| <if test="datasetVersion.fileSize != null and datasetVersion.fileSize != ''"> | |||
| and file_size = #{datasetVersion.fileSize} | |||
| </if> | |||
| <if test="datasetVersion.availableCluster != null and datasetVersion.availableCluster != ''"> | |||
| and available_cluster = #{datasetVersion.availableCluster} | |||
| </if> | |||
| <if test="datasetVersion.status != null"> | |||
| and status = #{datasetVersion.status} | |||
| </if> | |||
| <if test="datasetVersion.createBy != null and datasetVersion.createBy != ''"> | |||
| and create_by = #{datasetVersion.createBy} | |||
| </if> | |||
| <if test="datasetVersion.createTime != null"> | |||
| and create_time = #{datasetVersion.createTime} | |||
| </if> | |||
| <if test="datasetVersion.updateBy != null and datasetVersion.updateBy != ''"> | |||
| and update_by = #{datasetVersion.updateBy} | |||
| </if> | |||
| <if test="datasetVersion.updateTime != null"> | |||
| and update_time = #{datasetVersion.updateTime} | |||
| </if> | |||
| <if test="datasetVersion.state != null"> | |||
| and state = #{datasetVersion.state} | |||
| </if> | |||
| </where> | |||
| limit #{pageable.offset}, #{pageable.pageSize} | |||
| </select> | |||
| <!--统计总行数--> | |||
| <select id="count" resultType="java.lang.Long"> | |||
| select count(1) | |||
| from dataset_version | |||
| <where> | |||
| state = 1 | |||
| <if test="datasetVersion.id != null"> | |||
| and id = #{datasetVersion.id} | |||
| </if> | |||
| <if test="datasetVersion.datasetId != null"> | |||
| and dataset_id = #{datasetVersion.datasetId} | |||
| </if> | |||
| <if test="datasetVersion.version != null and datasetVersion.version != ''"> | |||
| and version = #{datasetVersion.version} | |||
| </if> | |||
| <if test="datasetVersion.url != null and datasetVersion.url != ''"> | |||
| and url = #{datasetVersion.url} | |||
| </if> | |||
| <if test="datasetVersion.fileName != null and datasetVersion.fileName != ''"> | |||
| and file_name = #{datasetVersion.fileName} | |||
| </if> | |||
| <if test="datasetVersion.fileSize != null and datasetVersion.fileSize != ''"> | |||
| and file_size = #{datasetVersion.fileSize} | |||
| </if> | |||
| <if test="datasetVersion.availableCluster != null and datasetVersion.availableCluster != ''"> | |||
| and available_cluster = #{datasetVersion.availableCluster} | |||
| </if> | |||
| <if test="datasetVersion.status != null"> | |||
| and status = #{datasetVersion.status} | |||
| </if> | |||
| <if test="datasetVersion.createBy != null and datasetVersion.createBy != ''"> | |||
| and create_by = #{datasetVersion.createBy} | |||
| </if> | |||
| <if test="datasetVersion.createTime != null"> | |||
| and create_time = #{datasetVersion.createTime} | |||
| </if> | |||
| <if test="datasetVersion.updateBy != null and datasetVersion.updateBy != ''"> | |||
| and update_by = #{datasetVersion.updateBy} | |||
| </if> | |||
| <if test="datasetVersion.updateTime != null"> | |||
| and update_time = #{datasetVersion.updateTime} | |||
| </if> | |||
| <if test="datasetVersion.state != null"> | |||
| and state = #{datasetVersion.state} | |||
| </if> | |||
| </where> | |||
| </select> | |||
| <!--新增所有列--> | |||
| <insert id="insert" keyProperty="id" useGeneratedKeys="true"> | |||
| 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> | |||
| <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into dataset_version(dataset_idversionurlfile_namefile_sizeavailable_clusterstatuscreate_bycreate_timeupdate_byupdate_timestate) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.datasetId},#{entity.version},#{entity.url},#{entity.fileName},#{entity.fileSize},#{entity.availableCluster},#{entity.status},#{entity.createBy},#{entity.createTime},#{entity.updateBy},#{entity.updateTime},#{entity.state}) | |||
| </foreach> | |||
| </insert> | |||
| <insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into dataset_version(dataset_idversionurlfile_namefile_sizeavailable_clusterstatuscreate_bycreate_timeupdate_byupdate_timestate) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.datasetId},#{entity.version},#{entity.url},#{entity.fileName},#{entity.fileSize},#{entity.availableCluster},#{entity.status},#{entity.createBy},#{entity.createTime},#{entity.updateBy},#{entity.updateTime},#{entity.state}) | |||
| </foreach> | |||
| 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) | |||
| </insert> | |||
| <!--通过主键修改数据--> | |||
| <update id="update"> | |||
| update dataset_version | |||
| <set> | |||
| <if test="datasetVersion.id != null"> | |||
| id = #{datasetVersion.id}, | |||
| </if> | |||
| <if test="datasetVersion.datasetId != null"> | |||
| dataset_id = #{datasetVersion.datasetId}, | |||
| </if> | |||
| <if test="datasetVersion.version != null and datasetVersion.version != ''"> | |||
| version = #{datasetVersion.version}, | |||
| </if> | |||
| <if test="datasetVersion.url != null and datasetVersion.url != ''"> | |||
| url = #{datasetVersion.url}, | |||
| </if> | |||
| <if test="datasetVersion.fileName != null and datasetVersion.fileName != ''"> | |||
| file_name = #{datasetVersion.fileName}, | |||
| </if> | |||
| <if test="datasetVersion.fileSize != null and datasetVersion.fileSize != ''"> | |||
| file_size = #{datasetVersion.fileSize}, | |||
| </if> | |||
| <if test="datasetVersion.availableCluster != null and datasetVersion.availableCluster != ''"> | |||
| available_cluster = #{datasetVersion.availableCluster}, | |||
| </if> | |||
| <if test="datasetVersion.status != null"> | |||
| status = #{datasetVersion.status}, | |||
| </if> | |||
| <if test="datasetVersion.createBy != null and datasetVersion.createBy != ''"> | |||
| create_by = #{datasetVersion.createBy}, | |||
| </if> | |||
| <if test="datasetVersion.createTime != null"> | |||
| create_time = #{datasetVersion.createTime}, | |||
| </if> | |||
| <if test="datasetVersion.updateBy != null and datasetVersion.updateBy != ''"> | |||
| update_by = #{datasetVersion.updateBy}, | |||
| </if> | |||
| <if test="datasetVersion.updateTime != null"> | |||
| update_time = #{datasetVersion.updateTime}, | |||
| </if> | |||
| <if test="datasetVersion.state != null"> | |||
| state = #{datasetVersion.state} | |||
| </if> | |||
| </set> | |||
| where id = #{datasetVersion.id} | |||
| </update> | |||
| <!--通过主键删除--> | |||
| <delete id="deleteById"> | |||
| delete from dataset_version where id = #{id} | |||
| </delete> | |||
| </mapper> | |||
| @@ -5,9 +5,7 @@ | |||
| <resultMap type="com.ruoyi.platform.domain.Models" id="ModelsMap"> | |||
| <result property="id" column="id" jdbcType="INTEGER"/> | |||
| <result property="name" column="name" jdbcType="VARCHAR"/> | |||
| <result property="version" column="version" jdbcType="VARCHAR"/> | |||
| <result property="description" column="description" jdbcType="VARCHAR"/> | |||
| <result property="url" column="url" jdbcType="VARCHAR"/> | |||
| <result property="modelType" column="model_type" jdbcType="INTEGER"/> | |||
| <result property="createBy" column="create_by" jdbcType="VARCHAR"/> | |||
| <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> | |||
| @@ -19,7 +17,7 @@ | |||
| <!--查询单个--> | |||
| <select id="queryById" resultMap="ModelsMap"> | |||
| select | |||
| id,name,version,description,url,model_type,create_by,create_time,update_by,update_time,state | |||
| id, name, description, model_type, create_by, create_time, update_by, update_time, state | |||
| from models | |||
| where id = #{id} and state = 1 | |||
| </select> | |||
| @@ -27,7 +25,7 @@ | |||
| <!--查询指定行数据--> | |||
| <select id="queryAllByLimit" resultMap="ModelsMap"> | |||
| select | |||
| id,name,version,description,url,model_type,create_by,create_time,update_by,update_time,state | |||
| id, name, description, model_type, create_by, create_time, update_by, update_time, state | |||
| from models | |||
| <where> | |||
| state = 1 | |||
| @@ -37,15 +35,9 @@ | |||
| <if test="models.name != null and models.name != ''"> | |||
| and name = #{models.name} | |||
| </if> | |||
| <if test="models.version != null and models.version != ''"> | |||
| and version = #{models.version} | |||
| </if> | |||
| <if test="models.description != null and models.description != ''"> | |||
| and description = #{models.description} | |||
| </if> | |||
| <if test="models.url != null and models.url != ''"> | |||
| and url = #{models.url} | |||
| </if> | |||
| <if test="models.modelType != null"> | |||
| and model_type = #{models.modelType} | |||
| </if> | |||
| @@ -80,15 +72,9 @@ | |||
| <if test="models.name != null and models.name != ''"> | |||
| and name = #{models.name} | |||
| </if> | |||
| <if test="models.version != null and models.version != ''"> | |||
| and version = #{models.version} | |||
| </if> | |||
| <if test="models.description != null and models.description != ''"> | |||
| and description = #{models.description} | |||
| </if> | |||
| <if test="models.url != null and models.url != ''"> | |||
| and url = #{models.url} | |||
| </if> | |||
| <if test="models.modelType != null"> | |||
| and model_type = #{models.modelType} | |||
| </if> | |||
| @@ -112,47 +98,45 @@ | |||
| <!--新增所有列--> | |||
| <insert id="insert" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into models(name,version,description,url,model_type,create_by,create_time,update_by,update_time,state) | |||
| values (#{models.name},#{models.version},#{models.description},#{models.url},#{models.modelType},#{models.createBy},#{models.createTime},#{models.updateBy},#{models.updateTime},#{models.state}) | |||
| insert into models(name, description, model_type, create_by, create_time, update_by, update_time, state) | |||
| values (#{models.name}, #{models.description}, #{models.modelType}, #{models.createBy}, #{models.createTime}, #{models.updateBy}, #{models.updateTime}, #{models.state}) | |||
| </insert> | |||
| <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into models(name,version,description,url,model_type,create_by,create_time,update_by,update_time,state) | |||
| insert into models(name, description, model_type, create_by, create_time, update_by, update_time, state) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.name}#{entity.version}#{entity.description}#{entity.url}#{entity.modelType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| (#{entity.name}, #{entity.description}, #{entity.modelType}, #{entity.createBy}, #{entity.createTime}, #{entity.updateBy}, #{entity.updateTime}, #{entity.state}) | |||
| </foreach> | |||
| </insert> | |||
| <insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into models(name,version,description,url,model_type,create_by,create_time,update_by,update_time,state) | |||
| insert into models(name, description, model_type, create_by, create_time, update_by, update_time, state) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.name}#{entity.version}#{entity.description}#{entity.url}#{entity.modelType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| (#{entity.name}, #{entity.description}, #{entity.modelType}, #{entity.createBy}, #{entity.createTime}, #{entity.updateBy}, #{entity.updateTime}, #{entity.state}) | |||
| </foreach> | |||
| on duplicate key update | |||
| name = values(name)version = values(version)description = values(description)url = values(url)model_type = values(model_type)create_by = values(create_by)create_time = values(create_time)update_by = values(update_by)update_time = values(update_time)state = values(state) | |||
| name = values(name), | |||
| description = values(description), | |||
| model_type = values(model_type), | |||
| create_by = values(create_by), | |||
| create_time = values(create_time), | |||
| update_by = values(update_by), | |||
| update_time = values(update_time), | |||
| state = values(state) | |||
| </insert> | |||
| <!--通过主键修改数据--> | |||
| <update id="update"> | |||
| update models | |||
| <set> | |||
| <if test="models.id != null"> | |||
| id = #{models.id}, | |||
| </if> | |||
| <if test="models.name != null and models.name != ''"> | |||
| name = #{models.name}, | |||
| </if> | |||
| <if test="models.version != null and models.version != ''"> | |||
| version = #{models.version}, | |||
| </if> | |||
| <if test="models.description != null and models.description != ''"> | |||
| description = #{models.description}, | |||
| </if> | |||
| <if test="models.url != null and models.url != ''"> | |||
| url = #{models.url}, | |||
| </if> | |||
| <if test="models.modelType != null"> | |||
| model_type = #{models.modelType}, | |||
| </if> | |||
| @@ -182,4 +166,3 @@ name = values(name)version = values(version)description = values(description)url | |||
| </delete> | |||
| </mapper> | |||
| @@ -0,0 +1,195 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | |||
| <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.ruoyi.platform.mapper.ModelsVersionDao"> | |||
| <resultMap type="com.ruoyi.platform.domain.ModelsVersion" id="ModelsVersionMap"> | |||
| <result property="id" column="id" jdbcType="INTEGER"/> | |||
| <result property="modelsId" column="models_id" jdbcType="INTEGER"/> | |||
| <result property="version" column="version" jdbcType="VARCHAR"/> | |||
| <result property="url" column="url" jdbcType="VARCHAR"/> | |||
| <result property="fileName" column="file_name" jdbcType="VARCHAR"/> | |||
| <result property="fileSize" column="file_size" jdbcType="VARCHAR"/> | |||
| <result property="status" column="status" jdbcType="INTEGER"/> | |||
| <result property="createBy" column="create_by" jdbcType="VARCHAR"/> | |||
| <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> | |||
| <result property="updateBy" column="update_by" jdbcType="VARCHAR"/> | |||
| <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/> | |||
| <result property="state" column="state" jdbcType="INTEGER"/> | |||
| </resultMap> | |||
| <!--查询单个--> | |||
| <select id="queryById" resultMap="ModelsVersionMap"> | |||
| 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 | |||
| </select> | |||
| <!--查询指定行数据--> | |||
| <select id="queryAllByLimit" resultMap="ModelsVersionMap"> | |||
| select | |||
| id,models_id,version,url,file_name,file_size,status,create_by,create_time,update_by,update_time,state | |||
| from models_version | |||
| <where> | |||
| state = 1 | |||
| <if test="modelsVersion.id != null"> | |||
| and id = #{modelsVersion.id} | |||
| </if> | |||
| <if test="modelsVersion.modelsId != null"> | |||
| and models_id = #{modelsVersion.modelsId} | |||
| </if> | |||
| <if test="modelsVersion.version != null and modelsVersion.version != ''"> | |||
| and version = #{modelsVersion.version} | |||
| </if> | |||
| <if test="modelsVersion.url != null and modelsVersion.url != ''"> | |||
| and url = #{modelsVersion.url} | |||
| </if> | |||
| <if test="modelsVersion.fileName != null and modelsVersion.fileName != ''"> | |||
| and file_name = #{modelsVersion.fileName} | |||
| </if> | |||
| <if test="modelsVersion.fileSize != null and modelsVersion.fileSize != ''"> | |||
| and file_size = #{modelsVersion.fileSize} | |||
| </if> | |||
| <if test="modelsVersion.status != null"> | |||
| and status = #{modelsVersion.status} | |||
| </if> | |||
| <if test="modelsVersion.createBy != null and modelsVersion.createBy != ''"> | |||
| and create_by = #{modelsVersion.createBy} | |||
| </if> | |||
| <if test="modelsVersion.createTime != null"> | |||
| and create_time = #{modelsVersion.createTime} | |||
| </if> | |||
| <if test="modelsVersion.updateBy != null and modelsVersion.updateBy != ''"> | |||
| and update_by = #{modelsVersion.updateBy} | |||
| </if> | |||
| <if test="modelsVersion.updateTime != null"> | |||
| and update_time = #{modelsVersion.updateTime} | |||
| </if> | |||
| <if test="modelsVersion.state != null"> | |||
| and state = #{modelsVersion.state} | |||
| </if> | |||
| </where> | |||
| limit #{pageable.offset}, #{pageable.pageSize} | |||
| </select> | |||
| <!--统计总行数--> | |||
| <select id="count" resultType="java.lang.Long"> | |||
| select count(1) | |||
| from models_version | |||
| <where> | |||
| state = 1 | |||
| <if test="modelsVersion.id != null"> | |||
| and id = #{modelsVersion.id} | |||
| </if> | |||
| <if test="modelsVersion.modelsId != null"> | |||
| and models_id = #{modelsVersion.modelsId} | |||
| </if> | |||
| <if test="modelsVersion.version != null and modelsVersion.version != ''"> | |||
| and version = #{modelsVersion.version} | |||
| </if> | |||
| <if test="modelsVersion.url != null and modelsVersion.url != ''"> | |||
| and url = #{modelsVersion.url} | |||
| </if> | |||
| <if test="modelsVersion.fileName != null and modelsVersion.fileName != ''"> | |||
| and file_name = #{modelsVersion.fileName} | |||
| </if> | |||
| <if test="modelsVersion.fileSize != null and modelsVersion.fileSize != ''"> | |||
| and file_size = #{modelsVersion.fileSize} | |||
| </if> | |||
| <if test="modelsVersion.status != null"> | |||
| and status = #{modelsVersion.status} | |||
| </if> | |||
| <if test="modelsVersion.createBy != null and modelsVersion.createBy != ''"> | |||
| and create_by = #{modelsVersion.createBy} | |||
| </if> | |||
| <if test="modelsVersion.createTime != null"> | |||
| and create_time = #{modelsVersion.createTime} | |||
| </if> | |||
| <if test="modelsVersion.updateBy != null and modelsVersion.updateBy != ''"> | |||
| and update_by = #{modelsVersion.updateBy} | |||
| </if> | |||
| <if test="modelsVersion.updateTime != null"> | |||
| and update_time = #{modelsVersion.updateTime} | |||
| </if> | |||
| <if test="modelsVersion.state != null"> | |||
| and state = #{modelsVersion.state} | |||
| </if> | |||
| </where> | |||
| </select> | |||
| <!--新增所有列--> | |||
| <insert id="insert" keyProperty="id" useGeneratedKeys="true"> | |||
| 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> | |||
| <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into models_version(models_id,version,url,file_name,file_size,status,create_by,create_time,update_by,update_time,state) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.modelsId}#{entity.version}#{entity.url}#{entity.fileName}#{entity.fileSize}#{entity.status}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| </foreach> | |||
| </insert> | |||
| <insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true"> | |||
| insert into models_version(models_id,version,url,file_name,file_size,status,create_by,create_time,update_by,update_time,state) | |||
| values | |||
| <foreach collection="entities" item="entity" separator=","> | |||
| (#{entity.modelsId}#{entity.version}#{entity.url}#{entity.fileName}#{entity.fileSize}#{entity.status}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state}) | |||
| </foreach> | |||
| 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) | |||
| </insert> | |||
| <!--通过主键修改数据--> | |||
| <update id="update"> | |||
| update models_version | |||
| <set> | |||
| <if test="modelsVersion.id != null"> | |||
| id = #{modelsVersion.id}, | |||
| </if> | |||
| <if test="modelsVersion.modelsId != null"> | |||
| models_id = #{modelsVersion.modelsId}, | |||
| </if> | |||
| <if test="modelsVersion.version != null and modelsVersion.version != ''"> | |||
| version = #{modelsVersion.version}, | |||
| </if> | |||
| <if test="modelsVersion.url != null and modelsVersion.url != ''"> | |||
| url = #{modelsVersion.url}, | |||
| </if> | |||
| <if test="modelsVersion.fileName != null and modelsVersion.fileName != ''"> | |||
| file_name = #{modelsVersion.fileName}, | |||
| </if> | |||
| <if test="modelsVersion.fileSize != null and modelsVersion.fileSize != ''"> | |||
| file_size = #{modelsVersion.fileSize}, | |||
| </if> | |||
| <if test="modelsVersion.status != null"> | |||
| status = #{modelsVersion.status}, | |||
| </if> | |||
| <if test="modelsVersion.createBy != null and modelsVersion.createBy != ''"> | |||
| create_by = #{modelsVersion.createBy}, | |||
| </if> | |||
| <if test="modelsVersion.createTime != null"> | |||
| create_time = #{modelsVersion.createTime}, | |||
| </if> | |||
| <if test="modelsVersion.updateBy != null and modelsVersion.updateBy != ''"> | |||
| update_by = #{modelsVersion.updateBy}, | |||
| </if> | |||
| <if test="modelsVersion.updateTime != null"> | |||
| update_time = #{modelsVersion.updateTime}, | |||
| </if> | |||
| <if test="modelsVersion.state != null"> | |||
| state = #{modelsVersion.state} | |||
| </if> | |||
| </set> | |||
| where id = #{modelsVersion.id} | |||
| </update> | |||
| <!--通过主键删除--> | |||
| <delete id="deleteById"> | |||
| delete from models_version where id = #{id} | |||
| </delete> | |||
| </mapper> | |||