| @@ -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)); | |||
| } | |||
| } | |||
| @@ -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); | |||
| /** | |||
| * 通过主键删除数据 | |||
| @@ -62,4 +62,5 @@ public interface ImageVersionService { | |||
| List<ImageVersion> queryByImageId(Integer id); | |||
| String removeById(Integer id); | |||
| } | |||
| @@ -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()); | |||
| } | |||
| /** | |||
| @@ -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()); | |||
| } | |||
| /** | |||
| @@ -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}) | |||
| @@ -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}) | |||