# 5.2.XX管理模块设计说明

## 5.2.1.XX设计说明。

### 5.2.1.1.模块描述。

本模块对应 `1.3.2【模型分析-具备多重模型分析可视化呈现】`，用于将模型分析结果进行结构化展示与批量操作，覆盖：

1. 具体算法分析结果统计（安全删除/建议删除/必须保留）。
2. 特征分析详情展示（特征名称、特征类型、建议操作步骤）。
3. 分类操作（建议删除/必须保留）与多选全选批量执行。
4. 分析报告导出。

执行机制：

1. 分析计算由 CAD 插件执行。
2. 前端负责结果可视化、交互选择与批量动作调用。

### ·5.2.1.2.功能·。

1. 分类统计展示（已实现核心）：
   - 薄壳化结果按 `safeDeletions / suggestedDeletions / preserveList` 分类。
   - 页面支持分类筛选与数量统计。
2. 特征分析详情展示：
   - 已实现：零件名称、路径、复杂度指标、特征数、风险建议等。
   - 补充“特征类型（孔/圆角/曲面等）”和“建议操作步骤（删除/保留原因链）”。
3. 分类操作与批量执行（已实现核心）：
   - 支持多选、全选、清空。
   - 支持对选中项执行批量删除（调用插件删除接口）。
4. 导出报告：
   - 层级分析页支持导出结果 JSON。
   - 统一导出薄壳化/复杂度/层级的综合分析报告。

### 5.2.1.3.性能。

1. 分类筛选在前端内存数据上执行，响应快。
2. 大列表采用分页（薄壳化页）降低渲染压力。
3. 批量操作按选中路径集合一次请求提交，减少接口调用次数。
4. 导出报告采用本地 Blob 生成下载，避免额外网络开销。

### 5.2.1.4.输入输出项·。

#### 1.字段输入输出。

输入字段（当前）：

1. `safeDeletions[]`
2. `suggestedDeletions[]`
3. `preserveList[]`
4. `part.name / part.partPath / part.reason / part.confidence`
5. `complexity parts`：`part_name / part_path / feature_count / complexity_score / volume`
6. `selectedParts`（前端选中集合）

输出字段（当前）：

1. 分类统计数量
2. 筛选后的展示列表
3. 批量操作路径数组 `component_paths[]`
4. 删除执行结果（success/fail）

输出字段：

1. `feature_type`
2. `recommended_steps[]`
3. `operation_trace`（决策解释）
4. `report_meta`（分析时间、算法版本、模型标识）

#### 2.界面交互输入输出。

输入交互：

1. 选择分类标签（安全删除/建议删除/必须保留）。
2. 勾选条目、全选、清空、批量执行。
3. 点击导出报告。

输出交互：

1. 表格/卡片实时刷新。
2. 选中数量实时反馈。
3. 批量删除确认弹窗与执行结果提示。
4. 生成并下载分析报告文件。

### 5.2.1.5.算法

分类统计算法：

1. 合并三类集合并添加统一标记 `deletion_recommendation`。
2. 根据当前筛选条件生成 `filteredParts`。
3. 输出总量、分类量、分页数据。

批量执行算法：

1. 从 `selectedParts` 映射到组件路径数组。
2. 调用 `deleteComponentsByPath(componentPaths)`。
3. 成功后更新“已删除集合”并刷新可见列表。

特征建议步骤生成算法：

1. 提取每个零件的特征向量（孔、圆角、曲面、复杂度、依赖关系）。
2. 依据规则库映射为“删除/保留”候选动作。
3. 输出结构化步骤：
   - `step1: 判定特征类型`
   - `step2: 评估风险等级`
   - `step3: 给出建议动作`
4. 形成可视化解释链供用户审阅。

### 5.2.1.6.流程逻辑

1. 用户发起分析（薄壳化/层级/复杂度）。
2. 系统接收插件结果并进行分类整理。
3. 页面展示统计、表格、分类标签与操作区。
4. 用户筛选并执行多选/全选批量操作。
5. 用户可导出本次分析详细报告。
6. 后续可将处理结果进入导出/查看链路。

### ·5.2.1.7.接口。

当前接口：

1. `creoApi.startShellAnalysis()`
2. `creoApi.startHierarchyAnalysis()`
3. `creoApi.startGeometryComplexityAnalysis()`
4. `creoApi.deleteComponentsByPath(componentPaths, forceDelete?)`

前端导出接口（当前）：

1. `HierarchyAnalysisResult.exportResults()`（本地生成 JSON 下载）

业务接口：

1. `creoApi.exportAnalysisReport(payload)`：统一导出综合报告（可选 PDF/JSON）。
2. `creoApi.getFeatureDetails(componentPath)`：返回特征名称/类型/建议步骤。

### 5.2.1.8.注释设计

建议注释要点：

1. 分类口径说明：安全删除/建议删除/必须保留的判定标准。
2. 批量操作安全说明：删除不可逆，必须二次确认。
3. 特征建议步骤说明：解释“为何建议删除/保留”。
4. 报告导出字段说明：确保报告可追溯（时间、算法版本、输入模型）。

### 5.2.1.9.数据结构。

分类条目结构（示意）：

```
{
  "id": 101,
  "name": "Part_A",
  "partPath": "top.asm/Part_A.prt",
  "reason": "内部非关键支撑件",
  "confidence": 0.86,
  "deletion_recommendation": "recommended_delete"
}
```

特征详情结构：

```
{
  "feature_name": "Fillet_23",
  "feature_type": "fillet",
  "recommended_action": "must_keep",
  "recommended_steps": [
    "识别为外轮廓关键圆角",
    "评估删除后曲面连续性风险高",
    "标记为必须保留"
  ]
}
```

导出报告结构：

```
{
  "report_meta": {
    "analysis_time": "2026-02-26T11:20:00",
    "software": "creo",
    "module": "multi-analysis-visualization"
  },
  "statistics": {},
  "classification_results": {
    "safe_delete": [],
    "recommended_delete": [],
    "must_keep": []
  },
  "feature_details": [],
  "operation_records": []
}
```
