hl-api-changelog/changelogs-v2/2026-07/42_4821_房务月度对账酒店订单查看-前端待处理-管理后台.md
2026-07-07 18:18:25 +08:00

89 行
3.1 KiB
Markdown

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

# 房务月度对账酒店行增加订单查看
- 工单HL #4821
- 状态front-end todo
- 影响端:管理后台房务管家 / 月度对账 `/housekeeper/ledger`
## 背景
月度对账页现在只展示“配房完毕订单酒店汇总”,用户需要在每个酒店汇总行上继续查看该酒店本月涉及的订单明细。后端已补充按酒店查询订单明细接口,前端在酒店汇总行增加“订单(查看)”入口。
## 新增接口
```http
GET /v3/admin/house/reconciliation/monthly/hotel-orders?month=2026-07&hotelId=1234567890123&hotelName=呼伦贝尔香格里拉大酒店
```
请求参数:
| 参数 | 类型 | 必填 | 示例 | 说明 |
| --- | --- | --- | --- | --- |
| `month` | `String` | 是 | `2026-07` | 对账月份,格式 `YYYY-MM` |
| `hotelId` | `String` | 否 | `1234567890123` | 酒店 ID。酒店汇总行有 `hotelId` 时传 |
| `hotelName` | `String` | 条件必填 | `呼伦贝尔香格里拉大酒店` | 酒店名快照。`hotelId` 为空时必传;`hotelId` 有值时也建议一并传 |
重要口径:
- 前端从 `/monthly` 汇总接口拿到的酒店行,如果 `hotelId` 有值,也要把同一行的 `hotelName` 一起传给明细接口。
- 原因:历史配房行可能只有酒店名没有 `hotelId`,汇总接口会在同名唯一命中时合并到有 ID 的酒店行;明细接口也用同样口径。
- 如果酒店行 `hotelId=null`,只传 `hotelName`,后端只查无 `hotelId` 的同名历史行,避免误合并其他有 ID 的同名酒店。
## 响应示例
```json
{
"code": 200,
"message": "成功",
"success": true,
"data": [
{
"orderId": "2074303545149980674",
"orderNo": "HL20260707092437709",
"productName": "测试核心产品-单档-固定订金",
"departDate": "2026-07-23",
"hotelId": "1234567890123",
"hotelName": "呼伦贝尔香格里拉大酒店",
"roomNights": 2,
"totalAmount": "640.00"
}
]
}
```
空结果:
```json
{
"code": 200,
"message": "成功",
"success": true,
"data": []
}
```
缺少酒店筛选:
```json
{
"code": 808172,
"message": "hotelId 或 hotelName 至少传一个",
"success": false
}
```
## 前端渲染要求
1. 月度对账酒店汇总表每个酒店行增加“订单(查看)”入口;合计行不展示。
2. 点击后调用新增接口,参数取当前筛选月份和该酒店行的 `hotelId` / `hotelName`
3. 明细弹窗建议展示列:订单号、产品名、出发日期、间夜数、金额。
4. `orderId` 为字符串,跳订单详情时使用 `orderId`,不要转 Number。
5. 明细列表订单数应与汇总行 `orderCount` 一致;不一致时前端保留后端返回结果并提示刷新,不要自行重新汇总。
6. Excel / PDF 导出暂不变,仍导出酒店汇总。
## 验收
- `/housekeeper/ledger` 的酒店汇总行能看到“订单(查看)”。
- 点击呼伦贝尔香格里拉大酒店,弹窗能展示该酒店本月订单明细。
- `hotelId` 为空的历史酒店行也能通过 `hotelName` 查到订单。
- 明细金额、间夜数来自配房表快照聚合,和酒店汇总口径一致。