# 定制眼镜 ERP 缺失功能分析

分析日期：2026-07-06  
分析范围：对照《软件开发需求功能点.md》，检查后端代码、路由、模型、常量、定时任务与数据库结构。

## 总体结论

当前系统已经具备一套通用 ERP 基础：员工/角色、客户、销售订单、Shopify 等第三方订单拉取、供应商、采购、仓库、生产工单、委外、质检、快递面单、报表、消息/提醒等模块均有基础实现。

但现有实现主要是通用 B2B/电商/生产仓储能力，没有形成“定制眼镜”专属业务闭环。代码中未发现镜框、镜片、验光参数、镜片左右眼定制参数、镜片生产周期、镜片供应商门户等核心模型或字段；订单状态也只有通用销售状态，缺少需求中的镜框状态、镜片状态、整单生产状态、异常预警和重做回退链路。

## 可复用但不等于已完成的能力

- 用户与角色：已有 `Admin`、`Role`、`Menu`、`Organization`、`WithMember`，支持员工、角色、组织和部分成员可见范围。
- 订单：已有 `SaleOrder`、`SaleOrderDetail`，支持订单导入、第三方订单拉取、采购单/发货计划/出入库单生成。
- Shopify：已有 Shopify 授权与订单拉取能力，`ThirdOrder` 可拉取 Shopify 订单。
- 客户：已有客户档案、客户动态、历史订单统计、复购周期提醒的通用能力。
- 供应商/采购：已有供应商、供应商产品报价、采购计划、采购订单、审核、供应商分析相关字段。
- 生产：已有 BOM、工艺、生产计划、生产工单、工序、报工、委外、质检、生产入库等通用模块。
- 仓库：已有仓库、库存、出入库单、库存明细、库存汇总、标签/二维码等通用能力。
- 物流：已有快递任务、面单、部分快递渠道和物流查询接口。

## 缺失功能清单

| 模块 | 缺失或不足 | 说明 |
| :--- | :--- | :--- |
| 用户体系 | 数据权限闭环不完整 | 列表查询有按角色可见范围和成员过滤的逻辑，但详情/编辑/删除中的成员校验被注释，不能严格保证“每条订单只有相关个人/部门可见”。红人、供应商门户等特殊角色的数据隔离也未完成。 |
| 订单同步 | 多 Shopify 门店定时同步不完整 | Shopify 拉单能力存在，但巡检同步渠道写死为固定 channel id，不是可配置的多门店同步；未看到订单 webhook；同步时只拉通用订单/商品/客户，未解析眼镜定制参数。 |
| 订单同步 | Shopify 状态回传缺失 | `SaleOrderSyncJob` 当前只处理 Cool 平台，未实现把生产中、组装中、海运物流、已发货、快递单号等状态同步回 Shopify。 |
| 订单管理 | 眼镜订单面板缺失 | 现有订单状态只有通用“备货中、待发货、已发货”等。缺少订单列表直观看到每副眼镜的镜框状态、镜片状态、预计入库/交期、异常标记、整单生产状态。 |
| 订单管理 | 镜框/镜片拆分追踪缺失 | 未发现镜框、镜片、左右眼镜片、镜片加工参数等专属模型。销售订单明细只关联产品，无法按“一单多副眼镜、一副眼镜多部件”精确追踪。 |
| 订单管理 | 重做/回退流程缺失 | 现有通用操作日志无法覆盖“订单重做后回退到某个生产状态、重新开始后续流程”的业务链路；缺少回退原因、回退前后状态、关联镜框/镜片/工序的存档日志。 |
| 订单管理 | 异常预警未打通 | 现有 `is_warning` 主要用于价格低于参考价等通用警示，缺少镜框停产、采购超期、镜片生产超期、委外未入库、质检异常等眼镜订单异常规则和运营消息推送。 |
| 统计报表 | 眼镜业务维度缺失 | 已有通用销售/产品/渠道报表，但缺少按镜框、镜片类型、镜片供应商、验光参数、生产阶段、异常原因、订单周期、毛利拆分的定制眼镜分析。 |
| 客户档案 | 验光/定制参数档案缺失 | 客户档案是通用客户资料，未看到度数、散光、轴位、瞳距、左右眼处方、历史镜片配置等结构化字段与历史查询。 |
| 客户分析 | 复购提醒不满足眼镜场景 | 当前复购提醒基于通用下单频次，缺少基于度数、散光变化、验光周期、历史眼镜使用周期的复购/复查提醒。 |
| 红人管理 | 红人实体和业务流程缺失 | 未发现红人/网红专属模型。现有 `Sample` 是设备/项目样品语境，不满足红人主页去重、负责人可见、寄样订单、赠品产品、产品成本、佣金、合作费用、客户列表禁止导出等需求。 |
| 红人订单 | 员工发起红人订单缺失 | 无红人订单列表、审批、履约、成本/佣金归集逻辑。 |
| 供应商管理 | 镜框/镜片供应商能力模型缺失 | 有通用供应商和供应商产品报价，但缺少区分镜框成品供应商、镜片定制加工供应商的能力、可加工镜片类型、生产周期、报价规则、停产标记。 |
| 供应商分析 | 眼镜采购比价不足 | 现有供应商分析偏通用采购历史，未按镜框 SKU 或镜片参数自动拉取可供供应商、报价、历史价格走势并服务采购下单。 |
| 镜片供应商门户 | 基本缺失 | `Supplier` 端仅有登录和竞价接口雏形。缺少供应商查看分配给自己的镜片委外单、查看定制参数、隐藏敏感销售信息、更新镜片生产状态、录入快递单号、扫码改状态等功能。 |
| 采购管理 | 镜框自动锁库/采购计划缺失 | 通用采购单、采购计划和审核存在，但未看到按销售订单镜框 SKU 自动锁定库存、库存不足自动生成采购计划、采购状态反馈到订单面板的完整闭环。 |
| 采购管理 | 采购状态枚举不满足需求 | 采购单只有通用状态；缺少“供应商现货预计入库、供应商生产中预计入库、已停产无法采购、采购已入库”等面向订单面板展示的状态和预计时间。 |
| 生产管理 | 镜片自动委外缺失 | 通用委外 `Entrust` 存在，但没有收到 Shopify 眼镜订单后，根据左右眼定制镜片参数自动匹配供应商、生成镜片委外单、计算预期交货日期的逻辑。 |
| 生产管理 | 镜片委外交期预警缺失 | `Entrust` 有计划开始/结束时间字段，但未看到按镜片类型/供应商 SLA 自动计算交期、超期自动预警并反馈订单面板的规则。 |
| 生产管理 | 镜片入库到组装联动不足 | 通用委外质检可生成委外入库，但缺少“镜片入库后通知关联销售订单、检查镜框是否备齐、自动生成眼镜组装工单”的专属流程。 |
| 生产管理 | 组装/质检工序不满足眼镜流程 | 通用生产工序存在，但缺少按单副眼镜分派工人、领取镜框和镜片、组装完成自动流转质检、质检不通过返回组装或进入异常处理、重做订单联动的完整流程。 |
| 生产管理 | 生产入库和发货流程联动不足 | 通用生产入库存在，但缺少眼镜成品入库后自动触发发货流程、订单状态切换为已生产入库/待发货、面板展示的逻辑。 |
| 生产管理 | 数据看板/大屏缺失眼镜指标 | 有通用生产统计接口，但未形成按销售订单、镜片委外、组装、质检、生产小组/车间展示的眼镜生产进度看板和大屏。 |
| 仓库管理 | 仓位/二维码能力需眼镜化 | 通用仓库、库存、标签、二维码能力存在，但缺少针对镜框、镜片、成品眼镜的库存绑定、扫码查仓位库存、扫码领料/入库/发货的业务闭环。 |
| 仓库管理 | 库存预警与订单采购未打通 | 有库存汇总和部分库存分析，但缺少镜框最低库存预警自动生成采购计划、销售订单自动锁定库存、库存变化实时反馈订单面板。 |
| 物流管理 | 质检入库后一键下单缺失 | 快递任务和面单能力存在，但缺少“产品完成质检并生产入库后，一键下快递单并打印面单”的眼镜订单流程入口。 |
| 物流管理 | 扫码发货流程缺失 | 未看到面向快递取件场景的扫码面单后自动标记订单/成品眼镜已发货、录入快递单号、扣减库存、触发 Shopify 同步的完整接口。 |
| 物流管理 | 实时物流追踪和平台展示未打通 | 有物流查询接口雏形，但缺少与订单面板、客户可见状态、Shopify 前台状态展示的完整打通。 |
| 售后交付 | 操作文档/测试文档不足 | 仓库中有部署文档，但未看到针对本定制眼镜 ERP 的测试文档、操作手册、维护手册、业务流程说明。 |

## 建议优先级

1. 先补眼镜核心数据模型：眼镜订单项、镜框、左右眼镜片、验光参数、镜片供应商加工规则、交期 SLA、异常状态。
2. 再补订单面板闭环：订单同步解析定制参数、镜框锁库/采购、镜片委外、组装、质检、生产入库、发货状态统一汇总。
3. 然后补供应商端和扫码流程：镜片供应商门户、状态更新、快递单号、扫码入库/发货、敏感字段脱敏。
4. 最后补分析和运营能力：眼镜维度报表、客户验光档案分析、红人管理、Shopify 状态回传、操作手册和测试文档。
