From f77406382184cb4eb7605a73ef58f2d4767dd6f2 Mon Sep 17 00:00:00 2001 From: dengqichen Date: Fri, 10 Jan 2025 15:07:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=A3=B0=E9=81=93=E6=92=92=E6=97=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backend/deploy/dto/ApplicationDTO.java | 4 +++ .../service/impl/ApplicationServiceImpl.java | 28 ++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ApplicationDTO.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ApplicationDTO.java index 4430c032..5f697f3e 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ApplicationDTO.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ApplicationDTO.java @@ -31,9 +31,13 @@ public class ApplicationDTO extends BaseDTO { @NotNull(message = "代码仓库组ID不能为空") private Long repoGroupId; + private RepositoryGroupDTO repositoryGroup; + @NotNull(message = "代码仓库项目ID不能为空") private Long repoProjectId; + private RepositoryProjectDTO repositoryProject; + @NotNull(message = "所属项目组ID不能为空") private Long projectGroupId; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java index 21ca1db0..ae967128 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java @@ -2,13 +2,19 @@ package com.qqchen.deploy.backend.deploy.service.impl; import com.qqchen.deploy.backend.deploy.converter.ApplicationConverter; import com.qqchen.deploy.backend.deploy.converter.ProjectGroupConverter; +import com.qqchen.deploy.backend.deploy.converter.RepositoryGroupConverter; +import com.qqchen.deploy.backend.deploy.converter.RepositoryProjectConverter; import com.qqchen.deploy.backend.deploy.dto.ApplicationDTO; import com.qqchen.deploy.backend.deploy.dto.DevelopmentLanguageTypeDTO; import com.qqchen.deploy.backend.deploy.entity.Application; import com.qqchen.deploy.backend.deploy.entity.ProjectGroup; +import com.qqchen.deploy.backend.deploy.entity.RepositoryGroup; +import com.qqchen.deploy.backend.deploy.entity.RepositoryProject; import com.qqchen.deploy.backend.deploy.enums.DevelopmentLanguageTypeEnum; import com.qqchen.deploy.backend.deploy.query.ApplicationQuery; import com.qqchen.deploy.backend.deploy.repository.IProjectGroupRepository; +import com.qqchen.deploy.backend.deploy.repository.IRepositoryGroupRepository; +import com.qqchen.deploy.backend.deploy.repository.IRepositoryProjectRepository; import com.qqchen.deploy.backend.deploy.service.IApplicationService; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import jakarta.annotation.Resource; @@ -26,18 +32,38 @@ import static java.util.stream.Collectors.toList; @Service public class ApplicationServiceImpl extends BaseServiceImpl implements IApplicationService { - @Resource private IProjectGroupRepository projectGroupRepository; @Resource private ProjectGroupConverter projectGroupConverter; + @Resource + private IRepositoryGroupRepository repositoryGroupRepository; + + @Resource + private IRepositoryProjectRepository repositoryProjectRepository; + + @Resource + private RepositoryGroupConverter repositoryGroupConverter; + + @Resource + private RepositoryProjectConverter repositoryProjectConverter; + public Page page(ApplicationQuery query) { Page page = super.page(query); List result = page.getContent().stream().peek(application -> { + // 查询并设置项目组信息 Optional projectGroupOptional = projectGroupRepository.findById(application.getProjectGroupId()); projectGroupOptional.ifPresent(projectGroup -> application.setProjectGroup(projectGroupConverter.toDto(projectGroup))); + + // 查询并设置代码仓库组信息 + Optional repositoryGroupOptional = repositoryGroupRepository.findById(application.getRepoGroupId()); + repositoryGroupOptional.ifPresent(repositoryGroup -> application.setRepositoryGroup(repositoryGroupConverter.toDto(repositoryGroup))); + + // 查询并设置代码仓库项目信息 + Optional repositoryProjectOptional = repositoryProjectRepository.findById(application.getRepoProjectId()); + repositoryProjectOptional.ifPresent(repositoryProject -> application.setRepositoryProject(repositoryProjectConverter.toDto(repositoryProject))); }).collect(toList()); return new PageImpl<>(result, page.getPageable(), page.getTotalElements()); }