# 04 Germplasm / Seed - pedigree_edge 表录入说明

来源：`docs/architecture/04-germplasm-seed-data-flow.md`

## 录入目标

`pedigree_edge` 描述两个 pedigree_node 之间的 parent、child 或 sibling 关系，并标注亲本类型。

## 上下游关系

| 类型 | 内容 |
| --- | --- |
| 表 | `pedigree_edge` |
| Java 实体 | `PedigreeEdgeEntity` |
| 前置依赖 | `pedigree_node` |
| 下游引用 | 系谱查询、亲本/后代展示 |
| API | `/brapi/v2/pedigree` |

## 字段录入

| 字段 | 业务意义 | 录入方式 | 校验规则 |
| --- | --- | --- | --- |
| `id` | pedigree edge 主键 | 系统生成；导入可指定 | 必填、唯一 |
| `auth_user_id` | 数据所属用户 | 登录上下文自动写入 | 不允许前端手填 |
| `this_node_id` | 当前节点 | PedigreeNode 选择器 | 必选，必须存在 |
| `connceted_node_id` | 关联节点 | PedigreeNode 选择器 | 必选，必须存在 |
| `edge_type` | 关系类型 | 枚举选择 | parent、child、sibling |
| `parent_type` | 亲本类型 | 枚举选择 | 可选，如 FEMALE、MALE |

## 命名注意

实体字段是 `conncetedNode`，拼写与 `connected` 不同；开发 DTO、SQL、迁移时要留意当前代码和数据库列名。

## 页面与交互

- 在 Germplasm/Pedigree 图谱视图中维护。
- 创建 parent 关系时可自动补齐反向 child 关系，具体以业务实现为准。

## 关键校验

1. `this_node_id` 和 `connceted_node_id` 必须存在。
2. 两个节点不能相同。
3. 同一节点之间同一种 edge_type 不应重复。

---

**状态：已完成**
