Browse Source

镜像管理基础CRUD接口实现

pull/7/head
西大锐 1 year ago
parent
commit
b52a4d2d99
7 changed files with 88 additions and 24 deletions
  1. +18
    -12
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/image/ImageVersionController.java
  2. +4
    -4
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ImageVersionDao.java
  3. +1
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ImageVersionService.java
  4. +15
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageServiceImpl.java
  5. +42
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageVersionServiceImpl.java
  6. +5
    -5
      ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ImageDaoMapper.xml
  7. +3
    -3
      ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ImageVersionDaoMapper.xml

ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/ImageVersionController.java → ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/image/ImageVersionController.java View File

@@ -1,7 +1,10 @@
package com.ruoyi.platform.controller;
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.ImageVersion;
import com.ruoyi.platform.service.ImageVersionService;
import io.swagger.annotations.ApiOperation;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.http.ResponseEntity;
@@ -28,12 +31,15 @@ public class ImageVersionController {
* 分页查询
*
* @param imageVersion 筛选条件
* @param pageRequest 分页对象
* @param page 分页对象
* @param size 分页对象
* @return 查询结果
*/
@GetMapping
public ResponseEntity<Page<ImageVersion>> queryByPage(ImageVersion imageVersion, PageRequest pageRequest) {
return ResponseEntity.ok(this.imageVersionService.queryByPage(imageVersion, pageRequest));
@ApiOperation("分页查询")
public AjaxResult queryByPage(ImageVersion imageVersion, int page, int size) {
PageRequest pageRequest = PageRequest.of(page,size);
return AjaxResult.success(this.imageVersionService.queryByPage(imageVersion, pageRequest));
}

/**
@@ -43,8 +49,8 @@ public class ImageVersionController {
* @return 单条数据
*/
@GetMapping("{id}")
public ResponseEntity<ImageVersion> queryById(@PathVariable("id") Integer id) {
return ResponseEntity.ok(this.imageVersionService.queryById(id));
public AjaxResult queryById(@PathVariable("id") Integer id) {
return AjaxResult.success(this.imageVersionService.queryById(id));
}

/**
@@ -54,8 +60,8 @@ public class ImageVersionController {
* @return 新增结果
*/
@PostMapping
public ResponseEntity<ImageVersion> add(ImageVersion imageVersion) {
return ResponseEntity.ok(this.imageVersionService.insert(imageVersion));
public AjaxResult add(ImageVersion imageVersion) {
return AjaxResult.success(this.imageVersionService.insert(imageVersion));
}

/**
@@ -65,8 +71,8 @@ public class ImageVersionController {
* @return 编辑结果
*/
@PutMapping
public ResponseEntity<ImageVersion> edit(ImageVersion imageVersion) {
return ResponseEntity.ok(this.imageVersionService.update(imageVersion));
public AjaxResult edit(ImageVersion imageVersion) {
return AjaxResult.success(this.imageVersionService.update(imageVersion));
}

/**
@@ -76,8 +82,8 @@ public class ImageVersionController {
* @return 删除是否成功
*/
@DeleteMapping
public ResponseEntity<Boolean> deleteById(Integer id) {
return ResponseEntity.ok(this.imageVersionService.deleteById(id));
public AjaxResult deleteById(Integer id) {
return AjaxResult.success(this.imageVersionService.removeById(id));
}

}

+ 4
- 4
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ImageVersionDao.java View File

@@ -28,7 +28,7 @@ public interface ImageVersionDao {
* @param pageable 分页对象
* @return 对象列表
*/
List<ImageVersion> queryAllByLimit(ImageVersion imageVersion, @Param("pageable") Pageable pageable);
List<ImageVersion> queryAllByLimit(@Param("imageVersion") ImageVersion imageVersion, @Param("pageable") Pageable pageable);

/**
* 统计总行数
@@ -36,7 +36,7 @@ public interface ImageVersionDao {
* @param imageVersion 查询条件
* @return 总行数
*/
long count(ImageVersion imageVersion);
long count(@Param("imageVersion") ImageVersion imageVersion);

/**
* 新增数据
@@ -44,7 +44,7 @@ public interface ImageVersionDao {
* @param imageVersion 实例对象
* @return 影响行数
*/
int insert(ImageVersion imageVersion);
int insert(@Param("imageVersion") ImageVersion imageVersion);

/**
* 批量新增数据(MyBatis原生foreach方法)
@@ -69,7 +69,7 @@ public interface ImageVersionDao {
* @param imageVersion 实例对象
* @return 影响行数
*/
int update(ImageVersion imageVersion);
int update(@Param("imageVersion") ImageVersion imageVersion);

/**
* 通过主键删除数据


+ 1
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ImageVersionService.java View File

@@ -62,4 +62,5 @@ public interface ImageVersionService {
List<ImageVersion> queryByImageId(Integer id);


String removeById(Integer id);
}

+ 15
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageServiceImpl.java View File

@@ -16,6 +16,7 @@ import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;

import javax.annotation.Resource;
import java.util.Date;

/**
* (Image)表服务实现类
@@ -70,6 +71,12 @@ public class ImageServiceImpl implements ImageService {
*/
@Override
public Image insert(Image image) {
LoginUser loginUser = SecurityUtils.getLoginUser();
image.setCreateBy(loginUser.getUsername());
image.setUpdateBy(loginUser.getUsername());
image.setUpdateTime(new Date());
image.setCreateTime(new Date());
image.setState(1);
this.imageDao.insert(image);
return image;
}
@@ -82,8 +89,16 @@ public class ImageServiceImpl implements ImageService {
*/
@Override
public Image update(Image image) {
int currentState = image.getState();
if(currentState == 0){
throw new RuntimeException("模型已被删除,无法更新。");
}
LoginUser loginUser = SecurityUtils.getLoginUser();
image.setUpdateBy(loginUser.getUsername());
image.setUpdateTime(new Date());
this.imageDao.update(image);
return this.queryById(image.getId());

}

/**


+ 42
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageVersionServiceImpl.java View File

@@ -1,15 +1,20 @@
package com.ruoyi.platform.service.impl;

import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.platform.domain.ImageVersion;
import com.ruoyi.platform.mapper.ImageDao;
import com.ruoyi.platform.mapper.ImageVersionDao;
import com.ruoyi.platform.domain.ModelsVersion;
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;
import java.util.Date;
import java.util.List;

/**
@@ -23,6 +28,9 @@ public class ImageVersionServiceImpl implements ImageVersionService {
@Resource
private ImageVersionDao imageVersionDao;

@Resource
private ImageDao imageDao;

/**
* 通过ID查询单条数据
*
@@ -52,6 +60,26 @@ public class ImageVersionServiceImpl implements ImageVersionService {
return imageVersionDao.queryByImageId(imageId);
}

@Override
public String removeById(Integer id) {
ImageVersion imageVersion = this.imageVersionDao.queryById(id);
if (imageVersion == null){
return "该版本下模型文件信息不存在";
}

//判断权限,只有admin和创建者本身可以删除该数据集
LoginUser loginUser = SecurityUtils.getLoginUser();
String username = loginUser.getUsername();
String createdBy = imageVersion.getCreateBy();
if (!(StringUtils.equals(username,"admin") || StringUtils.equals(username,createdBy))){
return "无权限删除该版本下模型信息";
}

imageVersion.setState(0);
return this.imageVersionDao.update(imageVersion)>0?"删除成功":"删除失败";

}

/**
* 新增数据
*
@@ -60,6 +88,12 @@ public class ImageVersionServiceImpl implements ImageVersionService {
*/
@Override
public ImageVersion insert(ImageVersion imageVersion) {
LoginUser loginUser = SecurityUtils.getLoginUser();
imageVersion.setCreateBy(loginUser.getUsername());
imageVersion.setUpdateBy(loginUser.getUsername());
imageVersion.setUpdateTime(new Date());
imageVersion.setCreateTime(new Date());
imageVersion.setState(1);
this.imageVersionDao.insert(imageVersion);
return imageVersion;
}
@@ -72,8 +106,16 @@ public class ImageVersionServiceImpl implements ImageVersionService {
*/
@Override
public ImageVersion update(ImageVersion imageVersion) {
int currentState = imageVersion.getState();
if(currentState == 0){
throw new RuntimeException("镜像版本已被删除,无法更新。");
}
LoginUser loginUser = SecurityUtils.getLoginUser();
imageVersion.setUpdateBy(loginUser.getUsername());
imageVersion.setUpdateTime(new Date());
this.imageVersionDao.update(imageVersion);
return this.queryById(imageVersion.getId());

}

/**


+ 5
- 5
ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ImageDaoMapper.xml View File

@@ -17,7 +17,7 @@
<!--查询单个-->
<select id="queryById" resultMap="ImageMap">
select
idnamedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate
id,name,description,image_type,create_by,create_time,update_by,update_time,state
from image
where id = #{id}
</select>
@@ -25,7 +25,7 @@
<!--查询指定行数据-->
<select id="queryAllByLimit" resultMap="ImageMap">
select
idnamedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate
id,name,description,image_type,create_by,create_time,update_by,update_time,state
from image
<where>
<if test="id != null">
@@ -96,12 +96,12 @@

<!--新增所有列-->
<insert id="insert" keyProperty="id" useGeneratedKeys="true">
insert into image(namedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate)
insert into image(name,description,image_type,create_by,create_time,update_by,update_time,state)
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)
insert into image(name,description,image_type,create_by,create_time,update_by,update_time,state)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.name}#{entity.description}#{entity.imageType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state})
@@ -109,7 +109,7 @@
</insert>

<insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true">
insert into image(namedescriptionimage_typecreate_bycreate_timeupdate_byupdate_timestate)
insert into image(name,description,image_type,create_by,create_time,update_by,update_time,state)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.name}#{entity.description}#{entity.imageType}#{entity.createBy}#{entity.createTime}#{entity.updateBy}#{entity.updateTime}#{entity.state})


+ 3
- 3
ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ImageVersionDaoMapper.xml View File

@@ -122,12 +122,12 @@

<!--新增所有列-->
<insert id="insert" keyProperty="id" useGeneratedKeys="true">
insert into image_version(image_idversionurltag_namefile_sizestatuscreate_bycreate_timeupdate_byupdate_timestate)
insert into image_version(image_id,version,url,tag_name,file_size,status,create_by,create_time,update_by,update_time,state)
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)
insert into image_version(image_id,version,url,tag_name,file_size,status,create_by,create_time,update_by,update_time,state)
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})
@@ -135,7 +135,7 @@
</insert>

<insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true">
insert into image_version(image_idversionurltag_namefile_sizestatuscreate_bycreate_timeupdate_byupdate_timestate)
insert into image_version(image_id,version,url,tag_name,file_size,status,create_by,create_time,update_by,update_time,state)
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})


Loading…
Cancel
Save