# 02 Germplasm / Seed - germplasm 表录入说明

来源：`docs/requirements/02-germplasm-seed-entry-requirements.md`

## 录入目标

`germplasm` 是材料身份证，描述一个品种、品系、亲本、后代材料、遗传资源或研究材料“是谁”。它不表示库存数量，库存数量由 `seed_lot` 表达。

## 字段录入

| 字段                                  | 业务意义                                                     | 录入方式                               | 控件建议          | 校验规则                                                  |
| ------------------------------------- | ------------------------------------------------------------ | -------------------------------------- | ----------------- | --------------------------------------------------------- |
| `id`                                  | 种质主键，系统内部唯一标识                                   | 系统生成；导入可指定                   | 隐藏/只读         | 必填、唯一；编辑不可随意修改                              |
| `auth_user_id`                        | 数据所属用户或租户                                           | 登录上下文自动写入                     | 隐藏              | 不允许手填                                                |
| `accession_number`                    | 材料在种质库/机构内的 accession 编号，如 PI 113869           | 用户录入或导入                         | 文本框            | 可选；建议同一 crop / institution 下唯一                  |
| `acquisition_date`                    | 材料进入本系统或本机构的获取日期                             | 用户录入                               | 日期选择器        | 可选；不得晚于当前日期太多，导入时允许缺月/缺日需统一规则 |
| `acquisition_source_code`             | 获取来源编码，如采集、引进、交换、繁殖等                     | 用户选择                               | 下拉框            | 可选；值来自 BrAPI/MCPD 枚举或系统字典                    |
| `biological_status_of_accession_code` | 材料生物状态，如野生、地方品种、育种材料、改良品种、突变体等 | 用户选择                               | 下拉框            | 可选；使用受控枚举，不建议自由输入                        |
| `collection`                          | 材料所属集合、群体、panel 或 collection                      | 用户录入/选择                          | 文本框/选择器     | 可选；可用于分组筛选                                      |
| `country_of_origin_code`              | 原产国或育成/选育国家代码                                    | 用户选择                               | 国家代码选择器    | 可选；建议使用 ISO 3166-1 三字母代码                      |
| `default_display_name`                | 系统默认展示名，给下拉框、表格、详情标题使用                 | 用户录入，可由 germplasm_name 自动带出 | 文本框            | 与 `germplasm_name` 至少填一个；建议必填                  |
| `documentationurl`                    | 材料说明文档、外部数据库页面或 DOI 链接                      | 用户录入                               | URL 输入框        | 可选；校验 URL 格式                                       |
| `genus`                               | 属名，如 Oryza、Triticum                                     | 用户录入/字典选择                      | 文本框/物种选择器 | 可选；建议首字母大写                                      |
| `germplasm_name`                      | 材料名称，可以是品种名、品系名、后代编号                     | 用户录入                               | 文本框            | 与 `default_display_name` 至少填一个；不强制全局唯一      |
| `germplasmpui`                        | 永久唯一标识，通常是 DOI、URI 或全局唯一编码                 | 用户录入/外部导入                      | 文本框/URL 输入框 | 可选；若填写必须唯一；建议用于跨系统交换                  |
| `germplasm_preprocessing`             | 材料用于试验前的统一处理说明，如消毒、催芽、低温处理         | 用户录入                               | 文本框/多行文本   | 可选                                                      |
| `mls_status`                          | 多边系统 MLS 状态，涉及植物遗传资源交换协议                  | 用户选择                               | 下拉框            | 可选；普通业务可隐藏到高级信息                            |
| `seed_source`                         | 材料来源标识，如来源机构+accession，或亲本组合描述           | 用户录入                               | 文本框            | 可选；注意它不是库存批次，不等于 seed_lot                 |
| `seed_source_description`             | 材料来源详细说明                                             | 用户录入                               | 多行文本          | 可选                                                      |
| `species`                             | 种名，如 sativa、aestivum                                    | 用户录入/物种字典                      | 文本框            | 可选；建议小写                                            |
| `species_authority`                   | 种名命名权威，如 L.                                          | 用户录入                               | 文本框            | 可选                                                      |
| `subtaxa`                             | 亚种、变种、品种群、line 等更细分类                          | 用户录入                               | 文本框            | 可选                                                      |
| `subtaxa_authority`                   | 亚种/变种命名权威                                            | 用户录入                               | 文本框            | 可选                                                      |
| `breeding_method_id`                  | 该材料形成所使用的育种方法                                   | 从 breeding_method 选择                | 搜索选择器        | 可选；必须引用存在的 breeding_method                      |
| `crop_id`                             | 所属作物                                                     | 从 crop 选择                           | 作物选择器        | 必填；后续 trial/study/attribute 应尽量同 crop            |

## 录入建议

- 新建材料时，第一屏只放核心字段：`crop_id`、`germplasm_name`、`default_display_name`、`germplasmpui`、`accession_number`、`breeding_method_id`。
- 分类与来源信息放在“高级信息”或“来源信息”分组。
- `germplasmpui`、`accession_number`、`germplasm_name` 三者不要混为一谈：
  - `germplasm_name` 是人看的名字；
  - `accession_number` 是机构内编号；
  - `germplasmpui` 是跨系统长期唯一标识。

## 验收点

1. 新增 germplasm 时，必须选择 crop。
2. `germplasm_name` 和 `default_display_name` 至少填写一个。
3. 下拉选择材料时展示 `default_display_name`，辅助展示 accession number / PUI。
4. 如果 germplasm 已被 seed lot、cross parent、observation unit 引用，不允许物理删除。

---

