修改:HPC优化
This commit is contained in:
@@ -15,15 +15,17 @@ import com.sdm.flowable.dto.req.RetryRequest;
|
||||
import com.sdm.flowable.process.ProcessService;
|
||||
import com.sdm.flowable.service.IProcessNodeParamService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.flowable.bpmn.model.FlowElement;
|
||||
import org.flowable.bpmn.model.FlowableListener;
|
||||
import org.flowable.engine.delegate.DelegateExecution;
|
||||
import org.flowable.engine.delegate.ReadOnlyDelegateExecution;
|
||||
import org.flowable.engine.runtime.ProcessInstance;
|
||||
import org.flowable.validation.ValidationError;
|
||||
import org.flowable.variable.api.persistence.entity.VariableInstance;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@@ -40,22 +42,6 @@ public class ProcessController implements IFlowableFeignClient {
|
||||
|
||||
private final ObjectMapper objectMapper = new ObjectMapper();
|
||||
|
||||
// 验证流程模型
|
||||
@PostMapping("/testHpc")
|
||||
public String testHpc(@RequestBody Map<String, Object> params) {
|
||||
String beforeNodeId = params.get("beforeNodeId").toString();
|
||||
HPCExecuteConfig config=new HPCExecuteConfig();
|
||||
config.setBeforeNodeId(beforeNodeId);
|
||||
if(!Objects.isNull(params.get("masterFileRegularStr"))){
|
||||
config.setMasterFileRegularStr(params.get("masterFileRegularStr").toString());
|
||||
}
|
||||
if(!Objects.isNull(params.get("inputFilesRegularStr"))){
|
||||
config.setInputFilesRegularStr(params.get("inputFilesRegularStr").toString());
|
||||
}
|
||||
hpcHandler.execute(null,params,config);
|
||||
return "ok";
|
||||
}
|
||||
|
||||
// 验证流程模型
|
||||
@PostMapping("/validate")
|
||||
public Map<String, Object> validate(@RequestBody ProcessDefinitionDTO processDTO) {
|
||||
@@ -196,4 +182,439 @@ public class ProcessController implements IFlowableFeignClient {
|
||||
return SdmResponse.failed("重试失败: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
// mock验证HPC流程使用
|
||||
@PostMapping("/testHpc")
|
||||
public String testHpc(@RequestBody Map<String, Object> params) {
|
||||
String beforeNodeId = params.get("beforeNodeId").toString();
|
||||
HPCExecuteConfig config=new HPCExecuteConfig();
|
||||
config.setBeforeNodeId(beforeNodeId);
|
||||
if(!Objects.isNull(params.get("masterFileRegularStr"))){
|
||||
config.setMasterFileRegularStr(params.get("masterFileRegularStr").toString());
|
||||
}
|
||||
if(!Objects.isNull(params.get("inputFilesRegularStr"))){
|
||||
config.setInputFilesRegularStr(params.get("inputFilesRegularStr").toString());
|
||||
}
|
||||
String currentNodeId = params.get("currentNodeId").toString();
|
||||
DelegateExecution execution = new DelegateExecution() {
|
||||
@Override
|
||||
public String getId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getProcessInstanceId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRootProcessInstanceId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getEventName() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setEventName(String eventName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getProcessInstanceBusinessKey() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getProcessInstanceBusinessStatus() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getProcessDefinitionId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPropagatedStageInstanceId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getParentId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSuperExecutionId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCurrentActivityId() {
|
||||
return currentNodeId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTenantId() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public FlowElement getCurrentFlowElement() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCurrentFlowElement(FlowElement flowElement) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public FlowableListener getCurrentFlowableListener() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCurrentFlowableListener(FlowableListener currentListener) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReadOnlyDelegateExecution snapshotReadOnly() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DelegateExecution getParent() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends DelegateExecution> getExecutions() {
|
||||
return List.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setActive(boolean isActive) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isActive() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEnded() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setConcurrent(boolean isConcurrent) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isConcurrent() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isProcessInstanceType() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void inactivate() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isScope() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setScope(boolean isScope) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMultiInstanceRoot() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMultiInstanceRoot(boolean isMultiInstanceRoot) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getVariables() {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, VariableInstance> getVariableInstances() {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getVariables(Collection<String> variableNames) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, VariableInstance> getVariableInstances(Collection<String> variableNames) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getVariables(Collection<String> variableNames, boolean fetchAllVariables) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, VariableInstance> getVariableInstances(Collection<String> variableNames, boolean fetchAllVariables) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getVariablesLocal() {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, VariableInstance> getVariableInstancesLocal() {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getVariablesLocal(Collection<String> variableNames) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, VariableInstance> getVariableInstancesLocal(Collection<String> variableNames) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getVariablesLocal(Collection<String> variableNames, boolean fetchAllVariables) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, VariableInstance> getVariableInstancesLocal(Collection<String> variableNames, boolean fetchAllVariables) {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getVariable(String variableName) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VariableInstance getVariableInstance(String variableName) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getVariable(String variableName, boolean fetchAllVariables) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VariableInstance getVariableInstance(String variableName, boolean fetchAllVariables) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getVariableLocal(String variableName) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VariableInstance getVariableInstanceLocal(String variableName) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getVariableLocal(String variableName, boolean fetchAllVariables) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VariableInstance getVariableInstanceLocal(String variableName, boolean fetchAllVariables) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> T getVariable(String variableName, Class<T> variableClass) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> T getVariableLocal(String variableName, Class<T> variableClass) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<String> getVariableNames() {
|
||||
return Set.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<String> getVariableNamesLocal() {
|
||||
return Set.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVariable(String variableName, Object value) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVariable(String variableName, Object value, boolean fetchAllVariables) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object setVariableLocal(String variableName, Object value) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object setVariableLocal(String variableName, Object value, boolean fetchAllVariables) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVariables(Map<String, ?> variables) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVariablesLocal(Map<String, ?> variables) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasVariables() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasVariablesLocal() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasVariable(String variableName) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasVariableLocal(String variableName) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeVariable(String variableName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeVariableLocal(String variableName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeVariables(Collection<String> variableNames) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeVariablesLocal(Collection<String> variableNames) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeVariables() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeVariablesLocal() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTransientVariable(String variableName, Object variableValue) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTransientVariableLocal(String variableName, Object variableValue) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTransientVariables(Map<String, Object> transientVariables) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getTransientVariable(String variableName) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getTransientVariables() {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTransientVariablesLocal(Map<String, Object> transientVariables) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getTransientVariableLocal(String variableName) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getTransientVariablesLocal() {
|
||||
return Map.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeTransientVariableLocal(String variableName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeTransientVariable(String variableName) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeTransientVariables() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeTransientVariablesLocal() {
|
||||
|
||||
}
|
||||
};
|
||||
hpcHandler.execute(execution,params,config);
|
||||
return "ok";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -152,9 +152,7 @@ public class HpcHandler implements ExecutionHandler<Map<String, Object>,HPCExecu
|
||||
if (params == null) {
|
||||
return req;
|
||||
}
|
||||
// ObjectMapper objectMapper = new ObjectMapper(); // 需确保ObjectMapper已配置或注入
|
||||
// 基础字段映射
|
||||
req.setTimesmap(params.get("timesmap").toString());
|
||||
req.setJobName(params.get("jobName").toString());
|
||||
// 处理int类型字段,包含空值和非数字的异常处理
|
||||
try {
|
||||
|
||||
@@ -36,4 +36,5 @@ mybatis-plus:
|
||||
security:
|
||||
whitelist:
|
||||
paths:
|
||||
- /pbs/jobFileCallback
|
||||
- /process/testHpc
|
||||
- /process/asyncCallback
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
spring:
|
||||
profiles:
|
||||
active: local
|
||||
active: dev
|
||||
Reference in New Issue
Block a user