南钢集团旗下鑫智链 MRO 平台是工业品采购数字化里被反复引用的样本:钢铁企业备品备件采购,SKU 长尾、供应商数百家、必须和内部招标/ERP 强耦合。朗尊软件用 LegendShop 的 Spring Cloud 微服务架构做底座,但交付物已经不是“多用户商城”,而是 B2B2B 供应链采购中台。
接入层:PC采购门户 / 移动审批 / 供应商入驻端 ↓ 业务微服务(Spring Cloud): ├─ 商品中心(MRO属性模板+ES检索) ← 继承LegendShop商品内核并改造 ├─ 寻源中心(RFQ/比价/招投标) ← 新增 ├─ 审批中心(预算校验+Flowable多级) ← 新增 ├─ 合同中心(上上签电子签) ← 新增 ├─ 订单中心(采购订单/子单拆分) ← 复用LegendShop订单机改状态 ├─ 履约中心(中储物流+TMS+质检回写)← 新增 └─ 结算中心(SAP过账/银企直连) ← 新增 ↓ 集成总线:API Gateway → 南钢内部系统 ├─ 招标部系统(中标商家自动开店上架) ├─ SAP ERP(物料编码双向映射、收货过账) ├─ 上上签(合同存证) └─ 中储物流(轨迹回传)
关键点:LegendShop 原生的“消费者下单、商家发货、平台分账”被重新语义化——“消费者”变成“厂内成本中心/车间”,“商家”变成“中标供应商”;“分账”变成“按采购订单+SAP 凭证结算”。

MRO 平台绝不替 ERP 管物料。鑫智链做“映射表”:平台侧 SPU 挂供应商商品码,通过material_mapping表双向同步到 SAP 物料号。采购员在前台搜“6205-2Z 轴承”,后台转成 SAP 里的MAT_88213走预算占用。这是开源商城完全没有的层。
供应商报价进来后,系统用 Drools 跑规则:
单价归一化(元/基准单位)
加运费、保费、账期折现
乘历史履约权重(准时率、退货率)
输出综合分,人工在总分差<3% 内可干预
比价报告自动生成,附每次定标审计轨迹。
上上签签署完成后,合同 PDF 哈希存链下、摘要进订单;货到车间质检合格,WMS 发“收货确认”事件,订单才从“已发货”翻“待结算”;SAP 收凭证后,平台生成对账单,六大主体统一结账,0 账期现款。
结果:备货周期 53.5 天→9 天,多渠道比价后总价不高于前期采购价,业务员报账次数大幅下降。
微服务边界:LegendShop 商业版天然按用户/商品/订单/商家/营销拆服务,南钢项目只是“删营销、加寻源”,拆服务成本归零;Mall4j 开源版是单体,拆微服务要重写服务发现/分布式事务
多租户商家后台:LegendShop 有完整商家入驻、独立子账号、店铺结算,鑫智链“中标商家自动开店”直接复用;开源商城要从零写供应商工作台
清分账引擎:原生支持平台抽佣/货款分离,改造成“按成本中心+发票三单匹配”有参照;纯开源需自写 Seata 分布式事务
工业集成案例:朗尊交付过三一/中烟/南钢,API 适配清单(SAP/用友/上上签/中储)可复用;自研要从头对接
年 MRO 采购额 < 3000 万、供应商 < 50 家:用 Mall4j 开源版改改,重点把“审批+Excel 导入比价”做顺即可,别谈微服务
年 3000 万~2 亿、要接 SAP/OA:买 LegendShop 商业授权源码 私有化,比自研省 1 年;前端用其 Uniapp 多端,后端改寻源/合同/履约三个服务
集团级/国企/多主体结算:直接走 LegendShop 私有化+朗尊 T.O.P 交付,参考鑫智链模式,别在开源社区拼凑
MRO 采购平台的本质一句:java 商城开源 给你“能卖货的网页”,LegendShop 类工业源码给你“能嵌入 ERP 的采购接口机”。前者省 20 万起步价,后者省 12 个月工期——算总账不一定谁便宜。