# API数据指标模块 ## 简介 API数据指标模块(`app.api.data_metric`)提供了与数据指标相关的所有API接口,包括数据指标的新增、修改、查询、列表展示、图谱生成等功能。该模块作为前端与核心业务逻辑之间的桥梁,负责接收HTTP请求,调用相应的核心业务逻辑函数,并将结果返回给前端。 ## 主要功能 1. **数据指标管理**:提供新增、更新、查询数据指标的接口 2. **数据指标列表**:支持分页、筛选的数据指标列表展示 3. **数据指标图谱**:生成不同类型的数据指标关系图谱,包括血缘关系、影响关系等 4. **代码生成**:基于指标规则描述和映射关系生成指标计算代码 5. **关系管理**:处理数据指标与其他实体(如模型、元数据、标签)之间的关系 ## API接口列表 | 接口路径 | 方法 | 描述 | |---------|------|------| | `/data/metric/add` | POST | 新增数据指标 | | `/data/metric/update` | POST | 更新数据指标 | | `/data/metric/detail` | POST | 获取数据指标详情 | | `/data/metric/list` | POST | 获取数据指标列表 | | `/data/metric/code` | POST | 生成指标计算代码 | | `/data/metric/relation` | POST | 处理数据指标血缘关系 | | `/data/metric/graph/all` | POST | 获取数据指标图谱 | | `/data/metric/list/graph` | POST | 获取数据指标列表图谱 | ## 使用示例 ### 1. 新增数据指标 ```json POST /data/metric/add Content-Type: application/json { "name": "月活用户数", "category": "用户指标", "describe": "每月登录系统的独立用户数量", "childrenId": [], "tag": 123, "id_list": [ { "id": 456, "type": "model", "metaData": [789, 790] } ] } ``` ### 2. 查询数据指标列表 ```json POST /data/metric/list Content-Type: application/json { "current": 1, "size": 10, "name": "用户", "category": "用户指标" } ``` ### 3. 生成指标图谱 ```json POST /data/metric/graph/all Content-Type: application/json { "id": 123, "type": "all", "meta": true } ``` ## 依赖关系 本模块主要依赖以下组件: 1. **core.data_metric**:核心业务逻辑模块,包含数据指标相关的所有核心功能 2. **routes.graph_routes**:图数据库连接和相关工具 3. **DataOps_function.llm_solve**:代码生成相关功能 4. **DataOps_function.meta_data_function**:元数据处理功能 5. **model.result**:统一的响应结果模型 ## 错误处理 所有API接口都包含统一的错误处理机制。当发生异常时,将返回包含错误信息的JSON响应: ```json { "code": -1, "message": "操作失败", "data": {}, "error": { "error": "发生的具体错误信息" } } ``` ## 代码结构 - **__init__.py**:定义Blueprint和路由导入 - **routes.py**:包含所有API路由处理函数 ## 维护者 数据平台开发团队