0515 ljc
This commit is contained in:
parent
bf6541ea55
commit
c9c834a617
@ -2,6 +2,8 @@ package cd.casic.ci.common.pipeline.req.resource;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
public class ResourceQueryReq {
|
||||
/**
|
||||
@ -108,4 +110,18 @@ public class ResourceQueryReq {
|
||||
* 流水线id
|
||||
*/
|
||||
private String pipelineId;
|
||||
|
||||
/**
|
||||
* 创建人用户id
|
||||
*/
|
||||
private String createUserId;
|
||||
|
||||
private String updateUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
@ -2,6 +2,8 @@ package cd.casic.ci.common.pipeline.req.resource;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
public class ResourceReq {
|
||||
/**
|
||||
@ -108,4 +110,18 @@ public class ResourceReq {
|
||||
* 流水线id
|
||||
*/
|
||||
private String pipelineId;
|
||||
|
||||
/**
|
||||
* 创建人用户id
|
||||
*/
|
||||
private String createUserId;
|
||||
|
||||
private String updateUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
@ -2,6 +2,8 @@ package cd.casic.ci.common.pipeline.resp.resource;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
public class ResourceResp {
|
||||
/**
|
||||
@ -108,4 +110,18 @@ public class ResourceResp {
|
||||
* 流水线id
|
||||
*/
|
||||
private String pipelineId;
|
||||
|
||||
/**
|
||||
* 创建人用户id
|
||||
*/
|
||||
private String createUserId;
|
||||
|
||||
private String updateUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
@ -2,6 +2,8 @@ package cd.casic.ci.process.process.dataObject.resource;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
public class PipResource {
|
||||
/**
|
||||
@ -108,4 +110,18 @@ public class PipResource {
|
||||
* 流水线id
|
||||
*/
|
||||
private String pipelineId;
|
||||
|
||||
/**
|
||||
* 创建人用户id
|
||||
*/
|
||||
private String createUserId;
|
||||
|
||||
private String updateUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
private LocalDateTime updateTime;
|
||||
}
|
||||
|
@ -20,4 +20,6 @@ public interface PipelineService extends IService<PipPipeline> {
|
||||
String createPipeline(@Valid PipelineCreateReq pipelineReq);
|
||||
|
||||
List<PipelineFindResp> findPipelineList(@Valid PipelineQueryReq pipelineQueryReq);
|
||||
|
||||
void deletePipeline(String pipelineId);
|
||||
}
|
||||
|
@ -3,16 +3,22 @@ package cd.casic.ci.process.process.service.pipeline.impl;
|
||||
import cd.casic.ci.common.pipeline.req.pipeline.PipelineCreateReq;
|
||||
import cd.casic.ci.common.pipeline.req.pipeline.PipelineQueryReq;
|
||||
import cd.casic.ci.common.pipeline.resp.pipeline.PipelineFindResp;
|
||||
import cd.casic.ci.common.pipeline.resp.stage.StageResp;
|
||||
import cd.casic.ci.process.process.converter.PipelineConverter;
|
||||
import cd.casic.ci.process.process.dal.pipeline.PipResourceDao;
|
||||
import cd.casic.ci.process.process.dal.pipeline.PipStageDao;
|
||||
import cd.casic.ci.process.process.dal.pipeline.PipTaskDao;
|
||||
import cd.casic.ci.process.process.dal.pipeline.PipelineDao;
|
||||
import cd.casic.ci.process.process.dataObject.pipeline.PipPipeline;
|
||||
import cd.casic.ci.process.process.dataObject.resource.PipResource;
|
||||
import cd.casic.ci.process.process.dataObject.stage.PipStage;
|
||||
import cd.casic.ci.process.process.dataObject.task.PipTask;
|
||||
import cd.casic.ci.process.process.converter.PipelineConverter;
|
||||
import cd.casic.ci.process.process.service.pipeline.PipelineService;
|
||||
import cd.casic.ci.process.process.service.resource.impl.ResourceServiceImpl;
|
||||
import cd.casic.ci.process.process.service.stage.impl.StageServiceImpl;
|
||||
import cd.casic.ci.process.process.service.task.impl.TaskServiceImpl;
|
||||
import cd.casic.framework.commons.exception.ServiceException;
|
||||
import cd.casic.framework.commons.exception.enums.GlobalErrorCodeConstants;
|
||||
import cd.casic.framework.commons.util.object.BeanUtils;
|
||||
import cd.casic.framework.commons.util.util.WebFrameworkUtils;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
@ -21,6 +27,7 @@ import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.util.ObjectUtils;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
@ -50,6 +57,15 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
@Resource
|
||||
private PipelineDao pipelineDao;
|
||||
|
||||
@Resource
|
||||
private PipStageDao pipStageDao;
|
||||
|
||||
@Resource
|
||||
private PipTaskDao pipTaskDao;
|
||||
|
||||
@Resource
|
||||
private PipResourceDao pipResourceDao;
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public String createPipeline(PipelineCreateReq pipelineReq) {
|
||||
@ -85,6 +101,7 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
stageService.save(stageReq1);
|
||||
|
||||
PipStage childStage1 = new PipStage();
|
||||
childStage1.setPipelineId(pipeline.getId());
|
||||
childStage1.setStageName("源码");
|
||||
childStage1.setCreateTime(LocalDateTime.now());
|
||||
childStage1.setStageSort(1);
|
||||
@ -105,6 +122,7 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
//新增并行阶段
|
||||
PipStage childStage21 = new PipStage();
|
||||
childStage21.setStageName("并行阶段-2-1");
|
||||
childStage21.setPipelineId(pipeline.getId());
|
||||
childStage21.setCreateTime(LocalDateTime.now());
|
||||
childStage21.setStageSort(1);
|
||||
childStage21.setCode(false);
|
||||
@ -113,8 +131,9 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
|
||||
//新增串行阶段
|
||||
PipTask childTask21 = new PipTask();
|
||||
childTask21.setCreateTime(LocalDateTime.now());
|
||||
childTask21.setPipelineId(pipeline.getId());
|
||||
childTask21.setTaskName("串行任务-2-1");
|
||||
childTask21.setCreateTime(LocalDateTime.now());
|
||||
childTask21.setTaskType("test");
|
||||
childTask21.setTaskSort(1);
|
||||
childTask21.setStageId(childStage21.getStageId());
|
||||
@ -123,6 +142,7 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
//------------------------------------------------------------------
|
||||
PipStage childStage22 = new PipStage();
|
||||
childStage22.setStageName("并行阶段-2-2");
|
||||
childStage22.setPipelineId(pipeline.getId());
|
||||
childStage22.setCreateTime(LocalDateTime.now());
|
||||
childStage22.setStageSort(2);
|
||||
childStage22.setCode(false);
|
||||
@ -132,6 +152,7 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
PipTask childTask22 = new PipTask();
|
||||
childTask22.setCreateTime(LocalDateTime.now());
|
||||
childTask22.setTaskName("串行任务-2-2");
|
||||
childTask22.setPipelineId(pipeline.getId());
|
||||
childTask22.setTaskType("test");
|
||||
childTask22.setTaskSort(2);
|
||||
childTask22.setStageId(childStage22.getStageId());
|
||||
@ -147,20 +168,22 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
stageReq3.setCode(true);
|
||||
stageService.save(stageReq3);
|
||||
|
||||
PipStage childStage3 = new PipStage();
|
||||
childStage3.setStageName("");
|
||||
childStage3.setCreateTime(LocalDateTime.now());
|
||||
childStage3.setStageSort(1);
|
||||
childStage3.setCode(false);
|
||||
childStage3.setParentId(stageReq3.getStageId());
|
||||
stageService.save(childStage3);
|
||||
PipStage childStage31 = new PipStage();
|
||||
childStage31.setStageName("并行任务-3-1");
|
||||
childStage31.setPipelineId(pipeline.getId());
|
||||
childStage31.setCreateTime(LocalDateTime.now());
|
||||
childStage31.setStageSort(1);
|
||||
childStage31.setCode(false);
|
||||
childStage31.setParentId(stageReq3.getStageId());
|
||||
stageService.save(childStage31);
|
||||
|
||||
PipTask childTask31 = new PipTask();
|
||||
childTask31.setCreateTime(LocalDateTime.now());
|
||||
childTask31.setTaskName("串行任务-3-1");
|
||||
childTask31.setPipelineId(pipeline.getId());
|
||||
childTask31.setTaskType("test");
|
||||
childTask31.setTaskSort(1);
|
||||
childTask31.setStageId(childStage3.getStageId());
|
||||
childTask31.setStageId(childStage31.getStageId());
|
||||
taskService.save(childTask31);
|
||||
|
||||
//创建第四个阶段
|
||||
@ -173,20 +196,22 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
stageReq4.setCode(true);
|
||||
stageService.save(stageReq4);
|
||||
|
||||
PipStage childStage4 = new PipStage();
|
||||
childStage4.setStageName("");
|
||||
childStage4.setCreateTime(LocalDateTime.now());
|
||||
childStage4.setStageSort(1);
|
||||
childStage4.setCode(false);
|
||||
childStage4.setParentId(stageReq4.getStageId());
|
||||
stageService.save(childStage4);
|
||||
PipStage childStage41 = new PipStage();
|
||||
childStage41.setStageName("并行任务-4-1");
|
||||
childStage41.setPipelineId(pipeline.getId());
|
||||
childStage41.setCreateTime(LocalDateTime.now());
|
||||
childStage41.setStageSort(1);
|
||||
childStage41.setCode(false);
|
||||
childStage41.setParentId(stageReq4.getStageId());
|
||||
stageService.save(childStage41);
|
||||
|
||||
PipTask childTask41 = new PipTask();
|
||||
childTask41.setCreateTime(LocalDateTime.now());
|
||||
childTask41.setTaskName("串行任务-4-1");
|
||||
childTask41.setPipelineId(pipeline.getId());
|
||||
childTask41.setTaskType("test");
|
||||
childTask41.setTaskSort(1);
|
||||
childTask41.setStageId(childStage4.getStageId());
|
||||
childTask41.setStageId(childStage41.getStageId());
|
||||
taskService.save(childTask41);
|
||||
|
||||
//TODO 创建对应的鉴权关系
|
||||
@ -230,6 +255,72 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
if (ObjectUtils.isEmpty(pipPipelines)){
|
||||
return new ArrayList<>(0);
|
||||
}
|
||||
return PipelineConverter.INSTANCE.toRespList(pipPipelines);
|
||||
|
||||
List<PipelineFindResp> respList = PipelineConverter.INSTANCE.toRespList(pipPipelines);
|
||||
|
||||
//对流水线进行流水线信息赋值
|
||||
respList.forEach(this::setStageAndTask);
|
||||
return respList;
|
||||
}
|
||||
|
||||
private void setStageAndTask(PipelineFindResp o) {
|
||||
List<StageResp> stageRespList = new ArrayList<>(0);
|
||||
|
||||
// stageService.findAllStages(o.getId())
|
||||
//设置所有阶段属性
|
||||
PipStage pipStage = new PipStage();
|
||||
pipStage.setPipelineId(o.getId());
|
||||
pipStage.setParentId("-1");
|
||||
List<PipStage> pipStageList = stageService.getPipStageList(pipStage);
|
||||
if (!CollectionUtils.isEmpty(pipStageList)){
|
||||
//设置最外层阶段属性
|
||||
pipStageList.forEach(item -> {
|
||||
StageResp stageResp = new StageResp();
|
||||
stageResp.setStageId(item.getStageId());
|
||||
stageResp.setStageName(item.getStageName());
|
||||
stageResp.setPipelineId(item.getPipelineId());
|
||||
// stageResp.setCreateTime();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void deletePipeline(String pipelineId) {
|
||||
if (ObjectUtils.isEmpty(pipelineId)){
|
||||
throw new ServiceException(GlobalErrorCodeConstants.INTERNAL_SERVER_ERROR.getCode(),"请求参数不能为空");
|
||||
}
|
||||
|
||||
PipPipeline pipeline = pipelineDao.selectById(pipelineId);
|
||||
if (ObjectUtils.isEmpty(pipeline)){
|
||||
throw new ServiceException(GlobalErrorCodeConstants.INTERNAL_SERVER_ERROR.getCode(),"流水线不存在");
|
||||
}
|
||||
pipelineDao.deleteById(pipelineId);
|
||||
|
||||
//根据流水线id查询节点和配置信息
|
||||
PipStage pipStage = new PipStage();
|
||||
pipStage.setPipelineId(pipelineId);
|
||||
List<PipStage> pipStageList = stageService.getPipStageList(pipStage);
|
||||
if (!CollectionUtils.isEmpty(pipStageList)){
|
||||
List<String> list = pipStageList.stream().map(PipStage::getStageId).toList();
|
||||
pipStageDao.deleteByIds(list);
|
||||
}
|
||||
|
||||
PipTask pipTask = new PipTask();
|
||||
pipTask.setPipelineId(pipelineId);
|
||||
List<PipTask> task = taskService.getTask(pipTask);
|
||||
if (!CollectionUtils.isEmpty(task)){
|
||||
List<String> list = task.stream().map(PipTask::getTaskId).toList();
|
||||
pipTaskDao.deleteByIds(list);
|
||||
}
|
||||
|
||||
//删除resource表数据
|
||||
QueryWrapper<PipResource> wrapper = new QueryWrapper<>();
|
||||
wrapper.eq("pipeline_id",pipelineId);
|
||||
List<PipResource> pipResources = pipResourceDao.selectList(wrapper);
|
||||
if (!CollectionUtils.isEmpty(pipResources)){
|
||||
List<String> list = pipResources.stream().map(PipResource::getId).toList();
|
||||
pipResourceDao.deleteByIds(list);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,7 +5,6 @@ import cd.casic.ci.common.pipeline.req.stage.StageCreateReq;
|
||||
import cd.casic.ci.common.pipeline.req.stage.StageReq;
|
||||
import cd.casic.ci.common.pipeline.req.task.TaskCreateReq;
|
||||
import cd.casic.ci.common.pipeline.resp.stage.StageResp;
|
||||
|
||||
import cd.casic.ci.process.process.dal.pipeline.PipStageDao;
|
||||
import cd.casic.ci.process.process.dataObject.stage.PipStage;
|
||||
import cd.casic.ci.process.process.dataObject.task.PipTask;
|
||||
@ -31,9 +30,6 @@ import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static cd.casic.ci.process.constant.PipelineFinalConstant.TASK_TYPE_CODE;
|
||||
|
||||
@Service
|
||||
public class StageServiceImpl extends ServiceImpl<PipStageDao, PipStage> implements StageService {
|
||||
@ -258,7 +254,7 @@ public class StageServiceImpl extends ServiceImpl<PipStageDao, PipStage> impleme
|
||||
|
||||
}
|
||||
|
||||
private List<PipStage> getPipStageList(PipStage pipStage){
|
||||
public List<PipStage> getPipStageList(PipStage pipStage){
|
||||
LambdaQueryWrapper<PipStage> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(StringUtils.isNotEmpty(pipStage.getStageId()),PipStage::getStageId,pipStage.getStageId());
|
||||
wrapper.eq(StringUtils.isNotEmpty(pipStage.getPipelineId()),PipStage::getPipelineId,pipStage.getPipelineId());
|
||||
|
@ -57,7 +57,7 @@ public class PipelineController {
|
||||
@PostMapping(path="/deletePipeline")
|
||||
public CommonResult<Void> deletePipeline(@NotNull String pipelineId){
|
||||
|
||||
// pipelineService.deletePipeline(pipelineId);
|
||||
pipelineService.deletePipeline(pipelineId);
|
||||
|
||||
return CommonResult.success();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user