|
|
@@ -71,7 +71,6 @@ class DataFlowService:
|
|
|
name_zh: label.name_zh,
|
|
|
name_en: label.name_en
|
|
|
}}) as tags
|
|
|
- ORDER BY created_at DESC
|
|
|
"""
|
|
|
|
|
|
# 获取Neo4j驱动(如果连接失败会抛出ConnectionError异常)
|
|
|
@@ -915,6 +914,29 @@ class DataFlowService:
|
|
|
# 使用查询返回的node_id
|
|
|
updated_dataflow['id'] = result[0]['node_id']
|
|
|
|
|
|
+ # 查询并添加标签数组到返回数据
|
|
|
+ tags_query = """
|
|
|
+ MATCH (n:DataFlow)
|
|
|
+ WHERE id(n) = $dataflow_id
|
|
|
+ OPTIONAL MATCH (n)-[:LABEL]->(label:DataLabel)
|
|
|
+ RETURN collect({
|
|
|
+ id: id(label),
|
|
|
+ name_zh: label.name_zh,
|
|
|
+ name_en: label.name_en
|
|
|
+ }) as tags
|
|
|
+ """
|
|
|
+ tags_result = session.run(
|
|
|
+ tags_query, dataflow_id=dataflow_id
|
|
|
+ ).single()
|
|
|
+ if tags_result:
|
|
|
+ tags = tags_result.get('tags', [])
|
|
|
+ updated_dataflow['tag'] = [
|
|
|
+ tag for tag in tags
|
|
|
+ if tag.get('id') is not None
|
|
|
+ ]
|
|
|
+ else:
|
|
|
+ updated_dataflow['tag'] = []
|
|
|
+
|
|
|
logger.info(f"更新数据流成功: ID={dataflow_id}")
|
|
|
return updated_dataflow
|
|
|
|