镜像管理接口框架搭建
This commit is contained in:
parent
97330a8e8b
commit
210e993a74
|
@ -0,0 +1,84 @@
|
|||
package com.ruoyi.platform.controller;
|
||||
|
||||
import com.ruoyi.platform.domain.ImageVersion;
|
||||
import com.ruoyi.platform.service.ImageVersionService;
|
||||
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;
|
||||
|
||||
/**
|
||||
* (ImageVersion)表控制层
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 15:00:02
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("imageVersion")
|
||||
public class ImageVersionController {
|
||||
/**
|
||||
* 服务对象
|
||||
*/
|
||||
@Resource
|
||||
private ImageVersionService imageVersionService;
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param imageVersion 筛选条件
|
||||
* @param pageRequest 分页对象
|
||||
* @return 查询结果
|
||||
*/
|
||||
@GetMapping
|
||||
public ResponseEntity<Page<ImageVersion>> queryByPage(ImageVersion imageVersion, PageRequest pageRequest) {
|
||||
return ResponseEntity.ok(this.imageVersionService.queryByPage(imageVersion, pageRequest));
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过主键查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 单条数据
|
||||
*/
|
||||
@GetMapping("{id}")
|
||||
public ResponseEntity<ImageVersion> queryById(@PathVariable("id") Integer id) {
|
||||
return ResponseEntity.ok(this.imageVersionService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param imageVersion 实体
|
||||
* @return 新增结果
|
||||
*/
|
||||
@PostMapping
|
||||
public ResponseEntity<ImageVersion> add(ImageVersion imageVersion) {
|
||||
return ResponseEntity.ok(this.imageVersionService.insert(imageVersion));
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑数据
|
||||
*
|
||||
* @param imageVersion 实体
|
||||
* @return 编辑结果
|
||||
*/
|
||||
@PutMapping
|
||||
public ResponseEntity<ImageVersion> edit(ImageVersion imageVersion) {
|
||||
return ResponseEntity.ok(this.imageVersionService.update(imageVersion));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 删除是否成功
|
||||
*/
|
||||
@DeleteMapping
|
||||
public ResponseEntity<Boolean> deleteById(Integer id) {
|
||||
return ResponseEntity.ok(this.imageVersionService.deleteById(id));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -65,7 +65,7 @@ public class ComponentController {
|
|||
@GetMapping("{id}")
|
||||
@ApiOperation("根据id查询")
|
||||
public AjaxResult queryById(@PathVariable("id") Integer id) {
|
||||
return AjaxResult.success(this.componentService.queryById(id));
|
||||
return AjaxResult.success(this.componentService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -113,6 +113,7 @@ public class DatasetController {
|
|||
* @param dataset_version_id ps:这里的id是dataset_version表的主键
|
||||
* @return 单条数据
|
||||
*/
|
||||
|
||||
@GetMapping("/download/{dataset_version_id}")
|
||||
@ApiOperation(value = "下载数据集", notes = "根据数据集版本表id下载数据集文件")
|
||||
public ResponseEntity<InputStreamResource> downloadDataset(@PathVariable("dataset_version_id") Integer dataset_version_id) {
|
||||
|
|
|
@ -0,0 +1,90 @@
|
|||
package com.ruoyi.platform.controller.image;
|
||||
|
||||
import com.ruoyi.common.core.web.domain.AjaxResult;
|
||||
import com.ruoyi.platform.domain.Image;
|
||||
import com.ruoyi.platform.domain.Models;
|
||||
import com.ruoyi.platform.service.ImageService;
|
||||
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;
|
||||
|
||||
/**
|
||||
* (Image)表控制层
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 14:46:47
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("image")
|
||||
public class ImageController {
|
||||
/**
|
||||
* 服务对象
|
||||
*/
|
||||
@Resource
|
||||
private ImageService imageService;
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param image 筛选条件
|
||||
* @param page 分页对象
|
||||
* @param size 分页对象
|
||||
* @return 查询结果
|
||||
*/
|
||||
@GetMapping
|
||||
@ApiOperation("分页查询")
|
||||
public AjaxResult queryByPage(Image image, int page, int size) {
|
||||
PageRequest pageRequest = PageRequest.of(page,size);
|
||||
return AjaxResult.success(this.imageService.queryByPage(image, pageRequest));
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过主键查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 单条数据
|
||||
*/
|
||||
@GetMapping("{id}")
|
||||
public AjaxResult queryById(@PathVariable("id") Integer id) {
|
||||
return AjaxResult.success(this.imageService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param image 实体
|
||||
* @return 新增结果
|
||||
*/
|
||||
@PostMapping
|
||||
public AjaxResult add(Image image) {
|
||||
return AjaxResult.success(this.imageService.insert(image));
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑数据
|
||||
*
|
||||
* @param image 实体
|
||||
* @return 编辑结果
|
||||
*/
|
||||
@PutMapping
|
||||
public AjaxResult edit(Image image) {
|
||||
return AjaxResult.success(this.imageService.update(image));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 删除是否成功
|
||||
*/
|
||||
@DeleteMapping
|
||||
public AjaxResult deleteById(Integer id) {
|
||||
return AjaxResult.success(this.imageService.removeById(id));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -74,7 +74,7 @@ public class ModelsController {
|
|||
@PostMapping
|
||||
@ApiOperation("添加模型")
|
||||
public AjaxResult add(@RequestBody Models models) {
|
||||
return AjaxResult.success(this.modelsService.insert(models));
|
||||
return AjaxResult.success(this.modelsService.insert(models));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -106,8 +106,9 @@ public class ModelsController {
|
|||
*
|
||||
*
|
||||
*
|
||||
* @param file 文件
|
||||
* @param models_version_id 模型版本表主键
|
||||
* @param files 文件
|
||||
* @param modelsId 模型表主键
|
||||
* @param version 模型版本表主键
|
||||
* @return 上传结果
|
||||
*/
|
||||
|
||||
|
|
|
@ -0,0 +1,125 @@
|
|||
package com.ruoyi.platform.domain;
|
||||
|
||||
import java.util.Date;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* (Image)实体类
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 14:45:48
|
||||
*/
|
||||
public class Image implements Serializable {
|
||||
private static final long serialVersionUID = 179166185018853959L;
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Integer id;
|
||||
/**
|
||||
* 镜像名称
|
||||
*/
|
||||
private String name;
|
||||
/**
|
||||
* 镜像描述
|
||||
*/
|
||||
private String description;
|
||||
/**
|
||||
* 镜像类型
|
||||
*/
|
||||
private Integer imageType;
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
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 String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
public Integer getImageType() {
|
||||
return imageType;
|
||||
}
|
||||
|
||||
public void setImageType(Integer imageType) {
|
||||
this.imageType = imageType;
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,161 @@
|
|||
package com.ruoyi.platform.domain;
|
||||
|
||||
import java.util.Date;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* (ImageVersion)实体类
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 15:00:02
|
||||
*/
|
||||
public class ImageVersion implements Serializable {
|
||||
private static final long serialVersionUID = 251017725389874890L;
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Integer id;
|
||||
/**
|
||||
* 对应的镜像id
|
||||
*/
|
||||
private Integer imageId;
|
||||
/**
|
||||
* 镜像版本
|
||||
*/
|
||||
private String version;
|
||||
/**
|
||||
* 镜像推送地址
|
||||
*/
|
||||
private String url;
|
||||
/**
|
||||
* 镜像tag名称
|
||||
*/
|
||||
private String tagName;
|
||||
/**
|
||||
* 镜像文件大小
|
||||
*/
|
||||
private String fileSize;
|
||||
/**
|
||||
* 镜像构建状态
|
||||
*/
|
||||
private String 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 getImageId() {
|
||||
return imageId;
|
||||
}
|
||||
|
||||
public void setImageId(Integer imageId) {
|
||||
this.imageId = imageId;
|
||||
}
|
||||
|
||||
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 getTagName() {
|
||||
return tagName;
|
||||
}
|
||||
|
||||
public void setTagName(String tagName) {
|
||||
this.tagName = tagName;
|
||||
}
|
||||
|
||||
public String getFileSize() {
|
||||
return fileSize;
|
||||
}
|
||||
|
||||
public void setFileSize(String fileSize) {
|
||||
this.fileSize = fileSize;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(String 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;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,83 @@
|
|||
package com.ruoyi.platform.mapper;
|
||||
|
||||
import com.ruoyi.platform.domain.Image;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* (Image)表数据库访问层
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 14:46:47
|
||||
*/
|
||||
public interface ImageDao {
|
||||
|
||||
/**
|
||||
* 通过ID查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 实例对象
|
||||
*/
|
||||
Image queryById(Integer id);
|
||||
|
||||
/**
|
||||
* 查询指定行数据
|
||||
*
|
||||
* @param image 查询条件
|
||||
* @param pageable 分页对象
|
||||
* @return 对象列表
|
||||
*/
|
||||
List<Image> queryAllByLimit(@Param("image") Image image, @Param("pageable") Pageable pageable);
|
||||
|
||||
/**
|
||||
* 统计总行数
|
||||
*
|
||||
* @param image 查询条件
|
||||
* @return 总行数
|
||||
*/
|
||||
long count(@Param("image") Image image);
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param image 实例对象
|
||||
* @return 影响行数
|
||||
*/
|
||||
int insert(@Param("image") Image image);
|
||||
|
||||
/**
|
||||
* 批量新增数据(MyBatis原生foreach方法)
|
||||
*
|
||||
* @param entities List<Image> 实例对象列表
|
||||
* @return 影响行数
|
||||
*/
|
||||
int insertBatch(@Param("entities") List<Image> entities);
|
||||
|
||||
/**
|
||||
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
|
||||
*
|
||||
* @param entities List<Image> 实例对象列表
|
||||
* @return 影响行数
|
||||
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
|
||||
*/
|
||||
int insertOrUpdateBatch(@Param("entities") List<Image> entities);
|
||||
|
||||
/**
|
||||
* 修改数据
|
||||
*
|
||||
* @param image 实例对象
|
||||
* @return 影响行数
|
||||
*/
|
||||
int update(@Param("image") Image image);
|
||||
|
||||
/**
|
||||
* 通过主键删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 影响行数
|
||||
*/
|
||||
int deleteById(Integer id);
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,85 @@
|
|||
package com.ruoyi.platform.mapper;
|
||||
|
||||
import com.ruoyi.platform.domain.ImageVersion;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* (ImageVersion)表数据库访问层
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 15:00:02
|
||||
*/
|
||||
public interface ImageVersionDao {
|
||||
|
||||
/**
|
||||
* 通过ID查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 实例对象
|
||||
*/
|
||||
ImageVersion queryById(Integer id);
|
||||
|
||||
/**
|
||||
* 查询指定行数据
|
||||
*
|
||||
* @param imageVersion 查询条件
|
||||
* @param pageable 分页对象
|
||||
* @return 对象列表
|
||||
*/
|
||||
List<ImageVersion> queryAllByLimit(ImageVersion imageVersion, @Param("pageable") Pageable pageable);
|
||||
|
||||
/**
|
||||
* 统计总行数
|
||||
*
|
||||
* @param imageVersion 查询条件
|
||||
* @return 总行数
|
||||
*/
|
||||
long count(ImageVersion imageVersion);
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param imageVersion 实例对象
|
||||
* @return 影响行数
|
||||
*/
|
||||
int insert(ImageVersion imageVersion);
|
||||
|
||||
/**
|
||||
* 批量新增数据(MyBatis原生foreach方法)
|
||||
*
|
||||
* @param entities List<ImageVersion> 实例对象列表
|
||||
* @return 影响行数
|
||||
*/
|
||||
int insertBatch(@Param("entities") List<ImageVersion> entities);
|
||||
|
||||
/**
|
||||
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
|
||||
*
|
||||
* @param entities List<ImageVersion> 实例对象列表
|
||||
* @return 影响行数
|
||||
* @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
|
||||
*/
|
||||
int insertOrUpdateBatch(@Param("entities") List<ImageVersion> entities);
|
||||
|
||||
/**
|
||||
* 修改数据
|
||||
*
|
||||
* @param imageVersion 实例对象
|
||||
* @return 影响行数
|
||||
*/
|
||||
int update(ImageVersion imageVersion);
|
||||
|
||||
/**
|
||||
* 通过主键删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 影响行数
|
||||
*/
|
||||
int deleteById(Integer id);
|
||||
|
||||
List<ImageVersion> queryByImageId(Integer imageId);
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
package com.ruoyi.platform.service;
|
||||
|
||||
import com.ruoyi.platform.domain.Image;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* (Image)表服务接口
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 14:46:58
|
||||
*/
|
||||
public interface ImageService {
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 通过ID查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 实例对象
|
||||
*/
|
||||
Image queryById(Integer id);
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param image 筛选条件
|
||||
* @param pageRequest 分页对象
|
||||
* @return 查询结果
|
||||
*/
|
||||
Page<Image> queryByPage(Image image, PageRequest pageRequest);
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param image 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
Image insert(Image image);
|
||||
|
||||
/**
|
||||
* 修改数据
|
||||
*
|
||||
* @param image 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
Image update(Image image);
|
||||
|
||||
/**
|
||||
* 通过主键删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean deleteById(Integer id);
|
||||
|
||||
String removeById(Integer id);
|
||||
}
|
|
@ -0,0 +1,65 @@
|
|||
package com.ruoyi.platform.service;
|
||||
|
||||
import com.ruoyi.platform.domain.ImageVersion;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* (ImageVersion)表服务接口
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 15:00:02
|
||||
*/
|
||||
public interface ImageVersionService {
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 通过ID查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 实例对象
|
||||
*/
|
||||
ImageVersion queryById(Integer id);
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param imageVersion 筛选条件
|
||||
* @param pageRequest 分页对象
|
||||
* @return 查询结果
|
||||
*/
|
||||
Page<ImageVersion> queryByPage(ImageVersion imageVersion, PageRequest pageRequest);
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param imageVersion 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
ImageVersion insert(ImageVersion imageVersion);
|
||||
|
||||
/**
|
||||
* 修改数据
|
||||
*
|
||||
* @param imageVersion 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
ImageVersion update(ImageVersion imageVersion);
|
||||
|
||||
/**
|
||||
* 通过主键删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean deleteById(Integer id);
|
||||
|
||||
|
||||
List<ImageVersion> queryByImageId(Integer id);
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,124 @@
|
|||
package com.ruoyi.platform.service.impl;
|
||||
|
||||
import com.ruoyi.common.security.utils.SecurityUtils;
|
||||
import com.ruoyi.platform.domain.Image;
|
||||
import com.ruoyi.platform.domain.ImageVersion;
|
||||
import com.ruoyi.platform.domain.Models;
|
||||
import com.ruoyi.platform.mapper.ImageDao;
|
||||
import com.ruoyi.platform.mapper.ImageVersionDao;
|
||||
import com.ruoyi.platform.service.ImageService;
|
||||
import com.ruoyi.platform.service.ImageVersionService;
|
||||
import com.ruoyi.system.api.model.LoginUser;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageImpl;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* (Image)表服务实现类
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 14:46:58
|
||||
*/
|
||||
@Service("imageService")
|
||||
public class ImageServiceImpl implements ImageService {
|
||||
@Resource
|
||||
private ImageDao imageDao;
|
||||
|
||||
|
||||
@Resource
|
||||
private ImageVersionService imageVersionService;
|
||||
|
||||
|
||||
@Resource
|
||||
private ImageVersionDao imageVersionDao;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 通过ID查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 实例对象
|
||||
*/
|
||||
@Override
|
||||
public Image queryById(Integer id) {
|
||||
return this.imageDao.queryById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param image 筛选条件
|
||||
* @param pageRequest 分页对象
|
||||
* @return 查询结果
|
||||
*/
|
||||
@Override
|
||||
public Page<Image> queryByPage(Image image, PageRequest pageRequest) {
|
||||
long total = this.imageDao.count(image);
|
||||
return new PageImpl<>(this.imageDao.queryAllByLimit(image, pageRequest), pageRequest, total);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param image 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
@Override
|
||||
public Image insert(Image image) {
|
||||
this.imageDao.insert(image);
|
||||
return image;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改数据
|
||||
*
|
||||
* @param image 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
@Override
|
||||
public Image update(Image image) {
|
||||
this.imageDao.update(image);
|
||||
return this.queryById(image.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过主键删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 是否成功
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteById(Integer id) {
|
||||
return this.imageDao.deleteById(id) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String removeById(Integer id) {
|
||||
Image image = this.imageDao.queryById(id);
|
||||
if (image == null){
|
||||
return "模型不存在";
|
||||
}
|
||||
|
||||
//判断权限,只有admin和创建者本身可以删除该数据集
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
String username = loginUser.getUsername();
|
||||
|
||||
|
||||
String createdBy = image.getCreateBy();
|
||||
if (!(StringUtils.equals(username,"admin") || StringUtils.equals(username,createdBy))){
|
||||
return "无权限删除该镜像";
|
||||
}
|
||||
if (!imageVersionService.queryByImageId(id).isEmpty()){
|
||||
return "请先删除该镜像下的版本文件";
|
||||
}
|
||||
image.setState(0);
|
||||
return this.imageDao.update(image)>0?"删除成功":"删除失败";
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,89 @@
|
|||
package com.ruoyi.platform.service.impl;
|
||||
|
||||
import com.ruoyi.platform.domain.ImageVersion;
|
||||
import com.ruoyi.platform.mapper.ImageVersionDao;
|
||||
import com.ruoyi.platform.domain.ModelsVersion;
|
||||
import com.ruoyi.platform.service.ImageVersionService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageImpl;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* (ImageVersion)表服务实现类
|
||||
*
|
||||
* @author Xidaray
|
||||
* @since 2024-03-05 15:00:02
|
||||
*/
|
||||
@Service("imageVersionService")
|
||||
public class ImageVersionServiceImpl implements ImageVersionService {
|
||||
@Resource
|
||||
private ImageVersionDao imageVersionDao;
|
||||
|
||||
/**
|
||||
* 通过ID查询单条数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 实例对象
|
||||
*/
|
||||
@Override
|
||||
public ImageVersion queryById(Integer id) {
|
||||
return this.imageVersionDao.queryById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param imageVersion 筛选条件
|
||||
* @param pageRequest 分页对象
|
||||
* @return 查询结果
|
||||
*/
|
||||
@Override
|
||||
public Page<ImageVersion> queryByPage(ImageVersion imageVersion, PageRequest pageRequest) {
|
||||
long total = this.imageVersionDao.count(imageVersion);
|
||||
return new PageImpl<>(this.imageVersionDao.queryAllByLimit(imageVersion, pageRequest), pageRequest, total);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ImageVersion> queryByImageId(Integer imageId){
|
||||
return imageVersionDao.queryByImageId(imageId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增数据
|
||||
*
|
||||
* @param imageVersion 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
@Override
|
||||
public ImageVersion insert(ImageVersion imageVersion) {
|
||||
this.imageVersionDao.insert(imageVersion);
|
||||
return imageVersion;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改数据
|
||||
*
|
||||
* @param imageVersion 实例对象
|
||||
* @return 实例对象
|
||||
*/
|
||||
@Override
|
||||
public ImageVersion update(ImageVersion imageVersion) {
|
||||
this.imageVersionDao.update(imageVersion);
|
||||
return this.queryById(imageVersion.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过主键删除数据
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 是否成功
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteById(Integer id) {
|
||||
return this.imageVersionDao.deleteById(id) > 0;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,159 @@
|
|||
<?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.ImageDao">
|
||||
|
||||
<resultMap type="com.ruoyi.platform.domain.Image" id="ImageMap">
|
||||
<result property="id" column="id" jdbcType="INTEGER"/>
|
||||
<result property="name" column="name" jdbcType="VARCHAR"/>
|
||||
<result property="description" column="description" jdbcType="VARCHAR"/>
|
||||
<result property="imageType" column="image_type" 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="ImageMap">
|
||||
select
|
||||
idnamedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate
|
||||
from image
|
||||
where id = #{id}
|
||||
</select>
|
||||
|
||||
<!--查询指定行数据-->
|
||||
<select id="queryAllByLimit" resultMap="ImageMap">
|
||||
select
|
||||
idnamedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate
|
||||
from image
|
||||
<where>
|
||||
<if test="id != null">
|
||||
and id = #{id}
|
||||
</if>
|
||||
<if test="name != null and name != ''">
|
||||
and name = #{name}
|
||||
</if>
|
||||
<if test="description != null and description != ''">
|
||||
and description = #{description}
|
||||
</if>
|
||||
<if test="imageType != null">
|
||||
and image_type = #{imageType}
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
and create_by = #{createBy}
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
and create_time = #{createTime}
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
and update_by = #{updateBy}
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
and update_time = #{updateTime}
|
||||
</if>
|
||||
<if test="state != null and state != ''">
|
||||
and state = #{state}
|
||||
</if>
|
||||
</where>
|
||||
limit #{pageable.offset}, #{pageable.pageSize}
|
||||
</select>
|
||||
|
||||
<!--统计总行数-->
|
||||
<select id="count" resultType="java.lang.Long">
|
||||
select count(1)
|
||||
from image
|
||||
<where>
|
||||
<if test="id != null">
|
||||
and id = #{id}
|
||||
</if>
|
||||
<if test="name != null and name != ''">
|
||||
and name = #{name}
|
||||
</if>
|
||||
<if test="description != null and description != ''">
|
||||
and description = #{description}
|
||||
</if>
|
||||
<if test="imageType != null">
|
||||
and image_type = #{imageType}
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
and create_by = #{createBy}
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
and create_time = #{createTime}
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
and update_by = #{updateBy}
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
and update_time = #{updateTime}
|
||||
</if>
|
||||
<if test="state != null and state != ''">
|
||||
and state = #{state}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<!--新增所有列-->
|
||||
<insert id="insert" keyProperty="id" useGeneratedKeys="true">
|
||||
insert into image(namedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate)
|
||||
values (#{name}#{description}#{imageType}#{createBy}#{createTime}#{updateBy}#{updateTime}#{state})
|
||||
</insert>
|
||||
|
||||
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
|
||||
insert into image(namedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate)
|
||||
values
|
||||
<foreach collection="entities" item="entity" separator=",">
|
||||
(#{entity.name}#{entity.description}#{entity.imageType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state})
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true">
|
||||
insert into image(namedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate)
|
||||
values
|
||||
<foreach collection="entities" item="entity" separator=",">
|
||||
(#{entity.name}#{entity.description}#{entity.imageType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state})
|
||||
</foreach>
|
||||
on duplicate key update
|
||||
name = values(name)description = values(description)image_type = values(image_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 image
|
||||
<set>
|
||||
<if test="name != null and name != ''">
|
||||
name = #{name},
|
||||
</if>
|
||||
<if test="description != null and description != ''">
|
||||
description = #{description},
|
||||
</if>
|
||||
<if test="imageType != null">
|
||||
image_type = #{imageType},
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
create_by = #{createBy},
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
create_time = #{createTime},
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
update_by = #{updateBy},
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
update_time = #{updateTime},
|
||||
</if>
|
||||
<if test="state != null and state != ''">
|
||||
state = #{state},
|
||||
</if>
|
||||
</set>
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<!--通过主键删除-->
|
||||
<delete id="deleteById">
|
||||
delete from image where id = #{id}
|
||||
</delete>
|
||||
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,194 @@
|
|||
<?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.dao.ImageVersionDao">
|
||||
|
||||
<resultMap type="com.ruoyi.platform.domain.ImageVersion" id="ImageVersionMap">
|
||||
<result property="id" column="id" jdbcType="INTEGER"/>
|
||||
<result property="imageId" column="image_id" jdbcType="INTEGER"/>
|
||||
<result property="version" column="version" jdbcType="VARCHAR"/>
|
||||
<result property="url" column="url" jdbcType="VARCHAR"/>
|
||||
<result property="tagName" column="tag_name" jdbcType="VARCHAR"/>
|
||||
<result property="fileSize" column="file_size" jdbcType="VARCHAR"/>
|
||||
<result property="status" column="status" jdbcType="VARCHAR"/>
|
||||
<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>
|
||||
|
||||
<!--根据模型id返回版本列表-->
|
||||
<select id="queryByModelsId" resultMap="ModelsVersionMap">
|
||||
select *
|
||||
from image_version
|
||||
where image_id = #{imageId} and state = 1
|
||||
</select>
|
||||
|
||||
<!--查询单个-->
|
||||
<select id="queryById" resultMap="ImageVersionMap">
|
||||
select *
|
||||
from image_version
|
||||
where id = #{id}
|
||||
</select>
|
||||
|
||||
<!--查询指定行数据-->
|
||||
<select id="queryAllByLimit" resultMap="ImageVersionMap">
|
||||
select *
|
||||
from image_version
|
||||
<where>
|
||||
<if test="id != null">
|
||||
and id = #{id}
|
||||
</if>
|
||||
<if test="imageId != null">
|
||||
and image_id = #{imageId}
|
||||
</if>
|
||||
<if test="version != null and version != ''">
|
||||
and version = #{version}
|
||||
</if>
|
||||
<if test="url != null and url != ''">
|
||||
and url = #{url}
|
||||
</if>
|
||||
<if test="tagName != null and tagName != ''">
|
||||
and tag_name = #{tagName}
|
||||
</if>
|
||||
<if test="fileSize != null and fileSize != ''">
|
||||
and file_size = #{fileSize}
|
||||
</if>
|
||||
<if test="status != null and status != ''">
|
||||
and status = #{status}
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
and create_by = #{createBy}
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
and create_time = #{createTime}
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
and update_by = #{updateBy}
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
and update_time = #{updateTime}
|
||||
</if>
|
||||
<if test="state != null">
|
||||
and state = #{state}
|
||||
</if>
|
||||
</where>
|
||||
limit #{pageable.offset}, #{pageable.pageSize}
|
||||
</select>
|
||||
|
||||
<!--统计总行数-->
|
||||
<select id="count" resultType="java.lang.Long">
|
||||
select count(1)
|
||||
from image_version
|
||||
<where>
|
||||
<if test="id != null">
|
||||
and id = #{id}
|
||||
</if>
|
||||
<if test="imageId != null">
|
||||
and image_id = #{imageId}
|
||||
</if>
|
||||
<if test="version != null and version != ''">
|
||||
and version = #{version}
|
||||
</if>
|
||||
<if test="url != null and url != ''">
|
||||
and url = #{url}
|
||||
</if>
|
||||
<if test="tagName != null and tagName != ''">
|
||||
and tag_name = #{tagName}
|
||||
</if>
|
||||
<if test="fileSize != null and fileSize != ''">
|
||||
and file_size = #{fileSize}
|
||||
</if>
|
||||
<if test="status != null and status != ''">
|
||||
and status = #{status}
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
and create_by = #{createBy}
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
and create_time = #{createTime}
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
and update_by = #{updateBy}
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
and update_time = #{updateTime}
|
||||
</if>
|
||||
<if test="state != null">
|
||||
and state = #{state}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<!--新增所有列-->
|
||||
<insert id="insert" keyProperty="id" useGeneratedKeys="true">
|
||||
insert into image_version(image_idversionurltag_namefile_sizestatuscreate_bycreate_timeupdate_byupdate_timestate)
|
||||
values (#{imageId}#{version}#{url}#{tagName}#{fileSize}#{status}#{createBy}#{createTime}#{updateBy}#{updateTime}#{state})
|
||||
</insert>
|
||||
|
||||
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
|
||||
insert into image_version(image_idversionurltag_namefile_sizestatuscreate_bycreate_timeupdate_byupdate_timestate)
|
||||
values
|
||||
<foreach collection="entities" item="entity" separator=",">
|
||||
(#{entity.imageId}#{entity.version}#{entity.url}#{entity.tagName}#{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 image_version(image_idversionurltag_namefile_sizestatuscreate_bycreate_timeupdate_byupdate_timestate)
|
||||
values
|
||||
<foreach collection="entities" item="entity" separator=",">
|
||||
(#{entity.imageId}#{entity.version}#{entity.url}#{entity.tagName}#{entity.fileSize}#{entity.status}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state})
|
||||
</foreach>
|
||||
on duplicate key update
|
||||
image_id = values(image_id)version = values(version)url = values(url)tag_name = values(tag_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 image_version
|
||||
<set>
|
||||
<if test="imageId != null">
|
||||
image_id = #{imageId},
|
||||
</if>
|
||||
<if test="version != null and version != ''">
|
||||
version = #{version},
|
||||
</if>
|
||||
<if test="url != null and url != ''">
|
||||
url = #{url},
|
||||
</if>
|
||||
<if test="tagName != null and tagName != ''">
|
||||
tag_name = #{tagName},
|
||||
</if>
|
||||
<if test="fileSize != null and fileSize != ''">
|
||||
file_size = #{fileSize},
|
||||
</if>
|
||||
<if test="status != null and status != ''">
|
||||
status = #{status},
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
create_by = #{createBy},
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
create_time = #{createTime},
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
update_by = #{updateBy},
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
update_time = #{updateTime},
|
||||
</if>
|
||||
<if test="state != null">
|
||||
state = #{state},
|
||||
</if>
|
||||
</set>
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<!--通过主键删除-->
|
||||
<delete id="deleteById">
|
||||
delete from image_version where id = #{id}
|
||||
</delete>
|
||||
|
||||
</mapper>
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
<!--查询单个-->
|
||||
<select id="queryById" resultMap="ModelsMap">
|
||||
select
|
||||
id, name, description, 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>
|
||||
|
|
Loading…
Reference in New Issue