# STATE_MACHINE

## Merchant（商户）状态

PENDING
→ ACTIVE
→ INACTIVE
→ SUSPENDED

---

## User（用户）状态

PENDING
→ ACTIVE
→ INACTIVE
→ LOCKED

---

## Store（店铺）状态

PENDING
→ ACTIVE
→ INACTIVE
→ SUSPENDED

---

## Feature（功能）状态

INACTIVE
→ PENDING_PAYMENT
→ ACTIVE
→ EXPIRED
→ SUSPENDED

---

## Order（订单）状态

PENDING
→ PAID
→ SPLIT
→ PROCESSING
→ SHIPPED
→ COMPLETED
→ REFUNDED
→ CANCELLED

---

## Cross-Border E-Commerce（跨境电商）状态

PENDING
→ PROCESSING
→ CLEARANCE
→ SHIPPING
→ DELIVERED

---

## SubOrder（子订单）状态

PENDING
→ PROCESSING
→ SHIPPED
→ COMPLETED
→ REFUNDED
→ CANCELLED

---

## Product（商品）状态

DRAFT
→ PENDING_APPROVAL
→ ACTIVE
→ INACTIVE
→ DISCONTINUED

---

## Inventory（库存）状态

NORMAL
→ LOW
→ OUT_OF_STOCK
→ OVERSTOCK

---

## Payment（支付）状态

CREATED
→ PROCESSING
→ PAID
→ FAILED
→ REFUNDED

---

## Bill（账单）状态

PENDING
→ CONFIRMED
→ SETTLED
→ DISPUTED

---

## Settlement（结算）状态

PENDING
→ PROCESSING
→ COMPLETED
→ FAILED

---

## Task（任务）状态

PENDING
→ RUNNING
→ SUCCESS
→ FAILED
→ CANCELLED

---

## 商品中心状态机（Product Center State Machine）

### SPU（标准产品单元）状态

DRAFT
→ PENDING_REVIEW
→ ACTIVE
→ INACTIVE
→ ARCHIVED

```
  ┌─────────┐
  │  DRAFT  │ ← 创建时初始状态
  └────┬────┘
       │ 提交审核
       ▼
  ┌─────────────┐
  │PENDING_REVIEW│
  └──────┬──────┘
       │
    ┌──┴──┐
    │     │
    ▼     ▼
┌───────┐ ┌────────┐
│ACTIVE │ │INACTIVE│
└───┬───┘ └───┬────┘
    │         │
    └────┬────┘
         │
         ▼
    ┌─────────┐
    │ ARCHIVED│
    └─────────┘
```

### SKU（库存单元）状态

ACTIVE
→ INACTIVE
→ DISCONTINUED

```
  ┌─────────┐
  │ ACTIVE  │ ← 可销售
  └────┬────┘
       │ 停用
       ▼
  ┌──────────┐
  │ INACTIVE │ ← 暂停销售
  └────┬─────┘
       │ 永久停售
       ▼
  ┌─────────────┐
  │DISCONTINUED │ ← 已停产
  └─────────────┘
```

### PlatformListing（平台商品）状态

DRAFT
→ PENDING
→ ACTIVE
→ INACTIVE
→ REJECTED
→ DELISTED

```
  ┌─────────┐
  │  DRAFT  │ ← 本地草稿
  └────┬────┘
       │ 提交发布
       ▼
  ┌─────────┐
  │ PENDING │ ← 等待平台审核
  └────┬────┘
       │
    ┌──┴──┐
    │     │
    ▼     ▼
┌───────┐ ┌──────────┐
│ACTIVE │ │ REJECTED │ ← 平台拒绝
└───┬───┘ └──────────┘
    │
    ├── 下架 ──→ ┌─────────┐
    │            │DELISTED │ ← 已下架
    │            └─────────┘
    │
    └── 停用 ──→ ┌──────────┐
                 │ INACTIVE │ ← 暂停销售
                 └──────────┘
```

### PriceStrategy（价格策略）状态

DRAFT
→ ACTIVE
→ INACTIVE
→ ARCHIVED

```
  ┌─────────┐
  │  DRAFT  │ ← 策略草稿
  └────┬────┘
       │ 启用
       ▼
  ┌─────────┐
  │ ACTIVE  │ ← 策略生效中
  └────┬────┘
       │
    ┌──┴──┐
    │     │
    ▼     ▼
┌──────────┐ ┌─────────┐
│ INACTIVE │ │ ARCHIVED│
└──────────┘ └─────────┘
```

### SKUMapping（SKU映射）状态

PENDING
→ ACTIVE
→ INACTIVE
→ INVALID

```
  ┌─────────┐
  │ PENDING │ ← 待确认映射
  └────┬────┘
       │ 确认映射
       ▼
  ┌─────────┐
  │ ACTIVE  │ ← 映射有效
  └────┬────┘
       │
    ┌──┴──┐
    │     │
    ▼     ▼
┌──────────┐ ┌─────────┐
│ INACTIVE │ │ INVALID │ ← 映射失效
└──────────┘ └─────────┘
```

### ShopAuthorization（店铺授权）状态

PENDING
→ ACTIVE
→ EXPIRED
→ INVALID
→ ERROR

```
  ┌─────────┐
  │ PENDING │ ← 授权中
  └────┬────┘
       │ 授权成功
       ▼
  ┌─────────┐
  │ ACTIVE  │ ← 授权有效
  └────┬────┘
       │
    ┌──┼──┬───────┐
    │  │  │       │
    ▼  ▼  ▼       ▼
┌────────┐┌─────────┐┌───────┐
│EXPIRED ││ INVALID ││ ERROR │
└────────┘└─────────┘└───────┘
   │           │
   │ 刷新令牌   │ 重新授权
   ▼           ▼
┌─────────┐ ┌─────────┐
│ ACTIVE  │ │ ACTIVE  │
└─────────┘ └─────────┘
```

### Organization（组织架构）状态

ACTIVE
→ INACTIVE
→ ARCHIVED

```
  ┌─────────┐
  │ ACTIVE  │ ← 组织活跃
  └────┬────┘
       │ 停用
       ▼
  ┌──────────┐
  │ INACTIVE │ ← 组织停用
  └────┬─────┘
       │ 归档
       ▼
  ┌─────────┐
  │ ARCHIVED│ ← 已归档
  └─────────┘
```

---

## 状态变更原则

- 所有状态变更必须通过 Service
- 禁止前端直接控制状态
- 状态变更必须记录操作日志
- 状态变更必须遵循预定义的流转路径
- 状态变更可能触发相关业务逻辑（如通知、计费等）

---

## 状态变更触发条件

- 商户状态：审核结果、逾期未付费、违规行为
- 用户状态：登录异常、权限变更、账号管理
- 店铺状态：平台审核、违规行为、商户操作
- 功能状态：支付结果、订阅到期、手动操作
- 订单状态：支付结果、商户操作、物流状态
- 商品状态：审核结果、库存状态、商户操作
- 库存状态：库存数量变化、库存同步
- 支付状态：支付渠道反馈、人工处理
- 账单状态：系统确认、支付结果、人工处理
- 结算状态：系统处理、支付结果、人工处理
- 任务状态：任务触发、执行结果、人工取消
