fix: 待办发送改为异步延迟5秒

This commit is contained in:
2024-09-20 09:52:34 +08:00
parent 346e6d04b5
commit 01c27425e5
@@ -33,6 +33,9 @@ import org.springframework.stereotype.Component;
import java.util.*; import java.util.*;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
/** /**
* @author liJiaRao * @author liJiaRao
@@ -170,7 +173,12 @@ public class MyGlobalEventListener implements ActivitiEventListener {
hiworkTodoAdd.setRecordId(approvalRecord.getId()); hiworkTodoAdd.setRecordId(approvalRecord.getId());
hiworkTodoAdd.setProcessDefinitionId(processDefinitionId); hiworkTodoAdd.setProcessDefinitionId(processDefinitionId);
list.add(hiworkTodoAdd); list.add(hiworkTodoAdd);
CompletableFuture.runAsync(() -> pushWorkflowIntegrationAPI.sendTodoTask(list)); ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
// 调度5秒后执行异步任务
scheduler.schedule(() ->
CompletableFuture.runAsync(() -> pushWorkflowIntegrationAPI.sendTodoTask(list)),
5, TimeUnit.SECONDS
);
} }
private void taskAssigned(ActivitiEvent event) { private void taskAssigned(ActivitiEvent event) {
@@ -189,7 +197,7 @@ public class MyGlobalEventListener implements ActivitiEventListener {
return; return;
} }
String userId = approvalRecord.getUserId(); String userId = approvalRecord.getUserId();
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
if (!Objects.equals(assignee,userId)) { if (!Objects.equals(assignee,userId)) {
log.info("由"+userId+"转办给"+assignee); log.info("由"+userId+"转办给"+assignee);
// 对接统一平台生成完成任务 // 对接统一平台生成完成任务
@@ -200,7 +208,8 @@ public class MyGlobalEventListener implements ActivitiEventListener {
hiworkTodoAdd.setType("2"); hiworkTodoAdd.setType("2");
hiworkTodoAdd.setProcessDefinitionId(processDefinitionId); hiworkTodoAdd.setProcessDefinitionId(processDefinitionId);
list.add(hiworkTodoAdd); list.add(hiworkTodoAdd);
CompletableFuture.runAsync(() -> pushWorkflowIntegrationAPI.sendTodoTask(list)); // 调度5秒后执行异步任务
pushWorkflowIntegrationAPI.sendTodoTask(list);
//更新转办任务id //更新转办任务id
LambdaUpdateWrapper<ProcessApprovalRecord> update = new LambdaUpdateWrapper<>(); LambdaUpdateWrapper<ProcessApprovalRecord> update = new LambdaUpdateWrapper<>();
@@ -212,7 +221,8 @@ public class MyGlobalEventListener implements ActivitiEventListener {
hiworkTodoAdd.setToUserId(assignee); hiworkTodoAdd.setToUserId(assignee);
hiworkTodoAdd.setType("1"); hiworkTodoAdd.setType("1");
list.add(hiworkTodoAdd); list.add(hiworkTodoAdd);
CompletableFuture.runAsync(() -> pushWorkflowIntegrationAPI.sendTodoTask(list)); // 调度5秒后执行异步任务
pushWorkflowIntegrationAPI.sendTodoTask(list);
} }
} }
@@ -297,7 +307,12 @@ public class MyGlobalEventListener implements ActivitiEventListener {
hiworkTodoAdd.setProcessDefinitionId(processDefinitionId); hiworkTodoAdd.setProcessDefinitionId(processDefinitionId);
list.add(hiworkTodoAdd); list.add(hiworkTodoAdd);
// 异步发送待办 // 异步发送待办
CompletableFuture.runAsync(() -> pushWorkflowIntegrationAPI.sendTodoTask(list)); ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
// 调度5秒后执行异步任务
scheduler.schedule(() ->
CompletableFuture.runAsync(() -> pushWorkflowIntegrationAPI.sendTodoTask(list)),
5, TimeUnit.SECONDS
);
} }
private void entityDeleted(ActivitiEvent event) { private void entityDeleted(ActivitiEvent event) {