hl-api-changelog/changelogs-v2/2026-07/73_5097_作废需求详情冻结作废时配房快照-管理后台.md
2026-07-20 21:12:11 +08:00

2.7 KiB

作废需求详情冻结作废时配房快照

目标前端

  • 端类型管理后台Web
  • 目标仓库:mmg/hl-uihttps://git.1814.love:8443/mmg/hl-ui.git
  • 联调/验收环境:http://192.168.100.160:9527
  • 小程序、H5 及其他前端:无需处理

业务规则

订单调整生成新住宿需求时,旧需求详情必须展示“该需求作废当时”的配房事实,不能复用当前订单的新日期、新行程地点或当前配房。历史数据严格只读,不能恢复或执行任何业务操作。

接口

GET /admin/house/orders/{orderId}?requirementId={作废需求ID}

历史详情的 itinerary[].assignments[] 明确返回冻结字段:

{
  "dayNumber": 1,
  "stayDate": "2026-07-28",
  "assignments": [
    {
      "assignmentId": "2079188886726098945",
      "hotelId": "2023714929877450753",
      "hotelName": "呼伦贝尔香格里拉大酒店",
      "roomTypeId": "2023727403196502017",
      "roomTypeName": "普通标间",
      "roomCategory": "STANDARD",
      "confirmStatus": "CONFIRMED",
      "confirmStatusLabel": "已确认",
      "roomCount": 1,
      "protoPrice": "280.00",
      "settlementPrice": "279.00",
      "settleType": "sign",
      "sellPrice": "280.00",
      "deductInventory": false
    }
  ]
}

stayDate、酒店、房型、数量、价格、支付方式、库存口径和确认状态均来自作废时快照。后续删除/修改当前配房、资源酒店改名或价格调整,不影响历史详情。

管理后台处理要求

  1. 作废详情按 itinerary[] 展示旧日期;每条配房至少显示酒店、roomTypeNameroomCountconfirmStatusLabel
  2. 房型名称优先使用 roomTypeName;部署前没有可信名称快照的旧数据才允许回退 roomCategoryLabel,不得按 ID 或列表位置猜测。
  3. historicalRequirement=truevoided=true 时保持严格只读:仅允许查看、关闭、查看车务;不得出现联系、转单、配房、删除、清空、驳回、最终确认等房务写操作。
  4. 禁止用当前订单出发日期推算历史 stayDate,禁止调用当前资源结果覆盖后端返回的历史酒店/房型快照。
  5. ID 字段按字符串处理,禁止转换为 JavaScript number

兼容与验收证据

  • 变更为 additive,当前生效需求的接口结构不变。
  • 测试订单:HL20260719151313174orderId=2078739922130243586
  • 作废需求:requirementId=2079181505287897090
  • 测试环境返回 3 晚旧配房2026-07-28/29/30,酒店“呼伦贝尔香格里拉大酒店”,房型“普通标间”,数量 1/2/3,状态均为“已确认”。
  • 浏览器验收使用仓库 CDP 脚本完成,页面无 console error 或 failed request。