Commit a697f249 by huangfusuper

补批携带公共参数

parent 8f4032e0
......@@ -303,8 +303,14 @@ public class ApiFlowOperatingServiceImpl implements ApiFlowOperatingService {
if (order == null) {
order = 0;
}
Map<String,String> publicMap = JSON.parseObject(publicParam, Map.class);
if(CollectionUtil.isEmpty(publicMap)){
publicMap = new HashMap<>(8);
}
List<WaitingRecord> waitingRecords = new ArrayList<>(2);
for (RepairTimeParam repairTimeParam : repairTimeList) {
publicMap.put(PlaceholderEnum.DATE_PLACEHOLDER.getName(),repairTimeParam.getRepairTime());
publicMap.put(PlaceholderEnum.NOW_DATE_PLACEHOLDER.getName(),repairTimeParam.getRepairTime());
String repeatTime = repairTimeParam.getRepairTime();
String timeTypeName = repairTimeParam.getTimeTypeName();
WaitingRecord waitingRecord = new WaitingRecord();
......@@ -313,10 +319,10 @@ public class ApiFlowOperatingServiceImpl implements ApiFlowOperatingService {
String extendedConfiguration = flow.getExtendedConfiguration();
FlowExtendedConfiguration flowExtendedConfiguration = JSON.parseObject(extendedConfiguration, FlowExtendedConfiguration.class);
if (flowExtendedConfiguration != null) {
flowExtendedConfiguration.setPublicParam(publicParam);
flowExtendedConfiguration.setPublicParam(JSON.toJSONString(publicMap));
} else {
flowExtendedConfiguration = new FlowExtendedConfiguration();
flowExtendedConfiguration.setPublicParam(publicParam);
flowExtendedConfiguration.setPublicParam(JSON.toJSONString(publicMap));
}
waitingRecord.setExtendedConfiguration(JSON.toJSONString(flowExtendedConfiguration));
waitingRecord.setFlowVersionName(flow.getVersionName());
......
......@@ -76,7 +76,6 @@ public class RpcCallbackInstanceRunTheLifeCycleCallback implements InstanceRunTh
ReturnResult<String> returnResult = (ReturnResult<String>) result;
//将对应的参数转换为公共参数 修改后的公共参数
Map<String, String> lifeCyclePublicParam = JSON.parseObject(returnResult.getContent(), Map.class);
lifeCyclePublicParam.put("myPublic","huangfu");
//修改后的公共参数重新保存到实例里面以及redis里面
flowExtendedConfiguration.setPublicParam(JSON.toJSONString(lifeCyclePublicParam));
//保存到redis
......
......@@ -3,6 +3,7 @@ package com.byit.task;
import com.alibaba.fastjson.JSON;
import com.byit.conf.MythJobAutoConfigure;
import com.byit.dto.executor.RunParamWrapped;
import com.byit.dto.plugin.FlowExtendedConfiguration;
import com.byit.dto.plugin.RunLog;
import com.byit.enums.NodePropertyEnum;
import com.byit.enums.task.RunResultEnum;
......@@ -11,11 +12,13 @@ import com.byit.filesystem.FileSystem;
import com.byit.job.utils.MythLogUtils;
import com.byit.model.JobTaskRunLogWithBLOBs;
import com.byit.model.JobTaskSchedule;
import com.byit.model.RunRecording;
import com.byit.packet.request.PluginRpcRequestPacket;
import com.byit.packet.response.PluginRpcResponsePacket;
import com.byit.param.CommunicationParam;
import com.byit.service.FastRunLogService;
import com.byit.service.FlowStatusService;
import com.byit.service.RunRecordingService;
import com.byit.service.impl.JobTaskRunLogServiceImpl;
import com.byit.service.impl.RunJavaServiceImpl;
import com.byit.util.GetRegConfig;
......@@ -26,10 +29,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.core.StringRedisTemplate;
import java.nio.charset.StandardCharsets;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.TreeSet;
import java.util.*;
import java.util.stream.Collectors;
import static com.alibaba.fastjson.serializer.SerializerFeature.WriteClassName;
......@@ -105,13 +105,27 @@ public class JavaNodeExecutorTask implements TimerTask {
communicationParam.setFlowId(mythJobTaskSchedule.getFlowId());
communicationParam.setHasMakeUp(mythJobTaskSchedule.getScheduleType() + "");
communicationParam.setRunId(mythJobTaskSchedule.getRunId());
String runId = mythJobTaskSchedule.getRunId();
communicationParam.setRunId(runId);
communicationParam.setExpand1("REAL:EXEC:" + jobTaskRunLogById.getLogId());
communicationParam.setLogId(jobTaskRunLogById.getLogId() + "");
communicationParam.setCallbackUrl(JSON.toJSONString(callUrlList));
communicationParam.setBody(runParamWrapped.getPrivateParam());
communicationParam.setPublicParam(runParamWrapped.getPublicParamMap());
//查询对应的实例 获取实例的全局参数
String flowName = mythJobTaskSchedule.getFlowName();
RunRecordingService bean = SpringUtil.getBean(RunRecordingService.class);
RunRecording runRecording = bean.findAllByRunIDAndFlowName(runId, flowName);
if(runRecording != null) {
String extendedConfiguration = runRecording.getExtendedConfiguration();
FlowExtendedConfiguration flowExtendedConfiguration = JSON.parseObject(extendedConfiguration, FlowExtendedConfiguration.class);
if(flowExtendedConfiguration != null) {
communicationParam.setPublicParam(JSON.parseObject(flowExtendedConfiguration.getPublicParam(), Map.class));
}
}
request.setParam(communicationParam);
request.setJobName(mythJobTaskSchedule.getHandlerName());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment