大声道撒旦
This commit is contained in:
parent
2d41b2793f
commit
ceb37dfe8b
@ -5,6 +5,10 @@ import com.qqchen.deploy.backend.deploy.entity.Application;
|
|||||||
import com.qqchen.deploy.backend.framework.converter.BaseConverter;
|
import com.qqchen.deploy.backend.framework.converter.BaseConverter;
|
||||||
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Mapper(config = BaseConverter.class)
|
@Mapper(config = BaseConverter.class)
|
||||||
public interface ApplicationConverter extends BaseConverter<Application, ApplicationDTO> {
|
public interface ApplicationConverter extends BaseConverter<Application, ApplicationDTO> {
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -34,5 +34,8 @@ public class ApplicationDTO extends BaseDTO {
|
|||||||
@NotNull(message = "排序号不能为空")
|
@NotNull(message = "排序号不能为空")
|
||||||
private Integer sort;
|
private Integer sort;
|
||||||
|
|
||||||
|
private Long projectGroupId;
|
||||||
|
|
||||||
private ProjectGroupDTO projectGroup;
|
private ProjectGroupDTO projectGroup;
|
||||||
}
|
|
||||||
|
}
|
||||||
@ -0,0 +1,4 @@
|
|||||||
|
package com.qqchen.deploy.backend.deploy.dto.variables;
|
||||||
|
|
||||||
|
public class JenkinsBuildVariables {
|
||||||
|
}
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
package com.qqchen.deploy.backend.deploy.entity;
|
||||||
|
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.databind.JsonNode;
|
||||||
|
import com.qqchen.deploy.backend.deploy.enums.BuildTypeEnum;
|
||||||
|
import com.qqchen.deploy.backend.framework.domain.Entity;
|
||||||
|
import com.vladmihalcea.hibernate.type.json.JsonType;
|
||||||
|
import jakarta.persistence.Column;
|
||||||
|
import jakarta.persistence.EnumType;
|
||||||
|
import jakarta.persistence.Enumerated;
|
||||||
|
import jakarta.persistence.Table;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import org.hibernate.annotations.Type;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@jakarta.persistence.Entity
|
||||||
|
@Table(name = "deploy_app_config")
|
||||||
|
public class DeployAppConfig extends Entity<Long> {
|
||||||
|
|
||||||
|
|
||||||
|
@Column(name = "environment_id", nullable = false)
|
||||||
|
private Long environmentId;
|
||||||
|
|
||||||
|
@Column(name = "application_id", nullable = false)
|
||||||
|
private Long applicationId;
|
||||||
|
|
||||||
|
@Column(nullable = false)
|
||||||
|
@Enumerated(EnumType.STRING)
|
||||||
|
private BuildTypeEnum buildType;
|
||||||
|
|
||||||
|
@Type(JsonType.class)
|
||||||
|
@Column(name = "build_variables", columnDefinition = "text", nullable = false)
|
||||||
|
private JsonNode buildVariables;
|
||||||
|
}
|
||||||
@ -4,6 +4,11 @@ import com.qqchen.deploy.backend.deploy.dto.ApplicationDTO;
|
|||||||
import com.qqchen.deploy.backend.deploy.entity.Application;
|
import com.qqchen.deploy.backend.deploy.entity.Application;
|
||||||
import com.qqchen.deploy.backend.deploy.query.ApplicationQuery;
|
import com.qqchen.deploy.backend.deploy.query.ApplicationQuery;
|
||||||
import com.qqchen.deploy.backend.framework.service.IBaseService;
|
import com.qqchen.deploy.backend.framework.service.IBaseService;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
|
||||||
public interface IApplicationService extends IBaseService<Application, ApplicationDTO, ApplicationQuery, Long> {
|
public interface IApplicationService extends IBaseService<Application, ApplicationDTO, ApplicationQuery, Long> {
|
||||||
|
|
||||||
|
Page<ApplicationDTO> page(ApplicationQuery query);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1,13 +1,41 @@
|
|||||||
package com.qqchen.deploy.backend.deploy.service.impl;
|
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.dto.ApplicationDTO;
|
import com.qqchen.deploy.backend.deploy.dto.ApplicationDTO;
|
||||||
import com.qqchen.deploy.backend.deploy.entity.Application;
|
import com.qqchen.deploy.backend.deploy.entity.Application;
|
||||||
|
import com.qqchen.deploy.backend.deploy.entity.ProjectGroup;
|
||||||
import com.qqchen.deploy.backend.deploy.query.ApplicationQuery;
|
import com.qqchen.deploy.backend.deploy.query.ApplicationQuery;
|
||||||
|
import com.qqchen.deploy.backend.deploy.repository.IProjectGroupRepository;
|
||||||
import com.qqchen.deploy.backend.deploy.service.IApplicationService;
|
import com.qqchen.deploy.backend.deploy.service.IApplicationService;
|
||||||
import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl;
|
import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.PageImpl;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
|
import static java.util.stream.Collectors.toList;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ApplicationServiceImpl extends BaseServiceImpl<Application, ApplicationDTO, ApplicationQuery, Long> implements IApplicationService {
|
public class ApplicationServiceImpl extends BaseServiceImpl<Application, ApplicationDTO, ApplicationQuery, Long> implements IApplicationService {
|
||||||
|
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IProjectGroupRepository projectGroupRepository;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ProjectGroupConverter projectGroupConverter;
|
||||||
|
|
||||||
|
public Page<ApplicationDTO> page(ApplicationQuery query) {
|
||||||
|
Page<ApplicationDTO> page = super.page(query);
|
||||||
|
List<ApplicationDTO> result = page.getContent().stream().peek(application -> {
|
||||||
|
Optional<ProjectGroup> projectGroupOptional = projectGroupRepository.findById(application.getProjectGroupId());
|
||||||
|
projectGroupOptional.ifPresent(projectGroup -> application.setProjectGroup(projectGroupConverter.toDto(projectGroup)));
|
||||||
|
}).collect(toList());
|
||||||
|
return new PageImpl<>(result, page.getPageable(), page.getTotalElements());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user