docs: 登记 T-301 体检查询契约与字段清单

- docs/04 §11 体检 ~260 字段清单(7 节点)供将来 create 用
- docs/01 §5.2 标注各体检接口联调状态(单查未部署)
- tasks T-301 DONE;gitignore 收敛为 scripts/*.py

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ila
2026-07-08 00:45:47 +08:00
co-authored by Claude Opus 4.8
parent 0e1915fc2b
commit 66bf37bcd3
6 changed files with 65 additions and 14 deletions
+9
View File
@@ -200,3 +200,12 @@
- 变更:`tasks.md` 新增 Phase Q2(其余业务线查询:T-301 体检查询 / T-302 体检端点 / T-303 老年人查询 / T-304 列表查询),把写入 T-206(BLOCKED)/T-204 明确降到 Q2 之后;里程碑加 M4=体检查询、M5=创建闭环。`docs/06` 顶部加"★ 当前批次优先催办",把写入授权(D3)+缺失 serviceId(B1/B2/B4)+写入规则(C1/C2) 归拢成一封邮件一起催。`docs/current-state.md` 下一步改为 T-301 起。
- 决策(全栈分析):真实 create 被厂家写入授权外部锁死,垂直切片走不通;改按读/写横切、读先行——读路径不被授权阻塞、只读零风险、且各查询响应是将来写入映射的事实侦察。T-206 创建代码保留不作废,授权到位再验收。
- 下一步:T-301 体检查询打通。
## 2026-07-08 T-301 体检查询打通(最近一次)
- 状态:DONE
- 变更:新增 `contract/jktj.go`(HealthCheckSummary 定位字段)、`osi/jktj.go`(`LastHealthCheck` JKTJLSJL00002)、`osi/jktj_test.go`(脱敏假数据测路径/解码/Raw/idcard 小写映射/单键校验);`osi/codes.go` 登记 JKTJLSJL00002 + JKTJLIST00002 路由;`docs/04` 新增 §11 体检字段清单(~260 项/7 节点),`docs/01 §5.2` 标注各体检接口联调状态。
- 验证:真实"最近一次体检"查询已通(用户侧 Python 脚本 code=01,返回单个体检对象)。Go 侧因本环境离线无工具链未复跑,需用户 `go test ./...` 确认编译与单测。
- 发现:① 单条 JKTJ00002 `auto/jktj/query` 平台实测"没有url的接口配置"(未部署),`auto/jktj/find` 待确认 → docs/06 B5。② 体检 data 为单对象(档案 find 是数组)。③ 体检身份证字段小写 `idcard`(档案 `idCard`)。④ 体检主键 `checkId`(与档案幂等 checkId 同名不同义),子节点 `healthCheck` 外键指向它。
- 决策:查询只强类型化定位字段,完整内容留 `Result.Raw`;~260 全量字段建模留到体检 create(写入才需逐字段,避免照单样本猜 null 类型)。
- 下一步:T-302 体检 HTTP 查询端点(复用 T-208 handler 模式);或按 docs/06 催厂家确认单查/列表接口。