|
@@ -515,13 +515,14 @@ public class InformationQueryServiceImpl extends BaseServiceImpl<InformationQuer
|
|
|
if (result != null && result.size() != 0) {
|
|
|
|
|
|
//属于待审批和已审批状态,查询待办信息
|
|
|
- Map<Long, Task> taskMaps = new HashMap<>();
|
|
|
+ Map<String, List<Task>> taskMaps = new HashMap<>();
|
|
|
Map<String, List<TaskParallel>> taskParallelMaps = new HashMap<>();
|
|
|
List<Long> informationIds = result.stream().filter(f -> f.getStatus().equals(1) || f.getStatus().equals(2)).map(InformationQuery::getId).collect(Collectors.toList());
|
|
|
String informationIdsStr = informationIds.stream().map(String::valueOf).collect(Collectors.joining(","));
|
|
|
if (StringUtils.isNotEmpty(informationIdsStr)) {
|
|
|
List<Task> query = jdbcTemplate.query("SELECT id,form_data_id,process_instance_id,approval_type,status,batch,project_id,contract_id FROM u_task WHERE form_data_id IN(" + informationIdsStr + ") AND status IN (1, 2, 3) AND is_deleted = 0", new BeanPropertyRowMapper<>(Task.class));
|
|
|
- taskMaps = query.stream().collect(Collectors.toMap(Task::getId, Function.identity()));
|
|
|
+
|
|
|
+ taskMaps = query.stream().collect(Collectors.groupingBy(Task::getFormDataId));
|
|
|
|
|
|
Set<String> processInstanceIds = query.stream().map(Task::getProcessInstanceId).map(id -> "'" + id + "'").collect(Collectors.toSet());
|
|
|
if (processInstanceIds.size() > 0) {
|
|
@@ -545,7 +546,7 @@ public class InformationQueryServiceImpl extends BaseServiceImpl<InformationQuer
|
|
|
List<InformationQueryVO> voResult = JSONArray.parseArray(JSONObject.toJSONString(result), InformationQueryVO.class);
|
|
|
//处理流程状态
|
|
|
List<InformationQuery> finalInformationQueries = informationQueries;
|
|
|
- Map<Long, Task> finalTaskMaps = taskMaps;
|
|
|
+ Map<String, List<Task>> finalTaskMaps = taskMaps;
|
|
|
Map<String, List<TaskParallel>> finalTaskParallelMaps = taskParallelMaps;
|
|
|
voResult.forEach(vor -> {
|
|
|
if (ObjectUtil.isNotEmpty(vor.getCreateTime())) {
|
|
@@ -583,16 +584,16 @@ public class InformationQueryServiceImpl extends BaseServiceImpl<InformationQuer
|
|
|
//设置上报批次
|
|
|
vor.setReportNumber(String.valueOf(tasks.get(0).getBatch()));
|
|
|
}*/
|
|
|
- Task task = finalTaskMaps.getOrDefault(vor.getId(), null);
|
|
|
- if (task != null) {
|
|
|
+ List<Task> tasks = finalTaskMaps.getOrDefault(vor.getId().toString(), null);
|
|
|
+ if (tasks != null && tasks.size() > 0) {
|
|
|
//查询当前任务的所有待办人
|
|
|
- List<TaskParallel> linkTasks = finalTaskParallelMaps.getOrDefault(task.getProcessInstanceId(), null);
|
|
|
+ List<TaskParallel> linkTasks = finalTaskParallelMaps.getOrDefault(tasks.get(0).getProcessInstanceId(), null);
|
|
|
if (linkTasks != null && linkTasks.size() > 0) {
|
|
|
//处理审批状态
|
|
|
this.integrationMethod(vor, linkTasks);
|
|
|
}
|
|
|
//设置上报批次
|
|
|
- vor.setReportNumber(String.valueOf(task.getBatch()));
|
|
|
+ vor.setReportNumber(String.valueOf(tasks.get(0).getBatch()));
|
|
|
}
|
|
|
}
|
|
|
|