优化获取任务模型兼容历史情况
This commit is contained in:
parent
c4c05fb12a
commit
5401795039
@ -43,6 +43,7 @@ public class TaskServiceImpl implements TaskService {
|
||||
private final FlwProcessMapper processMapper;
|
||||
private final TaskListener taskListener;
|
||||
private final FlwInstanceMapper instanceMapper;
|
||||
private final FlwExtInstanceMapper extInstanceMapper;
|
||||
private final FlwHisInstanceMapper hisInstanceMapper;
|
||||
private final FlwTaskMapper taskMapper;
|
||||
private final FlwTaskActorMapper taskActorMapper;
|
||||
@ -50,13 +51,14 @@ public class TaskServiceImpl implements TaskService {
|
||||
private final FlwHisTaskActorMapper hisTaskActorMapper;
|
||||
|
||||
public TaskServiceImpl(TaskAccessStrategy taskAccessStrategy, TaskListener taskListener, FlwProcessMapper processMapper,
|
||||
FlwInstanceMapper instanceMapper, FlwHisInstanceMapper hisInstanceMapper, FlwTaskMapper taskMapper,
|
||||
FlwTaskActorMapper taskActorMapper, FlwHisTaskMapper hisTaskMapper,
|
||||
FlwInstanceMapper instanceMapper, FlwExtInstanceMapper extInstanceMapper, FlwHisInstanceMapper hisInstanceMapper,
|
||||
FlwTaskMapper taskMapper, FlwTaskActorMapper taskActorMapper, FlwHisTaskMapper hisTaskMapper,
|
||||
FlwHisTaskActorMapper hisTaskActorMapper) {
|
||||
this.taskAccessStrategy = taskAccessStrategy;
|
||||
this.processMapper = processMapper;
|
||||
this.taskListener = taskListener;
|
||||
this.instanceMapper = instanceMapper;
|
||||
this.extInstanceMapper = extInstanceMapper;
|
||||
this.hisInstanceMapper = hisInstanceMapper;
|
||||
this.taskMapper = taskMapper;
|
||||
this.taskActorMapper = taskActorMapper;
|
||||
@ -560,11 +562,12 @@ public class TaskServiceImpl implements TaskService {
|
||||
*/
|
||||
@Override
|
||||
public NodeModel getTaskModel(Long taskId) {
|
||||
FlwTask flwTask = hisTaskMapper.getCheckById(taskId);
|
||||
FlwInstance flwInstance = hisInstanceMapper.selectById(flwTask.getInstanceId());
|
||||
Assert.isNull(flwInstance);
|
||||
FlwProcess process = processMapper.selectById(flwInstance.getProcessId());
|
||||
ProcessModel model = process.model();
|
||||
FlwTask flwTask = hisTaskMapper.selectById(taskId);
|
||||
if (null == flwTask) {
|
||||
flwTask = taskMapper.getCheckById(taskId);
|
||||
}
|
||||
FlwExtInstance extInstance = extInstanceMapper.selectById(flwTask.getInstanceId());
|
||||
ProcessModel model = extInstance.model();
|
||||
NodeModel nodeModel = model.getNode(flwTask.getTaskName());
|
||||
Assert.isNull(nodeModel, "任务ID无法找到节点模型.");
|
||||
return nodeModel;
|
||||
|
@ -48,10 +48,10 @@ public class FlowLongAutoConfiguration {
|
||||
@Bean
|
||||
@Condition(onMissingBean = TaskService.class)
|
||||
public TaskService taskService(@Inject(required = false) TaskAccessStrategy taskAccessStrategy, @Inject(required = false) TaskListener taskListener,
|
||||
FlwProcessMapper processMapper, FlwInstanceMapper instanceMapper, FlwHisInstanceMapper hisInstanceMapper,
|
||||
FlwTaskMapper taskMapper, FlwTaskActorMapper taskActorMapper, FlwHisTaskMapper hisTaskMapper,
|
||||
FlwHisTaskActorMapper hisTaskActorMapper) {
|
||||
return new TaskServiceImpl(taskAccessStrategy, taskListener, processMapper, instanceMapper, hisInstanceMapper,
|
||||
FlwProcessMapper processMapper, FlwInstanceMapper instanceMapper, FlwExtInstanceMapper extInstanceMapper,
|
||||
FlwHisInstanceMapper hisInstanceMapper, FlwTaskMapper taskMapper, FlwTaskActorMapper taskActorMapper,
|
||||
FlwHisTaskMapper hisTaskMapper, FlwHisTaskActorMapper hisTaskActorMapper) {
|
||||
return new TaskServiceImpl(taskAccessStrategy, taskListener, processMapper, instanceMapper, extInstanceMapper, hisInstanceMapper,
|
||||
taskMapper, taskActorMapper, hisTaskMapper, hisTaskActorMapper);
|
||||
}
|
||||
|
||||
|
@ -54,10 +54,10 @@ public class FlowLongAutoConfiguration {
|
||||
@Bean
|
||||
@ConditionalOnMissingBean
|
||||
public TaskService taskService(@Autowired(required = false) TaskAccessStrategy taskAccessStrategy, @Autowired(required = false) TaskListener taskListener,
|
||||
FlwProcessMapper processMapper, FlwInstanceMapper instanceMapper, FlwHisInstanceMapper hisInstanceMapper,
|
||||
FlwTaskMapper taskMapper, FlwTaskActorMapper taskActorMapper, FlwHisTaskMapper hisTaskMapper,
|
||||
FlwHisTaskActorMapper hisTaskActorMapper) {
|
||||
return new TaskServiceImpl(taskAccessStrategy, taskListener, processMapper, instanceMapper, hisInstanceMapper,
|
||||
FlwProcessMapper processMapper, FlwInstanceMapper instanceMapper, FlwExtInstanceMapper extInstanceMapper,
|
||||
FlwHisInstanceMapper hisInstanceMapper, FlwTaskMapper taskMapper, FlwTaskActorMapper taskActorMapper,
|
||||
FlwHisTaskMapper hisTaskMapper, FlwHisTaskActorMapper hisTaskActorMapper) {
|
||||
return new TaskServiceImpl(taskAccessStrategy, taskListener, processMapper, instanceMapper, extInstanceMapper, hisInstanceMapper,
|
||||
taskMapper, taskActorMapper, hisTaskMapper, hisTaskActorMapper);
|
||||
}
|
||||
|
||||
|
@ -21,7 +21,6 @@ import java.util.function.Consumer;
|
||||
/**
|
||||
* Mysql 测试基类
|
||||
*/
|
||||
@Transactional
|
||||
@ExtendWith(SpringExtension.class)
|
||||
@ContextConfiguration(locations = {"classpath:spring-test-mysql.xml"})
|
||||
public class MysqlTest extends TestFlowLong {
|
||||
|
@ -5,6 +5,7 @@ import com.aizuda.bpm.engine.entity.FlwInstance;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@ -14,6 +15,7 @@ import java.util.Optional;
|
||||
* @author songyinyin
|
||||
* @since 2024/4/8 上午9:52
|
||||
*/
|
||||
@Transactional
|
||||
public class TestRedeployProcess extends MysqlTest {
|
||||
|
||||
@BeforeEach
|
||||
|
Loading…
x
Reference in New Issue
Block a user