diff --git a/changelogs/2026-03/2026-03-23_hotel_upgrade_price_bug.md b/changelogs/2026-03/2026-03-23_hotel_upgrade_price_bug.md new file mode 100644 index 0000000..04d20bd --- /dev/null +++ b/changelogs/2026-03/2026-03-23_hotel_upgrade_price_bug.md @@ -0,0 +1,39 @@ +# 【BUG】配房差价确认弹窗的差价值没传到后端 + +## 现象 +配房差价确认弹窗中管理员修改了差价(如改为100),但提交后后端使用的是系统计算值(-380),管理员手动修改的值没有生效。 + +## 原因 +`PUT /admin/order/{orderId}/hotel-assignment` 请求体中,每个 assignment 的 `upgradePrice` 字段没有传值(为 null),导致后端使用系统自动计算的差价。 + +## 修复方式 +配房差价确认弹窗中,用户修改的差价值需要设置到对应 assignment 的 `upgradePrice` 字段中。 + +### 请求体示例 +```json +{ + "assignments": [ + { + "hotelId": "2029926129876320258", + "hotelName": "海拉尔嘉世豪酒店", + "roomTypeId": "2029944763138936834", + "roomType": "豪华大床房", + "date": "2026-03-27", + "familyIndex": 1, + "upgradePrice": 100.00 + }, + { + "hotelId": "2029926129876320258", + "roomTypeId": "2029944763138936833", + "roomType": "标准间", + "date": "2026-03-24", + "familyIndex": 1, + "upgradePrice": null + } + ] +} +``` + +- `upgradePrice` 有值:使用管理员指定的差价 +- `upgradePrice` 为 null:使用系统计算的差价(新房型价格 - 原房型价格) +- 只有房型与产品默认不同的天才需要设置