From e942bb8f27553f9e07327b4651aa0b393d5d62bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Thu, 8 Aug 2024 18:24:48 +0800 Subject: [PATCH] fix:88308 --- .../activiti/service/ProcessAllService.java | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) 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) {