多平台电商订单中台 界面截图
商城/后台 Real

多平台电商订单中台

聚合淘宝等多平台订单的电商订单中台(OMS),覆盖订单、售后、商品、库存、仓库全链路,内置批量任务框架、消息中间件双传输层与数据大屏。

作者 文和 · 发布于 2026年 · # 商城/后台
核心模块 10 接口 29 完成度 95% 演示数据 Real

项目简介

ERP Hub 是一套面向多平台电商的订单中台(OMS),解决多渠道店铺订单分散、人工对账繁琐、库存不同步、售后处理低效等痛点。系统聚合淘宝等第三方平台订单,统一承接订单、售后、商品、库存、仓库全链路,让运营在一个后台即可完成多平台订单的集中处理与流转。

项目采用前后端分离架构:后端为 Spring Boot 多模块工程,内置可复用的批量任务框架与消息中间件双传输层;前端基于 Vue3 + TypeScript 的配置式后台模板,支持权限、主题、国际化与数据大屏。

技术架构

分层 技术选型
后端 Java 17 · Spring Boot 2.7 · MyBatis-Plus · MySQL · Redis · Redisson
消息中间件 RocketMQ / RabbitMQ 双传输层,业务侧无感切换
任务调度 XXL-Job(内嵌调度中心,SSO 联合登录)
平台对接 自实现淘宝 TOP SDK(MD5 签名 + JDK HttpClient)
前端 Vue3 · TypeScript · Vite · Pinia · Element-Plus(t-ui-plus)
部署 Docker Compose + Nginx 网关,多域名拓扑

核心业务模块

系统按业务域拆分为 10 个核心模块,覆盖订单中台完整链路:

  • 数据大屏:地图、趋势、看板,支持时间筛选联动
  • 订单:原始单、平台单、系统单三级订单管理
  • 售后:退款 / 售后单拉取与状态回传
  • 商品:SPU / SKU / 组合商品管理
  • 库存 / 仓库:库存流水、锁定、仓库配置
  • 商户 / 店铺:商户、店铺、店铺授权
  • 任务:批量任务提交与进度查询
  • 系统:用户、角色、菜单、字典、日志

批量任务框架

hub-core 沉淀了一套基于 MQ 的通用批量任务框架,六类任务开箱即用:

类型 场景 执行方式
IMPORT Excel 批量导入订单 分片循环
EXPORT 订单批量导出 分片循环
PUSH 接收第三方推送订单 整体一次
PULL 从平台拉取订单 / 商品 整体一次
CLEANUP 定时清理过期数据 整体一次
REPORT 物流 / 状态 / 退款回传平台 整体一次 + 分布式锁

任务投递采用事务消息:本地事务提交后投递,Broker 回查反查数据库确认状态,保证任务不丢不重。

订单全链路

  • 三级订单下推:原始单 → 平台单 → 系统单,按规则自动下推
  • 售后拉取:从平台拉取售后单,幂等回调、自动动作
  • 导入导出:模板化导入导出,导出列白名单控制
  • 拉单流水:按月分表存储,支持时间段异步拉取

消息中间件

通过 ErpMqTemplate 抽象出统一收发接口,底层支持 RocketMQ 与 RabbitMQ 双传输层,切换开关零改动:

  • 事务消息 + 回查,保证本地事务与消息投递一致
  • 7 个业务队列:导入、导出、拉取、接收、清理、任务上报、业务上报
  • RabbitMQ 采用事务提交后投递(至少一次),幂等消费

数据大屏

内置经营数据大屏,支持中国地图下钻、订单与金额趋势、时间筛选联动,标题随筛选范围动态更新;地图支持彩色类目渲染。

部署与运维

整套系统通过 Docker Compose 编排,Nginx 网关按域名分发:

  • oms.chengxudaren.com — OMS 前端

后端 Fat Jar 部署,MySQL / Redis / RocketMQ / RabbitMQ 均由容器编排,支持 SSO 联合登录调度中心。

技术栈
JavaSpring BootMyBatis-PlusMySQLRedisRedisson