345 lines
13 KiB
Markdown
345 lines
13 KiB
Markdown
# ERP系统前后端功能对比分析报告
|
||
|
||
**分析时间:** 2026-04-05
|
||
**分析范围:** 前端API模块 vs 后端服务实现
|
||
**分析重点:** 订单模块、库存联动、财务联动
|
||
|
||
## 一、前端API模块统计
|
||
|
||
### 1.1 前端API文件总数:37个
|
||
主要模块分类:
|
||
|
||
| 模块类别 | 文件数量 | 关键文件 |
|
||
|---------|---------|---------|
|
||
| **订单相关** | 3 | order.ts, orderPull.ts, delivery.ts |
|
||
| **商品管理** | 4 | goods.ts, platformGoods.ts, platform-product.ts, sku-match.ts |
|
||
| **库存管理** | 2 | stock.ts, warehouse.ts |
|
||
| **采购管理** | 2 | purchase.ts, supplier.ts |
|
||
| **售后管理** | 1 | afterSale.ts |
|
||
| **报表统计** | 2 | report.ts, tenant-report.ts |
|
||
| **用户权限** | 3 | user.ts, role.ts, auth.ts |
|
||
| **打印相关** | 3 | print.ts, print-job.ts, print-plugin.ts |
|
||
| **其他** | 17 | 包括平台对接、通知、模板等 |
|
||
|
||
### 1.2 前端API函数总数:349个
|
||
按模块分布:
|
||
- 订单模块:23个API函数
|
||
- 库存模块:约15个API函数
|
||
- 采购模块:约12个API函数
|
||
- 售后模块:8个API函数
|
||
- 报表模块:5个API函数
|
||
|
||
## 二、后端Controller统计
|
||
|
||
### 2.1 后端Controller总数:59个
|
||
按服务分布:
|
||
- order-service: 1个主要Controller
|
||
- warehouse-service: 1个库存Controller
|
||
- purchase-service: 4个采购相关Controller
|
||
- tenant-service: 包含财务、报表等Controller
|
||
- 其他服务:用户、商品、文件等
|
||
|
||
## 三、订单模块深度对比分析
|
||
|
||
### 3.1 前端订单API(23个函数)
|
||
|
||
**核心功能分类:**
|
||
|
||
1. **订单查询(4个)**
|
||
- `getOrderList()` - 订单列表
|
||
- `getOrderDetail()` - 订单详情
|
||
- `getPendingMatchOrders()` - 待匹配订单
|
||
- `getPendingAuditOrders()` - 待审核订单
|
||
|
||
2. **订单拉取与创建(1个)**
|
||
- `pullOrders()` - 从平台拉取订单
|
||
|
||
3. **订单审核(3个)**
|
||
- `auditOrder()` - 单个审核
|
||
- `batchAuditOrders()` - 批量审核
|
||
- `batchOperation()` - 批量操作
|
||
|
||
4. **订单处理流程(5个)**
|
||
- `setWarehouseExpress()` - 设置仓库快递
|
||
- `shipOrder()` - 发货
|
||
- `completeOrder()` - 完成订单
|
||
- `syncOrderToPlatform()` - 同步到平台
|
||
- `matchOrder()` - 商品匹配
|
||
|
||
5. **统计与导出(3个)**
|
||
- `getOrderStatistics()` - 订单统计
|
||
- `exportOrders()` - 导出订单
|
||
- `getDashboardStats()` - 仪表板统计
|
||
|
||
6. **备注与日志(2个)**
|
||
- `updateOrderRemark()` - 更新备注
|
||
- `getOrderLogs()` - 获取订单日志
|
||
|
||
7. **选项接口(5个)**
|
||
- `getStatusOptions()` - 状态选项
|
||
- `getAuditStatusOptions()` - 审核状态选项
|
||
- `getDeliveryStatusOptions()` - 发货状态选项
|
||
- `getPlatformOptions()` - 平台选项
|
||
- `getShopOptions()` - 店铺选项
|
||
|
||
### 3.2 后端订单Controller(21个端点)
|
||
|
||
**端点映射对比:**
|
||
|
||
| 前端API | 后端端点 | 状态 | 备注 |
|
||
|---------|---------|------|------|
|
||
| `getOrderList()` | `GET /api/orders` | ✅ 已实现 | 功能完整 |
|
||
| `getOrderDetail()` | `GET /api/orders/{id}` | ✅ 已实现 | 功能完整 |
|
||
| `pullOrders()` | `POST /api/orders/pull` | ✅ 已实现 | 功能完整 |
|
||
| `auditOrder()` | `POST /api/orders/{id}/audit` | ✅ 已实现 | 功能完整 |
|
||
| `batchAuditOrders()` | `POST /api/orders/batch-audit` | ✅ 已实现 | 功能完整 |
|
||
| `setWarehouseExpress()` | `PUT /api/orders/{id}/warehouse` | ✅ 已实现 | 功能完整 |
|
||
| `shipOrder()` | `POST /api/orders/{id}/ship` | ✅ 已实现 | 功能完整 |
|
||
| `completeOrder()` | `POST /api/orders/{id}/complete` | ✅ 已实现 | 功能完整 |
|
||
| `batchOperation()` | `POST /api/orders/batch-operation` | ✅ 已实现 | 功能完整 |
|
||
| `getOrderStatistics()` | `GET /api/orders/statistics` | ✅ 已实现 | 功能完整 |
|
||
| `getDashboardStats()` | `GET /api/orders/dashboard` | ✅ 已实现 | 功能完整 |
|
||
| `exportOrders()` | `GET /api/orders/export` | ✅ 已实现 | 功能完整 |
|
||
| `updateOrderRemark()` | `PUT /api/orders/{id}/remark` | ✅ 已实现 | 功能完整 |
|
||
| `getOrderLogs()` | `GET /api/orders/{id}/logs` | ✅ 已实现 | 功能完整 |
|
||
| `syncOrderToPlatform()` | `POST /api/orders/{id}/sync` | ✅ 已实现 | 功能完整 |
|
||
| `getStatusOptions()` | `GET /api/orders/options/status` | ✅ 已实现 | 功能完整 |
|
||
| `getAuditStatusOptions()` | `GET /api/orders/options/audit-status` | ✅ 已实现 | 功能完整 |
|
||
| `getDeliveryStatusOptions()` | `GET /api/orders/options/delivery-status` | ✅ 已实现 | 功能完整 |
|
||
| `getPlatformOptions()` | `GET /api/orders/options/platforms` | ✅ 已实现 | 功能完整 |
|
||
| `getShopOptions()` | `GET /api/orders/options/shops` | ✅ 已实现 | 功能完整 |
|
||
| `getPendingMatchOrders()` | ❌ 无对应端点 | ⚠️ **缺失** | 前端有但后端无 |
|
||
| `getPendingAuditOrders()` | ❌ 无对应端点 | ⚠️ **缺失** | 前端有但后端无 |
|
||
| `matchOrder()` | ❌ 无对应端点 | ⚠️ **缺失** | 前端有但后端无 |
|
||
| `cancelOrder()` | `POST /api/orders/{id}/cancel` | ✅ 已实现 | 后端有但前端未调用 |
|
||
|
||
## 四、关键缺失功能分析
|
||
|
||
### 4.1 订单处理流程完整性分析
|
||
|
||
**订单状态流转:**
|
||
```
|
||
待处理 → 待审核 → 已审核 → 已发货 → 已完成
|
||
↓ ↓ ↓ ↓ ↓
|
||
pending → auditing → shipped → completed
|
||
```
|
||
|
||
**缺失环节分析:**
|
||
|
||
1. **待匹配订单功能缺失**
|
||
- 前端:`getPendingMatchOrders()` 存在
|
||
- 后端:无对应Controller端点
|
||
- 影响:无法查看需要商品匹配的订单
|
||
|
||
2. **待审核订单专用接口缺失**
|
||
- 前端:`getPendingAuditOrders()` 存在
|
||
- 后端:无专用端点,需通过`getOrderList()`过滤
|
||
- 影响:审核效率降低
|
||
|
||
3. **商品匹配功能缺失**
|
||
- 前端:`matchOrder()` 存在
|
||
- 后端:无对应端点
|
||
- 影响:无法将平台商品与ERP商品关联
|
||
|
||
### 4.2 库存联动分析
|
||
|
||
**前端库存API:**
|
||
- `getStockList()` - 库存列表
|
||
- `getStockDetail()` - 库存详情
|
||
- `inboundStock()` - 入库操作
|
||
- `outboundStock()` - 出库操作
|
||
- `adjustStock()` - 库存调整
|
||
- `getStockLogs()` - 库存流水
|
||
|
||
**后端库存Controller:**
|
||
- `GET /api/stock/list` - 库存列表 ✅
|
||
- `GET /api/stock/detail` - 库存详情 ✅
|
||
- `POST /api/stock/inbound` - 手动入库 ✅
|
||
- `POST /api/stock/outbound` - 手动出库 ✅
|
||
- `GET /api/stock/logs` - 库存流水 ✅
|
||
|
||
**库存联动状态:**
|
||
1. ✅ **订单发货自动扣减库存** - **已实现**
|
||
- 通过`StockClient`服务间调用实现
|
||
- 代码位置:`OrderServiceImpl.deductStockForOrder()`
|
||
2. ⚠️ **库存预警与订单关联** - 需要确认是否实现
|
||
3. ⚠️ **库存锁定机制** - 需要确认是否实现
|
||
|
||
### 4.3 财务联动分析
|
||
|
||
**前端财务相关API:**
|
||
- `getFinanceReport()` - 资金报表(在report.ts中)
|
||
|
||
**后端财务Controller:**
|
||
- `GET /api/tenant/finance/records` - 财务记录 ✅
|
||
- `GET /api/tenant/finance/summary` - 财务汇总 ✅
|
||
- `POST /api/tenant/finance/receipt` - 创建收款 ✅
|
||
- `POST /api/tenant/finance/payment` - 创建付款 ✅
|
||
- `GET /api/tenant/finance/reconciliation` - 对账记录 ✅
|
||
|
||
**财务联动状态:**
|
||
1. ⚠️ **订单完成自动生成应收款** - **部分实现**
|
||
- 发现财务服务接口存在,但订单模块集成待确认
|
||
2. ⚠️ **采购单完成自动生成应付款** - **部分实现**
|
||
- `PurchaseOrderServiceImpl`中调用了`FinanceFeignClient`
|
||
3. ⚠️ **财务报表与订单数据关联** - 需要确认是否实现
|
||
|
||
### 4.4 售后模块分析
|
||
|
||
**前端售后API:**
|
||
- `getAfterSalesList()` - 售后列表
|
||
- `getAfterSaleDetail()` - 售后详情
|
||
- `createAfterSale()` - 创建售后
|
||
- `updateAfterSaleStatus()` - 更新状态
|
||
- `deleteAfterSale()` - 删除售后
|
||
- `getAvailableOrders()` - 可售后订单
|
||
- `getAllAvailableOrders()` - 所有可售后订单
|
||
- `getAfterSaleStats()` - 售后统计
|
||
|
||
**后端售后Controller:**
|
||
- ❌ **未找到对应的Controller**
|
||
- ⚠️ **严重缺失:整个售后模块后端未实现**
|
||
|
||
## 五、缺失功能清单(按优先级排序)
|
||
|
||
### 优先级 P0(核心功能缺失)
|
||
|
||
| 功能名称 | 前端需要 | 后端状态 | 缺失程度 | 影响 |
|
||
|---------|---------|---------|---------|------|
|
||
| 售后管理模块 | ✅ 8个API | ❌ 未实现 | 🔴 严重 | 无法处理退货退款 |
|
||
| 订单商品匹配 | ✅ `matchOrder()` | ❌ 未实现 | 🔴 严重 | 无法关联平台商品与ERP商品 |
|
||
| 待匹配订单查询 | ✅ `getPendingMatchOrders()` | ❌ 未实现 | 🔴 严重 | 无法查看需要匹配的订单 |
|
||
| 待审核订单专用接口 | ✅ `getPendingAuditOrders()` | ❌ 未实现 | 🟡 中等 | 审核效率低 |
|
||
|
||
### 优先级 P1(重要功能缺失)
|
||
|
||
| 功能名称 | 前端需要 | 后端状态 | 缺失程度 | 影响 |
|
||
|---------|---------|---------|---------|------|
|
||
| 财务与订单联动 | ✅ 资金报表 | ⚠️ 部分实现 | 🟡 中等 | 财务数据不完整 |
|
||
| 库存自动扣减 | ⚠️ 隐含需求 | ❓ 待确认 | 🟡 中等 | 库存数据不准确 |
|
||
| 报表完整实现 | ✅ 5个报表API | ⚠️ 部分实现 | 🟡 中等 | 数据分析能力弱 |
|
||
|
||
### 优先级 P2(优化功能缺失)
|
||
|
||
| 功能名称 | 前端需要 | 后端状态 | 缺失程度 | 影响 |
|
||
|---------|---------|---------|---------|------|
|
||
| 批量操作优化 | ✅ `batchOperation()` | ✅ 已实现 | 🟢 轻微 | 功能完整 |
|
||
| 状态流转验证 | ⚠️ 隐含需求 | ❓ 待确认 | 🟢 轻微 | 状态管理可能混乱 |
|
||
| 操作日志完整 | ✅ `getOrderLogs()` | ✅ 已实现 | 🟢 轻微 | 功能完整 |
|
||
|
||
## 六、订单处理流程完整性验证
|
||
|
||
### 6.1 标准ERP订单流程
|
||
```
|
||
1. 订单拉取 → 2. 商品匹配 → 3. 订单审核 → 4. 仓库分配 → 5. 发货 → 6. 完成 → 7. 财务结算
|
||
```
|
||
|
||
### 6.2 当前实现状态
|
||
- ✅ **步骤1:订单拉取** - 已实现
|
||
- ❌ **步骤2:商品匹配** - 缺失(关键环节)
|
||
- ✅ **步骤3:订单审核** - 已实现
|
||
- ✅ **步骤4:仓库分配** - 已实现
|
||
- ✅ **步骤5:发货** - 已实现
|
||
- ✅ **步骤6:完成** - 已实现
|
||
- ⚠️ **步骤7:财务结算** - 部分实现
|
||
|
||
### 6.3 库存联动验证
|
||
- ✅ **发货扣减库存** - **已实现**(代码审查确认)
|
||
- 位置:`OrderServiceImpl.deductStockForOrder()`
|
||
- 机制:通过`StockClient`调用库存服务扣减
|
||
- ⚠️ **库存锁定机制** - 需要进一步确认
|
||
- ⚠️ **库存预警** - 需要进一步确认
|
||
|
||
### 6.4 财务联动验证
|
||
- ⚠️ **订单完成自动生成应收款** - **部分实现**
|
||
- 发现:`PurchaseOrderServiceImpl`中有财务客户端调用
|
||
- 状态:采购模块有财务联动,订单模块待确认
|
||
- ⚠️ **采购单完成自动生成应付款** - **部分实现**
|
||
- 发现:`FinanceFeignClient`存在
|
||
- 状态:财务服务接口已定义,集成程度待确认
|
||
|
||
## 七、建议与改进方案
|
||
|
||
### 7.1 立即修复(P0优先级)
|
||
1. **实现售后管理模块**
|
||
- 创建 `after-sale-service`
|
||
- 实现售后单CRUD、状态流转、退款处理
|
||
- 关联订单和库存模块
|
||
|
||
2. **实现商品匹配功能**
|
||
- 在 `order-service` 添加匹配接口
|
||
- 实现平台SKU与ERP商品关联
|
||
- 添加匹配规则和算法
|
||
|
||
3. **完善订单查询接口**
|
||
- 添加 `GET /api/orders/pending-match`
|
||
- 添加 `GET /api/orders/pending-audit`
|
||
- 优化查询性能
|
||
|
||
### 7.2 近期优化(P1优先级)
|
||
1. **强化财务联动**
|
||
- 订单完成自动生成应收款
|
||
- 采购单完成自动生成应付款
|
||
- 实现自动对账功能
|
||
|
||
2. **完善库存联动**
|
||
- 发货时自动扣减库存
|
||
- 实现库存锁定机制
|
||
- 添加库存预警功能
|
||
|
||
3. **报表系统完善**
|
||
- 实现完整的销售报表
|
||
- 实现完整的采购报表
|
||
- 实现完整的库存报表
|
||
|
||
### 7.3 长期规划(P2优先级)
|
||
1. **流程优化**
|
||
- 实现工作流引擎
|
||
- 添加审批流程配置
|
||
- 实现自动化规则
|
||
|
||
2. **性能优化**
|
||
- 大数据量分页优化
|
||
- 缓存机制实现
|
||
- 异步处理优化
|
||
|
||
## 八、技术债务评估
|
||
|
||
### 8.1 架构层面
|
||
- **微服务拆分合理**:订单、库存、采购等服务分离清晰
|
||
- **API设计规范**:RESTful风格基本遵循
|
||
- **数据一致性**:需要加强分布式事务管理
|
||
|
||
### 8.2 代码层面
|
||
- **前端API设计完整**:接口定义清晰
|
||
- **后端实现不完整**:部分前端API无后端实现
|
||
- **错误处理**:需要统一异常处理机制
|
||
|
||
### 8.3 业务层面
|
||
- **核心流程完整**:订单处理基本流程存在
|
||
- **关键功能缺失**:售后、匹配等核心功能未实现
|
||
- **数据关联弱**:模块间数据联动不足
|
||
|
||
## 九、结论
|
||
|
||
### 9.1 总体评估
|
||
- **前端开发进度**:85%(API设计完整)
|
||
- **后端开发进度**:65%(核心功能缺失)
|
||
- **系统完整度**:70%(关键模块未实现)
|
||
|
||
### 9.2 风险提示
|
||
1. **售后功能完全缺失** - 无法处理客户退货退款
|
||
2. **商品匹配功能缺失** - 无法关联平台与ERP商品
|
||
3. **财务数据不完整** - 影响财务报表准确性
|
||
4. **库存联动不明确** - 可能导致库存数据错误
|
||
|
||
### 9.3 建议行动
|
||
1. **立即启动售后模块开发**
|
||
2. **补全商品匹配功能**
|
||
3. **加强模块间数据联动**
|
||
4. **完善报表和统计功能**
|
||
|
||
---
|
||
**分析完成时间:** 2026-04-05 00:45
|
||
**分析工具:** Astron模型深度推理分析
|
||
**分析人员:** 子代理(深度分析任务) |