引言:把开源 B2C 商城改成 MRO 平台,为什么九成项目死在半路?

很多制造业 IT 负责人第一次做 MRO 数字化,直觉是“先拉一个 Java 商城开源项目改改”:GitHub 上 macrozheng/mall 星标 70k+,Mall4j 基于 Spring Boot 3 + Vue3,Lilishop、ShopXO 也都号称多商户——看起来商品、订单、支付、后台都有了,加个“供应商字段”不就成了 MRO 采购平台?

现实是:零售商城解决的是“人找货、加购、付款”,MRO 采购平台解决的是“部门提需求、预算卡阈值、多级审批、寻源比价、招投标定标、电子合同、按成本中心结算、WMS 收货质检”。两者在商品模型、流程引擎、集成边界上是两套物种。

一、开源 Java 商城能直接复用的“底盘”

公平地说,开源商城不是没用,它提供了三块可继承资产:

代表项目定位:


二、MRO 必须自研/集成的四块“开源没有”的能力

1. 商品中心:属性模板引擎 > 普通 SPU/SKU

MRO 一颗轴承要挂“内径/外径/厚度/材质/精度等级/执行标准号”,一类电缆要挂“截面积/耐压等级/阻燃标准”。开源商城通常只给 name+speck 文本框。

正确做法:类目树绑定属性模板,录入时按模板填值,Elasticsearch 做多字段加权检索(“型号+参数范围+标准号”)。

2. 采购中心:寻源比价 + 招投标工作流

零售没有“RFQ(询价单)→ 多家报价 → 标准化清洗(单位/贸易术语/账期)→ TCO 评分 → 定标”这条链。

MRO 必须加:

3. 结算中心:成本中心 + 账期 + 电子合同

开源商城只有“用户付款→平台收款→商家提现”。

MRO 要:预算占用校验、按成本中心挂账、N30/N60 账期、对接银企直连、上上签类电子合同、自动三单匹配(订单/收货单/发票)。

4. 履约中心:WMS/TMS/质检回写

零售发货是“推快递单号”,MRO 是“中储类物流轨迹 + 车间质检结果回写 ERP 收货”。南钢鑫智链把中储物流、SAP ERP、上上签全部 API 打通,备货周期 53.5 天→9 天,这不是改个商城能出来的。

三、三种演进路线与代价

路线

做法

周期

适合谁

纯开源二开

基于 Mall4j/Lilishop 加 MRO 模块

6-12 月(含踩坑)

有强 Java 团队、MRO 品类窄(如只买紧固件)

开源内核+采购中台外挂

商品订单用开源,寻源/审批/合同自研微服务

4-8 月

中型制造,已有 OA/ERP 要打通

商业源码授权(LegendShop 类)

拿 Spring Cloud 微服务源码私有化,改订单机/接 SAP

8-16 周

集团/国企/年采购额过亿

经验值:MRO 平台 70% 的工作量在非交易环节(寻源、审批、合同、对账、集成),开源商城只覆盖其中 30% 的交易展示层。别高估“改改就能用”。

四、如果一定要用开源起步,最小改造清单

  1. 商品表加category_attr_template_id,弃用自由文本规格

  2. 订单表加cost_center_id、budget_id、approval_flow_id

  3. 新增rfq(询价单)quotation(报价单)bid_result(定标记录)三张核心表

  4. 支付回调后不立即“完成”,进“待验收”状态,收货后触发结算

  5. 接 Elasticsearch 替代 LIKE 搜索;接 Flowable 替代“审核字段”

  6. 预留external_sys_sync表(ERP/招标/物流/电子签)

做完上面六件,你其实已经不在“改开源商城”,而在“用开源当脚手架写 MRO 系统”了。