|
@@ -27,9 +27,7 @@ import org.springframework.stereotype.Service;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Optional;
|
|
|
|
|
|
+import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -85,9 +83,24 @@ public class ProjectTaskService extends ServiceImpl<ProjectTaskMapper, ProjectTa
|
|
//如果专利挖掘项目DTO不为空,则需要先建立专利挖掘项目
|
|
//如果专利挖掘项目DTO不为空,则需要先建立专利挖掘项目
|
|
if (patentDigProjectDTO != null) {
|
|
if (patentDigProjectDTO != null) {
|
|
Integer projectId = (Integer) patentDigProjectService.addMessage(patentDigProjectDTO);
|
|
Integer projectId = (Integer) patentDigProjectService.addMessage(patentDigProjectDTO);
|
|
- projectTaskDTO.setProjectId(projectId);
|
|
|
|
- Integer projectTaskId = this.addTask(projectTaskDTO);
|
|
|
|
- return projectTaskId;
|
|
|
|
|
|
+ if (projectId != null) {
|
|
|
|
+ projectTaskDTO.setProjectId(projectId);
|
|
|
|
+ Integer projectTaskId = this.addTask(projectTaskDTO);
|
|
|
|
+ if (projectTaskId != null) {
|
|
|
|
+ //将专利挖掘项目状态置为开卷审核
|
|
|
|
+ LambdaQueryWrapper<PatentDigProject> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
|
+ queryWrapper.eq(PatentDigProject::getProjectId, projectId);
|
|
|
|
+ List<PatentDigProject> patentDigProjects = patentDigProjectService.list(queryWrapper);
|
|
|
|
+ if (!patentDigProjects.isEmpty()) {
|
|
|
|
+ PatentDigProject patentDigProject = patentDigProjects.get(0);
|
|
|
|
+ patentDigProject.setState(0);
|
|
|
|
+ patentDigProject.updateById();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return projectTaskId;
|
|
|
|
+ } else {
|
|
|
|
+ throw new XiaoShiException("专利挖掘项目新增失败");
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
throw new XiaoShiException("挖掘项目数据不能为空!");
|
|
throw new XiaoShiException("挖掘项目数据不能为空!");
|
|
}
|
|
}
|
|
@@ -137,12 +150,12 @@ public class ProjectTaskService extends ServiceImpl<ProjectTaskMapper, ProjectTa
|
|
//设置任务的发起人
|
|
//设置任务的发起人
|
|
projectTask.setCreateId(personnelVO.getId());
|
|
projectTask.setCreateId(personnelVO.getId());
|
|
projectTask.insert();
|
|
projectTask.insert();
|
|
|
|
+ //如果assoTaskId为空,就设置
|
|
if (projectTask.getAssoTaskId() == null) {
|
|
if (projectTask.getAssoTaskId() == null) {
|
|
if (projectTask.getType() == 6 || projectTask.getType() == 7) {
|
|
if (projectTask.getType() == 6 || projectTask.getType() == 7) {
|
|
projectTask.setAssoTaskId(projectTask.getId());
|
|
projectTask.setAssoTaskId(projectTask.getId());
|
|
projectTask.updateById();
|
|
projectTask.updateById();
|
|
}
|
|
}
|
|
-
|
|
|
|
}
|
|
}
|
|
//新增任务可能会上传附件,如果附件不为空,则添加任务与附件关联
|
|
//新增任务可能会上传附件,如果附件不为空,则添加任务与附件关联
|
|
if (projectTaskDTO.getFileGuids() != null) {
|
|
if (projectTaskDTO.getFileGuids() != null) {
|
|
@@ -436,9 +449,11 @@ public class ProjectTaskService extends ServiceImpl<ProjectTaskMapper, ProjectTa
|
|
}
|
|
}
|
|
//审核历史返回VO以及集合
|
|
//审核历史返回VO以及集合
|
|
if (allProjectTasks != null) {
|
|
if (allProjectTasks != null) {
|
|
- taskDetailsVO.setAuditHistoryVOS(allProjectTasks.stream()
|
|
|
|
|
|
+ auditHistoryVOS = allProjectTasks.stream()
|
|
|
|
+ //过滤筛选掉分配任务的信息
|
|
.filter(item -> item.getId() != item.getAssoTaskId())
|
|
.filter(item -> item.getId() != item.getAssoTaskId())
|
|
.map(item -> {
|
|
.map(item -> {
|
|
|
|
+ //新建VO
|
|
AuditHistoryVO auditHistoryVO = new AuditHistoryVO();
|
|
AuditHistoryVO auditHistoryVO = new AuditHistoryVO();
|
|
ProjectTaskVO auditHistoryTaskVO = new ProjectTaskVO();
|
|
ProjectTaskVO auditHistoryTaskVO = new ProjectTaskVO();
|
|
BeanUtils.copyProperties(item, auditHistoryTaskVO);
|
|
BeanUtils.copyProperties(item, auditHistoryTaskVO);
|
|
@@ -453,12 +468,19 @@ public class ProjectTaskService extends ServiceImpl<ProjectTaskMapper, ProjectTa
|
|
BeanUtils.copyProperties(taskHandleResult, taskHandleResultVO);
|
|
BeanUtils.copyProperties(taskHandleResult, taskHandleResultVO);
|
|
auditHistoryVO.setProjectTaskVO(auditHistoryTaskVO);
|
|
auditHistoryVO.setProjectTaskVO(auditHistoryTaskVO);
|
|
auditHistoryVO.setTaskHandleResultVO(taskHandleResultVO);
|
|
auditHistoryVO.setTaskHandleResultVO(taskHandleResultVO);
|
|
|
|
+ return auditHistoryVO;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- auditHistoryVOS.add(auditHistoryVO);
|
|
|
|
- return auditHistoryVO;
|
|
|
|
|
|
+ return null;//返回空值不装到列表中
|
|
})
|
|
})
|
|
- .collect(Collectors.toList()));
|
|
|
|
|
|
+ //过滤掉空对象
|
|
|
|
+ .filter(Objects::nonNull)
|
|
|
|
+ .sorted(Comparator.comparing(
|
|
|
|
+ a -> a.getTaskHandleResultVO(),
|
|
|
|
+ Comparator.nullsLast(Comparator.comparing(TaskHandleResultVO::getCreateTime, Comparator.reverseOrder()))))
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ taskDetailsVO.setAuditHistoryVOS(auditHistoryVOS);
|
|
}
|
|
}
|
|
//全部的文件信息(获取所有的任务的id,查出所有的结果id)
|
|
//全部的文件信息(获取所有的任务的id,查出所有的结果id)
|
|
List<Integer> allTaskIds = allProjectTasks.stream().map(ProjectTask::getId).collect(Collectors.toList());
|
|
List<Integer> allTaskIds = allProjectTasks.stream().map(ProjectTask::getId).collect(Collectors.toList());
|
|
@@ -499,7 +521,9 @@ public class ProjectTaskService extends ServiceImpl<ProjectTaskMapper, ProjectTa
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- taskDetailsVO.setSystemFileList(handleResultFileVOS);
|
|
|
|
|
|
+ taskDetailsVO.setSystemFileList(handleResultFileVOS.stream()
|
|
|
|
+ .sorted(Comparator.comparing(HandleResultFileVO::getCreateTime).reversed())
|
|
|
|
+ .collect(Collectors.toList()));
|
|
//装载名称
|
|
//装载名称
|
|
this.loadTaskDetails(taskDetailsVO);
|
|
this.loadTaskDetails(taskDetailsVO);
|
|
return taskDetailsVO;
|
|
return taskDetailsVO;
|
|
@@ -672,18 +696,31 @@ public class ProjectTaskService extends ServiceImpl<ProjectTaskMapper, ProjectTa
|
|
}
|
|
}
|
|
//开卷审核项目
|
|
//开卷审核项目
|
|
} else if (projectTask.getType() == 1) {
|
|
} else if (projectTask.getType() == 1) {
|
|
|
|
+ LambdaQueryWrapper<PatentDigProject> queryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
|
+ queryWrapper1.eq(PatentDigProject::getProjectId, projectTask.getProjectId());
|
|
|
|
+ List<PatentDigProject> patentDigProjects = patentDigProjectService.list(queryWrapper1);
|
|
|
|
+ PatentDigProject patentDigProject = new PatentDigProject();
|
|
|
|
+ if (!patentDigProjects.isEmpty()) {
|
|
|
|
+ patentDigProject = patentDigProjects.get(0);
|
|
|
|
+ }
|
|
if (type == 0) {
|
|
if (type == 0) {
|
|
//直接同意
|
|
//直接同意
|
|
projectTask.setStatus(3);
|
|
projectTask.setStatus(3);
|
|
projectTask.updateById();
|
|
projectTask.updateById();
|
|
|
|
+ patentDigProject.setState(2);
|
|
|
|
+ patentDigProject.updateById();
|
|
} else if (type == 1) {
|
|
} else if (type == 1) {
|
|
//取消
|
|
//取消
|
|
projectTask.setStatus(5);
|
|
projectTask.setStatus(5);
|
|
projectTask.updateById();
|
|
projectTask.updateById();
|
|
|
|
+ patentDigProject.setState(4);
|
|
|
|
+ patentDigProject.updateById();
|
|
} else if (type == 2) {
|
|
} else if (type == 2) {
|
|
//缺少资料
|
|
//缺少资料
|
|
projectTask.setStatus(4);
|
|
projectTask.setStatus(4);
|
|
projectTask.updateById();
|
|
projectTask.updateById();
|
|
|
|
+ patentDigProject.setState(5);
|
|
|
|
+ patentDigProject.updateById();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|