# 修改预订 ## 适用业务 用于当前邮件要求修改既有: - FIT Reservation - Group Block - 日期、晚数、房型、房量、人数、价格、Rate Code、备注或其他订单细节 ## 支持的修改 - `update_stay_dates` - `update_nights` - `update_room_type_or_quantity` - `update_guest_count` - `manual_rate_code_or_settlement_price` - `update_fix_charge` - 与主修改同现的 guest request 线索 ## 不适用 - Parent-to-child allocation creation,child creation 走 `New Booking`。 - 旧 Group Code 改新 Group Code,走 `AMEND GROUP CODE`。 - 只有 extra bed,走 `Trace`。 - 只有 voucher/payment evidence。 - 只有 Rooming List。 - 动作只在历史邮件中。 - 纯确认或信息消息不属于 Update;其中包含具体预订补充信息时按 `Trace` 处理。 - 独立的部分 Allotment / Control Block 房量、日期或范围维护,以及明确保留 parent 余量继续使用;当前不支持,不得输出 Update 或 `Allotment Maintenance`。整封邮件只有该意图时走 S10;同邮件另有支持事件时按 `03-current-content-completeness.md` 进入 `unhandled_current_intents`。 ## 必要证据 普通候选事件需要: - 当前 amendment action。 - existing target key 或唯一目标绑定。 - reliable before/after 或明确 change detail。 - 涉及入住、离店或晚数时,按 `54-stay-date-parsing.md` 解析并保留日期证据。 - 系统上下文支持继续处理。 - 涉及必需房型、Rate Code 或 Fix Charge 时,必须由对应 reference 唯一支持;业务必需字段不唯一时不得用 downstream hard validation 代替人工确认。 ## Before / After 可得时保留: ```json { "before_after": [ { "field": "arrival_date", "before": "", "after": "", "evidence": "" } ] } ``` 当前 amendment 类型和 Update subtype 已确定、但无法建立可靠 before/after 时,保留 `Update Booking / Amendment` 并附非空 `manual_review`。 日期相关 before/after 必须保留 `hotel_date_raw`、`tour_date_raw`、`action_date_raw`、`sheet_month_year` 和 `date_inference_basis`,如适用。 ## Linked Trace Extra bed、Meeting、meal、arrival notice、room preference/setup、已确定的 payment information 或其他具体预订补充信息与有效 update 同现时: - 输出主 `Update Booking / Amendment`。 - 按目标输出一个 linked `Trace`;同一目标的多条补充信息合并。 - 补充信息即使只是告知,也生成 Trace。 - Update 已完整承接的 before/after 核心字段不得重复写成 Trace。 如果当前只有 Trace 补充信息,或只要求 add/update/cancel extra bed,不创建 Update 事件。 ## Fix Charge Fix Charge 可通过 Update 维护,但必须确认目标和动作类型:add、update 或 cancel。Update 及 subtype 已知、但目标、动作或金额不安全时,保留 `Update Booking / Amendment` 并附非空 `manual_review`;只有 Update subtype 本身无法确定时才使用 Fallback。 ## 业务复核 当前证据已经能确定 `event_type=Update Booking / Amendment` 及其 Update subtype 时,以下问题保留原业务事件,并使用非空、完整的 `manual_review`: - 原订单找不到或目标不清。 - 前置任务未完成或系统上下文阻塞。 - before/after 不可靠。 - 必需 room mapping、Rate Code 或 price 不唯一。 - Fix Charge 动作或金额不清。 - QBD/LianTai 当前行已确定为 Update,但 row、highlight 或 strikethrough 证据不完整。 保留已确认的 before/after、目标候选和原始字段;缺失字段使用 RFC 6901 JSON Pointer 写入 `manual_review.missing_fields[]`。 只有当前动作无法在 New Booking、Update Booking、Cancel 或 Amend Group Code 之间确定,或者 Update subtype 本身无法确定时,才输出 `event_type=Need Manual Review` 的 Fallback 复核。