# outsource 域设计总纲（外协）

LLMS 索引： [llms.txt](/llms.txt)

---

> **源**：PRD「八、页面架构与关键页面设计」页面树 9「外协」（外协单/发料·回货/外协结算）+「七、核心功能逐项需求」之「6.7 外协、委外加工与收回」（发料收回检验闭环、结算以合格收回为准）；决策记录 Q31（外协责任划分——访谈候选）。P0 裁决见决策记录：44 问 triage §1/§5。
>
> **设计确认门：本稿产出即停点，用户确认后才进下一步（FSD 于 B5 完成后统一编制，2026-10-21 裁决）。**
>
> 状态：**已确认**（2026-10-21 用户确认 B5；后续修订追加登记于本行下方）
> 修订：2026-10-21 B5 定稿确认（含外协三屏 6.7 闭环、外协单回链工单防黑箱、结算数量以合格收回为准、分批回货独立质检、超损耗/少回审批流、Q31 责任划分访谈候选留白不预设）。（FSD `00-总则` 修订记录已于 Phase 3 创建时补记本次定稿）
> 修订：2026-10-21 Phase 3 批量铺开——m11 外协册已建（`prd/fsd/m11-外协.md`，F11.01~F11.03 · P1），本表 FSD ID 列由册粒度占位细化为功能 ID。
> 原型：`html/index.html` 导航 + 3 屏，零依赖静态 HTML；预览走文档站（相对链接以站点布局为准）。
> 范围注：外协为 **P1** 功能（大计划 m11 行）——原型按 6.7 完整闭环设计，FSD 编制时标 P1 分期。

## 页面清单

| 屏 | 原型文件 | 对应真实路由 | 交互点 | 覆盖的 FSD ID |
|----|----------|--------------|--------|----------------------------|
| 外协单 | [outsourcing-orders.html](/poms/design/html/outsource/outsourcing-orders.html) | `/outsource/orders` | 外协单列表（外协商/工序/发料·应回·已回·合格·不良·报废/状态/结算条款）；新建入口=**工单任务选择外协**（非独立创建，防「脱离主工单的黑箱」）；进度跟催（供应商自报进度标**「未验证」**）；外协商未确认不能关闭 | F11.01（外协单管理 P1） |
| 发料·回货 | [material-return.html](/poms/design/html/outsource/material-return.html) | `/outsource/returns` | 发料清单确认（**发料数须覆盖应回数及损耗/补数规则**）；发料出库（仓管，联动库存）；分批回货登记；**每次回货独立质检**（收货质检联动 quality 域，合格回站/返工/补数三向）；超损耗/少回须**原因+审批**；运输与材料权属标注（Q31 访谈候选） | F11.02（发料与回货 P1） |
| 外协结算 | [outsourcing-settlement.html](/poms/design/html/outsource/outsourcing-settlement.html) | `/outsource/settlements` | **结算数量以合格收回为准**（不良/报废不计价）；单价×合格数自动汇总；折扣/扣款由财务策略确认（边界：结算单送 settlement 域入对账/应付）；异常扣款留痕（运输损坏/质量拒收关联原任务与审批） | F11.03（外协结算 P1） |

> 原则（6.7）：**外协不能成为脱离主工单的黑箱**——外协单必须回链工单任务；发料、收回和检验必须闭环；异常（外协商不可用/运输损坏/材料权属争议/质量拒收/逾期未回/超额发回）必须关联原任务和审批。权限：外协管理员维护与跟催、仓管发料、质检验收、财务结算、供应商只能看授权范围（供应商门户不在本期范围）。

## 状态迁移（外协单生命周期，6.7 主流程）

```mermaid
stateDiagram-v2
    [*] --> 草稿: 工单任务选择外协（回链 WO）
    草稿 --> 待供应商确认: 提交外协单
    待供应商确认 --> 待发料: 供应商确认（价格/交期/责任条款）
    待供应商确认 --> 已取消: 供应商拒单/超时未确认
    待发料 --> 部分回货: 发料出库（覆盖应回+损耗规则）
    部分回货 --> 部分回货: 分批回货（每次独立质检）
    部分回货 --> 全部回货: 累计合格+不良+报废=应回
    待发料 --> 全部回货: 一次性回货
    全部回货 --> 待结算: 收货质检闭合（合格回站/返工/补数）
    待结算 --> 已结算: 结算单确认（合格数计价）
    已结算 --> 已关闭: 双方对账无误
    已关闭 --> [*]
```

> 6.7：外协商未确认不能直接关闭；少回/超损耗分支须原因+审批后进入「部分回货→待结算」；供应商进度为自报数据时标注「未验证」。返工/补数不新开外协单，在原单回货行追加并关联质检单。

## 裁决引用（本域设计吸收的 Phase 0 裁决与假设标注）

| 裁决/问题 | 内容 | 落地点 |
|-----------|------|--------|
| **Q31**（访谈候选） | 外协责任划分（运输破损责任方、材料权属转移时点、质量责任边界）——待访谈，页面不预设结论 | 发料·回货屏「责任条款」字段区标注「访谈候选（Q31）」 |
| 6.7 规则 | 发料数覆盖应回数及损耗/补数；分批收回；每次回货独立质检；超损耗/少回须原因+审批 | 发料·回货屏校验提示 + 审批入口 |
| 6.7 规则 | 结算数量以合格收回为准；折扣/扣款由财务策略确认 | 外协结算屏计价区 + 财务策略注 |
| 6.7 规则 | 外协商未确认不能直接关闭；自报进度标「未验证」 | 外协单屏状态规则 + 跟催列标注 |
| **Q41**（已采纳） | 外协单价/结算金额对非授权角色脱敏 | 结算屏价格列注（矩阵收口 admin 域） |
| **Q18**（已确认方向）/ R-008 | 工单按确认时点冻结路线/材料快照——外协单引用工单快照工序，不随主数据刷新 | 外协单详情「引用工序」行注 |

**假设标注约定**：未裁决参数一律「假设（Q<n>，待客户确认）」；损耗/补数规则参数、结算账期等不出现预设数值，页面数字均为示例数据（页面内联 mock）。

## 覆盖性对账

- 对应 FSD 册：**m11 外协（P1）**（批量铺开已建：`prd/fsd/m11-外协.md`，F11.01~F11.03）——双向关联两侧无空（2026-10-21 批量铺开互挂）。
- 页面树 9「外协」3 节点全覆盖（外协单/发料·回货/外协结算），1:1 无归并。
- mock 与 B1~B4 连续：外协单 XC-2026-0107 回链 WO-0320（礼盒装帧盒·烫金工序外协，工装呼应烫金版 T-0107/烫金机 #1）；发料材料延续白卡 350g + 烫金纸；收货质检联动 quality 域检验单形态；结算单送 settlement 对账/应付链路；dashboard 风险区「外协回货延迟」卡回链本域。

---

反链：

- [交互设计](/poms/design/)
- [FSD M11 · 外协](/poms/fsd/m11-%E5%A4%96%E5%8D%8F/)
