...
|
...
|
@@ -93,43 +93,52 @@ public class ReleaseServiceImpl implements ReleaseService { |
|
|
|
|
|
/**
|
|
|
* 创建工单
|
|
|
* 工单如果有多个云,则生成多个工单
|
|
|
*
|
|
|
* @param releaseWorkJob
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
public int createReleaseWorkJob(ReleaseWorkJob releaseWorkJob) {
|
|
|
int result=-1;
|
|
|
String[] cloudArray=releaseWorkJob.getEnvironment().split(",");
|
|
|
for(String currentCloud:cloudArray){
|
|
|
if(StringUtils.isBlank(currentCloud)){
|
|
|
continue;
|
|
|
}
|
|
|
//插入工单表
|
|
|
WorkJob workJob = new WorkJob();
|
|
|
workJob.setType(WorkType.RELEASE_PROJECT);
|
|
|
workJob.setTitle(releaseWorkJob.getTitle());
|
|
|
workJobMapper.insert(workJob);
|
|
|
|
|
|
//插入工单表
|
|
|
WorkJob workJob = new WorkJob();
|
|
|
workJob.setType(WorkType.RELEASE_PROJECT);
|
|
|
workJob.setTitle(releaseWorkJob.getTitle());
|
|
|
workJobMapper.insert(workJob);
|
|
|
|
|
|
//生成工单id
|
|
|
String workId = WorkType.RELEASE_PROJECT + StringUtils.leftPad(workJob.getId()+"",7,"0");
|
|
|
workJob.setWorkId(workId);
|
|
|
workJobMapper.update(workJob);
|
|
|
|
|
|
releaseWorkJob.setId(workId);
|
|
|
//插入发布工单表
|
|
|
releaseWorkJob.setStatus(WorkStatus.PUBLISH);
|
|
|
int result = releaseWorkJobMapper.insert(releaseWorkJob);
|
|
|
if (result < 1) {
|
|
|
return -1;
|
|
|
}
|
|
|
//插入用户处理工单表
|
|
|
HandledJob handledJob = new HandledJob(WorkType.RELEASE_PROJECT, releaseWorkJob.getId(), releaseWorkJob.getTitle(), releaseWorkJob.getDevelop(), HandlerRole.DEVELOP,HandleType.CREATE,HandleType.getCtype(HandleType.CREATE) );
|
|
|
//生成工单id
|
|
|
String workId = WorkType.RELEASE_PROJECT + StringUtils.leftPad(workJob.getId()+"",7,"0");
|
|
|
workJob.setWorkId(workId);
|
|
|
workJobMapper.update(workJob);
|
|
|
|
|
|
handledJobMapper.insert(handledJob);
|
|
|
releaseWorkJob.setId(workId);
|
|
|
//插入发布工单表
|
|
|
releaseWorkJob.setStatus(WorkStatus.PUBLISH);
|
|
|
result = releaseWorkJobMapper.insert(releaseWorkJob);
|
|
|
if (result < 1) {
|
|
|
return -1;
|
|
|
}
|
|
|
//插入用户处理工单表
|
|
|
HandledJob handledJob = new HandledJob(WorkType.RELEASE_PROJECT, releaseWorkJob.getId(), releaseWorkJob.getTitle(), releaseWorkJob.getDevelop(), HandlerRole.DEVELOP,HandleType.CREATE,HandleType.getCtype(HandleType.CREATE) );
|
|
|
|
|
|
handledJobMapper.insert(handledJob);
|
|
|
|
|
|
//插入用户待处理工单表
|
|
|
PendingJob pendingJob = new PendingJob(WorkType.RELEASE_PROJECT, releaseWorkJob.getId(), releaseWorkJob.getTitle(), releaseWorkJob.getTest(), HandlerRole.TEST, WorkStatus.PUBLISH);
|
|
|
workSystemSupport.addPending(pendingJob,false);
|
|
|
|
|
|
// 同时让leader有工单的处理权限
|
|
|
pendingJob = new PendingJob(WorkType.RELEASE_PROJECT, releaseWorkJob.getId(), releaseWorkJob.getTitle(), releaseWorkJob.getTest(), HandlerRole.LEADER, WorkStatus.PUBLISH);
|
|
|
workSystemSupport.addPendingByRole(pendingJob,false);
|
|
|
}
|
|
|
|
|
|
//插入用户待处理工单表
|
|
|
PendingJob pendingJob = new PendingJob(WorkType.RELEASE_PROJECT, releaseWorkJob.getId(), releaseWorkJob.getTitle(), releaseWorkJob.getTest(), HandlerRole.TEST, WorkStatus.PUBLISH);
|
|
|
workSystemSupport.addPending(pendingJob,false);
|
|
|
|
|
|
// 同时让leader有工单的处理权限
|
|
|
pendingJob = new PendingJob(WorkType.RELEASE_PROJECT, releaseWorkJob.getId(), releaseWorkJob.getTitle(), releaseWorkJob.getTest(), HandlerRole.LEADER, WorkStatus.PUBLISH);
|
|
|
workSystemSupport.addPendingByRole(pendingJob,false);
|
|
|
return result;
|
|
|
}
|
|
|
|
...
|
...
|
|