From 094258f75ab40a10af3f670c13104cea29efe10f Mon Sep 17 00:00:00 2001 From: chenzhihang <709011834@qq.com> Date: Mon, 31 Mar 2025 17:27:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=95=9C=E5=83=8F=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=E5=8F=8Atag=E4=B8=BA=E5=B7=B2=E6=9C=89=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=EF=BC=8C=E5=88=9B=E5=BB=BA=E9=95=9C=E5=83=8F=E5=92=8C?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=95=9C=E5=83=8F=E7=89=88=E6=9C=AC=E6=88=90?= =?UTF-8?q?=E5=8A=9Fbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/system/api/constant/Constant.java | 2 ++ .../controller/image/ImageController.java | 2 +- .../com/ruoyi/platform/service/ImageService.java | 3 ++- .../platform/service/impl/ImageServiceImpl.java | 15 +++++++++++---- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/Constant.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/Constant.java index b1f20347..6d391a2d 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/Constant.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/Constant.java @@ -30,6 +30,8 @@ public class Constant { public final static String Source_Hand_Export = "hand_export"; public final static String Source_Add = "add"; + public final static String Building = "building"; + public final static String Running = "Running"; public final static String Failed = "Failed"; public final static String Pending = "Pending"; diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/image/ImageController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/image/ImageController.java index 0c0cc1f3..203b881e 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/image/ImageController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/image/ImageController.java @@ -92,7 +92,7 @@ public class ImageController extends BaseController { @PostMapping("/addImageAndVersion") @ApiOperation("添加镜像和版本") public GenericsAjaxResult addImageAndVersion(@RequestBody ImageVo imageVo) throws Exception { - return genericsSuccess(this.imageService.insertImageAndVersion(imageVo)); + return this.imageService.insertImageAndVersion(imageVo); } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ImageService.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ImageService.java index 3fd4d0b1..acc660b4 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ImageService.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ImageService.java @@ -1,5 +1,6 @@ package com.ruoyi.platform.service; +import com.ruoyi.common.core.web.domain.GenericsAjaxResult; import com.ruoyi.platform.domain.Image; import com.ruoyi.platform.vo.ImageVo; import org.springframework.data.domain.Page; @@ -75,7 +76,7 @@ public interface ImageService { String removeById(Integer id) throws Exception; - String insertImageAndVersion(ImageVo imageVo) throws Exception; + GenericsAjaxResult insertImageAndVersion(ImageVo imageVo) throws Exception; /** * 本地上传构建镜像 diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageServiceImpl.java index d47944c8..fc0c8e64 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ImageServiceImpl.java @@ -2,6 +2,7 @@ package com.ruoyi.platform.service.impl; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.util.DateUtils; +import com.ruoyi.common.core.web.domain.GenericsAjaxResult; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.system.api.constant.Constant; import com.ruoyi.platform.domain.*; @@ -227,7 +228,7 @@ public class ImageServiceImpl implements ImageService { @Override @Transactional - public String insertImageAndVersion(ImageVo imageVo) throws Exception { + public GenericsAjaxResult insertImageAndVersion(ImageVo imageVo) throws Exception { Image existingImage = getByName(imageVo.getName()); Image imageToUse; if (existingImage == null) { @@ -243,6 +244,13 @@ public class ImageServiceImpl implements ImageService { } else { // 如果已存在相同名称的镜像,使用已存在的镜像 imageToUse = existingImage; + ImageVersion query = new ImageVersion(); + query.setImageId(imageToUse.getId()); + query.setTagName(imageVo.getTagName()); + long count = imageVersionDao.count(query); + if (count != 0) { + return GenericsAjaxResult.error("镜像版本已存在"); + } } ImageVersion imageVersion = new ImageVersion(); imageVersion.setImageId(imageToUse.getId()); @@ -250,7 +258,7 @@ public class ImageServiceImpl implements ImageService { imageVersion.setTagName(imageVo.getTagName()); imageVersion.setFileSize(imageVo.getFileSize()); imageVersion.setDescription(imageVo.getDescription()); - imageVersion.setStatus("building"); + imageVersion.setStatus(Constant.Building); ImageVersion imageVersionInsert = this.imageVersionService.insert(imageVersion); if (imageVersionInsert == null) { throw new Exception("新增镜像版本失败"); @@ -286,8 +294,7 @@ public class ImageServiceImpl implements ImageService { return null; }); - - return "新增镜像成功,镜像构建中..."; + return GenericsAjaxResult.success("新增镜像成功,镜像构建中..."); } @Override