Browse Source

修改任务信息可以修改项目

recovery
hyy-alt 4 years ago
parent
commit
47ff54134f
  1. 2
      tall/src/main/java/com/ccsens/tall/bean/dto/TaskDto.java
  2. 34
      tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java

2
tall/src/main/java/com/ccsens/tall/bean/dto/TaskDto.java

@ -227,6 +227,8 @@ public class TaskDto {
private List<TaskRemind> taskRemindList;
@ApiModelProperty("父任务id")
private Long parentId;
@ApiModelProperty("所属项目id")
private Long projectId;
}
@Data
@ApiModel("修改任务时修改交付物名称")

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

@ -30,6 +30,7 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
@ -1332,9 +1333,10 @@ public class ProTaskDetailService implements IProTaskDetailService {
if (ObjectUtil.isNotNull(taskSubTime)) {
taskDetail = taskDetailDao.selectByPrimaryKey(taskSubTime.getTaskDetailId());
} else {
taskDetail = taskDetailDao.selectByPrimaryKey(updateTaskInfo.getId());
taskDetail = taskDetailDao.selectByPrimaryKey(updateTaskInfo.getId()); //任务详情
}
if (ObjectUtil.isNotNull(taskDetail)) {
SysProject project = sysProjectDao.selectByPrimaryKey(taskDetail.getProjectId());
if (ObjectUtil.isNotNull(project)) {
//查找权限
@ -1490,6 +1492,35 @@ 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);
}
taskDetail.setId(updateTaskInfo.getId());
taskDetail.setProjectId(updateTaskInfo.getProjectId());
taskDetailDao.updateByPrimaryKeySelective(taskDetail);
}
}
//修改数据
taskDetailDao.updateByPrimaryKeySelective(taskDetail);
@ -1516,6 +1547,7 @@ public class ProTaskDetailService implements IProTaskDetailService {
//返回的任务详细信息
Long subTimeId = taskDeliverService.isTaskOrSubTime(taskDetail.getId());
normalTask = getTaskInfoByTaskId(currentUserId, project.getId(), subTimeId, null);
} else {
throw new BaseException(CodeEnum.NOT_POWER);
}

Loading…
Cancel
Save