## MODIFIED Requirements

### Requirement: 代购订单自动完成

代购订单创建后 SHALL 自动完成支付流程，激活套餐，但不触发一次性佣金。

#### Scenario: 代购订单自动激活套餐
- **WHEN** 创建代购订单成功
- **THEN** 系统自动激活套餐（创建 PackageUsage 记录）

#### Scenario: 代购订单不扣钱包
- **WHEN** 创建线下代购订单
- **THEN** 系统不扣减任何钱包余额（线下已收款）

#### Scenario: 代购订单不更新累计充值
- **WHEN** 代购订单完成
- **THEN** 系统不更新卡/设备的 accumulated_recharge 字段

#### Scenario: 代购订单计算链路型差价佣金
- **WHEN** 代购订单完成，买家存在有效上级代理链
- **THEN** 系统从订单的 `seller_shop_id` 出发沿完整父级链计算差价佣金
- **AND** 将各级有效差价分别发放给对应上级代理

#### Scenario: 代购订单无上级链
- **WHEN** 代购订单对应的是顶级代理或其上级链没有任何正差价
- **THEN** 系统完成佣金计算流程
- **AND** 将订单结果标记为“无佣金”

#### Scenario: 代购订单不触发一次性佣金
- **WHEN** 代购订单完成
- **THEN** 系统不检查一次性佣金阈值，不发放一次性佣金

---

### Requirement: 代理钱包代购

系统 SHALL 允许代理使用钱包支付（wallet）为下级代理创建代购订单，从自己钱包扣款并立即激活套餐。

#### Scenario: 代理为下级代理钱包代购
- **WHEN** 代理选择下级代理的资源创建订单，支付方式为 wallet
- **THEN** 系统创建订单，`buyer_id` = 下级代理店铺 ID，`is_purchase_on_behalf` = true，`payment_method` = "wallet"，`payment_status` = 2（已支付）
- **AND** 操作者字段记录真实代理账号，而不是代理店铺 ID

#### Scenario: 钱包代购扣款操作者钱包
- **WHEN** 代理使用 wallet 为下级代理购买套餐
- **THEN** 系统从操作者所属代理的钱包扣款

#### Scenario: 钱包代购使用操作者成本价扣款
- **WHEN** 一级代理（成本价 80 元）为二级代理（成本价 100 元）的资源创建 wallet 代购订单
- **THEN** 系统从一级代理钱包扣款 80 元（操作者成本价）

#### Scenario: 钱包代购订单金额显示买家成本价
- **WHEN** 一级代理为二级代理钱包代购
- **THEN** 订单的 `total_amount` = 100 元（买家成本价），`actual_paid_amount` = 80 元（操作者实际扣款）

#### Scenario: 钱包代购余额不足
- **WHEN** 代理使用 wallet 代购，但钱包余额不足
- **THEN** 系统返回错误"余额不足"，订单创建失败

#### Scenario: 钱包代购自动激活套餐
- **WHEN** 钱包代购订单创建成功
- **THEN** 系统自动激活套餐（创建 PackageUsage 记录）

#### Scenario: 钱包代购触发差价佣金计算
- **WHEN** 代理使用 wallet 代购订单完成
- **THEN** 系统 MUST 触发差价佣金计算任务
- **AND** 最终是否有佣金由 `seller_shop_id` 的完整上级链和价差结果决定

#### Scenario: 钱包代购不触发一次性佣金
- **WHEN** 代理使用 wallet 代购订单完成
- **THEN** 系统不检查一次性佣金阈值，不发放一次性佣金

#### Scenario: 钱包代购创建钱包流水
- **WHEN** 代理使用 wallet 代购扣款成功
- **THEN** 系统创建钱包流水记录，`transaction_type` = "deduct"，`transaction_subtype` = "purchase_for_subordinate"，`related_shop_id` = 下级代理店铺 ID
