2.5 KiB
2.5 KiB
02 Germplasm / Seed - cross_entity 表录入说明
来源:docs/requirements/02-germplasm-seed-entry-requirements.md
录入目标
cross_entity 统一承载计划杂交和实际杂交。通过 planned 字段区分计划与实际,通过 planned_cross_id 指向来源计划。
字段录入
| 字段 | 业务意义 | 录入方式 | 控件建议 | 校验规则 |
|---|---|---|---|---|
id |
cross 主键 | 系统生成 | 隐藏/只读 | 必填、唯一 |
auth_user_id |
数据所属用户或租户 | 登录上下文自动写入 | 隐藏 | 不允许手填 |
cross_type |
杂交类型,如 biparental、self、backcross 等 | 用户选择 | 下拉框 | 可选;值来自枚举字典 |
name |
cross 名称,如 A × B、A/B、Cross-2026-001 | 用户录入或自动生成 | 文本框 | 必填;同一 crossing project 下建议唯一 |
planned |
是否为计划杂交 | 页面根据入口自动设置 | 开关/分段控件 | 必填;计划杂交为 true,实际杂交为 false |
status |
状态,如 TODO、DONE、SKIPPED、FAILED | 用户选择/系统更新 | 下拉框 | 可选;计划杂交常用 TODO/DONE/SKIPPED |
crossing_project_id |
所属杂交项目 | 从 crossing_project 选择 | 杂交项目选择器 | 必选 |
planned_cross_id |
实际杂交来源的计划杂交 | 从 cross_entity 选择 | Cross 选择器 | 可选;不能选择自己;实际杂交建议填写 |
录入建议
- 页面上分成“计划杂交”和“实际杂交”两个入口,但后端都保存到
cross_entity。 - 创建计划杂交时:
planned=true,planned_cross_id=null。 - 完成实际杂交时:
planned=false,planned_cross_id=原计划杂交 id。 - 亲本不要直接塞在 cross 主表字段中,应通过
cross_parent维护,便于支持多亲本和 observation_unit 亲本来源。