File tree Expand file tree Collapse file tree 1 file changed +12
-4
lines changed
Expand file tree Collapse file tree 1 file changed +12
-4
lines changed Original file line number Diff line number Diff line change @@ -544,10 +544,16 @@ def get_answer_text_list(self):
544544 return [[item .to_dict () for item in r ] for r in result ]
545545
546546 @staticmethod
547- def dependent_node (up_node_id , node ):
547+ def dependent_node (edge , node ):
548+ up_node_id = edge .sourceNodeId
548549 if not node .node_chunk .is_end ():
549550 return False
550551 if node .id == up_node_id :
552+ if node .context .get ('branch_id' , None ):
553+ if edge .sourceAnchorId == f"{ node .id } _{ node .context .get ('branch_id' , None )} _right" :
554+ return True
555+ else :
556+ return False
551557 if node .type == 'form-node' :
552558 if node .context .get ('form_data' , None ) is not None :
553559 return True
@@ -560,9 +566,11 @@ def dependent_node_been_executed(self, node_id):
560566 @param node_id: 需要判断的节点id
561567 @return:
562568 """
563- up_node_id_list = [edge .sourceNodeId for edge in self .flow .edges if edge .targetNodeId == node_id ]
564- return all ([any ([self .dependent_node (up_node_id , node ) for node in self .node_context ]) for up_node_id in
565- up_node_id_list ])
569+ up_edge_list = [edge for edge in self .flow .edges if edge .targetNodeId == node_id ]
570+ return all (
571+ [any ([self .dependent_node (edge , node ) for node in self .node_context if node .id == edge .sourceNodeId ]) for
572+ edge in
573+ up_edge_list ])
566574
567575 def get_next_node_list (self , current_node , current_node_result ):
568576 """
You can’t perform that action at this time.
0 commit comments