Files
Wyndham-RSVN-0918/docs/project/integrations/ohip-fit-fields-cp15.md
T
2026-09-17 10:13:16 +08:00

5.2 KiB
Raw Blame History

FIT新建字段与实际查询核对 CP15

状态:2026-09-16本地实现及验证完成;默认执行器仍Pending。承接CP14共享客档和CP12创建清单,不代表整个办理流程完成。

已实现字段

工作台或固定要求 Oracle字段与核对
入住/离店、完整房型房数 roomStay日期;每个日期段/正房量房型生成一笔Reservation,roomRates.numberOfUnits为该房型总间数;end为离店前一日
最终Rate、Market、Source ratePlanCode/marketCode/sourceCode按显式目标环境映射,不从邮件或默认值重算
最终Account reservationProfiles中TravelAgent实际Profile ID;不把显示名当酒店编号
共享客档 reservationGuests唯一primary引用CP14实际Profile ID;所有房间共用,不内嵌再建档
Reservation Type / Payment roomStay.guarantee.guaranteeCode=GC;reservationPaymentMethods.paymentMethod=BTQR;固定值不映射成别值
Adult / Fixed rate roomStay及roomRate的adults=2;fixedRate=true;多房人数实际含义仍须Oracle UAT
Note comments.comment.text.value逐字传递;价格不写入房价;查询取得实际Note子编号与文本

OhipFitNewBookingConverter.prepare只消费冻结Execution和显式OhipPlanningContext,复用CP1全量住期门槛和CP12稳定键,拒绝重叠住期、重复本地房型、映射碰撞、缺字段/缺能力、错误Account/环境或无效共享Profile。零数量不创建;没有取消或酒店拆分逻辑。Note 16,000 UTF-16字符是既有内部安全上限,不是声称Oracle官方业务上限;不截断。

内部接续与查询

  1. 原员工确认不变;配置及其他业务前置仍须在完整执行器准备阶段检查。Guest建立且CP14验证后,用真实Guest ID准备有据字段请求。
  2. 将Prepared.requests交CP12 withConfirmedGuest创建路径冻结并执行。Prepared绑定原Execution、确认摘要及酒店环境;它是内部内存对象,不替代持久授权/租约/实际Guest归属或真实配置查询证据。
  3. 创建后的查询使用已保存的实际Reservation ID。readCall固定取Reservation、Comments、ReservationPaymentMethods、RateInfoDetails;不能把POST的verified当作此处新鲜查询。
  4. 回查与原Prepared比较,不读取后来变动的配置覆盖期望值。重启后从原确认及受控映射重建时,必须先通过CP12原请求摘要/固定绑定检查;配置变化必须停止,不能接受新生成请求自行更新期望。
  5. 每笔精确查询先校验酒店、唯一内部Reservation ID、分页、警告、重复JSON键及时间,再逐字段返回MATCHED/MISMATCHED/UNAVAILABLE。字段投影只来自实际响应,不把确认值回填缺项;整体身份错误不产生部分观测。

每日/多段roomRates先排序并检查完整连续覆盖、无缺日/重叠,再逐段比较房型房数、Rate、Market、Source、Fixed rate及人数;不把每日行相加当总房数。当前只支持唯一primary Guest、唯一TravelAgent和单支付方式,多支付记录不猜主记录;显式folioView只能1。实际状态Reserved或DueIn可通过本次新建活动状态检查,Cancelled/InHouse等不自动视为已完成本次新建。

Note须有实际子ID及唯一原文匹配;多个同文Note不猜归属。其他字段不符或缺失不会抹掉已有有效字段观测。原生文本与编号仅内部暂存,toString不展示;没有直接接员工API/页面,也不授予旧Note或附件删除权限。

验证

  • 固定Oracle26.3提交dd631fbd5d0fce74a7dbdf96b43f07ce587211f2的RSV规范核对21条请求及响应字段路径与4项fetchInstructions;请求同时过既有官方schema切片检查。
  • CLI 0.5.0公开查询postReservation/getReservation成功;本次线上目录仍0.6.0,依旧OracleDocument透传,没有FIT TA recorder特殊写入说明。只查开发目录,没有调用酒店业务接口或读取私密凭据。
  • 新增88项转换/核对测试,加1项H2+localhost共享Guest接续测试全部通过:一个客档、两笔各3间、实际编号/Note回查;恢复不重复创建;改变配置被原创建清单拒绝。
  • 相关247项通过;完整Maven verify共2083项、2067通过、16既有条件跳过、222报告、零失败/错误。实际JVM26.0.2,编译release17;不是Java17运行时或实际MySQL/Oracle验收。
  • 无新运行装配/迁移、真实邮件/酒店/凭据操作、平台代码修改、服务重启、提交推送或部署。CP13/14平台候选仍未发布。本轮未创建或调用子智能体。

未完成与下一步

Prepared始终列出TA_RECORDER、MEAL、ATTACHMENTS、NATIVE_UAT,executionEnabled=false;查询的mappedFieldsMatch只表示上述有据字段匹配,businessComplete恒false。FIT TA recorder准确写入和读回字段、独立餐食/餐厅、多Excel附件规则、真实权限/配置与UAT不能据本次测试消除。尚未接完整GROUP/FIT四流程及最终员工回显。

下一步把已实现的附件/Note来源与实际父编号衔接到整体办理及最终查询,再补齐剩余字段契约与环境联调;启用前必须全部必需要求通过,不能跳过上述缺口。用户产品规则不变,无新增产品待确认项。