日期:2026-10-26
状态:已确认(方案 1,实现默认)
关联:样本编码全链路纠错(2026-10-22-sample-code-correction-design.md)
客户服务 / 样本信息管理已提供「更正编码」,会级联更新下游快照。协议单(采集协议、科研捐赠)编辑里换码不会回写下游,易造成不一致。因此编辑已落库样本时禁止改编码。
| 项 | 决定 |
|---|---|
| 业务 | 采集协议 + 科研捐赠 |
| 端 | Web 管理端 + 小程序市场端(mobile-oa-h5) |
| 新增样本 | 仍可选 / 可自动生成编码 |
| 已落库判定 | 样本行有持久化 id |
| 本会话未保存新行 | 仍可改码 |
| 后端 | 更新时若 payload 带已存在 id 且编码变更 → 拒绝 |
| 真要改码 | 仅走「更正编码」 |
SampleTransportFormSection 编辑弹窗中,若 sampleDraft.id 非空,样本编码只读展示;新增仍用选择器 / 自动生成。ProtocolSampleTransportPanel 同等规则(科研捐赠本就自动生成只读,编辑已落库时保持只读并提示来源)。在采集协议 save_samples、科研捐赠样本更新路径中,于写库前:
id 建索引。id 命中现有行,则 sample_code、sample_code_id(trim 后)必须与库中一致。ValueError,文案明确引导使用「更正编码」。无 id 或 id 不在本单现有行中的条目视为新增,不套本校验。
sampleCode / sampleCodeId → 拒绝。id 新增样本 → 不受本规则影响。