- 恢复为6个CAD软件:Creo、Revit、PDMS、AutoCAD、SolidWorks、CATIA - 删除状态分类:移除"完全集成"和"基础支持"分类 - 修复网格样式:恢复一排两个的布局 - 清理配置:简化配置文件,删除不必要的状态管理 - 更新文档:记录开发错误和强制规则 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
187 lines
6.2 KiB
Markdown
187 lines
6.2 KiB
Markdown
# CLAUDE.md
|
||
|
||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||
|
||
## 项目概述
|
||
|
||
这是工业模型软件管理统一平台的Vue.js重构版本,集成多个CAD软件系统(CATIA、Creo Parametric、Revit、PDMS、AutoCAD、SolidWorks)。提供模型分析、格式转换和实时监控功能。
|
||
|
||
**原系统位置**: `D:\App\vue\Miany`
|
||
**API文档**: `D:\App\vue\Miany\api.md`
|
||
**搜索功能指南**: `D:\App\vue\Miany\SEARCH_FEATURE_GUIDE.md`
|
||
**前端API文档**: `D:\App\vue\Miany\frontend-api-docs.md`
|
||
|
||
### 原项目结构参考
|
||
```
|
||
D:\App\vue\Miany/
|
||
├── index.html # 主页面入口 - UI布局参考
|
||
├── css/ # 样式文件 - 完整样式参考
|
||
│ ├── variables.css # CSS变量定义
|
||
│ ├── main.css # 主要样式
|
||
│ ├── model-viewer.css # 模型查看器样式
|
||
│ ├── management-panel.css # 管理面板样式
|
||
│ └── [其他专用样式文件]
|
||
├── js/ # JavaScript文件 - 仅作功能参考,不复制代码
|
||
│ ├── main.js # 应用状态管理参考
|
||
│ ├── config/api-config.js # API配置参考
|
||
│ └── [其他功能模块]
|
||
└── pages/ # 页面文件
|
||
└── model-viewer.html # 模型查看器界面参考
|
||
```
|
||
|
||
## 开发命令
|
||
|
||
```bash
|
||
# 安装依赖
|
||
npm install
|
||
|
||
# 启动开发服务器
|
||
npm run dev
|
||
|
||
# 生产构建
|
||
npm run build
|
||
|
||
# 预览生产构建
|
||
npm run preview
|
||
|
||
# 代码检查
|
||
npm run lint
|
||
|
||
# 代码格式化
|
||
npm run format
|
||
|
||
# 运行单元测试
|
||
npm run test:unit
|
||
|
||
# 运行端到端测试
|
||
npm run test:e2e
|
||
```
|
||
|
||
## 架构设计
|
||
|
||
### 核心系统架构
|
||
Vue应用将与分布式后端服务集成,支持多个CAD软件系统:
|
||
- **Creo Parametric**: `http://localhost:12345`
|
||
- **Revit**: `http://localhost:9000`
|
||
- **PDMS**: `http://localhost:9001`
|
||
- 每个CAD软件运行在独立端口,具有独立的API端点
|
||
|
||
### 主要架构模式
|
||
|
||
**状态管理**: 使用Pinia进行集中状态管理,替换原有的全局AppState模式。主要状态模块:
|
||
- `cad-connections`: 跟踪所有CAD软件的连接状态
|
||
- `model-analysis`: 存储层级分析结果和几何数据
|
||
- `export-operations`: 管理文件导出任务和格式
|
||
- `real-time-logs`: 处理操作日志和监控
|
||
|
||
**组件架构**:
|
||
- **CAD集成组件**: 软件选择器、连接监控、状态仪表板
|
||
- **分析组件**: 层级树查看器、几何复杂度分析器、安全评估
|
||
- **导出组件**: 格式转换器、批量导出管理器、路径选择器
|
||
- **监控组件**: 实时日志查看器、资源监控器、任务队列
|
||
|
||
**API层**: 为每个CAD系统创建抽象服务:
|
||
```
|
||
services/
|
||
├── cad-api/
|
||
│ ├── creo-service.js # Creo专用API调用
|
||
│ ├── revit-service.js # Revit专用API调用
|
||
│ ├── pdms-service.js # PDMS专用API调用
|
||
│ └── base-cad-service.js # 通用CAD操作
|
||
```
|
||
|
||
### 关键集成点
|
||
|
||
**实时更新**: 实现WebSocket或轮询机制用于:
|
||
- CAD软件连接状态
|
||
- 模型分析进度
|
||
- 导出操作状态
|
||
- 系统资源监控
|
||
|
||
**文件路径管理**: 正确处理Windows文件路径,用于模型文件操作和导出目标。
|
||
|
||
### 数据流模式
|
||
|
||
**分析工作流**:
|
||
1. 用户选择CAD软件并连接
|
||
2. 触发模型分析 → 调用相应CAD服务API
|
||
3. 处理结果并存储到Pinia状态
|
||
4. UI组件响应式显示分析数据
|
||
5. 用户可基于分析结果执行操作(删除、优化、导出)
|
||
|
||
**导出工作流**:
|
||
1. 用户配置导出参数(格式、路径、选项)
|
||
2. 验证CAD软件连接和当前模型
|
||
3. 使用软件特定参数调用导出端点API
|
||
4. 进度监控和结果反馈
|
||
|
||
### 核心业务逻辑
|
||
|
||
**安全分析**: 系统在允许模型修改前执行安全评估:
|
||
- 标记为"禁止删除"的组件必须受到保护
|
||
- 层级分析包含每个组件的安全级别
|
||
- UI必须清楚指示安全与不安全的操作
|
||
|
||
**多CAD支持**: 每个CAD系统具有不同能力:
|
||
- **Creo**: 支持参数化特征、装配层级、高级几何分析
|
||
- **Revit**: 专注BIM,支持IFC导出、建筑信息建模
|
||
- **PDMS**: 工业厂房设计、管道系统
|
||
- 导出格式和可用操作因CAD软件而异
|
||
|
||
### 组件集成指南
|
||
|
||
**CAD模块结构**: 每个CAD系统应有专用Vue组件:
|
||
```
|
||
components/
|
||
├── cad-modules/
|
||
│ ├── CreoModule.vue # Creo专用功能
|
||
│ ├── RevitModule.vue # Revit专用功能
|
||
│ ├── PDMSModule.vue # PDMS专用功能
|
||
│ └── CommonCAD.vue # 共享CAD功能
|
||
```
|
||
|
||
**状态同步**: 维持实时同步:
|
||
- 前端连接状态与实际CAD软件状态
|
||
- 分析结果与CAD软件中的当前模型状态
|
||
- 导出操作与文件系统状态
|
||
|
||
### 开发注意事项
|
||
|
||
**API错误处理**: 原系统对CAD连接失败有完善的错误处理。实现类似模式并提供适当的用户反馈:
|
||
- 连接超时
|
||
- CAD软件未运行
|
||
- 模型文件访问问题
|
||
- 导出路径权限问题
|
||
|
||
**调试支持**: 包含广泛的调试功能,原系统有详细的控制台日志用于CAD集成问题排查。
|
||
|
||
**资源监控**: 实现系统资源监控(CPU、内存使用),因为CAD操作可能占用大量资源。
|
||
|
||
## 重构策略
|
||
|
||
**重要说明**: 这是从原系统(位于 `D:\App\vue\Miany`)的完全重构,原有代码质量不佳,无法直接使用。
|
||
|
||
**重构原则**:
|
||
- **仅复制UI设计**: 参考原系统的界面布局、样式和交互设计
|
||
- **重新编写所有代码**: 不迁移任何原有JavaScript代码或业务逻辑
|
||
- **重新设计架构**: 使用Vue 3 + Pinia构建全新的现代化架构
|
||
- **重新实现API集成**: 基于API文档重新设计和实现所有后端调用
|
||
- **重新构建状态管理**: 完全重新设计应用状态和数据流
|
||
|
||
**UI参考指南**:
|
||
从原系统复制以下UI元素的视觉设计:
|
||
- 顶部导航栏布局和样式
|
||
- 左侧CAD软件选择面板
|
||
- 中央工作区域的模块切换界面
|
||
- 右侧管理面板的标签页设计
|
||
- 底部状态栏的布局
|
||
- 模型查看器界面
|
||
- 层级分析结果的树形展示
|
||
- 导出配置表单界面
|
||
|
||
**不要复制的内容**:
|
||
- 任何JavaScript代码逻辑
|
||
- 状态管理实现
|
||
- API调用代码
|
||
- 事件处理逻辑
|
||
- DOM操作代码 |