lmx hace 4 semanas
padre
commit
4fd8596e16

+ 4 - 0
fs-service/src/main/java/com/fs/company/service/impl/AbstractWorkflowNode.java

@@ -140,6 +140,10 @@ public abstract class AbstractWorkflowNode implements HasCompanyWorkflowNodeMapp
         return companyWorkflowEdges.get(new Random().nextInt(companyWorkflowEdges.size())).getTargetNodeKey();
     }
 
+    public Boolean edgeConditionValidate(String condition){
+        return true;
+    }
+
     public CompanyWorkflowNode getNodeByKey(String nodeKey){
         CompanyWorkflowNode companyWorkflowNode = companyWorkflowNodeMapper.selectNodeByNodeKey(nodeKey);
         if(null == companyWorkflowNode){

+ 25 - 0
fs-service/src/main/java/com/fs/company/service/impl/AiAddWxTaskNode.java

@@ -1,12 +1,17 @@
 package com.fs.company.service.impl;
 
+import com.fs.company.domain.CompanyAiWorkflowExec;
+import com.fs.company.domain.CompanyWorkflowEdge;
 import com.fs.company.mapper.CompanyWorkflowNodeMapper;
 import com.fs.company.param.ExecutionContext;
 import com.fs.company.service.HasCompanyWorkflowNodeMapper;
+import com.fs.company.vo.AddWxWorkflowConditionVo;
 import com.fs.company.vo.ExecutionResult;
 import com.fs.enums.NodeTypeEnum;
 
+import java.util.List;
 import java.util.Map;
+import java.util.Random;
 
 /**
  * @author MixLiu
@@ -21,6 +26,7 @@ public class AiAddWxTaskNode extends AbstractWorkflowNode implements HasCompanyW
     public void setCompanyWorkflowNodeMapper(CompanyWorkflowNodeMapper mapper) {
         this.companyWorkflowNodeMapper = mapper;
     }
+
     public AiAddWxTaskNode(String nodeKey, String nodeName, Map<String, Object> properties) {
         super(nodeKey, nodeName, properties);
     }
@@ -40,4 +46,23 @@ public class AiAddWxTaskNode extends AbstractWorkflowNode implements HasCompanyW
     public Boolean isAsync() {
         return true;
     }
+
+    @Override
+    public String getNextNodeKey(String workflowInstanceId, String nodeKey) {
+
+        CompanyAiWorkflowExec companyAiWorkflowExec = workflowExecMapper.selectByWorkflowInstanceId(workflowInstanceId);
+
+        List<CompanyWorkflowEdge> companyWorkflowEdges =
+                companyWorkflowEdgeMapper.selectListByWorkflowIdAndNodeKey(companyAiWorkflowExec.getWorkflowId(), nodeKey);
+        CompanyWorkflowEdge result = null;
+        for (CompanyWorkflowEdge companyWorkflowEdge : companyWorkflowEdges) {
+
+        }
+        return result == null ? null : result.getTargetNodeKey();
+    }
+    @Override
+    public Boolean edgeConditionValidate(String condition){
+
+        return false;
+    }
 }