Files
ARR-2.0-0918/tests/fixtures/arr_api_synthetic/dataset.json
T

417 lines
13 KiB
JSON

{
"metadata": {
"schema": "arr-synthetic-business-cases/v1",
"source": "locally_authored_synthetic_data",
"synthetic": true,
"hotel_id": "ARR_SYNTHETIC_NOT_ORACLE",
"business_date": "2026-09-15",
"intended_use": "离线检验取数后的业务加工;日期仅为可替换的测试输入",
"is_oracle_response": false,
"oracle_api_verified": false,
"production_import_allowed": false,
"contract_note": "此文件是测试用业务数据模型,不是 OHIP 请求/响应契约,不可直接提交酒店接口或正式上传入口。",
"pricing_reference": "arr-opera-daily-ingest/references/价格对照.xlsx"
},
"normal_cases": [
{
"id": "S01",
"description": "QBD,一间一晚",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-001",
"DISP_ROOM_NO": "SIM-ROOM-001",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人001",
"RES_COMMENT": "SIM-GROUP-001",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"expected": {
"NIGHTS": 1,
"REAL PRICE": "1800.00",
"TOTAL PRICE": "1800.00",
"channel": "QBD"
}
},
{
"id": "S02",
"description": "QBD,两间三晚,含儿童",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 1,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-002",
"DISP_ROOM_NO": "SIM-ROOM-002",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人002",
"RES_COMMENT": "SIM-GROUP-002",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 2,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-18"
},
"expected": {
"NIGHTS": 3,
"REAL PRICE": "1800.00",
"TOTAL PRICE": "10800.00",
"channel": "QBD"
}
},
{
"id": "S03",
"description": "联泰散客,一间两晚",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "LIAN TAI",
"CONFIRMATION_NO": "SIM-CONF-003",
"DISP_ROOM_NO": "SIM-ROOM-003",
"EFFECTIVE_RATE_AMOUNT": "1400.00",
"FULL_NAME": "模拟客人003",
"RES_COMMENT": "SIM-GROUP-003",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "LBLT",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-17"
},
"expected": {
"NIGHTS": 2,
"REAL PRICE": "2800.00",
"TOTAL PRICE": "5600.00",
"channel": "LIANTAI-FIT"
}
},
{
"id": "S04",
"description": "Rainbow,适用零价规则",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T- Rainbow Holiday Service",
"CONFIRMATION_NO": "SIM-CONF-004",
"DISP_ROOM_NO": "SIM-ROOM-004",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人004",
"RES_COMMENT": "SIM-GROUP-004",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "LBMS",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-17"
},
"expected": {
"NIGHTS": 2,
"REAL PRICE": "0.00",
"TOTAL PRICE": "0.00",
"channel": "DY-AI-Easy-KB"
}
},
{
"id": "S05",
"description": "Go Easy,两间一晚,适用零价规则",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T- Guangzhou Go Easy",
"CONFIRMATION_NO": "SIM-CONF-005",
"DISP_ROOM_NO": "SIM-ROOM-005",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人005",
"RES_COMMENT": "SIM-GROUP-005",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 2,
"PRODUCTS": "",
"RATE_CODE": "LBSM",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"expected": {
"NIGHTS": 1,
"REAL PRICE": "0.00",
"TOTAL PRICE": "0.00",
"channel": "DY-AI-Easy-KB"
}
},
{
"id": "S06",
"description": "QBD,当天到店当天离店",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-006",
"DISP_ROOM_NO": "SIM-ROOM-006",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人006",
"RES_COMMENT": "",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-15"
},
"expected": {
"NIGHTS": 0,
"REAL PRICE": "1800.00",
"TOTAL PRICE": "0.00",
"channel": "QBD"
}
}
],
"edge_cases": [
{
"id": "E01",
"description": "费率代码不在当前处理范围",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-101",
"DISP_ROOM_NO": "SIM-ROOM-101",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人101",
"RES_COMMENT": "SIM-GROUP-101",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "SIM-NOT-IN-WHITELIST",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"expected_behavior": "按现有白名单排除;不能为通过测试扩大白名单",
"verification_scope": "existing_whitelist"
},
{
"id": "E02",
"description": "房号缺失",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-102",
"DISP_ROOM_NO": "",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人102",
"RES_COMMENT": "SIM-GROUP-102",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"expected_behavior": "记录缺项,不能补造房号进入正式报表",
"verification_scope": "existing_record_validation"
},
{
"id": "E03",
"description": "费率代码缺失",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-103",
"DISP_ROOM_NO": "SIM-ROOM-103",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人103",
"RES_COMMENT": "SIM-GROUP-103",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"expected_behavior": "取数阶段报缺项;不能把未知费率当成已知的不在白名单",
"verification_scope": "future_api_input_gate"
},
{
"id": "E04",
"description": "Oracle 标记价格不可展示",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-104",
"DISP_ROOM_NO": "SIM-ROOM-104",
"EFFECTIVE_RATE_AMOUNT": null,
"FULL_NAME": "模拟客人104",
"RES_COMMENT": "SIM-GROUP-104",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"source_context": {
"rate_suppressed": true,
"amount_present_in_upstream": "900.00"
},
"expected_behavior": "不得用隐藏金额计算;停留在待核实状态",
"verification_scope": "future_api_input_gate"
},
{
"id": "E05",
"description": "公司与旅行社关联不同",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "",
"CONFIRMATION_NO": "SIM-CONF-105",
"DISP_ROOM_NO": "SIM-ROOM-105",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人105",
"RES_COMMENT": "SIM-GROUP-105",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"source_context": {
"associated_profiles": [
{
"synthetic_profile_id": "SIM-COMPANY-001",
"role": "Company",
"name": "T / Q.B.D. TRAVEL GROUP"
},
{
"synthetic_profile_id": "SIM-AGENCY-001",
"role": "TravelAgent",
"name": "LIAN TAI"
}
]
},
"expected_behavior": "保留两个候选;待关联规则验证后确定用于定价和渠道的对象",
"verification_scope": "unresolved_mapping"
},
{
"id": "E06",
"description": "两条不同的预订 GEN 备注",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-106",
"DISP_ROOM_NO": "SIM-ROOM-106",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人106",
"RES_COMMENT": "",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"source_context": {
"notes": [
{
"type": "GEN",
"location": "RESERVATION",
"internal": false,
"text": "SIM-GROUP-A"
},
{
"type": "GEN",
"location": "RESERVATION",
"internal": true,
"text": "SIM-GROUP-B"
}
]
},
"expected_behavior": "保留两条及其属性;不能凭接口返回顺序擅自选团号",
"verification_scope": "unresolved_mapping"
},
{
"id": "E07",
"description": "与 S01 同房同日,离店日期不同",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-107",
"DISP_ROOM_NO": "SIM-ROOM-001",
"EFFECTIVE_RATE_AMOUNT": "900.00",
"FULL_NAME": "模拟客人107",
"RES_COMMENT": "SIM-GROUP-107",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-18"
},
"source_context": {
"conflicts_with": "S01"
},
"expected_behavior": "与 S01 联合测试;待接口来源的重复记录取舍规则确定后选择,不能以到达顺序决定",
"verification_scope": "unresolved_mapping"
},
{
"id": "E08",
"description": "公司与费率存在,但金额无价格表匹配",
"record": {
"BLOCK_CODE": "",
"ADULTS": 2,
"CHILDREN": 0,
"COMPANY_NAME": "T / Q.B.D. TRAVEL GROUP",
"CONFIRMATION_NO": "SIM-CONF-108",
"DISP_ROOM_NO": "SIM-ROOM-108",
"EFFECTIVE_RATE_AMOUNT": "12345.67",
"FULL_NAME": "模拟客人108",
"RES_COMMENT": "SIM-GROUP-108",
"TRACE_TEXT": "",
"NO_OF_ROOMS": 1,
"PRODUCTS": "",
"RATE_CODE": "GRPA1",
"ROOM_CATEGORY_LABEL": "SIM-ROOM-TYPE",
"ARRIVAL": "2026-09-15",
"DEPARTURE": "2026-09-16"
},
"expected_behavior": "进入现有价格待复核流程,不生成已通过的正式结果",
"verification_scope": "existing_price_lookup"
}
]
}