目标删除增加逻辑判断
This commit is contained in:
parent
2e7a183b8a
commit
c5649a7acd
@ -38,4 +38,5 @@ public interface PipelineService extends IService<PipPipeline> {
|
||||
|
||||
TreeRunContextResp getPipelineRunState(String pipelineId);
|
||||
Long getGroupCount(String groupId);
|
||||
Boolean targetVersionInUse(List<String> targetVersionId);
|
||||
}
|
||||
|
@ -540,6 +540,16 @@ public class PipelineServiceImpl extends ServiceImpl<PipelineDao, PipPipeline> i
|
||||
return pipelineDao.selectCount(wrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean targetVersionInUse(List<String> targetVersionId) {
|
||||
if (CollectionUtils.isEmpty(targetVersionId)) {
|
||||
return false;
|
||||
}
|
||||
LambdaQueryWrapper<PipPipeline> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(PipPipeline::getTargetVersionId,targetVersionId);
|
||||
return pipelineDao.exists(wrapper);
|
||||
}
|
||||
|
||||
private String between(LocalDateTime startTime,LocalDateTime endTime){
|
||||
if (startTime==null||endTime==null) {
|
||||
return "";
|
||||
|
@ -11,6 +11,7 @@ import cd.casic.ci.process.process.dao.pipeline.TargetVersionDao;
|
||||
import cd.casic.ci.process.process.dataObject.base.BaseIdReq;
|
||||
import cd.casic.ci.process.process.dataObject.target.TargetManager;
|
||||
import cd.casic.ci.process.process.dataObject.target.TargetVersion;
|
||||
import cd.casic.ci.process.process.service.pipeline.PipelineService;
|
||||
import cd.casic.ci.process.process.service.target.TargetManagerService;
|
||||
import cd.casic.ci.process.properties.TargetFileUploadProperties;
|
||||
import cd.casic.ci.process.util.SftpUploadUtil;
|
||||
@ -63,8 +64,8 @@ public class TargetManagerServiceImpl extends ServiceImpl<TargetManagerDao, Targ
|
||||
private AdminUserServiceImpl adminUserService;
|
||||
@Resource
|
||||
private TargetFileUploadProperties fileUploadProperties;
|
||||
|
||||
|
||||
@Resource
|
||||
private PipelineService pipelineService;
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void createTarget(TargetManagerCreateReq req) {
|
||||
@ -121,6 +122,9 @@ public class TargetManagerServiceImpl extends ServiceImpl<TargetManagerDao, Targ
|
||||
//删除对应的version版本
|
||||
List<TargetVersionResp> versionList = targetVersionService.selectListByManagerId(targetManager.getId());
|
||||
List<String> versionIdList = versionList.stream().map(TargetVersionResp::getId).toList();
|
||||
if (pipelineService.targetVersionInUse(versionIdList)) {
|
||||
throw new ServiceException(GlobalErrorCodeConstants.INTERNAL_SERVER_ERROR.getCode(),"当前目标正在被流水线使用无法删除");
|
||||
}
|
||||
targetVersionDao.deleteByIds(versionIdList);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user