# 尾款凭证上传按钮显示条件修正(后端已改) **日期**: 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 | 否 | 尾款凭证图片URL(OSS地址) | | remark | String | 否 | 备注 | ## 状态中文标签 | status | 中文标签 | |--------|---------| | `PENDING_BALANCE` | 待付尾款 | | `PENDING_DEPARTURE` | 待出行 |