2.1 KiB
2.1 KiB
Rate Code 与结算价格
安全立场
Rate Code 必须由当前证据和本 reference 唯一支持。不要只凭 room code 猜。若 channel、market、room text、UP marker、price、breakfast、restaurant 或 supplier 上下文不足,输出人工复核。
已知规则
| 场景 | Typical Rate Code |
|---|---|
QBD 普通 DBL/TWN 且无 U 或 Upgrade marker |
GRPA1-900 |
QBD U-DBL / U-TWN / U-TRP 或 Upgrade marker |
GRPA2-850UP 或对应 UP rate code |
| LianTai 普通 DBL/TWN 或 Sup DBL/Sup TWN | GRP1-900 |
LianTai U-DBL / U-TWN |
WHO1-850UP |
LianTai ST+K / 2卧1厅 / FAMILY 1 且价格 1200 |
WHO3-1200 |
价格示例:
- 850 ->
WHO1-850UP - 900 ->
GRP1-900 - 1000 ->
WHO2-1000 - 1200 ->
WHO3-1200
渠道和上下文优先于单纯价格。
U-<number>
例如 U-1200:
- 数字部分视为 settlement price / price marker。
- 保留
rate_code_raw = "U-1200"。 - 数字命中已知规则时输出命中。
- 数字不可读或未覆盖时人工复核。
- 绝不写入 confirmation/reservation/booking reference 字段。
控房/配额默认
示例:
U-DBL-> roomRM2,settlement price 850。U-TWN-> roomRM3,settlement price 850。U-TRP/FAM-> roomRM4,settlement price 1275。
仅当事件明确是 new Allotment / Control Block、房型唯一映射,且当前没有不同明确规则时使用。
手工价格
当需要人工维护 settlement price:
{
"rate_code": null,
"settlement_price": null,
"manual_settlement_price_required": true,
"manual_price_reason_code": "",
"price_evidence": []
}
手工价格仍要求目标、日期/room items、price text 和系统上下文安全。
复合价格
对于 2000THB+500、1800+500、2000THB*2 +500*2:
- 只用可分离的 base room price 判断 Rate Code / settlement price。
- additional component 交给
52-fix-charge.md。 - 不得把组件相加后当单一房价。
人工复核
- channel/market 未知或冲突。
- raw room type 无法唯一映射。
- UP marker 与普通 rate path 冲突。
- price marker 不可读。
- price 未命中任何规则。