2.3 KiB
2.3 KiB
Stay Date Parsing
用途
统一解析 QBD/LianTai 表格里的酒店入住、离店和晚数。适用于当前邮件附件、表格、OCR 或抽取证据中出现的酒店日期、行程日期和动作日期。
字段
保留以下日期证据:
hotel_date_raw:酒店列开头的住期范围,例如14-15、15-17、31-02。tour_date_raw:行程日期列原文,例如2026/05/11\n2026/05/16。action_date_raw:备注或状态中的动作日期,例如11/05 AMD、12/05 NEW BOOKING。sheet_month_year:workbook sheet 名中的月份年份,例如BOOKING 05-2026。arrival_datedeparture_datenightsdate_inference_basis
识别优先级
- 优先使用酒店列开头的酒店住期范围作为
arrival_date/departure_date。 - 酒店列内有完整日期时,使用该完整日期范围。
- 行程日期列用于补全年/月和校验,不得直接覆盖酒店住期。
- sheet 名用于补全年/月;当行程日期可读时,优先用行程日期选择能落在行程范围内的酒店住期。
- 备注中的动作日期只作为
action_date_raw,不是入住日期,也不是标黄行过滤条件。
年月补全
15-17在BOOKING 05-2026且行程日期落在 2026 年 5 月时,解析为2026-05-15到2026-05-17。31-02这类跨月范围必须按跨月处理;如果行程日期或 sheet 名无法唯一确定跨到哪个月,输出人工复核。- 当酒店日期范围缺年/月时,用行程日期补全;行程日期缺失时,用 sheet 名补全。
- 如果补全后酒店住期不在行程日期范围内,保留 raw evidence 并输出人工复核。
晚数
15-17表示入住 15 日、离店 17 日,nights=2。14-15表示入住 14 日、离店 15 日,nights=1。nights = departure_date - arrival_date。- 表格里的
5N6D、5N7D是行程晚数线索,不得覆盖酒店住期晚数。
人工复核
以下情况输出 Need Manual Review,reason code 使用 stay_date_inference_unclear:
- 酒店日期范围不可读。
- 酒店日期、行程日期和 sheet 名无法唯一补全年/月。
- 酒店住期与行程日期明显冲突且无法解释。
- 跨月、跨年或格式异常导致 arrival / departure 无法安全确定。