docs: 登记 T-306 全部体检查询(JKTJ00002 实测字段校准)

- docs/04 §11.1 记录驼峰 idCard、历史 checkId 为 null 两个坑
- docs/01 §5.2 JKTJ00002 联调可用;tasks T-306 DONE

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ila
2026-07-08 22:14:39 +08:00
co-authored by Claude Opus 4.8
parent f3c5e1bf8d
commit adc99e1b43
5 changed files with 21 additions and 8 deletions
+7 -5
View File
@@ -263,14 +263,16 @@ T-206 已建立本地契约与客户端方法,真实写入验收暂未执行
| 业务 | serviceId | 路径 | 返回 | 状态 |
| --- | --- | --- | --- | --- |
| 最近一次体检 | `JKTJLSJL00002` | `/auto/jktjlscx/query` | 单对象(最近一次完整体检) | ✅ 实测可用(`osi.LastHealthCheck`) |
| 某人全部体检 | `JKTJ00002` | `/auto/jktj/query` | **数组**(该人全部体检,每条完整) | ⚠ docx 有定义,实测"没有url的接口配置"(**未部署**),见 docs/06 B5 |
| 某人全部体检 | `JKTJ00002` | `/auto/jktj/query` | **数组**(该人全部体检,每条完整) | ✅ 实测可用(`osi.QueryHealthChecks`;早期曾报"没有url配置",现已部署)|
| 已检/待检名单 | `JKTJLIST00002` | `/auto/jktjlist/query` | 数组(人员名单+状态,非体检明细) | ✅ 实测可用(`osi.ListHealthCheckPeople`,见 §11.4) |
- 请求信封同档案(`serviceId` + `uploadinfo{baseInfo, manageInfo}`);查询按 `phrid`/`idCard` 之一(docx baseInfo 只列这俩)。
- **两处与档案不同的坑**:① 最近一次的 `data` 是**单个对象**(档案 find 是数组);② 体检身份证字段是小写 **`idcard`**(档案是 `idCard`)。
- **JKTJ00002 返回形态**:`data` 为**数组**,每个元素是一份**完整体检**(结构同"最近一次",约 260 项 + 各子节点,见 §11.3),每条含自己的 `checkId`(体检编号,响应字段,长度 20)。
- docx 无"按 `checkId` 直接查单条"的接口——`checkId` 只是响应字段。要按体检编号取历史某次,须用本接口查该人全部体检,再**本地按 `checkId` 过滤**。
- 部署后即为"查历史体检 / 按体检编号定位"的正解接口;未部署前只有"最近一次"可用。
- **身份证字段大小写三接口不一致(务必分开建模)**:最近一次 `JKTJLSJL00002` 用**小写 `idcard`**;`JKTJ00002` 与 `JKTJLIST00002` 用**驼峰 `idCard``**。档案 find 也是 `idCard`。
- 最近一次的 `data` 是**单个对象**(`JKTJ00002` 与档案 find 是数组)。
- **JKTJ00002 返回形态(实测)**:`data` 为**数组**=该人全部体检历史(本样本 8 条,2013–2026);每个元素是一份**完整体检**,结构同"最近一次"(38 顶层标量 + `healthAssessment`/`examination`/`lifestySituation`/`accessoryExamination` + 3 数组节点,见 §11.3)。
- ⚠ **`checkId` 仅近年记录有值,历史记录为 `null`**(本样本仅最近 2 条有体检编号,更早 6 条 `checkId=null`)——第三方流水码是接入后才有的。
- 因此"按体检编号取历史某次"只对**有 checkId 的近期记录**成立;更早的体检**没有 checkId**,只能按 **`checkDate`** 定位。
- docx 无"按 `checkId` 直接查单条"的接口——查历史须用本接口取该人全部体检,再本地按 `checkId`/`checkDate` 过滤。
### 11.2 记录结构与主键