158 lines
10 KiB
Markdown
158 lines
10 KiB
Markdown
# 数据维护说明书(ONEBOT 目录)
|
||
|
||
> 适用:欧霓博目录维护人员(不用写代码)。所有改动都在**唯一数据源** `OnebotCatalog\onebot-data\catalog\` 里做,
|
||
> 然后"重建 → 发布"两步生效。全流程图形界面操作。
|
||
|
||
## 一、进入维护界面
|
||
|
||
| 方式 | 操作 |
|
||
| -------- | -------------------------------------- |
|
||
| 快捷方式 | 工作区根目录双击`ONEBOT目录-维护版` |
|
||
| bat | 双击`OnebotCatalog\bin\维护入口.bat` |
|
||
| 密码 | `onebot888`(输错不会进) |
|
||
|
||
输完密码,顶栏出现 **【维护入口】** 按钮 → 点它打开维护窗口。
|
||
|
||
## 二、维护界面两个窗口
|
||
|
||
**维护窗口**(数据包总览):
|
||
|
||
- 系列清单表:当前包的系列/变体数/参数/规则/附件
|
||
- 【校验】:检查 STEP 缺失、编码重复、规则冲突、附件缺失
|
||
- 【加载数据包】:换用别的 .opc
|
||
- 【目录制作器】:进入编辑(下面所有场景都在这里做)
|
||
|
||
**目录制作器**(编辑主战场):
|
||
|
||
- 顶部【数据源目录】:默认已填 `onebot-data\catalog`,不用动
|
||
- 顶部【系列下拉】:选要编辑的系列(KC/KCB/KSB/…)
|
||
- 5 个标签页:导入 / 参数 / 编码 / 规则 / 附件与生成
|
||
- 【保存配置】:把修改写回 `series\<系列>.meta.json`
|
||
- 【重建全量目录】:把源目录打包成新的 .opc(**核心按钮**)
|
||
|
||
## 三、日常维护场景(想做什么 → 怎么做)
|
||
|
||
### 1. 改系列定义(参数名/取值/规则/显示名)
|
||
|
||
```
|
||
目录制作器 → 系列下拉选系列 → 改「参数」/「规则」表格
|
||
→ 【保存配置】→ 【重建全量目录】
|
||
```
|
||
|
||
- 显示名映射列格式:`值:显示,值:显示`(如 `:基本型,M:附磁石`)
|
||
- 规则示例:条件 `mount eq YB` → 约束 `bore in 32,40,50`(即 YB 固定形式只有这几个缸径)
|
||
|
||
### 2. 改型号数据(增删型号/改编码/调参数值)
|
||
|
||
```
|
||
Excel 打开 OnebotCatalog\onebot-data\catalog\csv\<系列>.csv
|
||
→ 改完另存为 "CSV UTF-8(逗号分隔)"
|
||
→ 回到制作器 →【重建全量目录】
|
||
```
|
||
|
||
- 第 1 列 `model_code` = 型号编码(必须唯一)
|
||
- 最后一列 `step_file` = 该型号用的 STEP 文件名(多个型号可指向同一文件)
|
||
- 数值列不带单位(如缸径写 32 不写 32mm)
|
||
|
||
### 3. 换/补数模(STEP 文件)
|
||
|
||
```
|
||
NX 批量导出 (nx-batch-export.vb) 输出到 onebot-data\catalog\step\
|
||
或手动拷贝单个 STEP 进去
|
||
→【重建全量目录】(已存在的文件自动跳过, 可断点续跑; 想重导先删该文件)
|
||
```
|
||
|
||
- **文件名(前缀)必须与 CSV 的 step_file 列一致**;后缀 `.step` 和 `.stp` 都行(NX 导出的 .stp 直接放,构建自动识别,无需改名)
|
||
- **新 6 个系列(UCBM/ULP/USP/UGP/UAGP/LAE)step_file 列已是 `.stp`**:NX 导出的 .stp 拷进 `step\` 同名覆盖占位即可;老 11 个系列列是 `.step`:换 .stp 时同前缀的 .step 占位优先被认,**需先删掉占位 .step 文件**
|
||
- 只换一部分也行:没换到的档位继续显示占位模型
|
||
- **窗口内 3D 预览网格**:NX journal 导出 STEP 时同步导出同名 `.stl` 到 `catalog\mesh\`(exportStl 开关,默认开,公差 0.5mm)→ 发布时自动同步到软件旁的 mesh\ 目录 → 桌面 3D 标签页**窗口内直渲**(开源 Helix 渲染),无需浏览器;没有网格的型号自动回退浏览器预览
|
||
- **已有真实 STEP 批量转网格**(不等 NX):`python onebot-data\tools\step-to-stl.py`(开源 OCP 内核,自动跳过占位、断点续跑)→ 网格 >5MB 会自动被 `simplify-stl.py` 压小(或手动跑:`python onebot-data\tools\simplify-stl.py`)→ 发布同步
|
||
|
||
### 4. 新增产品系列(以 ABC 为例,5 步)
|
||
|
||
> 💡 **现成模板**:6 个新分类(夹紧缸/可伸缩定位销/勾销缸/夹爪缸/翻转缸/电动气缸)里各已放好一个**样板系列**(UCBM/ULP/USP/UGP/UAGP/LAE,型号取自官网),直接照它的 `csv\*.csv` + `series\*.meta.json` 格式加型号就行;占位 STEP 已按型号命名,NX 导出真实数模**同名替换**后重建即可,CSV 不用动。
|
||
|
||
1. **CSV**:新建 `catalog\csv\ABC.csv`(表头 `model_code,参数列...,step_file`)
|
||
2. **系列定义**:制作器 Step1【选择参数表 CSV】选它 → 顶部填系列代码 ABC、中英文名 → 补参数表 → 【保存配置】
|
||
3. **挂分类**:编辑 `catalog\catalog.json`,把 `"ABC"` 加进对应分类的 series 数组(系列显示顺序 = 数组顺序)
|
||
4. **放 STEP**:文件放 `catalog\step\`,文件名与 CSV 一致
|
||
5. **重建 + 发布**:制作器【重建全量目录】→ 校验通过 → publish
|
||
|
||
### 5. 增删分类
|
||
|
||
编辑 `catalog\catalog.json` 的 `categories` 数组(code/nameZh/nameEn/series 列表),重建即可。
|
||
|
||
### 6. 加附件(尺寸图/数据表/手册页)
|
||
|
||
- 尺寸图/数据表:制作器 Step5【+添加附件】选文件(Kind 选 dimDrawing/datasheet)
|
||
- 手册页:改 `sample-data\tools\render-manual-pages.py` 里 `SERIES_PAGES` 加新系列页码 → `python render-manual-pages.py ABC` → 重建
|
||
|
||
### 7. 改目录版本号/目录名
|
||
|
||
编辑 `catalog\catalog.json` 的 `catalogVersion` / `catalogName` → 重建 → 发布时用新版本号。
|
||
|
||
### 8. 平替对照表(竞品型号 → 我方型号)
|
||
|
||
**数据表**:`catalog\crossref.csv`(不存在则无平替功能;4 列):
|
||
|
||
```csv
|
||
brand,foreign_model,our_model,note
|
||
SMC,CDJ2B16-100,KC0032-100MLB,近似平替
|
||
JELPC,SQ32-100,KCS0032-100,基础型平替(待核对)
|
||
```
|
||
|
||
- **brand** = 竞品品牌(SMC/亚德客/FESTO/JELPC/...)
|
||
- **foreign_model** = 竞品型号(客户搜这个)
|
||
- **our_model** = 我方型号(**必须存在于目录**,构建自动校验,写错会报错拒绝打包)
|
||
- **note** = 互换程度说明(完全互换/近似平替/需确认)
|
||
- 改完 Excel 另存 CSV UTF-8 → 【重建全量目录】→ 发布
|
||
- 客户使用:搜索框直接输竞品型号(如 `SQ32-100`)→ 命中平替结果 → 双击跳转到我方型号;或打开「平替对照」标签页按品牌筛选浏览
|
||
- 佳尔灵对照自动生成工具:`onebot-data\tools\jelpc-crossref.py`(从英文目录 PDF 抽取基础型对照并校验存在性;完整订购码(含磁石/固定形式)需按各系列订购码页逐页解析,后续可扩展)
|
||
|
||
## 四、重建与校验
|
||
|
||
```
|
||
制作器【重建全量目录】 = CLI: bin\OnebotCatalog.exe --buildfull onebot-data\catalog sample\OnebotCatalog_2026.08.opc
|
||
```
|
||
|
||
- 重建自动校验(缺 STEP/编码重复/参数不全会列出错误并拒绝打包)
|
||
- 结果看 `sample\build.log`;发布门禁自测 31 项看 `sample\selftest.log`
|
||
|
||
## 五、发布三份产物
|
||
|
||
```
|
||
1. 关闭正在运行的目录软件 exe 和本地预览服务器 (占用文件会导致失败)
|
||
2. powershell -NoProfile -File OnebotCatalog\tools\publish.ps1
|
||
```
|
||
|
||
自动产出:
|
||
|
||
| 产物 | 位置 | 给谁 |
|
||
| ---------- | -------------------------------------- | ------------------------------------ |
|
||
| 客户版目录 | `release\OnebotCatalog_2026.08\` | 压缩成 zip 发给客户(双击 exe 即用) |
|
||
| 增量更新包 | `release\update_2026.08\catalog.opc` | 老客户只发这一个文件替换 |
|
||
| 网页站 | `release\web_2026.08\` | 整目录上传到网站服务器 |
|
||
|
||
## 六、客户怎么拿到更新
|
||
|
||
- **新客户**:发 `OnebotCatalog_2026.08_客户版.zip`(发布后重新压缩一次)
|
||
- **老客户**:发 `update_2026.08\catalog.opc` → 客户替换程序旁的 catalog.opc → 重启程序即升级
|
||
|
||
## 七、常见问题排查
|
||
|
||
| 现象 | 原因与处理 |
|
||
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| 网页/桌面看不到新数模 | ① 文件放错目录(只认`onebot-data\catalog\step\`)② 扩展名 .stp≠.step ③ 文件名与 CSV 不一致 ④ 忘了重建/发布 ⑤ 浏览器缓存(刷新即可,页面自动带版本号)⑥ 预览服务器没开(网页打不开/3D 报 Failed to fetch 或 ERR_CONNECTION_REFUSED——别关 serve-web 窗口)⑦ 网页 3D 直接从站点 step\ 取文件(绝对路径),换数模后必须重建**并发布** |
|
||
| 打开系列失败"找不到 KC.meta.meta.json" | 程序旧版 bug,已修复;更新程序或重启 |
|
||
| 重建报错 | 看`sample\build.log`,逐条列出缺文件/重复编码 |
|
||
| 发布失败 | 先关预览服务器(serve-web)和目录软件 exe 再发布 |
|
||
| 下载 STEP 慢 | 本地预览服务器已 16 并发;生产环境上传后无此问题 |
|
||
| 桌面 3D 显示提示按钮 | 该型号是真实数模,点【在浏览器中打开 3D 预览】(本机运行不联网);窗口内直接渲染真实模型待 GLB 升级 |
|
||
| 忘记密码 | 改`src\App\App.cs` 里 `"onebot888"` → 重新编译(见维护手册 §6) |
|
||
|
||
## 八、三条红线
|
||
|
||
1. **业务文件(报价单/合同)不要放进 OnebotCatalog 目录**——曾因此锁死文件夹、误删发布产物
|
||
2. **发布前必须关程序**(运行中的 exe 和预览服务器)
|
||
3. **改完任何中文脚本/代码文件要先跑 `fix-bom.ps1`**(否则中文乱码)
|