Files
Wyndham-RSVN-0918/docs/project/integrations/ohip-edge-client-cp2a.md
T
2026-09-17 10:13:16 +08:00

39 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# OHIP现有接口调用适配CP2-A交接
2026-09-15,Implemented / Local HTTP Verified。用户明确技术问题由开发自主处理,产品不确定项再询问。[本阶段CR](../requirements/CR-20260915-ohip-edge-client-cp2a.md)。
## 实际交付
新增`integrations.ohip.edge`下5个生产类:`OhipEdgeOperation`固定13个已发布操作;`OhipEdgeCall`显式单步输入和确认引用;`OhipEdgeCallResult`内部证据;`OhipEdgeProtocolConverter`协议转换;`OhipEdgeHttpAdapter`单次HTTP发送。
支持预订/Block搜索、详情、校验、Block房量读取、档案搜索/详情,以及`postReservation/putReservation/postBlock/putBlock`四项已有写入。没有泛化代理或未发布的房量/附件接口。
实际运行主线尚未引用这些类,没有Spring注册、Controller、worker、数据库绑定、凭据加载或服务重启。构造器必须显式提供HTTPS地址、预期酒店和凭据供应者;本次只在127.0.0.1合成服务上调用。CP1草稿没有自动转换为可执行调用,原工作台确认与本地记录保持。
## 源码核对解决的疑问
平台仓库`https://git.nianxx.cn/brother7/edge-service-oracle-ohip`,固定提交`b5e1a30650c66dc2bdea7e42d6d7d84a16d5382f`。源码没有房量/附件操作实现,也没有FIT TA recorder特殊转换。
- `hotel_confirmation_id`是调用方提供并由平台记录/纳入摘要的确认引用,没有独立签发流程。未来调用方应绑定真实持久确认版本;本阶段只接收显式上下文。
- 读取返回`operation_id/hotel_id/oracle_request_id/data`;写入返回`ConfirmedWriteResult`,其resource为上述读取文档。CLI的ok/status外层不是业务REST协议。
- 平台verified只表示调用getReservation/getBlock成功,没有比较最终字段。客户端返回`WRITE_READBACK_AVAILABLE`,`businessComplete()`始终false。
- unknown不能当未写入;`write_verification_pending`明确表示写入完成而查询待完成;审计收尾也可能在写入后返回503。稳定错误码按此分别处理。
完整取证在父工作区[源码结论](../../../../.planning/ohip-interface-review-20260915/平台源码核对结论.md);没有修改、推送或发布平台代码。
## 关键技术行为
调用只允许固定路径、已核实查询名及编码后的单个资源ID。写入正文根符合四项创建/修改结构,一次仅一个业务对象;更新正文ID与路径ID、正文酒店和确认酒店与配置必须一致。确认外层保留case/task/真实确认引用/调用方稳定幂等键,客户端不生成新键。请求正文限制2MiB,Note等JSON字符串保持原值。
HTTPS、禁止重定向、响应18MiB上限、55秒总网络等待(含响应正文);每次call单次发送,无应用层自动重试,正文禁止二次订阅。显式调用同一次请求可重放,沿用相同正文和幂等键。结果未知时如何恢复由后续持久执行层决定,客户端不自行重放。
回执区分未发送、读取可用、写入后读回可用、写入后查询待完成、处理中、幂等冲突、明确拒绝、写入未知及读取失败。安全代码/关联标识和接收时间可供后续诊断;原生正文仅内部保留供业务核验,不放入toString或错误提示。错误message不透出,错酒店/操作/更新资源ID、缺字段、CLI外层或畸形成功响应均不被当成成功。
## 验证结果与限制
36项新增测试通过;完整后端verify成功,合计1,431项:1,415通过、16条件跳过、0失败/错误。原CP1的17项测试保持通过。测试覆盖四项写入、9项读取/校验、13种错误组合、固定路由与独立catalog切片、跨酒店/对象拒绝、Note原文、重放正文稳定、断连不重发、重定向、正文慢响应与大小限制、凭据提供失败及单次订阅。
没有使用真实凭据、Oracle、Agent或外部PostgreSQL条件烟测。新测试使用localhost合成HTTP,并不证明Oracle字段或真实酒店行为已验证。凭据供应者尚未接实际私密配置;最终字段/房量/附件核验、实际对象匹配、确认快照持久读取和执行恢复均待后续阶段。
下一步继续处理平台房量和附件链路、FIT TA写入证据,再接持久执行和员工回显。固定GC/TEN/BTQR、最终人工参数、Note原文、附件替换和加床排除规则保持,不需要用户重复解释技术参数。