|
|
@@ -3739,36 +3739,8 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
record.setNodeMultiType(WorkflowMultiInstanceType.NONE.getCode());
|
|
|
record.setRecordTime(LocalDateTime.now());
|
|
|
String oldTaskName = workflowExtra.getTaskName();
|
|
|
- //如果传入的是开始节点的值 默认是关闭流程 重新发起
|
|
|
- if (StrUtil.equals(dto.getActivityId(), historicProcessInstance.getStartActivityId())) {
|
|
|
|
|
|
- runtimeService.deleteProcessInstance(historicProcessInstance.getId(), "【发起人:" + user.getName() + "】 将 【流程:" + historicProcessInstance.getProcessDefinitionName() + "】 撤回 到 开始节点!");
|
|
|
-// //先停止当前活动示例 然后 将流程撤回到开始节点
|
|
|
-// runtimeService.createProcessInstanceModification(dto.getProcessId())
|
|
|
-// .cancelActivityInstance(activityInstance.getId())
|
|
|
-// .setAnnotation("【发起人:" + user.getName() + "】 将 【流程:" + historicProcessInstance.getProcessDefinitionName() + "】 撤回 到 开始节点!")
|
|
|
-// .startBeforeActivity(historicProcessInstance.getStartActivityId())
|
|
|
-// .setVariableLocal(WorkflowConstant.TASK_IS_APPOINT_APPROVE,YesOrNoEnum.NO.getCode())
|
|
|
-// .execute();
|
|
|
- record.setMessage("【" + user.getName() + "】 将当前流程从【" + oldTaskName + "】 撤回 到 【开始节点】!");
|
|
|
- } else {
|
|
|
- runtimeService.deleteProcessInstance(historicProcessInstance.getId(), "【发起人:" + user.getName() + "】 将 【流程:" + historicProcessInstance.getProcessDefinitionName() + "】 撤回 到 开始节点!");
|
|
|
- //先停止当前活动示例 然后 将流程撤回到某个节点
|
|
|
-// runtimeService.createProcessInstanceModification(historicProcessInstance.getId())
|
|
|
-// .cancelActivityInstance(activityInstance.getId())
|
|
|
-// .setAnnotation("【发起人:" + user.getName() + "】 将 【流程:" + historicProcessInstance.getProcessDefinitionName() + "】 撤回 到 【任务:" + activityInstance.getActivityName() + "】!")
|
|
|
-// .startBeforeActivity(dto.getActivityId())
|
|
|
-// .setVariableLocal(WorkflowConstant.TASK_IS_APPOINT_APPROVE, YesOrNoEnum.NO.getCode())
|
|
|
-// .execute();
|
|
|
-
|
|
|
- //获取当前活动的任务信息
|
|
|
- List<WorkflowExtra> workflowExtrasNew = workflowExtraMapper.selectList(Wrappers.lambdaQuery(WorkflowExtra.class).in(WorkflowExtra::getProcessId, dto.getProcessId()));
|
|
|
- //找到当前流程的 任务开始时间 最大值 为当前审批节点
|
|
|
- WorkflowExtra workflowExtraNew = workflowExtrasNew.stream()
|
|
|
- .filter(e -> e.getProcessId().equals(dto.getProcessId()))
|
|
|
- .max(Comparator.comparing(WorkflowExtra::getStartTime)).orElse(new WorkflowExtra());
|
|
|
- record.setMessage("【" + user.getName() + "】 将当前流程从【" + oldTaskName + "】撤回 到【" + workflowExtraNew.getTaskName() + "】!");
|
|
|
- }
|
|
|
+ runtimeService.deleteProcessInstance(historicProcessInstance.getId(), "【发起人:" + user.getName() + "】 将 【流程:" + historicProcessInstance.getProcessDefinitionName() + "】 撤回 到 开始节点!");
|
|
|
//保存流程撤回信息
|
|
|
workflowRecordMapper.insert(record);
|
|
|
|