# 未开发功能补充清单（对照当前项目进度）

## 1. 说明

本清单基于已编写的功能点文档（功能点1~9）与当前代码实现对照形成，列出尚未开发或未完整开发的功能，用于后续补充实现与验收闭环。

## 2. 未开发功能明细

### 2.1 功能点2：多 CAD 转中性格式

未开发项：

1. PDMS 中性格式导出接口链路未落地。
2. Revit 到 STP 的转换链路未落地（当前为 IFC 导出）。

功能要求：

1. 支持 PDMS/REVIT/CREO 统一进入中性格式导出流程。
2. 支持 STP 或其他中性格式的参数化导出。

技术规格：

1. 插件路由：按 `currentCAD.id` 映射执行器。
2. 请求结构：`software_type + format_type + export_path + options`。
3. 返回结构：`success/data/error + outputPath`。
4. 错误处理：插件未连接、格式不支持、导出失败。

### 2.2 功能点5：薄壳化与层级多重分析

未开发项：

1. 分析预估时间（`estimated_time_seconds`）未落地。
2. 分析步骤可视化（阶段进度条）未落地。
3. 层级模糊查询与归类未落地。
4. 多算法赋权融合与最优方案输出未落地。

功能要求：

1. 分析前给预计耗时，分析中给步骤进度，分析后给最优建议。
2. 支持层级名称/路径模糊检索与归类。
3. 支持多算法评分并给综合决策。

技术规格：

1. 步骤流：准备模型 -> 特征提取 -> 多算法计算 -> 融合决策 -> 输出。
2. 评分公式：`score = w1*A1 + w2*A2 + w3*A3`。
3. 阈值决策：安全删除/建议确认/必须保留。
4. 新增接口：`getAnalysisEstimate / getAnalysisProgress / searchHierarchyFuzzy / getFusionDecision`。

### 2.3 功能点6：多重分析可视化呈现

未开发项：

1. 特征详情“特征名称+特征类型+建议步骤”完整展示未落地。
2. 薄壳化与复杂度分析结果的统一报告导出未落地（当前层级分析已支持导出）。

功能要求：

1. 提供特征级可解释结果展示。
2. 支持统一导出分析详细报告（多模块合并）。

技术规格：

1. 详情字段：`feature_name / feature_type / recommended_action / recommended_steps[]`。
2. 报告结构：`report_meta + statistics + classification_results + feature_details + operation_records`。
3. 导出格式：JSON（可扩展 PDF）。

### 2.4 功能点7：操作执行批处理功能

未开发项：

1. 多模型批处理任务执行未落地（代码中已有 TODO 占位）。
2. 任务创建向导未落地。
3. 批处理任务历史列表与详情未落地。
4. 批处理任务调度与优先级未落地。

功能要求：

1. 支持多模型按策略批量执行。
2. 支持向导化建任务、历史追溯、调度优先级。

技术规格：

1. 任务模型：`Batch -> Job -> Step`。
2. 核心字段：`batch_id/model_paths/strategy/schedule_at/priority/max_concurrency/status`。
3. 控制接口：`create/pause/resume/cancel/retry/query`。
4. 调度规则：优先级 + 排队时长 + 重试惩罚综合排序。

### 2.5 功能点9：执行操作报告日志生成

未开发项：

1. 报告型日志（带 `report_id/summary/result_metrics/error_info`）未形成独立标准化结构。
2. 从日志回溯到任务结果的报告关联链路未落地。

功能要求：

1. 每次执行操作生成结构化报告日志。
2. 支持报告日志检索、导出与结果追溯。

技术规格：

1. 报告字段：`report_id + operation + status + duration + summary + result_metrics + error_info`。
2. 关联字段：`task_id/batch_id/model_id`。
3. 导出规则：按筛选条件输出报告快照。

## 3. 已基本具备能力（用于边界说明）

1. 文件管理下载与批量重命名能力已具备。
2. 模型查看与 3D 交互（旋转/缩放/选择）已具备。
3. 操作日志查询、统计、导出基础能力已具备。
4. Revit/PDMS 轻量化结果对比展示已具备。

## 4. 补充开发建议顺序

1. 先补“功能点7 批处理主链路”（影响范围最大）。
2. 再补“功能点5 多算法赋权 + 步骤可视化”（核心分析竞争力）。
3. 再补“功能点6 特征详情与统一报告导出”（提升可解释性与交付能力）。
4. 最后补“功能点9 报告日志标准化与追溯”（完善审计闭环）。

## 5. 补充：后端需要开发的REST API接口清单（基于前端最终设计规范）

### 5.1 批处理调度模块 (Batch Job API)
1. **创建批量任务** `POST /api/v1/batch-jobs`
   - **参数**：`strategy` (执行策略), `exportPath` (导出路径), `priority` (优先级), `maxConcurrency` (并发), `scheduleAt` (调度时间), `modelFiles` (模型文件数组)。
   - **作用**：将多个模型文件依据策略放入处理队列，并返回分配的 `batchId`。
2. **查询批处理任务列表** `GET /api/v1/batch-jobs`
   - **参数**：`status` (状态过滤：all/running/queued/completed)。
   - **返回**：包含 `batchId, strategy, priority, progress, status, totalCount, completedCount` 等字段的任务列表。
3. **控制批处理任务状态**
   - **暂停** `POST /api/v1/batch-jobs/{batchId}/pause`
   - **恢复** `POST /api/v1/batch-jobs/{batchId}/resume`
   - **取消** `POST /api/v1/batch-jobs/{batchId}/cancel`

### 5.2 报告日志模块 (Report Log API)
1. **查询分析日志列表** `GET /api/v1/reports`
   - **参数**：`searchQuery` (模糊搜索ID或操作名), 分页参数。
   - **返回**：日志基本信息列表（含 `reportId, operation, status, duration, createdAt`）。
2. **获取单条报告详情** `GET /api/v1/reports/{reportId}`
   - **返回**：标准聚合结构，包含 `reportMeta`, `resultMetrics` (分析模型数等), `featureDetails` (含 `featureName, featureType, recommendedAction, recommendedSteps` 数组), 以及 `errorInfo`。
3. **报告文件导出** `GET /api/v1/reports/{reportId}/export`
   - **参数**：`format` (例如 json 或 pdf)。
   - **返回**：生成报告的文件下载流或相对下载地址。

### 5.3 多算法分析与数据融合决策模块 (Multi-Algorithm Fusion API)
1. **启动综合多算法计算** `POST /api/v1/analysis/multi-fusion-start`
   - **参数**：`weights` (体积、面片、拓扑等维度权重分数，例如 `v, a, t`），可选预估耗时查询。
   - **返回**：异步任务ID `taskId` 和初始化预估时间 `estimated_time_seconds`。
2. **获取分析进度及详细步骤** `GET /api/v1/analysis/{taskId}/progress`
   - **返回**：分析当前进度(百分比)，步骤阶段名称，即时控制台日志数组(用于前端步骤条及滚动日志展示)。
3. **获取融合决策打分结果** `GET /api/v1/analysis/{taskId}/result`
   - **参数**：`searchName` (支持层级特征名模糊查询)。
   - **返回**：带阈值建议的决策列表(返回特征项独立的 `scoreV, scoreA, scoreT` 及折算的最后总分和决策类型 `安全删除`/`建议确认`/`必须保留`)。

### 5.4 跨平台CAD中性导出接口
1. **PDMS 中性文件导出** `POST /api/v1/cad/pdms/export-neutral`
   - **参数**：`formatType, exportPath` 等。
2. **Revit 转 STP 导出流程** `POST /api/v1/cad/revit/export-stp`
   - **参数**：相关处理选项和目标路径。
