diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java index 6de6dc72..40887737 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java @@ -252,6 +252,13 @@ public class ProcessAllService extends ServiceImpl processDraftUpdateWrapper.set(ProcessDraft::getTaskId, null); processDraftService.update(processDraftUpdateWrapper); } + + //查询所有待办任务 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId); + wrapper.eq(ProcessApprovalRecord::getFinishFlag,FinishFlagEnum.INCOMPLETE.getValue()); + List approvalRecordList = approvalRecordService.list(wrapper); + //activiti撤销 runtimeService.deleteProcessInstance(processInstanceId,"强制撤回"); //更新流程总表状态 @@ -268,11 +275,6 @@ public class ProcessAllService extends ServiceImpl processApprovalRecord.setCreateTime(null); approvalRecordService.save(processApprovalRecord); - //查询所有待办任务 - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId); - wrapper.eq(ProcessApprovalRecord::getFinishFlag,FinishFlagEnum.INCOMPLETE.getValue()); - List approvalRecordList = approvalRecordService.list(wrapper); //同步删除操作到统一待办 List todoAddList = new ArrayList<>(); String processDefinitionId = processAll.getProcessDefinitionId(); @@ -284,6 +286,15 @@ public class ProcessAllService extends ServiceImpl todoAddList.add(unifiedTodoVO); } pushWorkflowIntegrationAPI.sendTodoTask(todoAddList); + + // 撤回后修改状态为未处理 + for (ProcessApprovalRecord approvalRecord : approvalRecordList) { + LambdaUpdateWrapper updateProcessApprovalRecord = new LambdaUpdateWrapper<>(); + updateProcessApprovalRecord.eq(ProcessApprovalRecord::getId,approvalRecord.getId()); + updateProcessApprovalRecord.set(ProcessApprovalRecord::getFinishFlag,FinishFlagEnum.SUSPEND.getValue()); + approvalRecordService.update(updateProcessApprovalRecord); + } + } public void delegateTaskA(DelegateTaskParam param) {