|
|
@ -1397,10 +1397,13 @@ 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,34 +1497,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); |
|
|
|
} |
|
|
|
} |
|
|
|
//把这个任务当作父任务,如果原来任务下的父任务有值 设置为0,修改项目信息
|
|
|
|
//taskDetail = taskDetailDao.selectByPrimaryKey(updateTaskInfo.getId()); //任务详情
|
|
|
|
if(ObjectUtil.isNotNull(taskDetail.getParentId())){ |
|
|
|
taskDetail.setParentId(0L); |
|
|
|
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); |
|
|
|
} |
|
|
|
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()); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
//修改数据
|
|
|
@ -1758,44 +1775,47 @@ public class ProTaskDetailService implements IProTaskDetailService { |
|
|
|
* 新增和修改交付物 |
|
|
|
* @param jiaoFuWu |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public void addAndUpdateJiaoFuWu(TaskDto.JiaoFuWu jiaoFuWu) { |
|
|
|
ProTaskDeliverExample proTaskDeliverExample=new ProTaskDeliverExample(); |
|
|
|
ProTaskDeliver proTaskDeliver=new ProTaskDeliver(); |
|
|
|
if(jiaoFuWu.getId()!=null && StringUtils.isNotBlank(jiaoFuWu.getNames())){ |
|
|
|
//修改
|
|
|
|
proTaskDeliver.setId(jiaoFuWu.getId()); |
|
|
|
proTaskDeliver.setName(jiaoFuWu.getNames()); |
|
|
|
proTaskDeliverExample.createCriteria().andIdEqualTo(jiaoFuWu.getId()).andRecStatusEqualTo((byte) 0); |
|
|
|
proTaskDeliverMapper.updateByExampleSelective(proTaskDeliver,proTaskDeliverExample); |
|
|
|
}else if(jiaoFuWu.getId()==null && StringUtils.isNotBlank(jiaoFuWu.getNames())) { |
|
|
|
//新增
|
|
|
|
proTaskDeliver.setId(snowflake.nextId()); |
|
|
|
proTaskDeliver.setName(jiaoFuWu.getNames()); |
|
|
|
proTaskDeliverMapper.insertSelective(proTaskDeliver); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
// @Override
|
|
|
|
// public void addAndUpdateJiaoFuWu(TaskDto.JiaoFuWu jiaoFuWu) {
|
|
|
|
// ProTaskDeliverExample proTaskDeliverExample=new ProTaskDeliverExample();
|
|
|
|
// ProTaskDeliver proTaskDeliver=new ProTaskDeliver();
|
|
|
|
// if(jiaoFuWu.getId()!=null && StringUtils.isNotBlank(jiaoFuWu.getNames())){
|
|
|
|
// //修改
|
|
|
|
// proTaskDeliver.setId(jiaoFuWu.getId());
|
|
|
|
// proTaskDeliver.setName(jiaoFuWu.getNames());
|
|
|
|
// proTaskDeliverExample.createCriteria().andIdEqualTo(jiaoFuWu.getId()).andRecStatusEqualTo((byte) 0);
|
|
|
|
// proTaskDeliverMapper.updateByExampleSelective(proTaskDeliver,proTaskDeliverExample);
|
|
|
|
// }else if(jiaoFuWu.getId()==null && StringUtils.isNotBlank(jiaoFuWu.getNames())) {
|
|
|
|
// //新增
|
|
|
|
// proTaskDeliver.setId(snowflake.nextId());
|
|
|
|
// proTaskDeliver.setName(jiaoFuWu.getNames());
|
|
|
|
// proTaskDeliverMapper.insertSelective(proTaskDeliver);
|
|
|
|
// }
|
|
|
|
//
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* 新增和修改输入文档 |
|
|
|
* @param jiaoFuWu |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public void addAndUpdateShuWuWenDang(TaskDto.JiaoFuWu jiaoFuWu) { |
|
|
|
ProTaskInputDocExample proTaskDeliverExample=new ProTaskInputDocExample(); |
|
|
|
ProTaskInputDoc proTaskDeliver=new ProTaskInputDoc(); |
|
|
|
if(jiaoFuWu.getId()!=null && StringUtils.isNotBlank(jiaoFuWu.getNames())){ |
|
|
|
//修改
|
|
|
|
proTaskDeliver.setId(jiaoFuWu.getId()); |
|
|
|
proTaskDeliver.setName(jiaoFuWu.getNames()); |
|
|
|
proTaskDeliverExample.createCriteria().andIdEqualTo(jiaoFuWu.getId()).andRecStatusEqualTo((byte) 0); |
|
|
|
proTaskInputDocDao.updateByExampleSelective(proTaskDeliver,proTaskDeliverExample); |
|
|
|
}else if(jiaoFuWu.getId()==null && StringUtils.isNotBlank(jiaoFuWu.getNames())) { |
|
|
|
//新增
|
|
|
|
proTaskDeliver.setId(snowflake.nextId()); |
|
|
|
proTaskDeliver.setName(jiaoFuWu.getNames()); |
|
|
|
proTaskInputDocDao.insertSelective(proTaskDeliver); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// @Override
|
|
|
|
// public void addAndUpdateShuWuWenDang(TaskDto.JiaoFuWu jiaoFuWu) {
|
|
|
|
// ProTaskInputDocExample proTaskDeliverExample=new ProTaskInputDocExample();
|
|
|
|
// ProTaskInputDoc proTaskDeliver=new ProTaskInputDoc();
|
|
|
|
// if(jiaoFuWu.getId()!=null && StringUtils.isNotBlank(jiaoFuWu.getNames())){
|
|
|
|
// //修改
|
|
|
|
// proTaskDeliver.setId(jiaoFuWu.getId());
|
|
|
|
// proTaskDeliver.setName(jiaoFuWu.getNames());
|
|
|
|
// proTaskDeliverExample.createCriteria().andIdEqualTo(jiaoFuWu.getId()).andRecStatusEqualTo((byte) 0);
|
|
|
|
// proTaskInputDocDao.updateByExampleSelective(proTaskDeliver,proTaskDeliverExample);
|
|
|
|
// }else if(jiaoFuWu.getId()==null && StringUtils.isNotBlank(jiaoFuWu.getNames())) {
|
|
|
|
// //新增
|
|
|
|
// proTaskDeliver.setId(snowflake.nextId());
|
|
|
|
// proTaskDeliver.setName(jiaoFuWu.getNames());
|
|
|
|
// proTaskInputDocDao.insertSelective(proTaskDeliver);
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
} |
|
|
|