# 发货管理 — 功能需求说明

> 本文档在《发货管理功能需求-草稿》基础上整理，并关联 **《关联需求分析.md》** v1.6、平台侧 **《订单管理功能需求》** v1.0.1、**《会员管理功能需求》** v1.0.1、**《店铺管理功能需求》** v1.3.7 及商家侧 **《全部订单功能需求》** v1.0、**《配送设置功能需求》** v1.1、《商家端店铺上下文接口说明》做边界与流程对齐。  
> 范围：**店铺经营管理端 · 订单管理 · 发货管理** 对 **当前店铺** 下 **履约阶段** 订单（待发货、已发货、已完成）的 **作业列表、检索、详情与发货/物流/送达登记**。  
> **说明：** 本文档 **仅描述功能需求与业务规则**；不涉及数据库结构、接口定义及技术实现细节。  
> **命名区分：** 本模块为 **商家端 · 履约工作台**（聚焦 **单笔订单** 发货作业）；**全部订单** 为 **全生命周期** 订单入口；**配送设置** 为 **店铺级发货人/发货仓库地址**（每店一份，**不替代** 本单物流）；**平台 · 订单管理** 为 **全平台** 订单查询与代运营；四者 **共用订单状态与履约规则**，订单数据 **同源**。

---

## 1. 模块定位

### 1.1 业务目标

在农资商城 **店铺经营管理端（Web）· 订单管理** 提供 **发货管理** 能力，使 **店铺管理员**（商户经营账号及已授权子管理员）能够：

- 在 **履约工作台** 中快速处理 **待发货** 订单；
- 跟踪 **已发货** 订单的 **物流更新** 与 **送达登记**；
- **查看** **已完成** 订单的履约结果（只读）；
- 通过 **高级检索** 定位待处理或运输中的订单；
- **查看详情**（含物流节点时间轴），支撑日常发货作业。

**不包含（本期或与它模块分工）：**

| 能力 | 说明 |
|------|------|
| **全部订单 · 删除已关闭单** | 见 **《全部订单功能需求》** §11 |
| **待支付 / 已关闭 / 已删除** 的履约操作 | 本模块 **默认不纳入** 作业页签；若需查看，跳转 **全部订单** |
| **平台 · 手工关闭订单** | 由 **平台 · 订单管理** 负责 |
| **待支付超时自动关闭** | **系统定时** 执行（平台规则 **O8**）；本模块 **不涉及** |
| **买家确认收货** | **C 端** 操作；完成后订单 → **已完成** |
| **会员累计消费统计** | 见 **平台 · 会员管理**（O11） |
| **支付渠道、退款、售后审核** | 另册 |
| **维护店铺发货人/发货仓库地址** | 见 **《配送设置功能需求》**；本模块 **不维护** |
| **去发货预填配送设置** | **DS6**；弹窗 **不预填**；发货时 **快照** 配送设置至订单（§2.7、§8.2） |

### 1.2 与草稿的对应关系

| 草稿条目 | 定稿处理 |
|----------|----------|
| §1 发货状态页签 | §4.1（补充与平台全状态机关系） |
| §2 列表字段 | §6.1 |
| §3 高级检索 | §6.3 |
| §4 操作（详情/发货/物流/到货） | §7～§10 |
| §4.2 去发货 | 对齐草稿字段清单；**整单** 规则来自平台 O5（草稿 **未要求** 拆单） |
| §5（空） | — |
| §6 按当前店铺查列表 | §1.5、§2.5 |
| §7 店铺上下文 | §2.5、§13 |
| §8 异常返回 | **不纳入** |
| §9 技术栈 | **不纳入** |

### 1.3 在用户链中的位置

依据 **《关联需求分析.md》§5.2、§12.1**：

```text
【供给链】商户 → 店铺 → 商品（出售中）
            ↓
【用户链】C 端会员注册 → 选店 → 下单 → 支付
            ↓
【平台】订单管理（全平台列表、代运营、关闭策略）
            ↓
【商家】登录 → 选择当前店铺
            ↓
【商家】发货管理（本模块）── 履约工作台（单笔订单物流/配送员）
            ├── 待发货 ── 去发货（整单 · O5）
            ├── 已发货 ── 更新物流（O6）、登记送达
            └── 已完成 ── 只读查看（买家已确认收货 · O7）
            ↓
【并行 · 店铺级】配送设置 ── 发货人 + 发货仓库地址（每店一份；C 端发货城市）
            ↓
【C 端】买家确认收货 → 已完成 → 计入会员累计消费（O11）
```

| 关联模块 | 关系 | 边界说明 |
|----------|------|----------|
| **平台 · 订单管理** v1.0.1 | 同源 + 规则一致 | **同一订单**；状态机、履约字段、库存规则 **与平台定稿一致**（O3～O11） |
| **商家 · 全部订单** v1.0 | 并列入口 | 全部订单 = **全生命周期**；发货管理 = **履约聚焦**；规则 **不另立** |
| **C 端 · 我的订单** | 下游协作 | 买家 **确认收货** 完成订单；本模块 **不提供** 代确认 |
| **平台 · 会员管理** | 间接 | 会员名称 **只读**；消费统计 **不以本模块维护** |
| **商品管理（商家）** | 上游 | 订单商品为 **下单快照**；支付成功已扣库存（O4） |
| **店铺管理** | 上游 | 订单 **归属店铺**；删店须无 **未完成订单 O10** |
| **配送设置** v1.2 | **协作** | 维护 **店铺发货人/发货地址**（每店一份）；发货时 **快照至订单**；弹窗 **不预填**（DS6） |

### 1.4 与「全部订单」的分工（定稿）

| 维度 | 全部订单 | 发货管理（本模块） |
|------|----------|-------------------|
| 定位 | **全生命周期** 订单管理 | **履约工作台**，聚焦发货作业 |
| 默认页签 | 全部、待发货、已发货、已关闭、已完成、已删除 | **待发货、已发货、已完成**（草稿 §1） |
| 待支付 | 在 **全部** 页签 **只读** 可见 | **默认不展示**；需查看时跳转全部订单 |
| 已关闭 / 已删除 | **支持** 查看与删除 | **不纳入** 默认作业范围 |
| 删除 | **支持**（已关闭 → 已删除） | **不提供** |
| 高级检索 | 含 **发货状态** 等完整条件 | 对齐草稿 §3；**不含** 发货状态（页签已表达履约阶段） |
| 整单发货 | **整单一次发完**（O5） | 与平台/全部订单 **一致** |
| 关系 | **主模块** | 可 **跳转/筛选预设** 至待发货；**不另立** 状态规则 |

> **产品建议：** 两菜单并存时，**发货管理** 为商家日常 **默认作业入口**；**全部订单** 为 **完整视图与关闭单处理**。履约规则以 **平台订单定稿** 及 **全部订单定稿** 为准。

### 1.5 数据范围

- **纳入：** 请求上下文 **当前店铺** 下，处于 **待发货、已发货、已完成** 的 C 端会员订单；
- **排除：** 其他店铺订单；**待支付、已关闭、已删除**（本模块默认列表 **不展示**，不阻止通过全部订单查看）；
- **上下文：** 页头展示 **当前店铺名称**（只读）；切换店铺后列表 **整页刷新**，仅展示新店订单。

### 1.6 使用端与角色

| 端 | 可操作角色 | 能力 |
|----|------------|------|
| **店铺经营管理端** | **商户经营账号** | 本模块全部能力（含切换店铺后操作 **对应店** 订单） |
| **店铺经营管理端** | 员工（子管理员） | 是否可访问及各操作按钮由 **角色管理** 中商家端菜单与按钮权限决定 |
| **平台管理端** | 平台管理员/运营 | **不使用** 本模块；在 **平台 · 订单管理** 处理 |
| **C 端** | 买家会员 | 下单、支付、**确认收货**；**不可** 访问商家端 |

---

## 2. 关联需求分析

### 2.1 与《关联需求分析》— 用户链（§12.1）

| 编号 | 规则 | 本模块体现 |
|------|------|------------|
| **O-P1** | **未完成订单 O10** = 待支付 + 待发货 + 已发货 | 本模块处理的 **待发货、已发货** 属于 O10；影响 **删店** |
| **O-P2** | 待支付超时 **O8** → 已关闭，**不计入** O10 | 待支付单 **不在** 本模块默认列表 |
| **O-P3** | 累计消费 **O11** 仅 **已完成** | 本模块 **不参与** 统计；完成后在 **已完成** 页签只读 |
| **O-P4** | 支付成功扣库存；待支付 **不扣** | 待发货单库存 **已在支付时扣减**；发货 **不重复扣** |
| **O-P5** | **整单发货**（平台 O5） | 一次发齐本单全部商品行；草稿 **未描述** 分批发货/拆单 |
| **O-P6** | 会员管理内订单 **只读** | 本模块 **不写** 会员档案 |

### 2.2 与平台《订单管理功能需求》— 规则同源

| 维度 | 平台 · 订单管理 | 商家端 · 发货管理（本模块） |
|------|-----------------|---------------------------|
| 数据范围 | **全平台** | **当前店铺 · 履约阶段** |
| 状态机 | §3 定稿 | **完全一致**（§4） |
| 发货 | §7 整单发货 | **同规则** |
| 物流/送达 | §8、§9 | **同规则** |
| 关闭/删除 | §10 | **本模块不提供** |
| 完成 | §9.2 买家确认收货 | **C 端** 操作；本模块 **只读** 已完成 |
| 列表检索 | §5.3 含店铺名称等 | **无需** 店铺名称（已限定当前店） |

> **双端协作：** 平台与商家 **共用订单**；对本店日常履约，**商家端发货管理为主作业入口**；平台仍可 **代运营** 同一订单。任一端发货成功后，另一端 **同步** 为已发货，**不可重复发货**。

### 2.3 与平台《会员管理功能需求》

| 项 | 定稿 |
|----|------|
| 会员名称 | 列表/详情 **只读** 展示买家昵称等 |
| 收货手机号 | 订单收货手机号 **独立于** 会员注册手机；列表 **脱敏** |
| 累计消费 | 订单 **已完成** 时由平台侧更新（O11）；本模块 **不展示** |

### 2.4 与《商品管理》《店铺管理》

| 项 | 定稿 |
|----|------|
| 商品快照 | 展示 **下单时** 主图、名称、规格、单价；**不随** 商品后续编辑变更 |
| 单规格 | 首期 **单规格** 商品；规格可展示文案或「默认」 |
| 库存 | 支付成功扣减（O4）；发货 **不重复扣** |
| 店铺停业 | **禁止新下单**；已有 **待发货/已发货** 订单 **仍须** 在本模块履约 |
| 删店 | 平台删店前须无 **O10** 未完成订单 |

### 2.5 与《商家端店铺上下文接口说明》（功能口径）

| 项 | 定稿 |
|----|------|
| 当前店铺 | 登录后须 **选定当前店铺**；页头展示店名；业务数据 **仅当前店** |
| 经营账号 | 多店时可 **切换**；切换后本模块 **整页刷新** |
| 员工账号 | 绑定 **单一店铺**；**不可** 切换；仅见绑定店订单 |
| 未选店铺 | **不可** 进入列表；提示先选择当前店铺 |

### 2.6 与 C 端《我的订单功能需求》

| 项 | 定稿 |
|----|------|
| C 端「待收货」 | 对应平台状态 **已发货**；商家登记送达 **不替代** 完成 |
| 确认收货 | **仅买家** C 端操作 → **已完成**（O7） |
| 物流展示 | C 端详情读 **最新物流节点**；本模块维护的节点 **同步可见** |
| 售后申请 | C 端可在待发货/待收货/已完成申请；**审核** 在店铺侧 **另册** |

### 2.7 与商家《配送设置功能需求》v1.1

依据 **《配送设置功能需求》§2.5、DS6** 及 **《配送设置技术方案》** 定稿边界如下：

| 维度 | **配送设置** | **发货管理（本模块）** |
|------|--------------|------------------------|
| 维护对象 | **店铺**（每店 **一份**） | **单笔订单**（多条） |
| 维护内容 | 发货人、发货人手机、**发货地区**（`region_code` + 名称快照）、发货详细地址 | 发货时间、**配送方式**、物流公司/单号 或 车辆/配送员、发货备注、物流节点；**发货时快照** 上列店铺发货信息至订单 |
| 地址含义 | **发货仓/发货地**（对外展示口径，C 端 **发货城市**） | **已发货订单** 展示 **订单快照**；待发货可 **只读参考** 当前配送设置 |
| 收货地址 | **无关** | 展示订单 **收货人快照**（买家地址） |
| 去发货弹窗 | **不参与**（不预填） | 填写 **本单履约** 字段 |
| 预填 | — | **不自动带入** 配送设置至弹窗（**DS6 / FM16**）；提交发货时 **后端读取** 配送设置并写入订单 |
| 列表/详情 | **独立菜单** 维护 | 已发货/已完成展示 **订单已快照** 发货人/地址；待发货详情可 **只读参考** 当前配送设置 |
| 历史订单 | 修改配送设置 **不追溯** 已发货订单快照 | 订单发货信息以 **发货时刻快照** + trace 为准 |
| 菜单 | **物流相关 · 配送设置** | **订单管理 · 发货管理** |

**三类地址/联系信息（避免混淆）：**

```text
① 店铺发货信息（配送设置）── 发货人 + 发货仓库地址 → C 端商品详情「发货地」；发货时快照至订单
② 买家收货信息（订单快照）── consignee_* → 列表/详情「收货人信息」
③ 本单物流/配送员（发货管理）── delivery_type + 物流单号/配送员 → 去发货表单 + 物流轴
```

| 规则 | 定稿 |
|------|------|
| DS6 | 去发货弹窗 **不预填**；**发货成功时** 将当前配送设置 **快照** 写入 `biz_order.shipper_*` / `ship_region_*` / `ship_detail_address` |
| 未维护配送设置 | **阻塞去发货**；提示「请先在配送设置中完善发货人及发货地址」 |
| 详情展示 | **已发货/已完成**：优先展示 **订单发货信息（快照）**；**待发货** 且无快照时，可选 **只读参考** 当前配送设置并链至 **配送设置** |
| 员工权限 | 配送设置与发货管理 **独立** 菜单权限 |

---

## 3. 业务概念

| 概念 | 说明 |
|------|------|
| 履约阶段 | 本模块聚焦的订单阶段：**待发货 → 已发货 → 已完成** |
| 订单 | 会员在 **本店铺** 一次交易单据；含一行或多行 **商品明细** |
| 订单编号 | 系统生成，**全平台唯一** |
| 订单金额 | 商品金额合计；含运费时展示「含运费：xx」 |
| 会员 | 下单的 C 端买家；展示 **会员名称** |
| 收货人信息 | 收货人、手机号、收货地址（**下单快照 · 买家地址**） |
| 店铺发货信息 | **已发货后** 为 **订单快照**（`shipper_*`、`ship_region_*`、`ship_detail_address`）；**待发货** 详情可 **只读参考** 配送设置（§7.2） |
| 配送方式 | **物流配送** / **商家配送**（**发货时** 于去发货弹窗选定） |
| 物流节点 | 发货、运输更新、送达、确认收货等 **时间轴** 记录 |
| 发货商品及数量 | 发货表单中 **展示** 本单全部商品行；须 **整单一次发完**（平台 O5） |

---

## 4. 订单状态与页签

### 4.1 本模块页签（定稿 · 对齐草稿 §1）

本模块 **仅展示履约相关** 状态；与平台全状态机关系如下：

| 本模块页签 | 对应平台状态 | 含义 | 本模块操作 |
|------------|--------------|------|------------|
| **待发货** | 待发货 | 已支付，待商家/平台发货 | 查看、**去发货** |
| **已发货** | 已发货 | 已发货，运输中或待买家确认收货 | 查看、**更新物流**、**商品到货** |
| **已完成** | 已完成 | 买家 **确认收货** 后完结 | **仅查看** |

**不在本模块默认列表的状态：**

| 平台状态 | 处理方式 |
|----------|----------|
| 待支付 | 跳转 **全部订单 · 全部** 页签 **只读** 查看 |
| 已关闭 | 跳转 **全部订单 · 已关闭** |
| 已删除 | 跳转 **全部订单 · 已删除** |

- 各页签可展示对应状态订单 **数量角标**（可选）；**待发货** 角标对商家 **最重要**。
- 默认进入 **待发货** 页签（产品可配置为「上次离开页签」）。

### 4.2 状态流转（主路径 · 与本模块相关部分）

```text
【C 端】提交订单 → 待支付
    ↓
待支付 ──支付成功（扣库存 O4）──► 待发货 ──整单发货（O5）──► 已发货
                                      │                           │
                                      │                           ├── 更新物流（可多次 · O6）
                                      │                           ├── 登记「商品到货/送达」
                                      │                           └── 买家确认收货（O7）──► 已完成
                                      │
                    （待支付超时 O8 / 平台关闭 → 已关闭，不在本模块）
```

| 规则 | 本模块说明 |
|------|------------|
| 进入待发货 | **支付成功** 后；本模块 **待发货** 页签可见 |
| 发货 | **整单一次发完** → **已发货**（平台 O5） |
| 完成 | **买家** C 端确认收货 → **已完成**；登记送达 **不替代** 完成 |
| 离开本模块 | 订单变为 **已关闭** 或 **已删除** 后，从本模块列表 **消失** |

### 4.3 操作权限矩阵

| 状态 | 查看详情 | 去发货 | 更新物流 | 商品到货 |
|------|:--------:|:------:|:--------:|:--------:|
| 待发货 | ✓ | ✓ | — | — |
| 已发货 | ✓ | — | ✓ | ✓ |
| 已完成 | ✓ | — | — | — |

---

## 5. 功能结构

```text
发货管理（商家端 · 当前店铺 · 履约工作台）
├── 履约订单列表（待发货 / 已发货 / 已完成 页签 + 高级检索）
├── 查看详情（含物流节点时间轴）
├── 去发货（待发货 · 整单）
├── 更新物流信息（已发货 · 可多次）
└── 商品到货 / 送达登记（已发货）
```

---

## 6. 履约订单列表

### 6.1 列表字段（定稿 · 对齐草稿 §2）

| 字段 | 说明 |
|------|------|
| 订单信息 | **订单编号**；**商品主图**；**商品名称**；**商品规格**；**数量**；**单价**；**下单时间** |
| 订单金额 | 合计金额 |
| 会员名称 | 买家昵称/会员名 |
| 收货人信息 | 收货人、手机号（**脱敏**）、收货地址 |
| 配送方式 | 物流配送 / 商家配送；**待发货** 时可空或「待选择」；**已发货** 后展示发货时填写的信息 |
| 订单状态 | 待发货 / 已发货 / 已完成（本模块页签范围内） |
| 操作 | 按 §4.3 矩阵展示按钮 |

- 一单多商品：列表可 **折叠摘要** 或展示主商品 +「共 N 件」（UI 以前台为准）。

### 6.2 列表行为

- 默认 **下单时间降序**；**待发货** 页签可配置 **按下单时间升序**（优先处理早单）。
- 列表手机号、姓名等 **脱敏**；详情按权限展示完整信息。
- 切换店铺或刷新后 **重新加载** 列表。
- 无数据时展示空状态提示（如「暂无待发货订单」）。
- 履约操作成功后 **即时刷新** 当前页签。

### 6.3 高级检索（定稿 · 对齐草稿 §3）

| 条件 | 说明 |
|------|------|
| 订单编号 | 精确或模糊 |
| 商品名称 | 模糊（匹配订单内任一行商品） |
| 收货人姓名 | 模糊 |
| 收货人手机号 | 模糊 |
| 收货地址 | 模糊 |
| 下单时间 | 起止日期 |
| 配送方式 | 下拉：物流配送 / 商家配送 |

- 检索范围 **始终限定当前店铺**。
- 与当前 **页签** **组合** 生效（页签 + 检索取交集）。
- 支持 **重置** 条件。

---

## 7. 查看详情

### 7.1 范围

**本模块页签范围内** 的全部订单均可查看详情（草稿 §4.1），含 **已完成**（只读）。

### 7.2 详情内容（建议分区）

| 分区 | 内容 |
|------|------|
| 基本信息 | 订单编号、下单时间、订单状态、会员名称、订单金额 |
| 商品明细 | 主图、名称、规格、单价、数量、小计 |
| 收货信息 | 收货人、手机号、地址（**买家 · 订单快照**） |
| 发货信息 | **已发货/已完成**：发货人、联系方式、发货地区、详细地址（**订单快照 · 发货时写入**） |
| 店铺发货信息（待发货参考） | **仅待发货且无快照时**：只读展示 **当前** 配送设置；链至 **配送设置** |
| 物流信息 | 物流公司/单号 或 车辆/配送员信息；**物流节点时间轴**（发货、运输更新、送达、确认收货） |
| 支付信息（建议） | 支付状态、支付时间（只读；便于确认已进入待发货） |

### 7.3 边界

- 详情 **不可修改** 订单金额、商品行、收货地址等 **下单快照**。
- **不提供** 在详情页 **编辑配送设置**；需修改店铺发货信息时跳转 **配送设置** 菜单。
- **不提供** 删除、关闭、代确认收货等 **非履约** 操作（见 **全部订单** 或 **平台订单管理**）。

---

## 8. 去发货（待发货）

### 8.1 前置条件

- 订单状态 = **待发货**。
- 订单归属 = **当前店铺**。
- 支付已成功（系统状态已为待发货）。
- **当前店铺配送设置已维护**（发货人、联系方式、发货地区、详细地址完整）；否则 **不可发货**。

### 8.2 发货表单（定稿 · 对齐草稿 §4.2）

| 字段 | 必填 | 说明 |
|------|:----:|------|
| 发货时间 | 是 | 默认当前时间，可改 |
| 配送方式 | 是 | **物流配送** / **商家配送** |
| 物流配送 | 选物流时 | **物流公司** + **快递单号** |
| 商家配送 | 选商家配送时 | **车辆号码**、**配送员**、**配送员手机号** |
| 发货备注 | 否 | 文本 |
| 发货商品及数量 | 展示 | **展示本单全部商品行及数量**（只读）；一次操作 **整单发完**（O5） |

**本表单不含（见配送设置 · DS6）：**

| 不含字段 | 负责模块 | 发货时处理 |
|----------|----------|------------|
| 发货人、发货人联系方式 | **配送设置** | **快照** 至订单 `shipper_name` / `shipper_mobile` |
| 发货地区、发货详细地址 | **配送设置** | **快照** 至订单 `ship_region_*` / `ship_detail_address` |
| 运费、发货承诺时间 | **运费模版 / 商品** | — |

| 规则 | 说明 |
|------|------|
| 整单发货 | 一次操作发齐全部商品；状态 → **已发货**（O5） |
| 库存 | 发货 **不重复** 扣库存（支付成功已扣，O4） |
| 预填配送设置 | 弹窗 **不预填**；提交时 **后端读取** 当前配送设置并 **快照**（DS6 / FM16） |
| 配送设置缺失 | 提示完善 **配送设置** 后再发货 |
| 并发 | 若平台端已发货，商家端 **不可再次发货**；提示状态已更新 |

### 8.3 发货后

- 订单状态 → **已发货**；从 **待发货** 页签 **移至已发货** 页签。
- **快照** 当前店铺配送设置（发货人、联系方式、发货地区、详细地址）至订单。
- 写入物流节点：「已发货」+ 发货时间 + 物流信息摘要。
- 列表 **即时刷新**。

```text
商家点击「去发货」
    → 填写发货时间、配送方式及对应物流/配送员信息
    → 确认（展示整单商品只读清单）
    → 后端读取配送设置 → 快照发货人/地址至订单
    → 订单：待发货 → 已发货
    → 写入物流节点「已发货」
    → 刷新列表
```

---

## 9. 更新物流信息（已发货）

### 9.1 前置条件

- 订单状态 = **已发货**。
- 订单归属 = **当前店铺**。

### 9.2 表单（对齐草稿 §4.3）

| 字段 | 必填 | 说明 |
|------|:----:|------|
| 运输更新时间 | 是 | 默认当前 |
| 运输状态描述 | 是 | 文本，如「到达 XX 中转站」 |

### 9.3 规则

- **可多次** 更新（草稿：运输中订单可多次更新 · O6）。
- 每次 **追加** 一条物流节点，**不覆盖** 历史。
- 更新物流 **不改变** 主状态（仍为已发货），直至买家确认收货（O7）。
- **物流配送** 与 **商家配送** 均可记录运输状态描述。

```text
商家点击「更新物流」
    → 填写运输更新时间、运输状态描述
    → 追加物流节点
    → 订单仍为已发货
    → C 端「待收货」详情可见最新节点
```

---

## 10. 商品到货与完成

### 10.1 商家登记送达（已发货）

对齐草稿 §4.4 与平台 **§9.1**：

| 字段 | 必填 | 说明 |
|------|:----:|------|
| 送达时间 | 是 | |
| 送达说明 | 否 | 文本 |

- 登记后写入物流节点「已送达/到货」。
- **不自动** 变为 **已完成**。

### 10.2 买家确认收货（C 端 · 协作）

```text
订单：已发货（商家已登记送达可选）
    ↓
【C 端】买家点击「确认收货」
    ↓
订单状态 → 已完成
    ↓
【平台】会员累计消费更新（O11）
    ↓
【商家】发货管理 · 已完成页签只读可见
```

| 规则 | 商家端说明 |
|------|------------|
| 完成时点 | 以 **买家确认收货** 为准（O7） |
| 登记送达 | **辅助** 物流时间轴；**不替代** 完成 |
| 商家代确认 | **不提供**；若业务需要须单独立项 |
| 完成后 | 本模块 **已完成** 页签 **仅可查看** |

---

## 11. 本模块不可做能力（与关联模块分工）

| 能力 | 负责方 | 说明 |
|------|--------|------|
| 查看/处理待支付、已关闭、已删除 | **全部订单** | 全生命周期视图 |
| 删除已关闭订单 | **全部订单** | 已关闭 → 已删除 |
| 手工关闭在途订单 | **平台** | 待支付/待发货/已发货 |
| 待支付超时关闭 | **系统** | O8 |
| 买家确认收货 | **C 端** | → 已完成 |
| 累计消费统计 | **平台 · 会员管理** | O11 |
| 支付/退款/售后审核 | **另册** | 本模块不处理 |
| 查看其他店铺订单 | **禁止** | 数据隔离 |
| 修改下单快照 | **禁止** | 金额、商品、地址等 |
| 部分发货 | **禁止** | 平台 O5；与草稿 §4.2 **一致**（整单发完） |
| 维护/预填店铺发货信息 | **配送设置** | 弹窗不预填；发货时 **快照** 至订单 |
| 修改配送设置 | **配送设置** | 独立菜单 |

---

## 12. 业务规则汇总

| 编号 | 规则 |
|------|------|
| **FM1** | 列表与操作范围 = **当前店铺** 且 **履约阶段** 订单 |
| **FM2** | 状态机与平台 **完全一致**（O3） |
| **FM3** | 默认页签 = **待发货、已发货、已完成**（草稿 §1） |
| **FM4** | **待发货** 须 **整单一次发货** → **已发货**（O5） |
| **FM5** | **已发货** 可 **多次** 更新物流（O6） |
| **FM6** | 登记送达 **不替代** 买家确认收货（O7） |
| **FM7** | **不提供** 删除、关闭、代确认收货 |
| **FM8** | **未完成订单 O10** 含待发货、已发货；影响删店 |
| **FM9** | 列表/详情手机号等 **脱敏** |
| **FM10** | 切换店铺后 **整页刷新** 列表 |
| **FM11** | 高级检索 **不少于** 草稿 §3 字段 |
| **FM12** | 详情含 **物流节点时间轴** |
| **FM13** | 物流配送与商家配送 **字段不同**（§8.2） |
| **FM14** | 与平台 **共用订单**；任一端履约后 **状态同步** |
| **FM15** | 员工须具相应 **菜单/按钮权限** 方可操作 |
| **FM16** | 弹窗 **不预填** 配送设置；发货时 **读取并快照** 至订单（DS6） |
| **FM17** | **收货地址** = 订单快照；**店铺发货地址** = 发货时订单快照；**二者不可混用** |
| **FM18** | 未维护配送设置 **不可发货** |

---

## 13. 页面与交互要点

| 场景 | 要求 |
|------|------|
| 待发货 | **默认页签**；突出「去发货」；角标提示待处理量 |
| 发货弹窗 | 配送方式切换时 **显隐** 物流/配送员字段；**发货商品及数量** 只读展示整单；**不预填** 配送设置；提示 **发货时将快照配送设置** |
| 详情 | **已发货/已完成** 展示 **发货信息（订单快照）**；**待发货** 可选 **店铺发货信息（参考）** + 跳转 **配送设置** |
| 已发货 | 突出「更新物流」「商品到货」 |
| 已完成 | **仅查看**；无履约类按钮 |
| 物流时间轴 | 时间 **倒序** 展示 |
| 跳转全部订单 | 提供入口查看 **待支付/已关闭** 等非履约单（可选） |
| 空状态 | 无订单 / 检索无结果时分场景提示 |
| 权限 | 无权限时 **隐藏** 按钮或提示无权限 |
| 并发冲突 | 平台已操作时提示 **状态已更新** 并刷新 |

---

## 14. 与关联模块协作流程

```text
【商家】配送设置（可选先行）── 维护本店发货人 + 发货仓库地址 → C 端发货城市
    ↓
【C 端】选本店商品 → 下单 → 支付（扣库存）
    ↓
【商家】发货管理 · 待发货 → 去发货（填本单物流/配送员；后端快照配送设置）→ 已发货
    ↓
【商家】更新物流 / 登记送达（可选，可多次）
    ↓
【C 端】确认收货 → 已完成
    ↓
【平台】会员管理 · 累计消费更新（O11）

并行：
【平台】订单管理 · 可代运营同一订单（状态同步，不可重复发货）
【商家】全部订单 · 可查看待支付/已关闭/删除已关闭单
【系统】待支付超时 → 已关闭（不在本模块展示）
```

---

## 15. 草稿对照与修订说明

| 草稿条目 | 本文档处理 |
|----------|------------|
| §1 待发货/已发货/已完成页签 | §4.1、FM3 |
| §2 列表字段 | §6.1 |
| §3 高级检索 | §6.3 |
| §4.1 查看详情、物流节点 | §7 |
| §4.2 去发货、配送字段、发货商品及数量 | §8（对齐草稿字段；整单规则 O5） |
| §4.3 更新物流 | §9 |
| §4.4 商品到货 + 买家确认→已完成 | §10 |
| §6 按当前店铺查询 | §1.5、§2.5 |
| §7 店铺上下文 | §2.5、FM10 |
| §8 异常返回、§9 技术栈 | **不纳入** |
| 补充平台 O3～O11 | §2、§4、§12 |
| 与配送设置边界 DS6 | §2.7、§8.2、FM16～FM17 |
| 与全部订单分工 | §1.4、§11 |
| 待支付/已关闭不在本模块 | §4.1、§11 |

---

## 16. 非本期范围

| 项 | 说明 |
|----|------|
| **分批发货 / 拆单** | 草稿 **未要求**；平台 O5 定 **整单发货** |
| **商家手工关闭订单** | 由平台/C 端/系统处理 |
| **商家代确认收货** | 须单独立项 |
| Excel 批量发货、批量打印 | 平台 §14 非本期 |
| 支付渠道、退款原路退回 | 另册 |
| 售后/退货换货 **审核 UI** | 另册（C 端可申请） |
| 订单标记/标签、代客下单 | 非本期 |
| 去发货预填配送设置 | DS6：弹窗不预填；发货时 **快照** 至订单 |
| 详情页编辑配送设置 | **配送设置** 专责 |
| 发票 | 另册 |

---

## 17. 修订记录

| 版本 | 说明 |
|------|------|
| **v1.3** | 发货时快照配送设置至订单（`shipper_*` / `ship_region_*` / `ship_detail_address`）；未配置配送设置不可发货 |
| **v1.2** | 对齐草稿 §4.2 修订：删除「分开发货自动拆单」描述；去发货字段与草稿一致；整单规则仅引用平台 O5 |
| **v1.1** | 关联《配送设置功能需求》v1.1；三分工、DS6、详情可选参考配送设置 |
| **v1.0** | 首版定稿 |

---

*文档版本：v1.3（定稿）· 草稿《发货管理功能需求-草稿.md》保持不变 · 平台侧见《订单管理功能需求.md》v1.0.1、《关联需求分析.md》v1.6 · 商家侧见《全部订单功能需求.md》v1.0、《配送设置功能需求.md》v1.2、《商家端店铺上下文接口说明》*
