update - 同意任务时,增加操作类型变量

This commit is contained in:
王军 2024-06-24 17:30:58 +08:00
parent aa8c6837df
commit 2980dca744

View File

@ -283,6 +283,7 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
Authentication.setAuthenticatedUserId(dto.getUserId());
taskService.addComment(dto.getTaskId(), instance.getId(), COMMENT_TYPE_ADVICE, dto.getAdvice());
}
runtimeService.setVariable(task.getExecutionId(), TASK_COMPLETE_OPERATION_TYPE + task.getId(), APPROVED);
// 完成任务审批通过
// FIXME 如果 task 被重复删除会抛出异常
taskService.complete(task.getId(), instance.getProcessVariables());
@ -385,7 +386,7 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
vo.setResult(processBusinessStatus);
if (Objects.nonNull(vo.getEndTime())) {
// 只有拒绝时, 为指定的 taskId 设置过拒绝变量
vo.setResult((BpmProcessInstanceResultEnum) instance.getProcessVariables().getOrDefault(TASK_COMPLETE_OPERATION_TYPE + vo.getTaskId(), APPROVED));
vo.setResult((BpmProcessInstanceResultEnum) instance.getProcessVariables().get(TASK_COMPLETE_OPERATION_TYPE + vo.getTaskId()));
}
taskDefinitionKeys.add(vo.getTaskDefinitionKey());
List<Comment> taskComments = commentByTaskIdMap.getOrDefault(vo.getTaskId(), Collections.emptyList());
@ -403,7 +404,7 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
vo.setComments(commentConverter.toVos(comments));
count++;
}
return vos;
return vos.stream().filter(e -> Objects.nonNull(e.getResult())).collect(Collectors.toList());
}
@Override
@ -521,12 +522,13 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
/**
* 判断节点是否是或签
* <p>
* ${nrOfCompletedInstances > 0}
*
* ${nrOfCompletedInstances > 0}
* @return
*/
private boolean isModeOr(Activity activity) {
return Objects.nonNull(activity) && Objects.nonNull(activity.getLoopCharacteristics()) && Objects.equals( "${nrOfCompletedInstances > 0}", activity.getLoopCharacteristics().getCompletionCondition());
return Objects.nonNull(activity) && Objects.nonNull(activity.getLoopCharacteristics()) && Objects.equals("${nrOfCompletedInstances > 0}", activity.getLoopCharacteristics().getCompletionCondition());
}
private boolean isSequentialMultiInstance(Activity activity) {