diff --git a/apps/application/flow/compare/contain_compare.py b/apps/application/flow/compare/contain_compare.py index 8c38bf18b89..0ea3fd87179 100644 --- a/apps/application/flow/compare/contain_compare.py +++ b/apps/application/flow/compare/contain_compare.py @@ -20,4 +20,7 @@ def support(self, node_id, fields: List[str], source_value, compare, target_valu def compare(self, source_value, compare, target_value): if isinstance(source_value, str): return str(target_value) in source_value - return any([str(item) == str(target_value) for item in source_value]) + elif isinstance(source_value, list): + return any([str(item) == str(target_value) for item in source_value]) + else: + return str(target_value) in str(source_value) diff --git a/apps/application/flow/compare/not_contain_compare.py b/apps/application/flow/compare/not_contain_compare.py index 3f69847b491..f9fb1d0eac0 100644 --- a/apps/application/flow/compare/not_contain_compare.py +++ b/apps/application/flow/compare/not_contain_compare.py @@ -20,4 +20,7 @@ def support(self, node_id, fields: List[str], source_value, compare, target_valu def compare(self, source_value, compare, target_value): if isinstance(source_value, str): return str(target_value) not in source_value - return not any([str(item) == str(target_value) for item in source_value]) + elif isinstance(self, list): + return not any([str(item) == str(target_value) for item in source_value]) + else: + return str(target_value) not in str(source_value) diff --git a/apps/application/flow/step_node/variable_assign_node/impl/base_variable_assign_node.py b/apps/application/flow/step_node/variable_assign_node/impl/base_variable_assign_node.py index 15cfd134608..2bef6d6a54e 100644 --- a/apps/application/flow/step_node/variable_assign_node/impl/base_variable_assign_node.py +++ b/apps/application/flow/step_node/variable_assign_node/impl/base_variable_assign_node.py @@ -86,9 +86,9 @@ def execute(self, variable_list, stream, **kwargs) -> NodeResult: return NodeResult({'variable_list': variable_list, 'result_list': result_list}, {}) def get_reference_content(self, fields: List[str]): - return str(self.workflow_manage.get_reference_field( + return self.workflow_manage.get_reference_field( fields[0], - fields[1:])) + fields[1:]) def get_details(self, index: int, **kwargs): return {