# store-appointment 错误码

预约创建、改期、取消与完成结算。

## 通用

| 错误码 | 含义 | 用户指引 |
|--------|------|----------|
| `need_confirm` | 取消/完成预约需确认 | 展示金额与支付方式后加 `--yes` |
| `not_found` | 预约 ID 不存在 | `appt-query --appt-id` 核对 |
| `service_not_found` | 服务项目不存在或已删 | `store-catalog service-query` 核对名称（含 appt-update 改服务） |

## 排班与服务人员

| 错误码 | 含义 | 用户指引 |
|--------|------|----------|
| `schedule_conflict` | 时段冲突 | 换时间或服务人员，见 `conflict_id` |
| `technician_off` | 服务人员当日休息 | 换日期或 `tech-recommend` |
| `outside_work_slots` | 不在工作时段 | 调整 `--datetime` 或更新排班 |
| `no_technician_available` | 无可用服务人员 | 改时间或用 `tech-recommend` |
| `invalid_appt` | 预约状态不可操作 | 仅 scheduled 可改期/完成 |

## 结算（appt-complete）

| 错误码 | 含义 | 用户指引 |
|--------|------|----------|
| `insufficient_balance` | 储值不足 | 先充值或换支付方式 |
| `card_not_found` / `card_expired` / `no_times_left` | 次卡问题 | 核对 `--card-name` 或换 pay 模式 |
| `card_service_mismatch` | 次卡与服务不匹配 | 换卡或改服务 |
| `payment_sum_mismatch` | 混合支付金额不符 | 核对 lines / cash 合计 |
| `stock_short` | 耗材库存不足 | 先补货或减少附加产品 |
| `member_required_for_consume` / `member_required_for_card` | 预约无会员却选储值/次卡 | 核对 member_id 或换支付方式 |
