Browse Source

20210428v1.9

recovery
zy_Java 4 years ago
parent
commit
586af9fe0d
  1. 72
      tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java

72
tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java

@ -1397,10 +1397,10 @@ public class ProTaskDetailService implements IProTaskDetailService {
if (ObjectUtil.isNotNull(updateTaskInfo.getMilestone())) {
taskDetail.setMilestone(updateTaskInfo.getMilestone());
}
//父任务id
if(null != updateTaskInfo.getParentId()){
taskDetail.setParentId(updateTaskInfo.getParentId());
}
// //父任务id
// if(null != updateTaskInfo.getParentId()){
// taskDetail.setParentId(updateTaskInfo.getParentId());
// }
//时间
if (ObjectUtil.isNotNull(updateTaskInfo.getBeginTime()) ||
ObjectUtil.isNotNull(updateTaskInfo.getEndTime()) ||
@ -1494,36 +1494,48 @@ public class ProTaskDetailService implements IProTaskDetailService {
}
});
}
//修改项目信息 当前的项目
if(ObjectUtil.isNotNull(updateTaskInfo.getId())){
if(ObjectUtil.isNotNull(updateTaskInfo.getProjectId())){
if(ObjectUtil.isNotNull(updateTaskInfo.getParentId())){
//检查父任务在不在移动后的项目下,不在的话提示错误信息 该任务不在该项目下,在的话则修改项目信息
//B项目updateTaskInfo.getProjectId() 父任务updateTaskInfo.getParentId()
ProTaskDetailExample proTaskDetailExample = new ProTaskDetailExample();
proTaskDetailExample.createCriteria().andIdEqualTo(updateTaskInfo.getParentId()).andProjectIdEqualTo(updateTaskInfo.getProjectId());
long l = taskDetailDao.countByExample(proTaskDetailExample);
if(l <= 0 ){
throw new BaseException(CodeEnum.NOT_TASK);
}else { //在的话则修改项目信息
taskDetail.setId(updateTaskInfo.getId());
taskDetail.setParentId(updateTaskInfo.getParentId());
taskDetail.setProjectId(updateTaskInfo.getProjectId());
taskDetailDao.updateByPrimaryKeySelective(taskDetail);
}
//修改任务所属的项目
if (ObjectUtil.isNotNull(updateTaskInfo.getProjectId())) {
if (ObjectUtil.isNotNull(updateTaskInfo.getParentId())) {
//检查父任务在不在移动后的项目下,不在的话提示错误信息 该任务不在该项目下,在的话则修改项目信息
//B项目updateTaskInfo.getProjectId() 父任务updateTaskInfo.getParentId()
ProTaskDetailExample proTaskDetailExample = new ProTaskDetailExample();
proTaskDetailExample.createCriteria().andIdEqualTo(updateTaskInfo.getParentId()).andProjectIdEqualTo(updateTaskInfo.getProjectId());
long l = taskDetailDao.countByExample(proTaskDetailExample);
if (l > 0) {
// throw new BaseException(CodeEnum.NOT_TASK);
taskDetail.setProjectId(updateTaskInfo.getProjectId());
taskDetail.setParentId(updateTaskInfo.getParentId());
} else { //在的话则修改项目信息
throw new BaseException(CodeEnum.PARENT_PROJECT_NOT_MATCHING);
}
//把这个任务当作父任务,如果原来任务下的父任务有值 设置为0,修改项目信息
//taskDetail = taskDetailDao.selectByPrimaryKey(updateTaskInfo.getId()); //任务详情
if(ObjectUtil.isNotNull(taskDetail.getParentId())){
taskDetail.setParentId(0L);
taskDetailDao.updateByPrimaryKeySelective(taskDetail);
}
taskDetail.setId(updateTaskInfo.getId());
} else {
taskDetail.setParentId(0L);
taskDetail.setProjectId(updateTaskInfo.getProjectId());
taskDetailDao.updateByPrimaryKeySelective(taskDetail);
}
}
//将此任务以前的子任务的父id改成0
ProTaskDetailExample proTaskDetailExample = new ProTaskDetailExample();
proTaskDetailExample.createCriteria().andParentIdEqualTo(taskDetail.getId());
List<ProTaskDetail> proTaskDetailList = taskDetailDao.selectByExample(proTaskDetailExample);
if(CollectionUtil.isNotEmpty(proTaskDetailList)){
proTaskDetailList.forEach(proTaskDetail -> {
proTaskDetail.setParentId(0L);
taskDetailDao.updateByPrimaryKeySelective(proTaskDetail);
});
}
} else {
//父任务id
if (null != updateTaskInfo.getParentId()) {
ProTaskDetailExample proTaskDetailExample = new ProTaskDetailExample();
proTaskDetailExample.createCriteria().andIdEqualTo(updateTaskInfo.getParentId()).andProjectIdEqualTo(taskDetail.getProjectId());
long l = taskDetailDao.countByExample(proTaskDetailExample);
if (l <= 0) {
throw new BaseException(CodeEnum.PARENT_PROJECT_NOT_MATCHING);
}
taskDetail.setParentId(updateTaskInfo.getParentId());
}
}
//修改数据
taskDetailDao.updateByPrimaryKeySelective(taskDetail);
//修改提醒信息

Loading…
Cancel
Save