# 订单域服务

> **入口**: [_index.md](_index.md)

---

## 服务列表

| 服务 | 文件 | 职责 |
|------|------|------|
| OrderService | services/OrderService.ts | 订单管理 |
| FulfillmentService | services/FulfillmentService.ts | 订单履约 |
| AfterSalesService | services/AfterSalesService.ts | 售后处理 |

---

## 核心流程

```
订单创建 → 确认 → 处理 → 发货 → 送达 → 完成
    ↓
售后退货 ← ← ← ← ←
```

---

## OrderService

### 方法列表

| 方法 | 说明 | 参数 | 返回 |
|------|------|------|------|
| list | 订单列表 | ListParams | Order[] |
| get | 订单详情 | id | Order |
| create | 创建订单 | CreateRequest | Order |
| update | 更新订单 | id, UpdateRequest | Order |
| cancel | 取消订单 | id, reason | Order |
| confirm | 确认订单 | id | Order |

---

## FulfillmentService

### 方法列表

| 方法 | 说明 | 参数 | 返回 |
|------|------|------|------|
| create | 创建履约 | CreateRequest | Fulfillment |
| ship | 发货 | id, trackingInfo | Fulfillment |
| deliver | 送达 | id | Fulfillment |
| getTracking | 获取物流 | id | TrackingInfo |

---

## AfterSalesService

### 方法列表

| 方法 | 说明 | 参数 | 返回 |
|------|------|------|------|
| create | 创建售后 | CreateRequest | AfterSales |
| approve | 批准 | id | AfterSales |
| reject | 拒绝 | id, reason | AfterSales |
| refund | 退款 | id | AfterSales |
| return | 退货 | id, returnInfo | AfterSales |

---

## 状态机

```
PENDING → CONFIRMED → PROCESSING → SHIPPED → DELIVERED → COMPLETED
    ↓          ↓           ↓           ↓
CANCELLED  CANCELLED   CANCELLED   RETURNED
```

| 状态 | 说明 | 允许操作 |
|------|------|---------|
| PENDING | 待处理 | 确认、取消 |
| CONFIRMED | 已确认 | 处理、取消 |
| PROCESSING | 处理中 | 发货、取消 |
| SHIPPED | 已发货 | 送达、退货 |
| DELIVERED | 已送达 | 完成、退货 |
| COMPLETED | 已完成 | 售后 |
| CANCELLED | 已取消 | - |
| RETURNED | 已退货 | 退款 |

---

## API端点

| 端点 | 方法 | 服务方法 |
|------|------|----------|
| /api/v1/orders | GET | OrderService.list |
| /api/v1/orders | POST | OrderService.create |
| /api/v1/orders/:id | GET | OrderService.get |
| /api/v1/orders/:id | PUT | OrderService.update |
| /api/v1/orders/:id/cancel | POST | OrderService.cancel |
| /api/v1/orders/:id/confirm | POST | OrderService.confirm |
| /api/v1/orders/:id/fulfill | POST | FulfillmentService.create |
| /api/v1/orders/:id/ship | POST | FulfillmentService.ship |
| /api/v1/orders/:id/after-sales | POST | AfterSalesService.create |

---

*最后更新: 2026-03-22*
