hl-api-changelog/changelogs-v2/2026-06/25_配房选酒店弹窗_结算价改自由输入+已选行显示配房日期_前端UX_管理后台.md
API Changelog Bot 49a9fb9fc9 docs(changelog-v2): 配房前端UX补充③订单详情行程卡显示已配酒店结果(后端已返currentAssignment)
实测 HL20260624092836856 DAY1 currentAssignment 非空返回(海拉尔海棠/1间/sellPrice330),前端未渲染仍显示"待指定酒店",纯前端渲染遗漏。
2026-06-25 11:11:29 +08:00

4.3 KiB

配房前端 UX 三处(① 选酒店弹窗结算价改自由键入 ② 已选配房每行显示日期 ③ 订单详情·配房行程 DAY 卡片显示已配酒店结果)

变更类型:📖 纯前端 UX / 前端渲染 bug后端无改动,所需数据后端均已返回并部署 端类型:管理后台(房务管家·配房「选择酒店」弹窗 + 订单详情「配房行程」Tab 日期2026-06-25 工单/PR前端 UX,走 changelog 通知)| 服务hl-order-service-v3无代码改动 关联:承接 #4373定制师标记/分页/售价列)+ #4377同步协议价开关;本篇列三处前端交互/渲染问题。


① 结算价:改成可自由键入的数字输入框(不要 /+ 步进器)

现象:候选列表「结算价」列做成了 /+ 步进器,没法直接键入价格(如 288.88、330,房务反馈「没法输入结算价」。

期望交互

  • 「结算价」改成可自由键入的数字输入框(允许两位小数),不要做成步进器。
  • 默认值 = 该酒店/房型协议价:取候选接口的 roomTypes[].protocolPrice(选中具体房型时)或顶层 protoPrice(房型未细分时),房务可在此基础上手动改写。
  • 提交时仍把房务最终填的值放进 AssignmentItemReqVO.sellPrice(修改单条配房放 AssignmentUpdateReqVO.sellPrice)。

后端状态:零改动。sellPrice 字段后端早支持(@NotNull + @DecimalMin(0.00),收任意合法两位小数)、已部署测试服、端到端实测过;协议价默认值来源 protoPrice / roomTypes[].protocolPrice 候选接口已返。

② 「已选配房」底部每行显示配房日期

诉求:弹窗底部「已选配房」每行现在是「酒店名 · 房型 · N间 · ¥价/间 · 同步协议价 · 移除」,没带日期;一天加多酒店/多房型、或跨天累计时分不清哪条是哪天。

期望交互

  • 「已选配房」每行补上该条的配房日期(就是这次弹窗顶部那个日期 2026-06-26)。
  • 数据来源:候选接口顶层 HotelCandidateRespVO.stayDate(本次配房日期,弹窗顶部蓝标已在用);每条配房落库也带 stayDate,前端直接复用即可。

后端状态:零改动。stayDate 候选接口顶层早已返回(弹窗顶部已显示),纯前端把它也带进「已选配房」每行展示。

③ 订单详情·「配房行程」DAY 卡片:已配房后显示配置结果(后端已返 currentAssignment,前端未渲染)

现象:某 DAY 已配房(右侧状态徽章绿色「已完成/已确认」),但卡片正文仍显示占位「待指定酒店」,没把配好的酒店带出来。

根因(真实接口实证,非推断):后端 GET /admin/house/orders/{orderId}(房务侧订单详情聚合)的 itinerary[].currentAssignment 已正确返回该天配房结果,前端没渲染它、仍显示占位。 实测 order HL20260624092836856id 2069593503129636865DAY1 实际返回:

  • arrange = "confirmed"arrangeLabel = "已确认"
  • currentAssignment = { hotelId, hotelName: "海拉尔海棠酒店", roomCategory, roomCount: 1, protoPrice: "520.00", sellPrice: "330.00", assignmentId }

前端动作DAY 卡片当 currentAssignment != null 时,把占位「待指定酒店」替换成配房结果——酒店名 hotelName、间数 roomCount、成交价 sellPrice(协议价 protoPrice 作参考),房型 roomCategory。仅 currentAssignment == null 时才显示「待指定酒店/待配房」。 注:右侧绿色徽章(你截图里的「已完成」)与卡片正文是两件事——徽章是状态,正文该显示已配酒店。配房状态权威值取 arrange/arrangeLabelconfirmed=已确认 / pending=待配房)。

后端状态:零改动,currentAssignment 字段已返回并部署测试服。


说明

  • 三处均后端零改动,所需字段(sellPrice / protoPrice / protocolPrice / stayDate / itinerary[].currentAssignment)后端全部已返回并部署测试服,前端按上述调整即可。
  • ①② 与 #4373 ③「结算价输入挪到选中后填、默认协议价」一脉相承;③ 是订单详情行程卡渲染遗漏(后端早返 currentAssignment,实测见上)。