|
@@ -455,18 +455,18 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
|
455
|
455
|
runtimeService.createChangeActivityStateBuilder()
|
456
|
456
|
.processInstanceId(task.getProcessInstanceId())
|
457
|
457
|
.moveActivityIdsToSingleActivityId(currentIds, flowTaskVo.getTargetKey()).changeState();
|
458
|
|
- String currentTaskId = taskService.createTaskQuery().processInstanceId(task.getProcessInstanceId()).singleResult().getId();
|
|
458
|
+
|
459
|
459
|
List<HistoricTaskInstance> htiList = historyService.createHistoricTaskInstanceQuery()
|
460
|
460
|
.processInstanceId(task.getProcessInstanceId()).taskDefinitionKey(flowTaskVo.getTargetKey())
|
461
|
461
|
.list();
|
462
|
|
- String taskAssignee = "";
|
463
|
|
- for (HistoricTaskInstance hti: htiList) {
|
464
|
|
- if (!hti.getId().equals(currentTaskId)) {
|
465
|
|
- taskAssignee = hti.getAssignee();
|
466
|
|
- break;
|
|
462
|
+ List<Task> currentTaskList = taskService.createTaskQuery().processInstanceId(task.getProcessInstanceId()).list();
|
|
463
|
+ for (int i = 0; i < currentTaskList.size(); i++) {
|
|
464
|
+ String taskAssignee = "";
|
|
465
|
+ if (!htiList.get(i).getId().equals(currentTaskList.get(i).getId())) {
|
|
466
|
+ taskAssignee = htiList.get(i).getAssignee();
|
|
467
|
+ taskService.setAssignee(currentTaskList.get(i).getId(), taskAssignee);
|
467
|
468
|
}
|
468
|
469
|
}
|
469
|
|
- taskService.setAssignee(currentTaskId, taskAssignee);
|
470
|
470
|
} catch (FlowableObjectNotFoundException e) {
|
471
|
471
|
throw new CustomException("未找到流程实例,流程可能已发生变化");
|
472
|
472
|
} catch (FlowableException e) {
|
|
@@ -1768,7 +1768,12 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
|
1768
|
1768
|
}
|
1769
|
1769
|
if (flowTaskDto.getProcDefName().equals("保证金审批")) {
|
1770
|
1770
|
CmcDeposit cmcDeposit = cmcDepositService.selectCmcDepositByDepositId(formId);
|
1771
|
|
- projectId = cmcDeposit != null ? cmcDeposit.getTenderId().toString() : "";
|
|
1771
|
+ if (cmcDeposit != null) {
|
|
1772
|
+ if (cmcDeposit.getTenderId() != null)
|
|
1773
|
+ projectId = cmcDeposit.getTenderId().toString();
|
|
1774
|
+ else
|
|
1775
|
+ flowTaskDto.setTitle(cmcDeposit.getApplyReason());
|
|
1776
|
+ }
|
1772
|
1777
|
}
|
1773
|
1778
|
if (flowTaskDto.getProcDefName().equals("项目委外")) {
|
1774
|
1779
|
CmcOutsource cmcOutsource = cmcOutsourceService.selectCmcOutsourceByOutsourceId(formId);
|