diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteController.java index 1d10f71f..8ec505a8 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteController.java @@ -11,10 +11,7 @@ import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.io.IOException; @@ -169,10 +166,10 @@ public class CompeteController { String enrollPlayInfoList= competeService.enrollPlayInfoWps(params); return JsonResponse.newInstance().ok(enrollPlayInfoList); } - @MustLogin - @ApiOperation(value = "报名表详情表", notes = "") - @RequestMapping(value = "/enroll", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse enrollPlayInfo(@ApiParam @Validated @RequestBody QueryDto params) throws Exception { + + @ApiOperation(value = "报名表详情表下载", notes = "") + @RequestMapping(value = "/enroll", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"}) + public JsonResponse enrollPlayInfo(@ApiParam CompeteDto.CompeteType params) throws Exception { log.info("查询各个项目报名人员信息:{}",params); String enrollPlayInfoList= competeService.enrollPlayInfo(params); return JsonResponse.newInstance().ok(enrollPlayInfoList); diff --git a/mt/src/main/java/com/ccsens/mt/service/CompeteService.java b/mt/src/main/java/com/ccsens/mt/service/CompeteService.java index c605ef24..0ba8cadb 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteService.java @@ -608,9 +608,9 @@ public class CompeteService implements ICompeteService { } @Override - public String enrollPlayInfo(QueryDto params) throws Exception { - CompeteDto.CompeteType competeType = params.getParam(); - List arrayList = getEnrollPlayInfos(competeType); + public String enrollPlayInfo(CompeteDto.CompeteType params) throws Exception { +// CompeteDto.CompeteType competeType = params.getParam(); + List arrayList = getEnrollPlayInfos(params); String path = getExcelFilePath(arrayList); return PropUtil.domain + "file/download/know?path="+path; diff --git a/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java b/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java index d759058a..4e89f125 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java @@ -120,7 +120,7 @@ public interface ICompeteService { * @param params 项目类型信息 * @return 返回参赛者的详细信息 */ - String enrollPlayInfo(QueryDto params) throws IOException, Exception; + String enrollPlayInfo(CompeteDto.CompeteType params) throws IOException, Exception; /** * 根据项目类型查询参赛者信息 diff --git a/mt/src/main/resources/application.yml b/mt/src/main/resources/application.yml index d082c0ea..5c2cd5c4 100644 --- a/mt/src/main/resources/application.yml +++ b/mt/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: prod - include: common, util-prod \ No newline at end of file + active: dev + include: common, util-dev \ No newline at end of file diff --git a/tall/src/main/java/com/ccsens/tall/service/LabelService.java b/tall/src/main/java/com/ccsens/tall/service/LabelService.java index ab3764e3..1941d333 100644 --- a/tall/src/main/java/com/ccsens/tall/service/LabelService.java +++ b/tall/src/main/java/com/ccsens/tall/service/LabelService.java @@ -222,77 +222,75 @@ public class LabelService implements ILabelService { @Override public List taskAddLabel(Long currentUserId, LabelDto.TaskLabel taskLabel) { -// Long taskId = taskLabel.getTaskId(); -// ProTaskSubTime proTaskSubTime = taskSubTimeMapper.selectByPrimaryKey(taskLabel.getTaskId()); -// if (ObjectUtil.isNotNull(proTaskSubTime)) { -// taskId = proTaskSubTime.getTaskDetailId(); -// } -// List selectLabelList; -// ProTaskDetail taskDetail = taskDetailDao.selectByPrimaryKey(taskId); -// if (ObjectUtil.isNull(taskDetail)) { -// throw new BaseException(CodeEnum.NOT_TASK); -// } -// if (CollectionUtil.isNotEmpty(taskLabel.getLabelList())) { -// Long finalTaskId = taskId; -// taskLabel.getLabelList().forEach(labelId -> { -// SysLabel sysLabel = sysLabelDao.selectByPrimaryKey(labelId); -// if (ObjectUtil.isNull(sysLabel)) { -// throw new BaseException(CodeEnum.NOT_LABEL); -// } -// if (sysLabel.getUserId().longValue() != currentUserId) { -// throw new BaseException(CodeEnum.NOT_POWER); -// } -// //添加项目和标签的关联信息 -// ProTaskLabel proTaskLabel = new ProTaskLabel(); -// proTaskLabel.setId(snowflake.nextId()); -// proTaskLabel.setTaskDetailId(finalTaskId); -// proTaskLabel.setLabelId(labelId); -// proTaskLabelMapper.insertSelective(proTaskLabel); -// }); -// } -// //查询项目内的标签信息 -// selectLabelList = sysLabelDao.selectLabelByTaskId(currentUserId, taskId); -// return selectLabelList; - return null; + Long taskId = taskLabel.getTaskId(); + ProTaskSubTime proTaskSubTime = taskSubTimeDao.selectByPrimaryKey(taskLabel.getTaskId()); + if (ObjectUtil.isNotNull(proTaskSubTime)) { + taskId = proTaskSubTime.getTaskDetailId(); + } + List selectLabelList; + ProTaskDetail taskDetail = taskDetailDao.selectByPrimaryKey(taskId); + if (ObjectUtil.isNull(taskDetail)) { + throw new BaseException(CodeEnum.NOT_TASK); + } + if (CollectionUtil.isNotEmpty(taskLabel.getLabelList())) { + Long finalTaskId = taskId; + taskLabel.getLabelList().forEach(labelId -> { + SysLabel sysLabel = sysLabelDao.selectByPrimaryKey(labelId); + if (ObjectUtil.isNull(sysLabel)) { + throw new BaseException(CodeEnum.NOT_LABEL); + } + if (sysLabel.getUserId().longValue() != currentUserId) { + throw new BaseException(CodeEnum.NOT_POWER); + } + //添加项目和标签的关联信息 + ProTaskLabel proTaskLabel = new ProTaskLabel(); + proTaskLabel.setId(snowflake.nextId()); + proTaskLabel.setTaskDetailId(finalTaskId); + proTaskLabel.setLabelId(labelId); + proTaskLabelMapper.insertSelective(proTaskLabel); + }); + } + //查询项目内的标签信息 + selectLabelList = sysLabelDao.selectLabelByTaskId(currentUserId, taskId); + return selectLabelList; } @Override public List taskRemoveLabel(Long currentUserId, LabelDto.TaskLabel taskLabel) { -// Long taskId = taskLabel.getTaskId(); -// ProTaskSubTime proTaskSubTime = taskSubTimeMapper.selectByPrimaryKey(taskLabel.getTaskId()); -// if (ObjectUtil.isNotNull(proTaskSubTime)) { -// taskId = proTaskSubTime.getTaskDetailId(); -// } -// List selectLabelList; -// ProTaskDetail taskDetail = taskDetailDao.selectByPrimaryKey(taskId); -// if (ObjectUtil.isNull(taskDetail)) { -// throw new BaseException(CodeEnum.NOT_TASK); -// } -// if (CollectionUtil.isNotEmpty(taskLabel.getLabelList())) { -// Long finalTaskId = taskId; -// taskLabel.getLabelList().forEach(labelId -> { -// SysLabel sysLabel = sysLabelDao.selectByPrimaryKey(labelId); -// if (ObjectUtil.isNull(sysLabel)) { -// throw new BaseException(CodeEnum.NOT_LABEL); -// } -// if (sysLabel.getUserId().longValue() != currentUserId) { -// throw new BaseException(CodeEnum.NOT_POWER); -// } -// //项目和标签的关联信息 -// ProTaskLabelExample taskLabelExample = new ProTaskLabelExample(); -// taskLabelExample.createCriteria().andTaskDetailIdEqualTo(finalTaskId).andLabelIdEqualTo(labelId); -// List proTaskLabelList = proTaskLabelMapper.selectByExample(taskLabelExample); -// if (CollectionUtil.isNotEmpty(proTaskLabelList)) { -// proTaskLabelList.forEach(label -> { -// label.setRecStatus((byte) 2); -// proTaskLabelMapper.updateByPrimaryKeySelective(label); -// }); -// } -// }); -// } -// //查询项目内的标签信息 -// selectLabelList = sysLabelDao.selectLabelByTaskId(currentUserId, taskId); -// return selectLabelList; - return null; + Long taskId = taskLabel.getTaskId(); + ProTaskSubTime proTaskSubTime = taskSubTimeDao.selectByPrimaryKey(taskLabel.getTaskId()); + if (ObjectUtil.isNotNull(proTaskSubTime)) { + taskId = proTaskSubTime.getTaskDetailId(); + } + List selectLabelList; + ProTaskDetail taskDetail = taskDetailDao.selectByPrimaryKey(taskId); + if (ObjectUtil.isNull(taskDetail)) { + throw new BaseException(CodeEnum.NOT_TASK); + } + if (CollectionUtil.isNotEmpty(taskLabel.getLabelList())) { + Long finalTaskId = taskId; + taskLabel.getLabelList().forEach(labelId -> { + SysLabel sysLabel = sysLabelDao.selectByPrimaryKey(labelId); + if (ObjectUtil.isNull(sysLabel)) { + throw new BaseException(CodeEnum.NOT_LABEL); + } + if (sysLabel.getUserId().longValue() != currentUserId) { + throw new BaseException(CodeEnum.NOT_POWER); + } + //项目和标签的关联信息 + ProTaskLabelExample taskLabelExample = new ProTaskLabelExample(); + taskLabelExample.createCriteria().andTaskDetailIdEqualTo(finalTaskId).andLabelIdEqualTo(labelId); + List proTaskLabelList = proTaskLabelMapper.selectByExample(taskLabelExample); + if (CollectionUtil.isNotEmpty(proTaskLabelList)) { + proTaskLabelList.forEach(label -> { + label.setRecStatus((byte) 2); + proTaskLabelMapper.updateByPrimaryKeySelective(label); + }); + } + }); + } + //查询项目内的标签信息 + selectLabelList = sysLabelDao.selectLabelByTaskId(currentUserId, taskId); + return selectLabelList; } } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java index bbc9ab52..3d685d85 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java @@ -111,11 +111,11 @@ public class ProTaskDetailService implements IProTaskDetailService { if (parentRole.getName().equalsIgnoreCase(WebConstant.ROLE_NAME.PM.value)) { obj = getTaskInfoByProjectIdAndPm(currentUserId, projectId, taskInfoByRoleId.getRoleId(), taskInfoByRoleId.getStartTime(), taskInfoByRoleId.getEndTime(), taskInfoByRoleId.getProcess(), - taskInfoByRoleId.getPage(), taskInfoByRoleId.getPageSize(),taskInfoByRoleId.getPriority(),taskInfoByRoleId.getImitation()); + taskInfoByRoleId.getPage(), taskInfoByRoleId.getPageSize(), taskInfoByRoleId.getPriority(), taskInfoByRoleId.getImitation()); } else if (parentRole.getName().equalsIgnoreCase(WebConstant.ROLE_NAME.Member.value)) { - obj = getTaskInfoByProjectIdAndRoleId(currentUserId, projectId,taskInfoByRoleId.getRoleId(), + obj = getTaskInfoByProjectIdAndRoleId(currentUserId, projectId, taskInfoByRoleId.getRoleId(), taskInfoByRoleId.getStartTime(), taskInfoByRoleId.getEndTime(), taskInfoByRoleId.getProcess(), - taskInfoByRoleId.getPage(), taskInfoByRoleId.getPageSize(),taskInfoByRoleId.getPriority(),taskInfoByRoleId.getImitation()); + taskInfoByRoleId.getPage(), taskInfoByRoleId.getPageSize(), taskInfoByRoleId.getPriority(), taskInfoByRoleId.getImitation()); } } else { throw new BaseException(CodeEnum.NOT_ROLE); @@ -129,7 +129,7 @@ public class ProTaskDetailService implements IProTaskDetailService { */ private TaskVo.ProTaskShow getProTaskShow(Long taskId) { TaskVo.ProTaskShow proTaskShow = proTaskShowDao.getProTaskShowByTaskId(taskId); - if(ObjectUtil.isNull(proTaskShow)){ + if (ObjectUtil.isNull(proTaskShow)) { proTaskShow = new TaskVo.ProTaskShow(); proTaskShow.setTimeShow("MM-DD HH:mm"); proTaskShow.setDuration(0); @@ -142,6 +142,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } return proTaskShow; } + /** * 查看任务 项目经理 */ @@ -171,7 +172,7 @@ public class ProTaskDetailService implements IProTaskDetailService { normalTask.setSequence(sequence); // 查询任务名对应的配置 ProPluginConfigExample configExample = new ProPluginConfigExample(); - configExample.createCriteria().andTaskIdEqualTo(firstTaskDetail.getId()).andPlaceLocationEqualTo((byte)0); + configExample.createCriteria().andTaskIdEqualTo(firstTaskDetail.getId()).andPlaceLocationEqualTo((byte) 0); List proPluginConfigs = proPluginConfigMapper.selectByExample(configExample); if (CollectionUtil.isNotEmpty(proPluginConfigs)) { ProPluginConfig config = proPluginConfigs.get(0); @@ -189,23 +190,23 @@ public class ProTaskDetailService implements IProTaskDetailService { normalTask.setProcess(firstSubTimeMember.getComplatedStatus()); } //查找一级任务下的二级任务 - List secondNormalTaskList = taskDetailDao.selectNormalTaskListByPM(projectId, firstTaskDetail.getId(), startTime, endTime,roleId); + List secondNormalTaskList = taskDetailDao.selectNormalTaskListByPM(projectId, firstTaskDetail.getId(), startTime, endTime, roleId); if (CollectionUtil.isNotEmpty(secondNormalTaskList)) { for (TaskVo.NormalTask task : secondNormalTaskList) { //处理分数 - BigDecimal score = mtFeignClient.getAdminScore(task.getProjectId(),task.getDetailId()); - if(ObjectUtil.isNotNull(score)){ + BigDecimal score = mtFeignClient.getAdminScore(task.getProjectId(), task.getDetailId()); + if (ObjectUtil.isNotNull(score)) { task.setScore(score); } //处理插件 - managePlugin(currentUserId,roleId,task,imitation); + managePlugin(currentUserId, roleId, task, imitation); //二级任务完成状态 - if(task.getProcess() != 2) { + if (task.getProcess() != 2) { ProSubTimeMember subTimeMember = getProcessByUserIdAndTask(currentUserId, task.getId()); if (ObjectUtil.isNotNull(subTimeMember)) { task.setRealEndTime(subTimeMember.getRealFinishTime()); task.setProcess(subTimeMember.getComplatedStatus()); - }else if(task.getProcess() > 2){ + } else if (task.getProcess() > 2) { task.setRealEndTime((long) 0); task.setProcess(0); } @@ -248,7 +249,7 @@ public class ProTaskDetailService implements IProTaskDetailService { * 查看任务 项目成员 */ private TaskVo.ProTaskInfo getTaskInfoByProjectIdAndRoleId(Long currentUserId, Long projectId, Long roleId, Long startTime, - Long endTime, Integer process, Integer page, Integer pageSize,Integer priority,Integer imitation) throws Exception { + Long endTime, Integer process, Integer page, Integer pageSize, Integer priority, Integer imitation) throws Exception { TaskVo.ProTaskInfo proTaskInfo = new TaskVo.ProTaskInfo(); List globalTaskList = new ArrayList<>(); @@ -262,27 +263,27 @@ public class ProTaskDetailService implements IProTaskDetailService { } //查找该角色的所有任务(全体成员的任务也是这个角色的任务) List secondTaskVoList = taskDetailDao.selectTaskByRoleAndAllMembers(projectId, roleId, - allMemberId, startTime, endTime,priority); + allMemberId, startTime, endTime, priority); if (CollectionUtil.isNotEmpty(secondTaskVoList)) { for (TaskVo.NormalTask normalTask : secondTaskVoList) { //处理分数 - MemberVo.MemberInfo memberInfo = proMemberService.getMemberByUserIdAndProjectId(currentUserId,normalTask.getProjectId()); - if(ObjectUtil.isNotNull(memberInfo)) { + MemberVo.MemberInfo memberInfo = proMemberService.getMemberByUserIdAndProjectId(currentUserId, normalTask.getProjectId()); + if (ObjectUtil.isNotNull(memberInfo)) { BigDecimal score = mtFeignClient.getMemberScore(normalTask.getDetailId(), memberInfo.getId()); if (ObjectUtil.isNotNull(score)) { normalTask.setScore(score); } } //处理插件 - managePlugin(currentUserId,roleId,normalTask,imitation); + managePlugin(currentUserId, roleId, normalTask, imitation); //任务完成状态 - if(normalTask.getProcess() != 2) { + if (normalTask.getProcess() != 2) { ProSubTimeMember subTimeMember = getProcessByUserIdAndTask(currentUserId, normalTask.getId()); if (ObjectUtil.isNotNull(subTimeMember)) { normalTask.setProcess(subTimeMember.getComplatedStatus()); normalTask.setRealEndTime(subTimeMember.getRealFinishTime()); - }else if(normalTask.getProcess() > 2){ + } else if (normalTask.getProcess() > 2) { normalTask.setRealEndTime((long) 0); normalTask.setProcess(0); } @@ -305,7 +306,7 @@ public class ProTaskDetailService implements IProTaskDetailService { if (CollectionUtil.isNotEmpty(task.getCommonTask())) { if (priority == 0) { normalTaskList = sortTaskTime(task.getCommonTask()); - }else { + } else { normalTaskList = task.getCommonTask(); } } @@ -403,7 +404,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } continue; } - if(secondTaskVo.getBeginTime() < startTime && secondTaskVo.getEndTime() <= endTime && secondTaskVo.getEndTime() > startTime) { + if (secondTaskVo.getBeginTime() < startTime && secondTaskVo.getEndTime() <= endTime && secondTaskVo.getEndTime() > startTime) { secondTaskVo.setBeginTime(startTime); secondTaskVoList.add(secondTaskVo); } else if (secondTaskVo.getBeginTime() >= startTime && secondTaskVo.getEndTime() <= endTime) { @@ -443,29 +444,29 @@ public class ProTaskDetailService implements IProTaskDetailService { * 处理任务的插件 */ @Override - public void managePlugin(Long userId,Long roleId,TaskVo.NormalTask normalTask,Integer imitation) throws Exception { - Boolean isMain = proMemberService.userIsBelongRole(userId,roleId,imitation); - if(!isMain){ + public void managePlugin(Long userId, Long roleId, TaskVo.NormalTask normalTask, Integer imitation) throws Exception { + Boolean isMain = proMemberService.userIsBelongRole(userId, roleId, imitation); + if (!isMain) { normalTask.setPlugins(null); - }else { - if(CollectionUtil.isNotEmpty(normalTask.getPlugins())){ + } else { + if (CollectionUtil.isNotEmpty(normalTask.getPlugins())) { List pluginVoList = new ArrayList<>(); - for(TaskVo.PluginVo pluginVo : normalTask.getPlugins()){ + for (TaskVo.PluginVo pluginVo : normalTask.getPlugins()) { String[] pluginIds = pluginVo.getId().split(","); String[] pluginNames = pluginVo.getName().split(","); String[] pluginDescription = pluginVo.getDescription().split(","); String[] pluginShowType = pluginVo.getShowType().split(","); TaskVo.PluginVo plugin; - for(int i = 0;i 2){ - taskDetail.setRealEndTime((long) 0); - taskDetail.setProcess(0); - } + taskId = subTime.getTaskDetailId(); + } + TaskVo.NormalTask taskDetail; + ProTaskDetail task = taskDetailDao.selectByPrimaryKey(taskId); + if (ObjectUtil.isNull(task)) { + throw new BaseException(CodeEnum.NOT_TASK); + } + taskDetail = taskDetailDao.selectTaskByTaskId(null, taskId, task.getExecutorRole()); + if (ObjectUtil.isNotNull(taskDetail)) { + //处理查询到的任务的插件 + managePlugin(currentUserId, task.getExecutorRole(), taskDetail, imitation); + //任务的完成状态 + if (taskDetail.getProcess() != 2) { + ProSubTimeMember subTimeMember = getProcessByUserIdAndTask(currentUserId, taskDetail.getId()); + if (ObjectUtil.isNotNull(subTimeMember)) { + taskDetail.setProcess(subTimeMember.getComplatedStatus()); + taskDetail.setRealEndTime(subTimeMember.getRealFinishTime()); + } else if (taskDetail.getProcess() > 2) { + taskDetail.setRealEndTime((long) 0); + taskDetail.setProcess(0); } - //任务配置 - taskDetail.setProTaskConfig(getProTaskShow(taskDetail.getDetailId())); - - //添加项目信息 - normalTaskAddPlugin(subTime.getTaskDetailId(), taskDetail); - - List groupTaskList = new ArrayList<>(); - //提醒信息 - taskDetail.setRemindInfoList(proRemindDao.queryRemindByTask(taskDetail.getId())); - //获取此任务的子任务 - ProTaskDetailExample detailExample = new ProTaskDetailExample(); - detailExample.createCriteria().andParentIdEqualTo(taskDetail.getDetailId()); - List detailList = taskDetailDao.selectByExample(detailExample); - if(CollectionUtil.isNotEmpty(detailList)){ - for(ProTaskDetail detail : detailList){ - TaskVo.NormalTask groupTask; - Long subTimeId = taskDeliverService.isTaskOrSubTime(detail.getId()); - if(ObjectUtil.isNotNull(subTimeId)){ - groupTask = taskDetailDao.selectTaskByTaskId(subTimeId, detail.getId(),detail.getExecutorRole()); - if(ObjectUtil.isNotNull(groupTask)){ - //处理查询到的任务的插件 - managePlugin(currentUserId,task.getExecutorRole(),taskDetail,imitation); - //任务的完成状态 - if(taskDetail.getProcess() != 2) { - ProSubTimeMember proSubTimeMember = getProcessByUserIdAndTask(currentUserId, groupTask.getId()); - if (ObjectUtil.isNotNull(proSubTimeMember)) { - groupTask.setProcess(proSubTimeMember.getComplatedStatus()); - groupTask.setRealEndTime(proSubTimeMember.getRealFinishTime()); - }else if(taskDetail.getProcess() > 2){ - taskDetail.setRealEndTime((long) 0); - taskDetail.setProcess(0); - } + } + //任务配置 + taskDetail.setProTaskConfig(getProTaskShow(taskDetail.getDetailId())); + + //添加项目信息 + normalTaskAddPlugin(taskId, taskDetail); + + List groupTaskList = new ArrayList<>(); + //提醒信息 + taskDetail.setRemindInfoList(proRemindDao.queryRemindByTask(taskDetail.getId())); + //获取此任务的子任务 + ProTaskDetailExample detailExample = new ProTaskDetailExample(); + detailExample.createCriteria().andParentIdEqualTo(taskDetail.getDetailId()); + List detailList = taskDetailDao.selectByExample(detailExample); + if (CollectionUtil.isNotEmpty(detailList)) { + for (ProTaskDetail detail : detailList) { + TaskVo.NormalTask groupTask; + Long subTimeId = taskDeliverService.isTaskOrSubTime(detail.getId()); + if (ObjectUtil.isNotNull(subTimeId)) { + groupTask = taskDetailDao.selectTaskByTaskId(subTimeId, detail.getId(), detail.getExecutorRole()); + if (ObjectUtil.isNotNull(groupTask)) { + //处理查询到的任务的插件 + managePlugin(currentUserId, task.getExecutorRole(), taskDetail, imitation); + //任务的完成状态 + if (taskDetail.getProcess() != 2) { + ProSubTimeMember proSubTimeMember = getProcessByUserIdAndTask(currentUserId, groupTask.getId()); + if (ObjectUtil.isNotNull(proSubTimeMember)) { + groupTask.setProcess(proSubTimeMember.getComplatedStatus()); + groupTask.setRealEndTime(proSubTimeMember.getRealFinishTime()); + } else if (taskDetail.getProcess() > 2) { + taskDetail.setRealEndTime((long) 0); + taskDetail.setProcess(0); } + } - //添加项目信息和插件信息 - normalTaskAddPlugin(groupTask.getDetailId(), groupTask); - //修改返回时子任务的名字(“任务名+(xx和XX)”) - if (detail.getAllMember() == 0) { - groupTask.setName(updateSubTaskName(groupTask.getDetailId(), groupTask.getName())); - } - groupTaskList.add(groupTask); + //添加项目信息和插件信息 + normalTaskAddPlugin(groupTask.getDetailId(), groupTask); + //修改返回时子任务的名字(“任务名+(xx和XX)”) + if (detail.getAllMember() == 0) { + groupTask.setName(updateSubTaskName(groupTask.getDetailId(), groupTask.getName())); } + groupTaskList.add(groupTask); } } - taskDetail.setSecondTasks(new ArrayList<>()); - taskDetail.getSecondTasks().addAll(groupTaskList); } - + taskDetail.setSecondTasks(new ArrayList<>()); + taskDetail.getSecondTasks().addAll(groupTaskList); } + } return taskDetail; } - private void normalTaskAddPlugin( Long taskId, TaskVo.NormalTask normalTask) { + private void normalTaskAddPlugin(Long taskId, TaskVo.NormalTask normalTask) { ProTaskDetail task = taskDetailDao.selectByPrimaryKey(taskId); //添加项目信息 SysProject project = sysProjectDao.selectByPrimaryKey(task.getProjectId()); @@ -692,7 +696,7 @@ public class ProTaskDetailService implements IProTaskDetailService { case "创建者": for (SysProject project : projectList) { if (project.getCreatorId().longValue() == currentUserId.longValue()) { - List taskList = getTaskInfoByProjectIdAndUserId(project, currentUserId, startMillisTime, endMillisTime,null); + List taskList = getTaskInfoByProjectIdAndUserId(project, currentUserId, startMillisTime, endMillisTime, null); if (CollectionUtil.isNotEmpty(taskList)) { normalTaskList.addAll(taskList); } @@ -702,7 +706,7 @@ public class ProTaskDetailService implements IProTaskDetailService { case "参与者": for (SysProject project : projectList) { if (project.getCreatorId().longValue() != currentUserId.longValue()) { - List taskList = getTaskInfoByProjectIdAndUserId(project, currentUserId, startMillisTime, endMillisTime,null); + List taskList = getTaskInfoByProjectIdAndUserId(project, currentUserId, startMillisTime, endMillisTime, null); if (CollectionUtil.isNotEmpty(taskList)) { normalTaskList.addAll(taskList); } @@ -714,7 +718,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } } else { for (SysProject project : projectList) { - List taskList = getTaskInfoByProjectIdAndUserId(project, currentUserId, startMillisTime, endMillisTime,null); + List taskList = getTaskInfoByProjectIdAndUserId(project, currentUserId, startMillisTime, endMillisTime, null); if (CollectionUtil.isNotEmpty(taskList)) { normalTaskList.addAll(taskList); } @@ -765,14 +769,14 @@ public class ProTaskDetailService implements IProTaskDetailService { } private List getTaskInfoByProjectIdAndUserId(SysProject project, Long userId, - Long startTime, Long endTime,Set roleList) throws Exception { + Long startTime, Long endTime, Set roleList) throws Exception { List normalTaskList = new ArrayList<>(); //获取用户的角色 - if(CollectionUtil.isEmpty(roleList)){ + if (CollectionUtil.isEmpty(roleList)) { roleList = new HashSet<>(); //查询此用户在项目中的的所有角色的任务 - List roles = proMemberService.selectRolesByUserIdAndProjectId(userId, project.getId(),null); - for (ProRole role : roles){ + List roles = proMemberService.selectRolesByUserIdAndProjectId(userId, project.getId(), null); + for (ProRole role : roles) { roleList.add(role.getId()); } // roles.forEach(role->{ @@ -789,16 +793,16 @@ public class ProTaskDetailService implements IProTaskDetailService { for (Long roleId : roleList) { // SysProject sysProject = sysProjectDao.selectByPrimaryKey(role.getProjectId()); List taskList = - taskDetailDao.selectTaskByRoleAndAllMembers(project.getId(), roleId, null,startTime, endTime,0); + taskDetailDao.selectTaskByRoleAndAllMembers(project.getId(), roleId, null, startTime, endTime, 0); if (CollectionUtil.isNotEmpty(taskList)) { for (TaskVo.NormalTask normalTask : taskList) { //任务的完成状态 - if(normalTask.getProcess() != 2) { + if (normalTask.getProcess() != 2) { ProSubTimeMember proSubTimeMember = getProcessByUserIdAndTask(userId, normalTask.getId()); if (ObjectUtil.isNotNull(proSubTimeMember)) { normalTask.setProcess(proSubTimeMember.getComplatedStatus()); normalTask.setRealEndTime(proSubTimeMember.getRealFinishTime()); - }else if(normalTask.getProcess() > 2){ + } else if (normalTask.getProcess() > 2) { normalTask.setRealEndTime((long) 0); normalTask.setProcess(0); } @@ -842,18 +846,18 @@ public class ProTaskDetailService implements IProTaskDetailService { } //获取需查询的角色 Set roleList = new HashSet<>(); - if(ObjectUtil.isNotNull(list.getRoleList())){ + if (ObjectUtil.isNotNull(list.getRoleList())) { list.getRoleList().forEach(roleId -> { ProRole role = proRoleDao.selectByPrimaryKey(roleId); - if(ObjectUtil.isNotNull(role)){ + if (ObjectUtil.isNotNull(role)) { ProRole parentRole = proRoleDao.selectByPrimaryKey(role.getParentId()); - if(ObjectUtil.isNotNull(parentRole)){ + if (ObjectUtil.isNotNull(parentRole)) { //若角色为项目经理或MVP,则查询全部角色 if (role.getName().equalsIgnoreCase(WebConstant.ROLE_NAME.MVP.value) || parentRole.getName().equalsIgnoreCase(WebConstant.ROLE_NAME.PM.value)) { //查询项目下所有角色 List roleInfoList = proRoleService.getRealMemberRolesByProjectId(list.getProjectId()); - if(CollectionUtil.isNotEmpty(roleInfoList)) { + if (CollectionUtil.isNotEmpty(roleInfoList)) { for (ProjectVo.RoleInfo roleInfo : roleInfoList) { // ProRole proRole = proRoleDao.selectByPrimaryKey(roleInfo.getId()); roleList.add(roleInfo.getId()); @@ -863,7 +867,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } } }); - if(CollectionUtil.isEmpty(roleList)){ + if (CollectionUtil.isEmpty(roleList)) { roleList.addAll(list.getRoleList()); } @@ -896,7 +900,7 @@ public class ProTaskDetailService implements IProTaskDetailService { //获取项目 SysProject sysProject = sysProjectDao.selectByPrimaryKey(list.getProjectId()); if (ObjectUtil.isNotNull(sysProject)) { - List taskList = getTaskInfoByProjectIdAndUserId(sysProject, currentUserId, startMillisTime, endMillisTime,roleList); + List taskList = getTaskInfoByProjectIdAndUserId(sysProject, currentUserId, startMillisTime, endMillisTime, roleList); if (CollectionUtil.isNotEmpty(taskList)) { normalTaskList.addAll(taskList); } @@ -974,11 +978,11 @@ public class ProTaskDetailService implements IProTaskDetailService { public ProSubTimeMember getProcessByUserIdAndTask(Long userId, Long subTimeId) throws Exception { ProSubTimeMember subTimeMember = null; ProTaskSubTime subTime = taskSubTimeDao.selectByPrimaryKey(subTimeId); - if(ObjectUtil.isNull(subTime)){ + if (ObjectUtil.isNull(subTime)) { throw new BaseException(CodeEnum.NOT_TASK); } ProTaskDetail taskDetail = taskDetailDao.selectByPrimaryKey(subTime.getTaskDetailId()); - if(ObjectUtil.isNull(taskDetail)){ + if (ObjectUtil.isNull(taskDetail)) { throw new BaseException(CodeEnum.NOT_TASK); } ProSubTimeMemberExample subTimeMemberExample = new ProSubTimeMemberExample(); @@ -988,20 +992,20 @@ public class ProTaskDetailService implements IProTaskDetailService { if (CollectionUtil.isNotEmpty(subTimeMemberList)) { if (taskDetail.getFinishNeedAll() == 0) { subTimeMember = subTimeMemberList.get(0); - }else { + } else { //查找此用户在任务下的成员 ProMember porMember = proMemberService.selectByUserId(userId, taskDetail.getProjectId()); //该用户是否是任务的负责人 ProRole role = proRoleDao.selectByPrimaryKey(taskDetail.getExecutorRole()); - Boolean isBelongRole = proMemberService.userIsBelongRole(userId, role.getId(),null); + Boolean isBelongRole = proMemberService.userIsBelongRole(userId, role.getId(), null); if (isBelongRole) { - for(ProSubTimeMember sTimeMember:subTimeMemberList){ - if(sTimeMember.getMemberId().longValue() == porMember.getId()){ + for (ProSubTimeMember sTimeMember : subTimeMemberList) { + if (sTimeMember.getMemberId().longValue() == porMember.getId()) { subTimeMember = sTimeMember; break; } } - }else { + } else { //查找任务负责人下的所有成员 List memberList = proMemberService.selectByRole(taskDetail.getExecutorRole()); @@ -1019,7 +1023,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } subTimeMember = subTimeMemberList.get(0); } - if(flag){ + if (flag) { subTimeMember = null; } } @@ -1045,13 +1049,13 @@ public class ProTaskDetailService implements IProTaskDetailService { } else { taskDetail = taskDetailDao.selectByPrimaryKey(taskId); } - if(ObjectUtil.isNull(taskDetail)){ + if (ObjectUtil.isNull(taskDetail)) { throw new BaseException(CodeEnum.NOT_TASK); } // //本用户在项目中的角色 // List proRoles = proRoleService.getProRoleByProjectIdAndUserId(taskDetail.getProjectId(), currentUserId); //用户在项目中的最高权限 - int power = proRoleService.selectPowerByRoleName(currentUserId,taskDetail.getProjectId()); + int power = proRoleService.selectPowerByRoleName(currentUserId, taskDetail.getProjectId()); if (power > 1) { if (ObjectUtil.isNotNull(taskDetail)) { //修改任务删除状态 @@ -1064,7 +1068,7 @@ public class ProTaskDetailService implements IProTaskDetailService { throw new BaseException(CodeEnum.NOT_POWER); } //通过智能助手发送消息 - robotService.deleteTaskRobotSend(currentUserId,taskDetail); + robotService.deleteTaskRobotSend(currentUserId, taskDetail); } @Override @@ -1072,8 +1076,8 @@ public class ProTaskDetailService implements IProTaskDetailService { ProTaskDetailExample taskDetailExample = new ProTaskDetailExample(); taskDetailExample.createCriteria().andExecutorRoleEqualTo(roleId); List detailList = taskDetailDao.selectByExample(taskDetailExample); - if(CollectionUtil.isNotEmpty(detailList)){ - for(ProTaskDetail taskDetail:detailList){ + if (CollectionUtil.isNotEmpty(detailList)) { + for (ProTaskDetail taskDetail : detailList) { deleteTaskByTaskId(taskDetail.getId()); } } @@ -1091,8 +1095,8 @@ public class ProTaskDetailService implements IProTaskDetailService { ProTaskMemberExample taskMemberExample = new ProTaskMemberExample(); taskMemberExample.createCriteria().andTaskDetailIdEqualTo(taskId); List proTaskMemberList = taskMemberDao.selectByExample(taskMemberExample); - if(CollectionUtil.isNotEmpty(proTaskMemberList)){ - for(ProTaskMember proTaskMember : proTaskMemberList){ + if (CollectionUtil.isNotEmpty(proTaskMemberList)) { + for (ProTaskMember proTaskMember : proTaskMemberList) { proTaskMember.setRecStatus((byte) 2); taskMemberDao.updateByPrimaryKeySelective(proTaskMember); } @@ -1111,22 +1115,22 @@ public class ProTaskDetailService implements IProTaskDetailService { ProTaskDetail taskDetail; ProTaskSubTime taskSubTime = taskSubTimeDao.selectByPrimaryKey(updateTaskInfo.getId()); - if(ObjectUtil.isNotNull(taskSubTime)){ + if (ObjectUtil.isNotNull(taskSubTime)) { taskDetail = taskDetailDao.selectByPrimaryKey(taskSubTime.getTaskDetailId()); - }else { + } else { taskDetail = taskDetailDao.selectByPrimaryKey(updateTaskInfo.getId()); } - if(ObjectUtil.isNotNull(taskDetail)) { + if (ObjectUtil.isNotNull(taskDetail)) { SysProject project = sysProjectDao.selectByPrimaryKey(taskDetail.getProjectId()); - if(ObjectUtil.isNotNull(project)) { + if (ObjectUtil.isNotNull(project)) { //查找权限 int power = proRoleService.selectPowerByRoleName(currentUserId, project.getId()); //当前用户是否是此任务的负责人 boolean flag = false; ProRole executorRole = proRoleDao.selectByPrimaryKey(taskDetail.getExecutorRole()); - if(executorRole.getName().equalsIgnoreCase(WebConstant.ROLE_NAME.AllMember.phase)){ + if (executorRole.getName().equalsIgnoreCase(WebConstant.ROLE_NAME.AllMember.phase)) { flag = true; - }else { + } else { ProMemberExample memberExample = new ProMemberExample(); memberExample.createCriteria().andUserIdEqualTo(currentUserId).andProjectIdEqualTo(project.getId()); List memberList = proMemberDao.selectByExample(memberExample); @@ -1143,50 +1147,50 @@ public class ProTaskDetailService implements IProTaskDetailService { if (power > 1 || flag) { //任务名 - if(StrUtil.isNotEmpty(updateTaskInfo.getName())){ + if (StrUtil.isNotEmpty(updateTaskInfo.getName())) { taskDetail.setName(updateTaskInfo.getName()); } //详情 - if(StrUtil.isNotEmpty(updateTaskInfo.getDescription())){ + if (StrUtil.isNotEmpty(updateTaskInfo.getDescription())) { taskDetail.setDescription(updateTaskInfo.getDescription()); } //负责人 - if(ObjectUtil.isNotNull(updateTaskInfo.getExecutorRole())){ + if (ObjectUtil.isNotNull(updateTaskInfo.getExecutorRole())) { taskDetail.setExecutorRole(updateTaskInfo.getExecutorRole()); } //奖惩金额 - if(ObjectUtil.isNotNull(updateTaskInfo.getMoney())){ + if (ObjectUtil.isNotNull(updateTaskInfo.getMoney())) { taskDetail.setMoney(updateTaskInfo.getMoney()); } //切换模式 - if(ObjectUtil.isNotNull(updateTaskInfo.getDelay())){ + if (ObjectUtil.isNotNull(updateTaskInfo.getDelay())) { taskDetail.setDelay((byte) updateTaskInfo.getDelay()); } //修改任务优先级 - if(ObjectUtil.isNotNull(updateTaskInfo.getPriority())){ + if (ObjectUtil.isNotNull(updateTaskInfo.getPriority())) { taskDetail.setPriority(updateTaskInfo.getPriority()); } //延迟切换时间 - if(ObjectUtil.isNotNull(updateTaskInfo.getDelayTime()) && - (taskDetail.getDelay() == WebConstant.TASK_DELAY.DelayManual.value)){ + if (ObjectUtil.isNotNull(updateTaskInfo.getDelayTime()) && + (taskDetail.getDelay() == WebConstant.TASK_DELAY.DelayManual.value)) { taskDetail.setDelayTime(updateTaskInfo.getDelayTime()); } //是否是里程碑 - if(ObjectUtil.isNotNull(updateTaskInfo.getMilestone())){ + if (ObjectUtil.isNotNull(updateTaskInfo.getMilestone())) { taskDetail.setMilestone(updateTaskInfo.getMilestone()); } //时间 - if(ObjectUtil.isNotNull(updateTaskInfo.getBeginTime()) || + if (ObjectUtil.isNotNull(updateTaskInfo.getBeginTime()) || ObjectUtil.isNotNull(updateTaskInfo.getEndTime()) || - StrUtil.isNotEmpty(updateTaskInfo.getCycle())){ + StrUtil.isNotEmpty(updateTaskInfo.getCycle())) { //一级任务没有时间,不能修改 - if(taskDetail.getLevel() != 1 && taskDetail.getLevel() != 0) { - changeTime(taskDetail,updateTaskInfo.getBeginTime(),updateTaskInfo.getEndTime(),project); + if (taskDetail.getLevel() != 1 && taskDetail.getLevel() != 0) { + changeTime(taskDetail, updateTaskInfo.getBeginTime(), updateTaskInfo.getEndTime(), project); if (StrUtil.isNotEmpty(updateTaskInfo.getCycle())) { taskDetail.setCycle(updateTaskInfo.getCycle()); } //时间赋完值后,检查开始时间是否小于结束时间。(赋值前判断太麻烦) - if (taskDetail.getBeginTime() >= taskDetail.getEndTime()){ + if (taskDetail.getBeginTime() >= taskDetail.getEndTime()) { throw new BaseException(CodeEnum.TIME_ERROR_BEGIN); } //删掉旧的subTime @@ -1199,12 +1203,12 @@ public class ProTaskDetailService implements IProTaskDetailService { } //如果传入的插件不为空,先将原来的插件删除, - if(CollectionUtil.isNotEmpty(updateTaskInfo.getPlugins())){ + if (CollectionUtil.isNotEmpty(updateTaskInfo.getPlugins())) { ProTaskPluginExample pluginExample = new ProTaskPluginExample(); pluginExample.createCriteria().andTaskDetailIdEqualTo(taskDetail.getId()) .andMemberRoleIdEqualTo(taskDetail.getExecutorRole()); List pluginList = taskPluginDao.selectByExample(pluginExample); - if(CollectionUtil.isNotEmpty(pluginList)){ + if (CollectionUtil.isNotEmpty(pluginList)) { pluginList.forEach(proTaskPlugin -> { proTaskPlugin.setRecStatus((byte) 2); taskPluginDao.updateByPrimaryKeySelective(proTaskPlugin); @@ -1213,7 +1217,7 @@ public class ProTaskDetailService implements IProTaskDetailService { //将新的插件加入任务 updateTaskInfo.getPlugins().forEach(taskPlugin -> { SysPlugin sysPlugin = sysPluginDao.selectByPrimaryKey(taskPlugin); - if(ObjectUtil.isNull(sysPlugin)){ + if (ObjectUtil.isNull(sysPlugin)) { throw new BaseException(CodeEnum.WBS_NOT_PLUGIN); } ProTaskPlugin plugin = new ProTaskPlugin(); @@ -1225,16 +1229,16 @@ public class ProTaskDetailService implements IProTaskDetailService { }); } //修改交付物信息 - if(CollectionUtil.isNotEmpty(updateTaskInfo.getDeliverList())){ + if (CollectionUtil.isNotEmpty(updateTaskInfo.getDeliverList())) { updateTaskInfo.getDeliverList().forEach(taskDeliver -> { - if(StrUtil.isNotEmpty(taskDeliver.getDeliverName())){ - if(ObjectUtil.isNotNull(taskDeliver.getDeliverId())) { + if (StrUtil.isNotEmpty(taskDeliver.getDeliverName())) { + if (ObjectUtil.isNotNull(taskDeliver.getDeliverId())) { ProTaskDeliver deliver = taskDeliverDao.selectByPrimaryKey(taskDeliver.getDeliverId()); if (ObjectUtil.isNotNull(deliver)) { deliver.setName(taskDeliver.getDeliverName()); taskDeliverDao.updateByPrimaryKeySelective(deliver); } - }else { + } else { ProTaskDeliver deliver = new ProTaskDeliver(); deliver.setId(snowflake.nextId()); deliver.setTaskDetailId(taskDetail.getId()); @@ -1250,12 +1254,12 @@ public class ProTaskDetailService implements IProTaskDetailService { //修改数据 taskDetailDao.updateByPrimaryKeySelective(taskDetail); //修改提醒信息 - if(CollectionUtil.isNotEmpty(updateTaskInfo.getTaskRemindList())){ + if (CollectionUtil.isNotEmpty(updateTaskInfo.getTaskRemindList())) { //删除之前的提醒信息 ProRemindExample proRemindExample = new ProRemindExample(); proRemindExample.createCriteria().andSubTaskIdEqualTo(updateTaskInfo.getId()); List proRemindList = proRemindDao.selectByExample(proRemindExample); - if(CollectionUtil.isNotEmpty(proRemindList)){ + if (CollectionUtil.isNotEmpty(proRemindList)) { proRemindList.forEach(proRemind -> { proRemind.setRecStatus((byte) 2); proRemindDao.updateByPrimaryKeySelective(proRemind); @@ -1263,7 +1267,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } updateTaskInfo.getTaskRemindList().forEach(updateTaskRemind -> { try { - taskSubTimeService.saveRemind(currentUserId,updateTaskRemind); + taskSubTimeService.saveRemind(currentUserId, updateTaskRemind); } catch (Exception e) { e.printStackTrace(); } @@ -1271,30 +1275,31 @@ public class ProTaskDetailService implements IProTaskDetailService { } //返回的任务详细信息 Long subTimeId = taskDeliverService.isTaskOrSubTime(taskDetail.getId()); - normalTask = getTaskInfoByTaskId(currentUserId,project.getId(),subTimeId,null); + normalTask = getTaskInfoByTaskId(currentUserId, project.getId(), subTimeId, null); } else { throw new BaseException(CodeEnum.NOT_POWER); } - }else { + } else { throw new BaseException(CodeEnum.NOT_POWER); } - }else { + } else { throw new BaseException(CodeEnum.NOT_TASK); } - robotService.changeTaskRobotSend(currentUserId,normalTask); + robotService.changeTaskRobotSend(currentUserId, normalTask); return normalTask; } - private void changeTime(ProTaskDetail taskDetail,Long beginTime,Long endTime,SysProject project){ - if((ObjectUtil.isNotNull(beginTime) && beginTime >= project.getEndTime()) || - (ObjectUtil.isNotNull(endTime) && endTime <= project.getBeginTime())){ + + private void changeTime(ProTaskDetail taskDetail, Long beginTime, Long endTime, SysProject project) { + if ((ObjectUtil.isNotNull(beginTime) && beginTime >= project.getEndTime()) || + (ObjectUtil.isNotNull(endTime) && endTime <= project.getBeginTime())) { throw new BaseException(CodeEnum.TIME_ERROR_PROJECT); } - if(taskDetail.getLevel() == 2){ + if (taskDetail.getLevel() == 2) { //组任务不能修改时间(组任务的时间是其子任务的最早和最晚的时间) - if(taskDetail.getHasGroup() == 1){ + if (taskDetail.getHasGroup() == 1) { throw new BaseException(CodeEnum.HAS_GROUP_TIME_CHANGE); - }else { + } else { if (ObjectUtil.isNotNull(beginTime)) { taskDetail.setBeginTime(beginTime); } @@ -1302,18 +1307,18 @@ public class ProTaskDetailService implements IProTaskDetailService { taskDetail.setEndTime(endTime); } } - }else if(taskDetail.getLevel() == 3){ + } else if (taskDetail.getLevel() == 3) { ProTaskDetail parentTask = taskDetailDao.selectByPrimaryKey(taskDetail.getParentId()); - if(parentTask.getHasGroup() == 1){ + if (parentTask.getHasGroup() == 1) { //查找组任务中的最早和最晚时间 Long bTime = null; Long eTime = null; ProTaskDetailExample detailExample = new ProTaskDetailExample(); detailExample.createCriteria().andParentIdEqualTo(parentTask.getId()); List groupTaskList = taskDetailDao.selectByExample(detailExample); - if(CollectionUtil.isNotEmpty(groupTaskList)){ - for (ProTaskDetail groupTask : groupTaskList){ - if(groupTask.getId().longValue() == taskDetail.getId().longValue()){ + if (CollectionUtil.isNotEmpty(groupTaskList)) { + for (ProTaskDetail groupTask : groupTaskList) { + if (groupTask.getId().longValue() == taskDetail.getId().longValue()) { if (ObjectUtil.isNotNull(beginTime)) { groupTask.setBeginTime(beginTime); taskDetail.setBeginTime(beginTime); @@ -1323,10 +1328,10 @@ public class ProTaskDetailService implements IProTaskDetailService { taskDetail.setEndTime(endTime); } } - if(ObjectUtil.isNull(bTime)){ + if (ObjectUtil.isNull(bTime)) { bTime = groupTask.getBeginTime(); } - if(ObjectUtil.isNull(eTime)){ + if (ObjectUtil.isNull(eTime)) { eTime = groupTask.getEndTime(); } bTime = bTime < groupTask.getBeginTime() ? bTime : groupTask.getBeginTime(); @@ -1334,7 +1339,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } } //如果子任务最早最晚时间和父任务不同,则修改父任务时间 - if(ObjectUtil.isNotNull(bTime) && ObjectUtil.isNotNull(eTime)) { + if (ObjectUtil.isNotNull(bTime) && ObjectUtil.isNotNull(eTime)) { if (bTime != parentTask.getBeginTime().longValue() || eTime != parentTask.getEndTime().longValue()) { parentTask.setBeginTime(bTime); parentTask.setEndTime(eTime); @@ -1351,7 +1356,7 @@ public class ProTaskDetailService implements IProTaskDetailService { } } } - }else { + } else { if (ObjectUtil.isNotNull(beginTime)) { taskDetail.setBeginTime(beginTime); } @@ -1361,7 +1366,8 @@ public class ProTaskDetailService implements IProTaskDetailService { } } } - private void partTaskSubTime(ProTaskDetail taskDetail){ + + private void partTaskSubTime(ProTaskDetail taskDetail) { //cycle为空或者组任务,只加一条数据 if (StrUtil.isEmpty(taskDetail.getCycle()) || taskDetail.getHasGroup() == 1) { ProTaskSubTime proTaskSubTime = new ProTaskSubTime(); @@ -1394,13 +1400,13 @@ public class ProTaskDetailService implements IProTaskDetailService { TaskVo.TaskInfoWithFeign taskInfo = null; ProTaskDetail detail; ProTaskSubTime subTime = taskSubTimeDao.selectByPrimaryKey(taskId); - if(ObjectUtil.isNull(subTime)){ + if (ObjectUtil.isNull(subTime)) { detail = taskDetailDao.selectByPrimaryKey(taskId); - }else { + } else { detail = taskDetailDao.selectByPrimaryKey(subTime.getTaskDetailId()); } - if(ObjectUtil.isNotNull(detail)){ + if (ObjectUtil.isNotNull(detail)) { taskInfo = new TaskVo.TaskInfoWithFeign(); taskInfo.setId(detail.getId()); @@ -1408,7 +1414,7 @@ public class ProTaskDetailService implements IProTaskDetailService { taskInfo.setProjectId(detail.getProjectId()); SysProject project = sysProjectDao.selectByPrimaryKey(detail.getProjectId()); - if(ObjectUtil.isNotNull(project)){ + if (ObjectUtil.isNotNull(project)) { taskInfo.setProjectName(project.getName()); } } @@ -1419,9 +1425,9 @@ public class ProTaskDetailService implements IProTaskDetailService { public TaskVo.NormalTask updateTaskConfig(Long userId, TaskDto.UpdateTaskConfig updateTaskConfig) throws Exception { //检查任务是否存在 ProTaskDetail taskDetail = taskDetailDao.selectByPrimaryKey(updateTaskConfig.getTaskId()); - if(ObjectUtil.isNull(taskDetail)){ + if (ObjectUtil.isNull(taskDetail)) { ProTaskSubTime taskSubTime = taskSubTimeDao.selectByPrimaryKey(updateTaskConfig.getTaskId()); - if(ObjectUtil.isNull(taskSubTime)) { + if (ObjectUtil.isNull(taskSubTime)) { throw new BaseException(CodeEnum.NOT_TASK); } taskDetail = taskDetailDao.selectByPrimaryKey(taskSubTime.getTaskDetailId()); @@ -1430,21 +1436,21 @@ public class ProTaskDetailService implements IProTaskDetailService { ProTaskShowExample taskShowExample = new ProTaskShowExample(); taskShowExample.createCriteria().andTaskDetailIdEqualTo(taskDetail.getId()); List proTaskShowList = proTaskShowDao.selectByExample(taskShowExample); - if(CollectionUtil.isEmpty(proTaskShowList)){ + if (CollectionUtil.isEmpty(proTaskShowList)) { //没有则新建配置信息 ProTaskShow proTaskShow = new ProTaskShow(); - BeanUtil.copyProperties(updateTaskConfig,proTaskShow); + BeanUtil.copyProperties(updateTaskConfig, proTaskShow); proTaskShow.setId(snowflake.nextId()); proTaskShow.setProjectId(taskDetail.getProjectId()); proTaskShow.setTaskDetailId(taskDetail.getId()); proTaskShowDao.insertSelective(proTaskShow); - }else { + } else { //有则修改 ProTaskShow proTaskShow = proTaskShowList.get(0); - BeanUtil.copyProperties(updateTaskConfig,proTaskShow); + BeanUtil.copyProperties(updateTaskConfig, proTaskShow); proTaskShowDao.updateByPrimaryKeySelective(proTaskShow); } - return getTaskInfoByTaskId(userId,taskDetail.getProjectId(),updateTaskConfig.getTaskId(),null); + return getTaskInfoByTaskId(userId, taskDetail.getProjectId(), updateTaskConfig.getTaskId(), null); } @Override @@ -1462,8 +1468,8 @@ public class ProTaskDetailService implements IProTaskDetailService { if (CollectionUtil.isNotEmpty(firstTaskDetailList)) { firstTaskDetailList.forEach(firstTaskDetail -> { TaskVo.TaskListByProjectId firstTask = taskDetailDao.getTaskById(firstTaskDetail.getId()); - List secondTaskList = taskDetailDao.getTaskByParentId(firstTaskDetail.getId(),null); - if(CollectionUtil.isNotEmpty(secondTaskList)){ + List secondTaskList = taskDetailDao.getTaskByParentId(firstTaskDetail.getId(), null); + if (CollectionUtil.isNotEmpty(secondTaskList)) { secondTaskList.forEach(secondTask -> secondTask.setParentName(firstTaskDetail.getName())); } firstTask.setSecondTasks(secondTaskList); diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index b2acd365..c88e995d 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: dev - include: util-dev,common + active: test + include: util-test,common diff --git a/tall/src/main/resources/mapper_dao/SysLabelDao.xml b/tall/src/main/resources/mapper_dao/SysLabelDao.xml index 491c1e92..f76b54f5 100644 --- a/tall/src/main/resources/mapper_dao/SysLabelDao.xml +++ b/tall/src/main/resources/mapper_dao/SysLabelDao.xml @@ -4,7 +4,6 @@