按 ID 读取数据采集盒

验证状态:已源码核验、未联调;适用基线:Web aa138d8、services a3e783d2;核验日期:2026-09-12

用途与 App 场景

按 ID 读取数据采集盒。本页是 http-get-main-service-main-api-device-data-acquisition-box-getbyid-71a0541e 的唯一操作正本;只描述当前 Web 可达调用和服务端行为,不把源码核验称为联调。

Web 使用位置

页面/功能 角色或空间分支 调用证据
($lng).$spaceId.device.data-acquisition-box.edit.$dataAcquisitionBoxId/route.tsx 当前 $spaceId;前端可见性与后端授权分别校验 app/routes/($lng).$spaceId.device.data-acquisition-box.edit.$dataAcquisitionBoxId/route.tsx:63

协议身份

operationId http-get-main-service-main-api-device-data-acquisition-box-getbyid-71a0541e
method + path GET /main-service/main-api/device/data-acquisition-box/getById
base URL 当前 Web 使用同源相对 URL;App 的部署 base URL 未由源码固定
headers Accept: application/json;charset=UTF-8Authorization: Bearer <token>
序列化 query 由 qs.stringify 编码为 id=<percent-encoded-value>;没有 request body

前置条件与权限

需要有效登录态,并满足 administrator 角色或 device-data-acquisition-box:read。 Bearer、Cookie、空间切换规则见认证与空间。资源表受当前认证租户及已注入数据权限约束;请求中的 tenantId 不能替代空间切换。

输入

JSON 路径/参数 JSON 类型 位置 必填 可空 默认值 枚举/范围/单位 说明 字段证据
id string query 非空 数据采集盒 ID;Web 以 qs.stringify 编码 Controller @RequestParam @NotBlank

输出、应答或事件

JSON 路径 JSON 类型 出现条件 可空 枚举/范围/单位 说明 字段证据
timestamp number JSON 响应 epoch 毫秒 响应生成时间 ApiResult
status number JSON 响应 成功为 200 不能只看 HTTP status ApiResult
error/localizedError/path string | null JSON 响应 成功通常为 null;失败见差异页 ApiResult
extraData object 成功 本操作未定义专属键 ApiResult
data object<数据采集盒> | null 业务成功 不存在时仍可为 HTTP/业务成功且 data 为 null 字段模型

完成判据

status=200 且响应解析完成表示读取结束;data=null 不等同 404,调用方必须单独处理不存在。

示例

以下 JSON 表示 query 参数值(不是 request body):

1{
2  "id": "box-01"
3}

按已核验契约构造的成功响应:

1{
2  "timestamp": 1789142400000,
3  "status": 200,
4  "error": null,
5  "localizedError": null,
6  "path": null,
7  "extraData": {},
8  "data": {
9    "dataAcquisitionBoxId": "box-01",
10    "deviceId": "box-01",
11    "deviceNo": "BOX-001",
12    "name": "一号采集盒",
13    "tenantId": "tenant-01"
14  }
15}

按已核实权限出口构造的代表失败(HTTP status 200):

1{
2  "timestamp": 1789142400000,
3  "status": 1001,
4  "error": "Insufficient permissions, please contact the administrator",
5  "localizedError": null,
6  "path": "<request-path>",
7  "extraData": {},
8  "data": null
9}

错误与边界

认证/权限拒绝分别适用认证失败权限失败;参数绑定与 Bean Validation 适用请求校验,业务 ApiException 适用业务拒绝。 公共 Web helper 默认 15 分钟超时;写入和删除没有幂等键,超时后须先查询资源状态再决定是否重试。

调用关系与资源清理

无客户端长连接资源需要释放;写操作后由调用方重新读取详情或列表确认可见状态。

已知缺口

无已知会阻止按当前源码调用的关键证据缺口。未执行真实 HTTP、数据库、缓存、JMS 或部署环境联调。

验证状态与依据

结论 状态 仓库/基线 路径、符号及定位 内容指纹(脏文件)
Web 方法、路径、序列化与消费 已源码核验 web aa138d8 app/.client/api/main/device/dataAcquisitionBoxApi.ts:17 deviceDataAcquisitionBoxGetByIdApi;见上表 consumers 证据文件与 HEAD 一致
权限、输入、输出和完成语义 已源码核验 services a3e783d2 es-center-server-main-service/src/main/java/com/es/center/server/device/controller/DataAcquisitionBoxController.java:173 getByIdes-center-server-device-common/src/main/java/com/es/center/server/device/service/DataAcquisitionBoxService.java:87 getByDataAcquisitionBoxIdes-center-server-device-common/src/main/java/com/es/center/server/device/function/data_acquisition_box/DataAcquisitionBoxGetByIdFunction.java:29 DataAcquisitionBoxGetByIdFunction.apply 证据文件与 HEAD 一致
JSON 字段与时间类型 已源码核验 services a3e783d2 本资源族字段模型 证据文件与 HEAD 一致
清单归属 已重新比对 inventory .scratch/institutional-app-api-docs/inventory/operations.json SHA-256 b5cce137b4fc602840fdbe74c99d90667b3e581815bddc709e263ffcc64e00f9(工作树仅格式化漂移)
真实部署联调 未执行 未发送请求、未连接数据库/缓存/JMS/文件服务