执行日期: 2024-10-31
执行人: Cursor AI Assistant
状态: ✅ 已完成
统一 app/core 目录下所有 Neo4j 相关操作的字段命名规范:
| 旧字段名 | 新字段名 | 说明 |
|---|---|---|
name |
name_zh |
中文名称 |
en_name |
name_en |
英文名称 |
time |
create_time |
创建时间 |
createTime |
create_time |
创建时间(统一格式) |
修改数量: 11处
主要修改:
关键变更:
# 查询条件
n.name CONTAINS → n.name_zh CONTAINS
n.en_name CONTAINS → n.name_en CONTAINS
n.createTime CONTAINS → n.create_time CONTAINS
# Entity节点
{name: $name, en_name: $en_name} → {name_zh: $name, name_en: $en_name}
e.createTime → e.create_time
# 排序
ORDER BY n.name → ORDER BY n.name_zh
修改数量: 13处
主要修改:
关键变更:
# 过滤条件
n.name CONTAINS → n.name_zh CONTAINS
n.en_name CONTAINS → n.name_en CONTAINS
n.time CONTAINS → n.create_time CONTAINS
# 图谱节点
text: n.name → text: n.name_zh
name: m.name → name_zh: m.name_zh
# metric_check
WHERE n.name CONTAINS → WHERE n.name_zh CONTAINS
node.get('name') → node.get('name_zh')
node.get('en_name') → node.get('name_en')
node.get('createTime', node.get('time')) → node.get('create_time')
修改数量: 8处
主要修改:
关键变更:
# 查询条件
n.name CONTAINS → n.name_zh CONTAINS
n.en_name CONTAINS → n.name_en CONTAINS
n.time CONTAINS → n.create_time CONTAINS
# 返回字段
n.time as time → n.create_time as time
# 图谱节点
text: n.name → text: n.name_zh
text:(n.name) → text:(n.name_zh)
修改数量: 10处
主要修改:
关键变更:
# 查询条件
n.name =~ → n.name_zh =~
n.en_name =~ → n.name_en =~
# 返回字段
name: n.name → name_zh: n.name_zh
en_name: n.en_name → name_en: n.name_en
time: n.time → create_time: n.create_time
# 排序和更新
ORDER BY n.time → ORDER BY n.create_time
SET n.name → SET n.name_zh
SET n.en_name → SET n.name_en
修改数量: 8处
主要修改:
关键变更:
# 查询条件
n.name CONTAINS → n.name_zh CONTAINS
n.en_name CONTAINS → n.name_en CONTAINS
# 排序
ORDER BY n.time DESC → ORDER BY n.create_time DESC
ORDER BY n.createTime DESC → ORDER BY n.create_time DESC
修改数量: 2处
主要修改:
关键变更:
# 搜索
WHERE n.name CONTAINS → WHERE n.name_zh CONTAINS
# 查询
WHERE n.name = $name → WHERE n.name_zh = $name
修改数量: 7处
主要修改:
关键变更:
# 查询返回
n.name as name → n.name_zh as name_zh
# 图谱节点
text: n.name → text: n.name_zh
n.name as cn_name → n.name_zh as cn_name
n.en_name as en_name → n.name_en as en_name
状态: 无需修改
说明: 该目录主要处理PostgreSQL数据和业务逻辑,已使用标准格式 (name_zh, name_en),无需修改。
| 文件 | 修改数量 | 状态 |
|---|---|---|
| meta_data/meta_data.py | 11处 | ✅ 完成 |
| data_metric/metric_interface.py | 13处 | ✅ 完成 |
| data_interface/interface.py | 8处 | ✅ 完成 |
| data_model/model.py | 10处 | ✅ 完成 |
| data_resource/resource.py | 8处 | ✅ 完成 |
| data_flow/dataflows.py | 2处 | ✅ 完成 |
| production_line/production_line.py | 7处 | ✅ 完成 |
| 总计 | 59处 | ✅ 完成 |
✅ 无linter错误
✅ 所有文件通过语法检查
✅ 代码格式符合规范
DataMeta (元数据)DataMetric (数据指标)DataModel (数据模型)DataResource (数据资源)DataInterface (数据接口)DataFlow (数据流)DataLabel (数据标签)Entity (实体)重要: 本次变更只修改了代码中的字段名,Neo4j数据库中的实际数据需要同步迁移。
需要执行的数据库迁移脚本:
// 迁移 DataMeta 节点
MATCH (n:DataMeta)
WHERE n.name IS NOT NULL
SET n.name_zh = n.name
REMOVE n.name
MATCH (n:DataMeta)
WHERE n.en_name IS NOT NULL
SET n.name_en = n.en_name
REMOVE n.en_name
MATCH (n:DataMeta)
WHERE n.time IS NOT NULL OR n.createTime IS NOT NULL
SET n.create_time = COALESCE(n.createTime, n.time)
REMOVE n.time, n.createTime
// 对其他节点类型执行类似操作
// DataMetric, DataModel, DataResource, DataInterface, DataFlow, Entity 等
前端影响: API返回的字段名已更改,前端代码需要同步更新。
可能需要更新的前端字段:
name → name_zhen_name → name_entime → create_timecreateTime → create_time建议全面测试以下功能模块:
FIELD_STANDARDIZATION_REPORT.md - 详细的字段标准化报告scripts/field_standardization.py - 批量替换脚本(可选)docs/api/metric-check-api.md - 指标检查API文档所有计划的修改已完成:
# 提交变更
git add app/core/
git commit -m "refactor: 统一Neo4j字段命名规范
- 将 name 统一为 name_zh (中文名称)
- 将 en_name 统一为 name_en (英文名称)
- 将 time/createTime 统一为 create_time (创建时间)
影响文件:
- app/core/meta_data/meta_data.py (11处)
- app/core/data_metric/metric_interface.py (13处)
- app/core/data_interface/interface.py (8处)
- app/core/data_model/model.py (10处)
- app/core/data_resource/resource.py (8处)
- app/core/data_flow/dataflows.py (2处)
- app/core/production_line/production_line.py (7处)
总计: 59处字段名标准化
注意: 需要同步执行数据库迁移脚本
"
变更完成 ✅