From cb6cbb069faec53951aa95d9e66cbb5d27eb26b1 Mon Sep 17 00:00:00 2001 From: even <827656971@qq.com> Date: Tue, 22 Jul 2025 15:35:00 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=84=E6=BA=90=E7=AE=A1=E7=90=86=E6=9A=82?= =?UTF-8?q?=E6=97=B6=E5=AF=B9=E6=8E=A5=E5=AE=8C=E6=AF=95=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ci/api/ResourceManagerController.java | 38 +++++++++++-- .../java/cd/casic/ci/api/TestController.java | 1 - .../dto/req/resource/ResourceListReq.java | 8 +++ .../dto/req/resource/ResourcePageReq.java | 10 ++++ .../dto/req/resource/ResourceUpdateReq.java | 2 + .../dto/resp/resource/ResourceListResp.java | 38 +++++++++++++ .../process/converter/ResourceConverter.java | 6 +++ .../resource/PipResourceManager.java | 2 + .../resource/ResourceManagerService.java | 14 +++-- .../impl/ResourceManagerServiceImpl.java | 54 +++++++++++++++---- .../test/java/cd/casic/server/DockerTest.java | 1 - .../java/cd/casic/server/ZipFileTest.java | 1 - 12 files changed, 156 insertions(+), 19 deletions(-) create mode 100644 modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceListReq.java create mode 100644 modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourcePageReq.java create mode 100644 modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/resource/ResourceListResp.java diff --git a/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/ResourceManagerController.java b/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/ResourceManagerController.java index d6f13cb9..0bf71a5d 100644 --- a/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/ResourceManagerController.java +++ b/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/ResourceManagerController.java @@ -2,10 +2,18 @@ package cd.casic.ci.api; +import cd.casic.ci.process.dto.req.resource.ResourceCreateReq; +import cd.casic.ci.process.dto.req.resource.ResourceListReq; +import cd.casic.ci.process.dto.req.resource.ResourcePageReq; +import cd.casic.ci.process.dto.req.resource.ResourceUpdateReq; +import cd.casic.ci.process.dto.resp.resource.ResourceDetailResp; +import cd.casic.ci.process.dto.resp.resource.ResourceListResp; import cd.casic.ci.process.process.service.resource.ResourceManagerService; +import cd.casic.framework.commons.pojo.CommonResult; +import cd.casic.framework.commons.pojo.PageResult; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import jakarta.annotation.Resource; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -22,7 +30,31 @@ public class ResourceManagerController { @Resource private ResourceManagerService resourceManagerService; - + @PostMapping("/createResource") + public CommonResult createResource(@RequestBody ResourceCreateReq req){ + return CommonResult.success(resourceManagerService.createResource(req)); + } + @PostMapping("/updateResource") + public CommonResult updateResource(@RequestBody ResourceUpdateReq req){ + return CommonResult.success(resourceManagerService.updateResource(req)); + } + @GetMapping("/findResourceDetailById/{resourceId}") + public CommonResult findResourceDetailById(@PathVariable String resourceId){ + return CommonResult.success(resourceManagerService.findResourceDetailById(resourceId)); + } + @PostMapping("/list") + public CommonResult> list(@RequestBody ResourceListReq req){ + return CommonResult.success(resourceManagerService.list(req)); + } + @PostMapping("/page") + public CommonResult> page(@RequestBody ResourcePageReq req){ + return CommonResult.success(resourceManagerService.page(req)); + } + @DeleteMapping("/deleteResource/{resourceId}") + public CommonResult deleteResource(@PathVariable String resourceId){ + resourceManagerService.deleteResource(resourceId); + return CommonResult.success(); + } } diff --git a/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/TestController.java b/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/TestController.java index c9602ec9..65e960a5 100644 --- a/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/TestController.java +++ b/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/TestController.java @@ -1,6 +1,5 @@ package cd.casic.ci.api; -import cd.casic.ci.process.util.CryptogramUtil; import cd.casic.ci.process.util.SftpUploadUtil; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceListReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceListReq.java new file mode 100644 index 00000000..0bf4c7d3 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceListReq.java @@ -0,0 +1,8 @@ +package cd.casic.ci.process.dto.req.resource; + +import lombok.Data; + +@Data +public class ResourceListReq { + +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourcePageReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourcePageReq.java new file mode 100644 index 00000000..1d2aa4ba --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourcePageReq.java @@ -0,0 +1,10 @@ +package cd.casic.ci.process.dto.req.resource; + +import cd.casic.framework.commons.pojo.PageParam; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +@Data +public class ResourcePageReq extends PageParam { +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceUpdateReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceUpdateReq.java index a163d5af..a21cdd62 100644 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceUpdateReq.java +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/resource/ResourceUpdateReq.java @@ -22,4 +22,6 @@ public class ResourceUpdateReq { * docker连接端口(选填) * */ private Integer dockerPort; + + private String cloudId; } diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/resource/ResourceListResp.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/resource/ResourceListResp.java new file mode 100644 index 00000000..679c50b2 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/resource/ResourceListResp.java @@ -0,0 +1,38 @@ +package cd.casic.ci.process.dto.resp.resource; + +import jakarta.annotation.Resource; +import lombok.Data; + +@Data +public class ResourceListResp { + /** + * docker镜像服务器信息id + */ + private String dockerId; + + /** + * k8s服务器信息id + */ + private String k8sId; + + /** + * 机器服务器信息id + */ + private Long machineId; + + /** + * 弹性云服务器信息id + */ + private String cloudId; + + /** + * 资源名称 + */ + private String resourceName; + /** + * 资源类型ResourceConstant.RES_TYPE_* + * */ + private String resourceType; + + private String id; +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/converter/ResourceConverter.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/converter/ResourceConverter.java index ab56ea75..95cf091a 100644 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/converter/ResourceConverter.java +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/converter/ResourceConverter.java @@ -1,6 +1,9 @@ package cd.casic.ci.process.process.converter; +import cd.casic.ci.process.dto.req.resource.ResourceCreateReq; +import cd.casic.ci.process.dto.req.resource.ResourceUpdateReq; import cd.casic.ci.process.dto.resp.resource.ResourceDetailResp; +import cd.casic.ci.process.dto.resp.resource.ResourceListResp; import cd.casic.ci.process.process.dataObject.resource.PipResourceManager; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -18,4 +21,7 @@ import java.util.List; public interface ResourceConverter { ResourceConverter INSTANCE = Mappers.getMapper(ResourceConverter.class); ResourceDetailResp converter(PipResourceManager manager); + PipResourceManager converter(ResourceUpdateReq req); + PipResourceManager converter(ResourceCreateReq req); + List converter(List manager); } diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/resource/PipResourceManager.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/resource/PipResourceManager.java index c68e7b9e..9a7ef452 100644 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/resource/PipResourceManager.java +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/resource/PipResourceManager.java @@ -41,4 +41,6 @@ public class PipResourceManager extends PipBaseElement { * 资源类型ResourceConstant.RES_TYPE_* * */ private String resourceType; + + private String state; } diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/ResourceManagerService.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/ResourceManagerService.java index 92c2ff6a..5a8e55bc 100644 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/ResourceManagerService.java +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/ResourceManagerService.java @@ -1,12 +1,17 @@ package cd.casic.ci.process.process.service.resource; import cd.casic.ci.process.dto.req.resource.ResourceCreateReq; +import cd.casic.ci.process.dto.req.resource.ResourceListReq; +import cd.casic.ci.process.dto.req.resource.ResourcePageReq; import cd.casic.ci.process.dto.req.resource.ResourceUpdateReq; import cd.casic.ci.process.dto.resp.resource.ResourceDetailResp; +import cd.casic.ci.process.dto.resp.resource.ResourceListResp; import cd.casic.ci.process.process.dataObject.resource.PipResourceManager; +import cd.casic.framework.commons.pojo.PageResult; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; - +import java.util.List; /** @@ -20,8 +25,11 @@ public interface ResourceManagerService extends IService { /** * 创建||申请 资源 * */ - void createResource(ResourceCreateReq req); - void updateResource(ResourceUpdateReq req); + String createResource(ResourceCreateReq req); + String updateResource(ResourceUpdateReq req); ResourceDetailResp findResourceDetailById(String resourceId); void deleteResource(String resourceId); + PageResult page(ResourcePageReq req); + + List list(ResourceListReq req); } diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/impl/ResourceManagerServiceImpl.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/impl/ResourceManagerServiceImpl.java index fb69e8d0..0148b72c 100644 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/impl/ResourceManagerServiceImpl.java +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/resource/impl/ResourceManagerServiceImpl.java @@ -2,24 +2,32 @@ package cd.casic.ci.process.process.service.resource.impl; import cd.casic.ci.process.constant.ResourceConstant; import cd.casic.ci.process.dto.req.resource.ResourceCreateReq; +import cd.casic.ci.process.dto.req.resource.ResourceListReq; +import cd.casic.ci.process.dto.req.resource.ResourcePageReq; import cd.casic.ci.process.dto.req.resource.ResourceUpdateReq; import cd.casic.ci.process.dto.resp.resource.ResourceDetailResp; +import cd.casic.ci.process.dto.resp.resource.ResourceListResp; import cd.casic.ci.process.process.converter.ResourceConverter; import cd.casic.ci.process.process.dao.pipeline.PipResourceManagerDao; import cd.casic.ci.process.process.dataObject.resource.PipResourceManager; import cd.casic.ci.process.process.service.resource.ResourceManagerService; +import cd.casic.framework.commons.pojo.PageResult; import cd.casic.module.execute.docker.dao.DockerEndpointDao; import cd.casic.module.execute.docker.dataobject.dto.DockerEndpointDo; import cd.casic.module.execute.docker.dataobject.model.DockerEndpoint; import cd.casic.module.machine.dal.dataobject.MachineInfoDO; import cd.casic.module.machine.service.MachineInfoService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.apache.cxf.resource.ResourceManager; import org.springframework.stereotype.Service; +import java.util.List; import java.util.Objects; /** @@ -42,7 +50,7 @@ public class ResourceManagerServiceImpl extends ServiceImpl page(ResourcePageReq req) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + Page page = pipResourceManagerDao.selectPage(new Page<>(req.getPageNo(), req.getPageSize()), wrapper); + List list = converter.converter(page.getRecords()); + return new PageResult<>(list, page.getTotal(), page.getCurrent(), page.getSize()); + + } + + @Override + public List list(ResourceListReq req) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + List list = pipResourceManagerDao.selectList(wrapper); + return converter.converter(list); + } } diff --git a/ops-server/src/test/java/cd/casic/server/DockerTest.java b/ops-server/src/test/java/cd/casic/server/DockerTest.java index 66f4f3ff..531292bb 100644 --- a/ops-server/src/test/java/cd/casic/server/DockerTest.java +++ b/ops-server/src/test/java/cd/casic/server/DockerTest.java @@ -1,5 +1,4 @@ package cd.casic.server; -import cd.casic.ci.process.util.CryptogramUtil; import com.github.dockerjava.api.DockerClient; import com.github.dockerjava.api.command.CreateContainerResponse; import com.github.dockerjava.api.command.ExecCreateCmdResponse; diff --git a/ops-server/src/test/java/cd/casic/server/ZipFileTest.java b/ops-server/src/test/java/cd/casic/server/ZipFileTest.java index c79110e6..ab2ea76e 100644 --- a/ops-server/src/test/java/cd/casic/server/ZipFileTest.java +++ b/ops-server/src/test/java/cd/casic/server/ZipFileTest.java @@ -1,7 +1,6 @@ package cd.casic.server; import cd.casic.ci.process.properties.TargetFileUploadProperties; -import cd.casic.ci.process.util.CryptogramUtil; import cd.casic.ci.process.util.SftpUploadUtil; import com.jcraft.jsch.*; import jakarta.annotation.Resource;