feat(REQ-4468) - 调整因为提级审批导致节点选人会异常的问题
This commit is contained in:
parent
56be5232bb
commit
7753f11fc0
@ -22,6 +22,7 @@ import java.io.Serializable;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_ADVICE;
|
||||
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_OPERATION_DESC;
|
||||
@ -85,12 +86,11 @@ public class CustomResetTaskApproversCmd extends AbstractCommand<Void> implement
|
||||
|
||||
validTask(historicTaskInstance, task, originTaskAssignee, null);
|
||||
|
||||
resolveOriginTask(commandContext, taskService, task);
|
||||
batchAddAttachment(commandContext, task.getProcessInstanceId(), task, attachmentList,
|
||||
originTaskAssignee);
|
||||
|
||||
resetActivityApprovers(commandContext, task, targetTaskAssigneeList, taskService);
|
||||
|
||||
resolveOriginTask(commandContext, taskService, task);
|
||||
return null;
|
||||
}
|
||||
|
||||
@ -105,7 +105,10 @@ public class CustomResetTaskApproversCmd extends AbstractCommand<Void> implement
|
||||
// 这个节点下所有审批人快照
|
||||
String activityListSnapshot =
|
||||
INTERNAL_ACTIVITY_RELATION_ASSIGNEE_LIST_INFO_SNAPSHOT + taskEntity.getTaskDefinitionKey();
|
||||
runtimeService.setVariable(taskEntity.getProcessInstanceId(), activityListSnapshot, taskDelegateAssigners);
|
||||
Map<String, Object> variables = new HashMap<>();
|
||||
variables.put(activityListSnapshot, taskDelegateAssigners);
|
||||
variables.put(INTERNAL_TASK_RELATION_ASSIGNEE_LIST_INFO + taskEntity.getTaskDefinitionKey(), taskDelegateAssigners.stream().map(BpmnTaskDelegateAssigner::buildAssigneeId).collect(Collectors.toList()));
|
||||
runtimeService.setVariables(taskEntity.getProcessInstanceId(), variables);
|
||||
log.info("正在进行提级任务:{},提级审批人列表:{}", taskEntity.getId(), JSONUtil.toJsonStr(taskDelegateAssigners));
|
||||
|
||||
// 将提级审批人加签
|
||||
@ -115,7 +118,6 @@ public class CustomResetTaskApproversCmd extends AbstractCommand<Void> implement
|
||||
|
||||
CustomTaskHelper.deleteMultiTasks(commandContext, tasks);
|
||||
// 移除引擎内部用于确定人的快照变量
|
||||
runtimeService.removeVariable(taskEntity.getProcessInstanceId(), INTERNAL_TASK_RELATION_ASSIGNEE_LIST_INFO + taskEntity.getTaskDefinitionKey());
|
||||
}
|
||||
|
||||
private void resolveOriginTask(CommandContext commandContext, TaskService taskService, TaskEntity task) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user