feat(REQ-5865) - 测试 trigger 问题
This commit is contained in:
parent
7c4434c3a4
commit
952fe67590
@ -1,11 +1,11 @@
|
|||||||
package cn.axzo.workflow.core.service.impl;
|
package cn.axzo.workflow.core.service.impl;
|
||||||
|
|
||||||
|
import cn.axzo.workflow.common.exception.WorkflowEngineException;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutCallbackDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutCallbackDTO;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutTriggerDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutTriggerDTO;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivitySetAssigneeDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivitySetAssigneeDTO;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivityTriggerDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivityTriggerDTO;
|
||||||
import cn.axzo.workflow.common.exception.WorkflowEngineException;
|
|
||||||
import cn.axzo.workflow.core.engine.cmd.CustomAbortProcessInstanceCmd;
|
import cn.axzo.workflow.core.engine.cmd.CustomAbortProcessInstanceCmd;
|
||||||
import cn.axzo.workflow.core.engine.cmd.CustomActivityTriggerAsyncCmd;
|
import cn.axzo.workflow.core.engine.cmd.CustomActivityTriggerAsyncCmd;
|
||||||
import cn.axzo.workflow.core.engine.cmd.CustomActivityTriggerCmd;
|
import cn.axzo.workflow.core.engine.cmd.CustomActivityTriggerCmd;
|
||||||
@ -15,6 +15,7 @@ import cn.axzo.workflow.core.engine.cmd.CustomBusinessNodeTimeoutCallbackCmd;
|
|||||||
import cn.axzo.workflow.core.engine.cmd.CustomBusinessNodeTimeoutTriggerCmd;
|
import cn.axzo.workflow.core.engine.cmd.CustomBusinessNodeTimeoutTriggerCmd;
|
||||||
import cn.axzo.workflow.core.service.BpmnProcessActivityService;
|
import cn.axzo.workflow.core.service.BpmnProcessActivityService;
|
||||||
import cn.axzo.workflow.core.service.ExtAxHiTaskInstService;
|
import cn.axzo.workflow.core.service.ExtAxHiTaskInstService;
|
||||||
|
import com.google.common.util.concurrent.Uninterruptibles;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.flowable.common.engine.impl.interceptor.CommandExecutor;
|
import org.flowable.common.engine.impl.interceptor.CommandExecutor;
|
||||||
import org.flowable.engine.RuntimeService;
|
import org.flowable.engine.RuntimeService;
|
||||||
@ -26,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.CollectionUtils;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.time.Duration;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.ACTIVITY_TRIGGER_NOT_EXISTS;
|
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.ACTIVITY_TRIGGER_NOT_EXISTS;
|
||||||
@ -48,11 +50,20 @@ public class BpmnProcessActivityServiceImpl implements BpmnProcessActivityServic
|
|||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void trigger(BpmnActivityTriggerDTO dto) {
|
public void trigger(BpmnActivityTriggerDTO dto) {
|
||||||
CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutor();
|
CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutor();
|
||||||
|
try {
|
||||||
if (Boolean.TRUE.equals(dto.getAsync())) {
|
if (Boolean.TRUE.equals(dto.getAsync())) {
|
||||||
commandExecutor.execute(new CustomActivityTriggerAsyncCmd(dto));
|
commandExecutor.execute(new CustomActivityTriggerAsyncCmd(dto));
|
||||||
} else {
|
} else {
|
||||||
commandExecutor.execute(new CustomActivityTriggerCmd(dto));
|
commandExecutor.execute(new CustomActivityTriggerCmd(dto));
|
||||||
}
|
}
|
||||||
|
} catch (WorkflowEngineException e) {
|
||||||
|
Uninterruptibles.sleepUninterruptibly(Duration.ofSeconds(2));
|
||||||
|
if (Boolean.TRUE.equals(dto.getAsync())) {
|
||||||
|
commandExecutor.execute(new CustomActivityTriggerAsyncCmd(dto));
|
||||||
|
} else {
|
||||||
|
commandExecutor.execute(new CustomActivityTriggerCmd(dto));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user