6.3 KiB
6.3 KiB
业务流程图
订单处理流程
graph TD
A[WooCommerce新订单] --> B[Webhook接收]
B --> C[订单数据验证]
C --> D[创建内部订单]
D --> E[库存检查]
E --> F{库存充足?}
F -->|是| G[预留库存]
F -->|否| H[标记缺货]
G --> I[订单确认]
H --> I
I --> J[等待发货]
J --> K[生成发货单]
K --> L[选择物流服务商]
L --> M[计算运费]
M --> N[生成运单]
N --> O[更新库存]
O --> P[同步到WooCommerce]
P --> Q[发送跟踪信息]
Q --> R[订单完成]
产品同步流程
graph TD
A[WooCommerce产品更新] --> B[Webhook触发]
B --> C[获取产品数据]
C --> D[数据格式转换]
D --> E{本地产品存在?}
E -->|是| F[更新本地产品]
E -->|否| G[创建新产品]
F --> H[同步变体信息]
G --> H
H --> I[更新分类关系]
I --> J[同步库存信息]
J --> K[更新产品状态]
K --> L[触发相关业务]
L --> M[同步完成]
库存管理流程
graph TD
A[库存操作请求] --> B{操作类型}
B -->|入库| C[采购订单接收]
B -->|出库| D[订单发货]
B -->|调拨| E[仓库间转移]
B -->|盘点| F[库存盘点]
C --> G[验证采购单]
G --> H[更新库存数量]
H --> I[创建库存记录]
D --> J[验证订单]
J --> K[检查库存]
K --> L{库存充足?}
L -->|是| M[扣减库存]
L -->|否| N[库存不足警告]
M --> I
N --> O[处理缺货]
E --> P[验证调拨单]
P --> Q[源仓库扣减]
Q --> R[目标仓库增加]
R --> I
F --> S[盘点差异分析]
S --> T[调整库存]
T --> I
I --> U[更新库存统计]
U --> V[触发库存预警]
V --> W[流程结束]
物流发货流程
graph TD
A[订单待发货] --> B[选择物流服务商]
B --> C{服务商类型}
C -->|FreightCom| D[FreightCom API]
C -->|CanadaPost| E[CanadaPost API]
C -->|UniExpress| F[UniExpress API]
D --> G[获取运费报价]
E --> G
F --> G
G --> H[比较运费]
H --> I[选择最优方案]
I --> J[创建运单]
J --> K[生成跟踪号]
K --> L[打印运单标签]
L --> M[更新订单状态]
M --> N[同步到WooCommerce]
N --> O[发送客户通知]
O --> P[开始物流跟踪]
P --> Q{包裹送达?}
Q -->|否| R[继续跟踪]
Q -->|是| S[订单完成]
R --> P
用户认证流程
graph TD
A[用户登录请求] --> B[验证用户名密码]
B --> C{验证成功?}
C -->|否| D[返回错误信息]
C -->|是| E[生成JWT Token]
E --> F[返回Token给客户端]
F --> G[客户端存储Token]
G --> H[后续请求携带Token]
H --> I[服务器验证Token]
I --> J{Token有效?}
J -->|否| K[返回401未授权]
J -->|是| L[处理业务请求]
L --> M[返回响应]
数据同步流程
graph TD
A[定时任务启动] --> B[检查同步队列]
B --> C{有待同步数据?}
C -->|否| D[等待下次执行]
C -->|是| E[获取同步数据]
E --> F{数据类型}
F -->|产品| G[同步产品数据]
F -->|订单| H[同步订单数据]
F -->|库存| I[同步库存数据]
G --> J[调用WooCommerce API]
H --> J
I --> J
J --> K{API调用成功?}
K -->|否| L[记录错误日志]
K -->|是| M[更新本地数据]
L --> N[加入重试队列]
M --> O[标记同步完成]
N --> P[等待重试]
O --> Q[继续处理下一条]
P --> Q
Q --> B
异常处理流程
graph TD
A[系统异常发生] --> B{异常类型}
B -->|业务异常| C[记录业务日志]
B -->|系统异常| D[记录系统日志]
B -->|网络异常| E[记录网络日志]
C --> F[返回业务错误码]
D --> G[返回系统错误码]
E --> H[返回网络错误码]
F --> I[客户端错误处理]
G --> J[系统监控告警]
H --> K[网络重试机制]
I --> L[用户友好提示]
J --> M[运维人员处理]
K --> N{重试成功?}
N -->|是| O[继续正常流程]
N -->|否| P[标记失败]
P --> M
核心业务场景
1. 电商订单全生命周期
订单创建 → 库存预留 → 支付确认 → 拣货打包 → 物流发货 → 在途跟踪 → 签收完成
↓ ↓ ↓ ↓ ↓ ↓ ↓
WP同步 库存扣减 状态更新 生成运单 跟踪同步 状态更新 订单完成
2. 库存管理核心场景
采购入库 → 质检验收 → 上架可售 → 订单扣减 → 库存预警 → 补货采购
↓ ↓ ↓ ↓ ↓ ↓
记录创建 状态更新 库存增加 库存减少 预警通知 采购单生成
3. 产品管理核心场景
产品创建 → 分类设置 → 变体管理 → 库存关联 → 上架销售 → 数据同步
↓ ↓ ↓ ↓ ↓ ↓
基础信息 分类关系 SKU管理 库存绑定 状态发布 WP同步
业务规则说明
订单处理规则
- 订单状态流转: 严格按照预定义状态流转,不允许跳跃
- 库存预留: 订单确认后立即预留库存,避免超卖
- 自动取消: 超时未支付订单自动取消并释放库存
- 退款处理: 退款后自动恢复库存并同步状态
库存管理规则
- 先进先出: 出库时优先使用较早入库的商品
- 安全库存: 设置最低库存预警线,低于阈值自动预警
- 多仓管理: 支持多个仓库点独立管理库存
- 实时同步: 库存变动实时同步到各个销售渠道
物流管理规则
- 智能选择: 根据重量、体积、目的地自动选择最优物流方案
- 运费计算: 实时获取各物流商报价并比较
- 异常处理: 物流异常时自动重试或转换服务商
- 状态跟踪: 定时同步物流状态并通知客户
数据同步规则
- 增量同步: 优先使用增量同步减少数据传输量
- 冲突解决: 数据冲突时以最新时间戳为准
- 失败重试: 同步失败时按指数退避策略重试
- 数据校验: 同步前后进行数据完整性校验