1
0

feat: 优化任务执行逻辑

This commit is contained in:
2025-09-06 15:14:41 +08:00
parent 0ad9d8239c
commit 2c889462c6
5 changed files with 29 additions and 63 deletions

View File

@@ -2,6 +2,7 @@ package com.lanyuanxiaoyao.leopard.server.service;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import com.yomahub.liteflow.core.FlowExecutor;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.ArrayList;
@@ -79,18 +80,23 @@ public class QuartzService {
@Slf4j
public static class TaskExecutionJob extends QuartzJobBean {
private final TaskService taskService;
private final TaskTemplateService taskTemplateService;
private final FlowExecutor flowExecutor;
public TaskExecutionJob(TaskService taskService) {
this.taskService = taskService;
public TaskExecutionJob(TaskTemplateService taskTemplateService, FlowExecutor flowExecutor) {
this.taskTemplateService = taskTemplateService;
this.flowExecutor = flowExecutor;
}
@Override
protected void executeInternal(JobExecutionContext context) {
var dataMap = context.getMergedJobDataMap();
var templateId = dataMap.getLong("template_id");
var parms = (Map<String, Object>) dataMap.getOrDefault("params", Map.of());
taskService.execute(templateId, parms);
if (ObjectUtil.isNotNull(templateId)) {
var template = taskTemplateService.detail(templateId);
var params = (Map<String, Object>) dataMap.getOrDefault("params", Map.of());
flowExecutor.execute2Resp(template.getChain(), params, context);
}
}
}