在底层数据平台(bim.jjcl.cn/demo/)与 BIM2.0 业务+技术文档基础上,给出三大业务模块(供应链/组装工厂/安装交付)的分阶段开发施工蓝图。
BIM 1.0 生产管理平台(小广全栈:FastAPI + MySQL8 + 九表 + 二十接口)已上线并跑通十一态生命周期与认证书/设备 HMAC 签名;BIM 2.0 第一期 MVP Demo(bim.jjcl.cn/demo/)已完成参数建模、STEP 导入、OCP 解析、IFC 导出、BOM 关联五大底层能力,几何 / 属性 / 关系三要素就绪。
本路线图回答:如何把已就绪的底层数据能力,生长为支撑全球钢构模块化建造的三大业务模块,并按可交付节奏分阶段落地。
核心结论(决策依据):
1. 开发优先级顺序 = 组装工厂 → 供应链 → 安装交付。理由:组装工厂模块直接复用 1.0 平台的产线/设备/质检/认证书/母体子体既有骨架,投入产出比最高、交付最先可见;供应链为中游 BOM/MRP 提供物料与成本数据,是工厂的输入侧;安装交付是终端,依赖前两者产物且串联数字孪生移交(业主交付档案)。业务数据链(设计→采购→工厂→物流→安装→交付)与开发优先级(工厂→供应链→安装)解耦,前者描述数据流动方向,后者描述代码落地顺序。
2. STEP 三件套(几何 STEP AP242 + BOM Excel + 属性集)是三大模块共同的「数据血脉」:由设计端一次导出、平台端统一解析,供供应链(采购/成本)、工厂(产线/质检/认证)、安装(装配/验收)三端消费,避免各模块各自对接异构数据。
3. 分四阶段推进(P0 基座整合 → P1 组装工厂 → P2 供应链 → P3 安装交付),每阶段产出可独立上线、可验证的垂直切片,总工期约 26 周(6 个月)。P0 为三模块的公共基座,先行。
工期一览:
| 阶段 | 名称 | 目标 | 主要产出 | 工期 |
|---|---|---|---|---|
| P0 | 基座整合与 STEP 工程化 | 底层能力服务化、数据模型统一 | STEP 三件套服务、几何/属性/关系表、v2 平台壳 | 4 周 |
| P1 | 组装工厂模块 | 产线孪生 + 生产指挥 + 质检测试 | 产线数字孪生、AI 质检、认证勾稽 | 6 周 |
| P2 | 供应链模块(全球) | 设计/采购/供应商/跨境物流贯通 | 设计协同、BOM 成本、供应商门户、跨境物流 | 8 周 |
| P3 | 安装交付模块 | 运输/现场装配/验收/交付 | 运输管理、BIM 辅助安装、验收、数字孪生移交 | 8 周 |
---
后端 bim2_demo_server.py(Flask + ifcopenshell + FreeCAD 无头解析):
| 端点 | 方法 | 能力 |
|---|---|---|
| /api/generate | POST | 参数化生成 18 构件标准钢构户型 IFC |
| /models/<mid>.ifc | GET | IFC 导出文件下载 |
| /api/upload-step | POST | STEP 上传 → FreeCAD 无头解析 → 网格/包围盒 JSON |
| /api/upload-bom | POST | Excel BOM 解析(openpyxl + zipfile 降级) |
| /api/upload-step-bom | POST | STEP+Excel 联合上传并自动匹配(零件号双策略) |
| /api/health | GET | 健康检查 |
前端(Three.js 本地化替代 xeokit CDN):参数化三维预览、物理联动、撤回复位、构件点选调参、双卡片(STEP 卡片 + BOM 卡片)上传区。
五底层能力就绪:①参数建模 ②STEP 导入 ③OCP(OpenCascade)解析 ④IFC 导出 ⑤BOM 关联。三要素就绪:几何(网格/B-Rep)、属性(STEP 自定义属性 + BOM 列)、关系(零件号关联 / 装配层级 / 构件-组件)。
---
与 1.0 平台衔接:v2 服务层收敛在 1.0 FastAPI 之上,1.0 的认证/审计/编号/权限全部复用;新增的几何/属性/关系在 1.0 九表之上扩展(不推倒重建)。
同一孪生体贯穿「设计→采购→工厂→物流→安装→交付」:
数字孪生状态随服务端变更自动变色(增量色),无需刷新(1.0 twin-home 已具备机制,三模块复用)。
---
目标:把 demo 五大底层能力从「单文件 Flask 原型」升级为「可复用服务层」,统一三要素数据模型,建立三模块共用基座。
必要产出:
完成标志(可验收):在 v2 壳内通过统一 API 完成「上传 STEP+BOM → 解析 → 入库三要素 → 三维预览 → 导出 IFC」全链路,无假数据。
前端改动:新建 v2 壳(导航/骨架页);复用 demo 三维预览组件;新增三要素查看面板。
后端改动:新增 v2 统一 API 前缀(保留 demo 兼容路由);新增 4 个 STEP 工程化模块;新增 3 张基础表 DDL。
STEP 三件套应用:搭建三件套从「设计端导出 → 上传 → 解析 → 入库 → 预览/导出」的完整管道(本阶段是全部后续阶段的基础)。
与底层数据平台衔接:三件套服务直接叠在 demo 的 from 基础上,接入 1.0 的认证/审计/权限体系。
目标:把 1.0 已有的产线/设备/质检/认证骨架,升级为「产线数字孪生 + AI 质检 + 认证勾稽」完整工厂模块,让工厂成为三模块中最先可用的一环。
必要产出:
完成标志:一条母体复制 N 子体 → 产线设备事件驱动 → 子体质检/认证 → 合格入库全链路在 v2 页面上可视化,与 1.0 数据库实时联动。
前端改动:产线孪生页(设备布局三维)、质检工作台、认证勾稽页、质量报表页。
后端改动:新增生产指令服务、AI 质检服务(几何比对)、报表聚合接口;扩展现有 production_orders 字段。
STEP 三件套应用:STEP 几何 → 产线三维 + 质检比对基准;BOM → 排产物料需求 + 领料清单(MRP);属性集 → 加工参数 + 质检标准字段。
与底层数据平台衔接:device/event、certify、assembly/complete、stock-in 全部复用 1.0 现有接口与状态机。
目标:贯通「设计 → 采购 → 供应商 → 跨境物流」,为工厂提供物料,为安装提供在途可视化。
必要产出:
完成标志:设计院上传三件套 → 自动生成 BOM 与 MRP → 供应商门户回填 → 下单 → 原材料批次入库 → 工厂领用的全链路跑通,物流在途可追踪。
前端改动:设计协同页、采购工作台、供应商门户(B2B)、物流看板(地图/轨迹)、成本报表。
后端改动:新增 suppliers / purchase_orders / logistics_shipments / shipment_tracks 表与接口;materials 表加供应商字段;MRP 引擎。
STEP 三件套应用:BOM → 采购明细与成本;属性集 → 供应商规格要求(材质/公差/认证);STEP 几何 → 物流装箱体积/重量优化 + 报关归类。
与底层数据平台衔接:设计/import-*(母体)、materials/in(批次)、component 运输中 状态全部复用;新增供应商/物流表与现有生产链外键衔接。
目标:完成「运输到货 → 现场装配 → 机电联调 → 验收 → 数字孪生移交」,交付业主数字房产证。
必要产出:
完成标志:整楼构件从运输到验收全绿,交付档案页面向业主展示整楼母体溯源链 + 每构件认证 + 保修信息。
前端改动:安装端(平板友好)装配指引、验收工作台、业主交付档案页(只读)。
后端改动:新增 delivery_archive 交付档案表与接口、安装扫码接口、联调记录表;accept 接口扩展影像字段。
STEP 三件套应用:STEP 几何 + 属性 → BIM 现场安装指引与装配顺序;BOM → 到货清单核验;属性集 → 验收标准字段与保修参数。
与底层数据平台衔接:component/install、accept、母体子体(交付档案数据源)全部复用 1.0 既有接口。
---
| 用途 | 选型 | 来源/依据 |
|---|---|---|
| 后端服务层(v2) | FastAPI(在 1.0 之上扩展) | 1.0 已用,复用认证/审计/幂等 |
| 数据库 | MySQL8(扩展 1.0 九表) | 1.0 已用 |
| 对象存储 | MinIO(STEP/BOM/属性/照片 xlsx) | BIM2.0 文档既定选型 |
| STEP 解析 | OpenCascade / python-occ / IfcOpenShell | demo 已用 FreeCAD/OCC |
| Excel BOM 解析 | openpyxl(+ zipfile 降级) | demo 已用 |
| IFC 生成 | IfcOpenShell | demo 已用 |
| 三维预览 | Three.js(本地化,不走 CDN) | demo 已用,避开 xeokit CDN 坑 |
| 流程编排 | n8n(流程层,AI 调度) | BIM2.0 文档既定 |
| AI 能力(算量/质检/碰撞/合规) | LLM API + 规则引擎 | BIM2.0 文档 AI 能力层 |
P0(新增 v2 服务层 + 三要素表)
P1(组装工厂)
P2(供应链)
P3(安装交付)
几何表 geometry_lod
id / component_id / lod_level(100-400) / format(STEP|IFC|glb) / storage_url / bbox_json / vertices_hash
属性表 property_sets
id / component_id / source(STEP|BOM|JSON|IFC) / prop_name / prop_value / unit / source_key
关系表 relations
id / from_component_id / to_component_id / rel_type(父-子|装配-被装配|母体-子体|构件-组件) / meta
| 阶段 | 新增页面 | 复用组件 |
|---|---|---|
| P0 | v2 壳(导航/骨架)、三要素查看面板 | demo 三维预览、登录鉴权 |
| P1 | 产线孪生页、质检工作台、认证勾稽页、质量报表 | twin-home 六阶段/调色、device 监控 |
| P2 | 设计协同页、采购工作台、供应商门户(B2B)、物流看板、成本报表 | design-import 楼层视图、图表 |
| P3 | 安装端装配指引(平板)、验收工作台、业主交付档案页 | 母体子体溯源卡、验收流程 |
---
| 模块 | 技术 | 作用 |
|---|---|---|
| 1. STEP 解析器 | OpenCascade / IfcOpenShell | 读几何+装配+材料+属性 → 转 glTF/web 渲染 |
| 2. BOM 处理器 | openpyxl / pandas | 解析多级 BOM、焊件切割清单、按零件号去重汇总 |
| 3. IFC 生成引擎 | IfcOpenShell | STEP 几何+属性 → IFC4,构件自动分类(命名规则/模板映射),属性→IfcPropertySet,材料→IfcMaterial |
| 4. 属性映射配置器 | 可视化 | 配置 SolidWorks 属性名 → 平台属性名映射,支持模板/项目级自定义 |
| 阶段 | 几何(STEP AP242) | BOM(Excel) | 属性包(JSON/自定义) |
|---|---|---|---|
| P0 基座 | 统一三维预览、空间分析、包围盒 | 构件编号/数量/规格解析入库 | 材料/公差/质量属性入库三要素 |
| P1 组装工厂 | 产线三维、质检几何比对基准 | 排产物料需求 MRP、领料清单 | 加工参数、质检标准字段、认证依据 |
| P2 供应链 | 装箱体积/重量优化、报关归类 | 采购明细、多项目 BOM 展开、成本 AI 算量 | 供应商规格要求(材质/公差/认证) |
| P3 安装交付 | 现场装配指引、装配顺序 | 到货清单核验 | 验收标准字段、保修参数 |
任一构件可回答:几何来自哪个 STEP 文件版本 → BOM 来自哪次清单上传 → 属性来自哪种来源(STEP/BOM/JSON)→ 母体版本 → 子体复制批次。三件套入库即写版本快照(source_version),设计变更后旧版本保留可追溯。
---
| 步骤 | 输入 | 操作 | 产出 |
|---|---|---|---|
| 1. 上传几何 | STEP AP242(.stp) | 解析器读 B-Rep 几何 + 装配层级 + 材料名 | 几何预览、包围盒、partIndex 索引 |
| 2. 上传清单 | Excel BOM(.xlsx) | BOM 处理器解析明细,中英文表头模糊匹配(零件号/编号/PART NUMBER都识别) | 构件编号 / 数量 / 规格 / 材质结构化 |
| 3. 上传属性集 | JSON / 自定义属性 | 属性映射配置器对照属性名 → 平台字段 | 材料参数 / 防火 / 防腐 / 加工 / 合规字段 |
| 4. 关联校验 | 三件套齐备后 | 按编号逐行匹配,未命中行标红 | 匹配率报告(命中/未命中清单) |
| 5. 入库 | 校验通过 | 构件生成状态=设计中,关联关系持久化 | 构件可追溯三件套来源快照 |
构件编号是三件套关联的全局主键,贯穿几何、清单、属性与 IFC。统一格式如下:
| 段 | 规则 | 示例 |
|---|---|---|
| {TYPE} | 构件类别编码(四位) | COL / BEM / SLB / WAL |
| {FLOOR} | 楼层,2 位数字 01-99 | 01、02、12 |
| {ZONE} | 区段,1 位大写字母 A-Z | A、B、C |
| {SEQ} | 区内序号,3 位数字 001-999 | 001、042 |
| 要求 | 正确 | 错误 |
|---|---|---|
| 直接用编码,不另起名 | COL-01-A-001 | 一层A区1号柱 / column01 |
| 不空格 | BEM-02-B-003 | BEM 02 B 003 / Beam 2 B 3 |
| 不特殊字符 | SLB-03-C-001 | SLB/03/C/001、SLB@03C |
| 全大写 + 连字符 | WAL-01-A-002 | wal-01-a-002、Wall_01_A_2 |
命名正确是同名匹配的前提:平台按编号直接命中,避免二次人工映射。若需自定义命名,必须在导出 STEP 时勾选输出自定义属性并把构件编号写入「零件号 / Part Number」属性,否则平台无法关联。
| 合成前 | 主键 | 合成后(IFC 构件) |
|---|---|---|
| STEP 几何体(partIndex)+ BOM 行 + 属性集 | COL-01-A-001 | IfcColumn 完整属性 + 几何 |
| STEP 几何体 + BOM 行 + 属性集 | BEM-02-B-003 | IfcBeam 完整属性 + 几何 |
属性集承载三件套里几何无法表达的全部业务信息,平台据此做质检、认证、排产与合规勾稽。六类清单如下:
| 类别 | 字段示例 | 用途 |
|---|---|---|
| 1. 材料 | 材质牌号(如 Q355B)、密度、屈服强度、弹性模量 | 算量、力学检算、采购 |
| 2. 防火 | 防火等级(AS 1530.4 / AS 4100 涂装)、防火涂料、耐火极限 | 认证勾稽、消防报审 |
| 3. 防腐 | 镀锌层厚度、防腐涂层体系(AS/NZS 2312)、环境腐蚀等级 | 海关 / 海运包装、寿命评估 |
| 4. 加工 | 下料尺寸公差、切割/焊接工艺(AS/NZS 1554.1)、钻孔位置、表面处理 | 工厂排产、质检基准、设备参数 |
| 5. 澳洲合规 | 工程等级、标准引用(NCC/AS)、结构认证(CodeMark)、电气/给排水合规 | 认证五字段、交付档案 |
| 6. 通用标识与溯源 | GlobalId、母体编号、子体复制批次、source_version | 追溯链、版本快照、跨环节联动 |
---
| 底层能力 | 衔接方式 | 用于哪些模块 |
|---|---|---|
| 参数建模 /api/generate | 升级为 v2 设计协同的标准户型母体生成 | P2 设计、P1 生产数据准备 |
| STEP 导入 /api/upload-step | 升级为 v2 STEP 解析器(入库 geometry_lod) | P0-P3 全部 |
| OCP 解析 | 供生产指令 + 质检比对 + 安装指引 | P1 质检、P3 安装 |
| IFC 导出 /models/<id>.ifc | 升级为 v2 IFC 引擎(交付/标准) | P3 交付、标准合规 |
| BOM 关联 /api/upload-step-bom | 升级为 v2 BOM 处理器(入库属性/关系) | P2 采购/成本、P1 领料 |
| 1.0 认证勾稽 certify | 直接复用 + 扩展 P1 认证门禁 | P1 质检认证 |
| 1.0 设备事件 device/event + HMAC | 直接复用,驱动产线孪生 | P1 生产 |
| 1.0 母体子体 models/* | 直接复用,三模块数据源 | 全模块追溯 |
| 1.0 十一态生命周期 / 状态机 | 直接复用,三模块状态流转 | P1/P3 |
| 1.0 项目/编号/权限/审计 | 直接复用,v2 壳接入 | 平台底座 |
---
| # | 风险 | 影响 | 缓解措施 |
|---|---|---|---|
| R1 | STEP AP242 设计师端未按规范导出(默认 AP203 丢属性) | 三件套属性残缺,追溯链断裂 | 提供三件套导出模板 + SolidWorks 属性填写指引 + AP242 勾选说明;平台端属性缺失即校验拦截并提示;可做 VBA 一键宏 |
| R2 | STEP 解析性能(大型装配体网格内存/耗时) | 上传卡死、预览失败 | OCC/IfcOpenShell 惰性加载 + LOD 分级(P0 几何表带 lod_level);FreeCAD 无头解析参数质量度可调 |
| R3 | 三方(demo/1.0/v2)并行改动互相覆盖 | 部署回退、接口不一致(曾发生兄弟代理覆盖) | 统一以服务器当前代码为基底合并;v2 独立前缀;每阶段部署前备份线上版(铁律);质量门禁第三关人工审批 |
| R4 | 前端 api() 双前缀误用 / 浏览器缓存旧版 | 页面接口错误、假成功 | 新页统一 api('/v2/...');部署验证 curl 服务器侧 grep 新关键词,加 ?v=N 破缓存;假成功零容忍 |
| R5 | 跨境物流第三方数据依赖(船司/海关 API 不稳定) | 在途追踪失真 | 物流数据解耦为异步采集 + 人工补录兜底;轨迹表支持手动打点 |
| R6 | AI 质检/算量误判(LLM 幻觉) | 质量误放行/成本失真 | AI 仅辅助,关键动作人工 confirm(对齐 BIM2.0「AI 辅助而非替代」铁律);质检几何比对用确定性算法为主、LLM 辅助描述 |
| R7 | 安装端网络不稳(工地) | 装配指引中断 | 前端 PWA 缓存关键构件数据;扫码校验支持离线积压后同步 |
| R8 | 8 周单阶段工期过长导致交付断层 | 失去可见反馈 | 每阶段拆 2 次里程碑(月内可演示),先垂直切片后横向铺开;P1 与 P2 部分子模块并行 |
| R9 | 对象存储/文件(STEP/BOM/照片)权限与备份 | 数据丢失/越权 | MinIO 桶策略 + 每日备份 cron(对齐 1.0);文件与关系表同事务写入 |
---
---
| Gate | 触发条件 | 通过标准 |
|---|---|---|
| G0(第 4 周末) | P0 完成 | 三件套上传→解析→入库三要素→预览/导出全链路真数据跑通,无假成功 |
| G1(第 10 周末) | P1 完成 | 母体复制→产线事件→质检认证→合格入库可视化联动,1.0 库真实变更 |
| G2(第 18 周末) | P2 完成 | 设计三件套→BOM/MRP→供应商→批次入库→工厂领用链路跑通,物流在途可追踪 |
| G3(第 26 周末) | P3 完成 | 整楼运输→装配→验收全绿,交付档案业主可见,数字房产证可下载 |
| 终验 | 全模块 | 四十四要素(几何/属性/关系)+ 三件套追溯链 + 十一态生命周期全链路,跨模块数据一致无断点 |
---
| 术语 | 含义 |
|---|---|
| STEP 三件套 | 几何(STEP AP242 .stp)+ BOM 清单(.xlsx)+ 属性包(JSON/自定义属性),零件号关联 |
| 三要素 | 几何(geometry_lod)/ 属性(property_sets)/ 关系(relations) |
| 母体孪生 | 标准户型设计母体,三件套上游唯一设计源 |
| 子体孪生 | 按母体复制生成的实体构件,独立编号与生命周期 |
| OCP | OpenCascade(STEP/B-Rep 几何内核解析) |
| MRP | 物料需求计划(BOM 展开 → 采购/生产需求) |
| 数字房产证 | 业主交付档案:母体来源+构件明细+认证+安装位置+保修 |
---
本路线图为规划层文档,回答「先做什么、后做什么、要改哪些代码、与现有平台怎么接、有什么风险」;BIM2.0 开发文档为设计层文档,回答「每个模块业务怎么设计、工序怎么走、IFC/标准怎么定」。两者互补,不重复。开发实施以本路线图排序为准,模块内详细设计以 BIM2.0 开发文档为准。