hl-api-changelog/changelogs/2026-03/2026-03-23_balance_proof_button_condition.md
API Changelog Bot 29339e426f docs: 尾款凭证按钮增加TRAVELLING状态支持
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 10:14:59 +08:00

55 行
1.9 KiB
Markdown

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

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

# 尾款凭证上传按钮显示条件修正(后端已改)
**日期**: 2026-03-23
**页面**: 订单详情 → 尾款凭证上传按钮
**类型**: 前端修正 + 后端状态流转优化
---
## 后端改了什么
定金模式订单,清单确认完成后,订单状态不再直接跳到 `PENDING_DEPARTURE`(待出行),而是先进入 **`PENDING_BALANCE`(待付尾款)**,上传凭证/记录尾款后才转为 `PENDING_DEPARTURE`
状态流转变化:
```
CONFIRMED(READY) ──记录尾款──→ PENDING_DEPARTURE
CONFIRMED(READY) ──清单确认──→ PENDING_BALANCE ──记录尾款──→ PENDING_DEPARTURE
```
## 前端尾款凭证上传按钮条件(简化了)
```js
// 尾款凭证上传按钮:定金模式 + 尾款未付 + 允许的状态
const showBalanceProofBtn =
order.paymentType === 'DEPOSIT'
&& !order.balanceProofUrl
&& ['PENDING_BALANCE', 'PENDING_DEPARTURE', 'TRAVELLING'].includes(order.status);
```
| 条件 | 说明 |
|------|------|
| `status === 'PENDING_BALANCE'` | **主条件**:定金模式清单确认后自动进入此状态,等待上传凭证 |
| `status === 'PENDING_DEPARTURE'` | 已到待出行但凭证未传,允许补传 |
| `status === 'TRAVELLING'` | 已在出行中但凭证未传,允许补传 |
### 不再需要判断 `processStatus === 'READY'`
之前需要组合判断 `status + processStatus`,现在 `PENDING_BALANCE` 状态本身就表示"清单已确认、等待付尾款",条件更简单。
## 涉及接口
**上传尾款凭证**: `POST /admin/order/{orderId}/balance`
请求体 (`RecordBalanceRequest`):
| 字段 | 类型 | 必填 | 说明 |
|------|------|------|------|
| proofUrl | String | 否 | 尾款凭证图片URLOSS地址 |
| remark | String | 否 | 备注 |
## 状态中文标签
| status | 中文标签 |
|--------|---------|
| `PENDING_BALANCE` | 待付尾款 |
| `PENDING_DEPARTURE` | 待出行 |