From f033607c8b1d487a17b48a1a103ee751de5edadd Mon Sep 17 00:00:00 2001 From: lanceyq <1982376970@qq.com> Date: Fri, 13 Mar 2026 20:07:18 +0800 Subject: [PATCH] [changes] Queue uniformity, query statement uniformity --- .../memory_dashboard_controller.py | 1 - api/app/repositories/neo4j/cypher_queries.py | 18 +++++++++++++++++ api/app/services/user_memory_service.py | 20 ++----------------- 3 files changed, 20 insertions(+), 19 deletions(-) diff --git a/api/app/controllers/memory_dashboard_controller.py b/api/app/controllers/memory_dashboard_controller.py index ce32a519..92d0ff36 100644 --- a/api/app/controllers/memory_dashboard_controller.py +++ b/api/app/controllers/memory_dashboard_controller.py @@ -200,7 +200,6 @@ async def get_workspace_end_users( from app.tasks import init_community_clustering_for_users init_community_clustering_for_users.apply_async( kwargs={"end_user_ids": end_user_ids}, - queue="periodic_tasks", ) api_logger.info(f"已触发社区聚类补全任务,候选用户数: {len(end_user_ids)}") except Exception as e: diff --git a/api/app/repositories/neo4j/cypher_queries.py b/api/app/repositories/neo4j/cypher_queries.py index 3487e55e..48a5ac87 100644 --- a/api/app/repositories/neo4j/cypher_queries.py +++ b/api/app/repositories/neo4j/cypher_queries.py @@ -1184,3 +1184,21 @@ RETURN DISTINCT nb.activation_value AS activation_value, CASE WHEN c IS NOT NULL THEN c.community_id ELSE null END AS community_id """ + +GET_COMMUNITY_GRAPH_DATA = """ +MATCH (c:Community {end_user_id: $end_user_id}) +MATCH (e:ExtractedEntity {end_user_id: $end_user_id})-[b:BELONGS_TO_COMMUNITY]->(c) +OPTIONAL MATCH (e)-[r:EXTRACTED_RELATIONSHIP]-(e2:ExtractedEntity {end_user_id: $end_user_id}) +RETURN + elementId(c) AS c_id, + properties(c) AS c_props, + elementId(e) AS e_id, + properties(e) AS e_props, + elementId(b) AS b_id, + elementId(e2) AS e2_id, + properties(e2) AS e2_props, + elementId(r) AS r_id, + type(r) AS r_type, + properties(r) AS r_props, + startNode(r) = e AS r_from_e +""" diff --git a/api/app/services/user_memory_service.py b/api/app/services/user_memory_service.py index d21df064..d5d19e0d 100644 --- a/api/app/services/user_memory_service.py +++ b/api/app/services/user_memory_service.py @@ -1749,24 +1749,8 @@ async def analytics_community_graph_data( } # 查询社区节点、实体节点、BELONGS_TO_COMMUNITY 边、实体间关系 - cypher = """ - MATCH (c:Community {end_user_id: $end_user_id}) - MATCH (e:ExtractedEntity {end_user_id: $end_user_id})-[b:BELONGS_TO_COMMUNITY]->(c) - OPTIONAL MATCH (e)-[r:EXTRACTED_RELATIONSHIP]-(e2:ExtractedEntity {end_user_id: $end_user_id}) - RETURN - elementId(c) AS c_id, - properties(c) AS c_props, - elementId(e) AS e_id, - properties(e) AS e_props, - elementId(b) AS b_id, - elementId(e2) AS e2_id, - properties(e2) AS e2_props, - elementId(r) AS r_id, - type(r) AS r_type, - properties(r) AS r_props, - startNode(r) = e AS r_from_e - """ - rows = await _neo4j_connector.execute_query(cypher, end_user_id=end_user_id) + from app.repositories.neo4j.cypher_queries import GET_COMMUNITY_GRAPH_DATA + rows = await _neo4j_connector.execute_query(GET_COMMUNITY_GRAPH_DATA, end_user_id=end_user_id) nodes_map: Dict[str, dict] = {} edges_map: Dict[str, dict] = {}