feat: 2.6.0
1. 优化任务参数
This commit is contained in:
parent
7c9f317dd3
commit
9ba2aae241
@ -140,7 +140,7 @@ public abstract class AbstractWorkflowExecutor implements WorkflowExecutor, Init
|
|||||||
jobTask.setClientInfo(StrUtil.EMPTY);
|
jobTask.setClientInfo(StrUtil.EMPTY);
|
||||||
jobTask.setTaskBatchId(jobTaskBatch.getId());
|
jobTask.setTaskBatchId(jobTaskBatch.getId());
|
||||||
jobTask.setArgsType(1);
|
jobTask.setArgsType(1);
|
||||||
jobTask.setArgsStr(Optional.ofNullable(context.getResult()).orElse(StrUtil.EMPTY));
|
jobTask.setArgsStr(Optional.ofNullable(context.getTaskResult()).orElse(StrUtil.EMPTY));
|
||||||
jobTask.setTaskStatus(context.getJobTaskStatus());
|
jobTask.setTaskStatus(context.getJobTaskStatus());
|
||||||
jobTask.setResultMessage(String.valueOf(context.getEvaluationResult()));
|
jobTask.setResultMessage(String.valueOf(context.getEvaluationResult()));
|
||||||
Assert.isTrue(1 == jobTaskMapper.insert(jobTask), () -> new EasyRetryServerException("新增任务实例失败"));
|
Assert.isTrue(1 == jobTaskMapper.insert(jobTask), () -> new EasyRetryServerException("新增任务实例失败"));
|
||||||
|
@ -77,6 +77,7 @@ public class CallbackWorkflowExecutor extends AbstractWorkflowExecutor {
|
|||||||
.eq(JobTask::getTaskBatchId, context.getTaskBatchId()));
|
.eq(JobTask::getTaskBatchId, context.getTaskBatchId()));
|
||||||
List<CallbackParamsDTO> callbackParamsList = WorkflowTaskConverter.INSTANCE.toCallbackParamsDTO(jobTasks);
|
List<CallbackParamsDTO> callbackParamsList = WorkflowTaskConverter.INSTANCE.toCallbackParamsDTO(jobTasks);
|
||||||
|
|
||||||
|
context.setTaskResult(JsonUtil.toJsonString(callbackParamsList));
|
||||||
String result = null;
|
String result = null;
|
||||||
try {
|
try {
|
||||||
Map<String, String> uriVariables = new HashMap<>();
|
Map<String, String> uriVariables = new HashMap<>();
|
||||||
@ -87,7 +88,7 @@ public class CallbackWorkflowExecutor extends AbstractWorkflowExecutor {
|
|||||||
result = exchange.getBody();
|
result = exchange.getBody();
|
||||||
log.info("回调结果. webHook:[{}],参数: [{}]", decisionConfig.getWebhook(), result);
|
log.info("回调结果. webHook:[{}],参数: [{}]", decisionConfig.getWebhook(), result);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("回调异常. webHook:[{}],参数: [{}]", decisionConfig.getWebhook(), context.getResult(), e);
|
log.error("回调异常. webHook:[{}],参数: [{}]", decisionConfig.getWebhook(), context.getTaskResult(), e);
|
||||||
taskBatchStatus = JobTaskBatchStatusEnum.FAIL.getStatus();
|
taskBatchStatus = JobTaskBatchStatusEnum.FAIL.getStatus();
|
||||||
operationReason = JobOperationReasonEnum.WORKFLOW_CALLBACK_NODE_EXECUTOR_ERROR.getReason();
|
operationReason = JobOperationReasonEnum.WORKFLOW_CALLBACK_NODE_EXECUTOR_ERROR.getReason();
|
||||||
jobTaskStatus = JobTaskStatusEnum.FAIL.getStatus();
|
jobTaskStatus = JobTaskStatusEnum.FAIL.getStatus();
|
||||||
|
@ -19,6 +19,7 @@ import com.aizuda.easy.retry.template.datasource.persistence.mapper.JobTaskMappe
|
|||||||
import com.aizuda.easy.retry.template.datasource.persistence.po.JobTask;
|
import com.aizuda.easy.retry.template.datasource.persistence.po.JobTask;
|
||||||
import com.aizuda.easy.retry.template.datasource.persistence.po.JobTaskBatch;
|
import com.aizuda.easy.retry.template.datasource.persistence.po.JobTaskBatch;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
@ -77,7 +78,9 @@ public class ConditionWorkflowExecutor extends AbstractWorkflowExecutor {
|
|||||||
.select(JobTask::getResultMessage)
|
.select(JobTask::getResultMessage)
|
||||||
.eq(JobTask::getTaskBatchId, context.getTaskBatchId()));
|
.eq(JobTask::getTaskBatchId, context.getTaskBatchId()));
|
||||||
|
|
||||||
|
List<String> taskResult = Lists.newArrayList();
|
||||||
for (JobTask jobTask : jobTasks) {
|
for (JobTask jobTask : jobTasks) {
|
||||||
|
taskResult.add(jobTask.getResultMessage());
|
||||||
boolean execResult = (Boolean) Optional.ofNullable(expressionEngine.eval(decisionConfig.getNodeExpression(), jobTask.getResultMessage())).orElse(Boolean.FALSE);
|
boolean execResult = (Boolean) Optional.ofNullable(expressionEngine.eval(decisionConfig.getNodeExpression(), jobTask.getResultMessage())).orElse(Boolean.FALSE);
|
||||||
|
|
||||||
if (Objects.equals(decisionConfig.getLogicalCondition(), LogicalConditionEnum.AND.getCode())) {
|
if (Objects.equals(decisionConfig.getLogicalCondition(), LogicalConditionEnum.AND.getCode())) {
|
||||||
@ -90,12 +93,12 @@ public class ConditionWorkflowExecutor extends AbstractWorkflowExecutor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
log.info("执行条件表达式:[{}],参数: [{}] 结果:[{}]", decisionConfig.getNodeExpression(), jobTask.getResultMessage(), result);
|
log.info("执行条件表达式:[{}],参数: [{}] 结果:[{}]", decisionConfig.getNodeExpression(), jobTask.getResultMessage(), result);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
context.setTaskResult(JsonUtil.toJsonString(taskResult));
|
||||||
result = tempResult;
|
result = tempResult;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("执行条件表达式解析异常. 表达式:[{}],参数: [{}]", decisionConfig.getNodeExpression(), context.getResult(), e);
|
log.error("执行条件表达式解析异常. 表达式:[{}],参数: [{}]", decisionConfig.getNodeExpression(), context.getTaskResult(), e);
|
||||||
taskBatchStatus = JobTaskBatchStatusEnum.FAIL.getStatus();
|
taskBatchStatus = JobTaskBatchStatusEnum.FAIL.getStatus();
|
||||||
operationReason = JobOperationReasonEnum.WORKFLOW_CONDITION_NODE_EXECUTOR_ERROR.getReason();
|
operationReason = JobOperationReasonEnum.WORKFLOW_CONDITION_NODE_EXECUTOR_ERROR.getReason();
|
||||||
jobTaskStatus = JobTaskStatusEnum.FAIL.getStatus();
|
jobTaskStatus = JobTaskStatusEnum.FAIL.getStatus();
|
||||||
@ -114,6 +117,7 @@ public class ConditionWorkflowExecutor extends AbstractWorkflowExecutor {
|
|||||||
context.setOperationReason(operationReason);
|
context.setOperationReason(operationReason);
|
||||||
context.setJobTaskStatus(jobTaskStatus);
|
context.setJobTaskStatus(jobTaskStatus);
|
||||||
context.setLogMessage(message);
|
context.setLogMessage(message);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -46,7 +46,7 @@ public class WorkflowExecutorContext {
|
|||||||
/**
|
/**
|
||||||
* 客户端返回的结果
|
* 客户端返回的结果
|
||||||
*/
|
*/
|
||||||
private String result;
|
private String taskResult;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 失败策略 1、跳过 2、阻塞
|
* 失败策略 1、跳过 2、阻塞
|
||||||
|
Loading…
Reference in New Issue
Block a user