1.8 KiB
科研捐赠一键导入多样本增强 Implementation Plan
For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: 扩展捐赠协议单一键导入,支持单/多样本、运输方式映射、中文胎次与「点」时间格式。
Architecture: 解析逻辑集中在 donation-standard-import-parse.ts(输出 sampleHints + transportType);DonationFormDialog.handleStandardImport 按 hints 创建多样本行并应用运输;协议级采集时间取 hints 最早值。不改后端。
Tech Stack: Vue 3、TypeScript、现有 chinese-datetime-parse / sample-production-reception-fields 常量
Spec: docs/superpowers/specs/2026-07-02-donation-import-multi-sample-design.md
Task 1: 中文数字与 datetime「点」
Files:
-
Create:
web-admin/src/utils/chinese-numeral-parse.ts -
Modify:
web-admin/src/utils/chinese-datetime-parse.ts -
新增
parseChineseNumeral/parseBirthOrder -
datetime 正则支持
[时点::]
Task 2: 解析器多样本 + 运输 + 胎次
Files:
-
Modify:
web-admin/src/utils/donation-standard-import-parse.ts -
扩展
DonationStandardImportParsed(sampleHints,transportType,transportModeText) -
采集时间字段 pattern → hints;
resolveTransportType;matchSampleTypeByExactName
Task 3: 填充逻辑
Files:
-
Modify:
web-admin/src/views/research-donation/list/DonationFormDialog.vue -
重构
handleStandardImport:多样本行、运输 kdys/ryxd、最早采集时间
Task 4: 验证
- 用 Node 脚本或手工验证 §2.1 / §2.2 样例解析结果
./scripts/update-graph.sh frontend