Files
OnebotCatalog/README.md

80 lines
5.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# OnebotCatalog —— 欧霓博气动元件电子目录软件(自研)
对标 CADENAS PARTdataManager 目录光盘,但不依赖任何 CADENAS 组件。目标:普通客户通过软件选型并**下载 STEP 文件**,导入自己的 CAD 使用。
> 📌 项目全景/架构/踩坑/待办见同目录 **项目总览.md**(继续开发的入口);本文件夹各目录用途见 **文件夹说明.md**;改数据看 **onebot-data\数据维护说明书.md**NX 母模建模看 **sample-data\tools\NX母模建模操作说明书.md**。
## 现状2026-08-22
- **M1/M2/M3 全部完成**:桌面版(含维护入口)+ 网页版(纯静态)+ 一键发布三份产物 + 真实数据入库17 系列 52,193 型号;含 2026-08-23 新增的 6 个 UNIVER 系分类样板系列 UCBM/ULP/USP/UGP/UAGP/LAE
- 数据源:`onebot-data\catalog\`catalog.json + series\*.meta.json + csv\ + step\ + manual\ + crossref.csv 平替对照)
- 特色功能:平替对照(竞品型号↔我方型号,搜索/标签页双入口)、手册页对照、新迪 3Dmenu=min 精简)、.stp/.step 后缀兼容
- 自测ONEBOT 包 25 项 / 样例包 40 项(`--selftest`,结果 `sample\selftest.log`
- 品牌ONEBOT维护密码onebot888
## 目录结构(自包含布局,整体拷贝不断链)
```
OnebotCatalog/
├── 项目总览.md / 文件夹说明.md / 设计文档 / 开发提示词 ← 文档都在根
├── src/ # 源代码: App(WPF界面) + CatalogCore(数据包/规则引擎/构建器) + Viewer3D(自绘3D)
├── bin/ # 编译产物: OnebotCatalog.exe(开发版) + OnebotCatalog-Customer.exe(客户版) + 维护入口.bat
├── sample/ # 数据包 .opc + selftest.log + SC-meta.json(单系列配置样例)
├── release/ # 交付产物: OnebotCatalog_2026.08\(客户版目录) + update_2026.08\(增量包) + web_2026.08\(网页站)
├── web/ # 网页版前端源码 (纯静态: index.html/app.js/style.css)
├── viewer/ # 新迪 3D 查看器本地副本 (桌面浏览器预览/网页 3D; 原项目 Z 盘只读)
├── tools/ # build.ps1 编译 / publish.ps1 一键发布 / serve-web.ps1 本地预览(16并发) / fix-bom.ps1 等
├── assets/ # OneBot 图标 (编译进 exe)
├── docs/ # 用户手册 / 维护手册
├── onebot-data/ # ★唯一数据源★ catalog\ + 生成工具 + 数据维护说明书.md
└── sample-data/ # 样例数据 + NX 工具 (nx-batch-export.vb 批量导出 / nx-batch-export-glb.vb / 母模说明书)
```
## 常用命令
```powershell
# 编译开发版
powershell -NoProfile -ExecutionPolicy Bypass -File tools\build.ps1
# 自测 (结果看 sample\selftest.log)
bin\OnebotCatalog.exe --selftest sample\OnebotCatalog_2026.08.opc
# 全量构建 (统一路线: 源目录 → .opc; 维护窗口【重建全量目录】同内核)
bin\OnebotCatalog.exe --buildfull onebot-data\catalog sample\OnebotCatalog_2026.08.opc
# 一键发布 (自测门禁 → 客户版 exe(数据内置) → 光盘目录+增量包+网页站; ★先停 serve-web 和运行中的 exe★)
powershell -NoProfile -ExecutionPolicy Bypass -File tools\publish.ps1
# 本地网页预览 (localhost:8080, 关掉即停)
powershell -NoProfile -ExecutionPolicy Bypass -File tools\serve-web.ps1
# 运行 (客户模式 / 维护模式)
bin\OnebotCatalog.exe sample\OnebotCatalog_2026.08.opc
bin\OnebotCatalog.exe sample\OnebotCatalog_2026.08.opc --admin # 或双击 维护入口.bat (密码 onebot888)
```
**注意**: 编辑任何含中文的 .ps1/.cs/.vb 后必须运行 `sample-data\tools\fix-bom.ps1` 再编译/运行PowerShell 5.1/csc 对无 BOM 文件按 GBK 读取)。
## 与设计文档的偏差(环境适配)
| 设计文档 (M1) | 实际实现 | 原因 |
|---|---|---|
| C# / .NET 8 (WPF+MVVM) | C# / .NET Framework 4.8 (代码式 WPF) | 本机无 .NET SDKnet48 内置于 Win10/11客户机免装运行时 |
| SQLite + FTS5 | catalog.json (zip 内) + 内存查询 | 避免外部依赖10 万级变体内存 LINQ 足够 |
| Helix Toolkit 渲染 | WPF 内置 Viewport3D + 自绘解析器 | 零依赖;真实 B-rep 走浏览器+新迪查看器(内嵌本机服务器) |
| 预生成预览网格 | 占位几何直接解析;真实数模浏览器预览 | 真实 CAD 通用 STEP 由 NX 母模批量导出(预生成变体) |
| MVVM | 代码式事件驱动 | 保持模块分层Core 不依赖 UI |
## 已知简化(诚实清单)
- 维护密码硬编码 `onebot888`(在 App.cs未移配置
- 桌面 3D真实 B-rep **窗口内直渲、不弹浏览器**——有 STL 网格走开源 Helix ToolkitMIT无网格走 **WebView2 内嵌新迪查看器**(真实 STEP 直接渲染Win11 自带运行时两者都不可用才回退外部浏览器网页轻量化glTF待办 9
- 行程为离散标准档位10/20/30/50/75/100"任意行程"待参数化二期NX 运行时生成,待办 7
- 网页 3D 对占位 STEP 走 Canvas 回退;真实 NX STEP 走新迪渲染(已验证)
- 发布站 app.js 的 `VIEWER_BASE` 需按生产部署改前缀(见项目总览 §12
## 待办(见项目总览 §9 完整清单)
- NX 母模批量导出真实 STEPKC-00-32x10 已试点;母模说明书见 sample-data\tools\
- 代码签名证书 / 虚拟机验收 / 检查更新 / 参数化二期 / TC 集成(可选)