Files
CN_Tool_client/doc/前端业务裁剪与清除清单.md
2026-04-13 17:32:58 +08:00

284 lines
8.4 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.

# 前端业务裁剪与清除清单
## 1. 目的
本文基于 `doc/项目基础功能保留与业务裁剪方案.md`,整理当前 `frontend` 目录下前端页面、接口、状态管理、入口配置中的保留项、清除项和联动调整项,为后续前端裁剪提供执行依据。
## 2. 裁剪原则
- 保留平台基础能力对应的前端页面与接口。
- 移除检测业务、设备业务、报告业务相关前端页面与接口。
- 保留通用请求能力、登录鉴权能力、菜单权限能力。
- 通讯底层能力如 WebSocket、SSE 只保留通用连接能力,不保留检测业务语义。
- 对“名称看起来是平台功能,但内容实际属于检测业务”的页面,按实际功能裁剪,不按目录名裁剪。
## 3. 建议保留的前端能力
### 3.1 登录与权限管理
建议保留:
- `frontend/src/views/login/index.vue`
- `frontend/src/views/login/components/LoginForm.vue`
- `frontend/src/views/authority/user/index.vue`
- `frontend/src/views/authority/role/index.vue`
- `frontend/src/views/authority/resource/index.vue`
- `frontend/src/api/user`
- `frontend/src/stores/modules/user.ts`
- `frontend/src/stores/modules/auth.ts`
### 3.2 平台基础管理
建议保留:
- `frontend/src/views/log/index.vue`
- `frontend/src/views/system/dictionary/dictType/index.vue`
- `frontend/src/views/system/dictionary/dictData/index.vue`
- `frontend/src/views/system/dictionary/dictTree/index.vue`
- `frontend/src/api/system/log`
- `frontend/src/api/system/dictionary`
- `frontend/src/stores/modules/dict.ts`
### 3.3 通用请求与通讯底层
建议保留:
- `frontend/src/api/index.ts`
- `frontend/src/utils/webSocketClient.ts`
说明:
- `api/index.ts` 中的 Axios 封装、Token 处理、SSE 基础能力可保留。
- `webSocketClient.ts` 可保留为通用连接客户端,但后续需要去掉与“预检、检测、对比检测”相关的业务语义。
## 4. 建议清除的前端页面
### 4.1 首页与检测入口
建议清除整个 `home` 模块:
- `frontend/src/views/home`
清除原因:
- 当前首页并非平台门户,而是检测模式入口、检测统计总览、设备检测、报告生成、归档、数据操作入口。
- 与后端文档中“删除检测业务域”的目标一致。
### 4.2 检测计划模块
建议清除整个 `plan` 模块:
- `frontend/src/views/plan`
清除原因:
- 对应后端明确下线的检测计划管理能力。
- 页面中包含预检、自动检测、统计分析、子计划管理等完整检测业务流程。
### 4.3 设备与检测资源模块
建议清除整个 `machine` 模块:
- `frontend/src/views/machine`
包含但不限于:
- 被检设备
- 标准设备
- 检测源
- 控制源
- 检测脚本
- 误差体系
- 设备类型
- ICD
### 4.4 报告模板与业务字典页面
建议清除:
- `frontend/src/views/system/template/index.vue`
- `frontend/src/views/system/dictionary/dictPq/index.vue`
清除原因:
- 报告模板属于报告业务能力。
- `dictPq` 属于电能质量检测业务字典,不属于通用平台字典。
## 5. 建议清除的接口层
建议清除以下业务接口目录:
- `frontend/src/api/plan`
- `frontend/src/api/device`
- `frontend/src/api/home`
- `frontend/src/api/result`
- `frontend/src/api/check`
- `frontend/src/api/socket/socket.ts`
说明:
- `api/socket/socket.ts` 虽然名称包含 `socket`,但当前封装的是检测业务动作,如预检、恢复检测、对比检测、导出对齐数据,不属于纯通讯底层接口。
## 6. 建议清除的状态管理
建议清除:
- `frontend/src/stores/modules/check.ts`
清除原因:
- 该 store 存储的是检测设备、检测计划、检测项、复检方式、通道连线等检测运行态数据。
- 与平台保留能力无关。
## 7. 条件保留或待确认项
### 7.1 激活能力
可选保留:
- `frontend/src/views/system/versionRegister/index.vue`
- `frontend/src/api/activate/index.ts`
说明:
- 后端文档中 `activate-tool` 被列为可选保留。
- 如果项目后续仍保留授权、激活码、许可文件能力,则前端激活相关页面和接口可以保留。
- 如果不再保留激活能力,应一并清理。
### 7.2 名称为系统配置但内容偏检测业务的页面
建议纳入删除候选:
- `frontend/src/views/system/base/index.vue`
- `frontend/src/api/system/base/index.ts`
- `frontend/src/api/system/versionRegister/index.ts`
原因:
- 当前页面内容实际是检测配置、有效数据配置、模式相关配置。
- 不属于纯平台基础配置页面。
## 8. 必须联动调整的入口与配置
### 8.1 首页默认路由
需要调整:
- `frontend/src/config/index.ts`
当前问题:
- `HOME_URL` 当前指向 `/home/index`
- 如果 `home` 模块删除,必须同步修改默认首页。
### 8.2 登录后跳转逻辑
需要调整:
- `frontend/src/views/login/components/LoginForm.vue`
当前问题:
- 登录后默认跳转 `HOME_URL`
- 删除 `home` 后必须同步修改跳转目标。
### 8.3 模式切换与菜单显示逻辑
需要调整:
- `frontend/src/stores/modules/auth.ts`
- `frontend/src/stores/modules/mode.ts`
当前问题:
- 当前逻辑围绕“模拟式、数字式、比对式、场景切换、进入检测后显示菜单”设计。
- 如果检测业务整体下线,这套逻辑需要一起收缩或重构。
### 8.4 动态路由与菜单数据
需要联动确认:
- `frontend/src/routers/modules/dynamicRouter.ts`
说明:
- 当前动态路由来源于后端菜单配置。
- 如果后端未同步清理业务菜单,前端即使删除页面,也仍可能收到失效路由配置。
## 9. 当前前端裁剪结论
建议前端最终保留的主要内容:
- 登录页
- 用户管理
- 角色管理
- 菜单/资源管理
- 日志管理
- 通用字典管理
- 通用请求封装
- 通用 WebSocket/SSE 底层能力
- 可选的激活能力
建议前端最终清除的主要内容:
- 首页检测门户
- 检测计划
- 被检设备
- 标准设备
- 检测源
- 控制源
- 检测脚本
- 检测结果
- 报告模板
- 电能质量业务字典
- 检测运行态 store
- 检测业务接口层
## 10. 推荐执行顺序
1. 先确认激活能力是否保留。
2. 再确定新的默认首页与登录后跳转页。
3. 删除 `home / plan / machine` 页面模块。
4. 删除对应业务接口目录与检测业务 store。
5. 调整 `auth / mode / dynamicRouter / HOME_URL` 等入口逻辑。
6. 最后联动清理后端菜单、权限、字典和动态路由来源。
## 11. 当前执行进度2026-04-08
### 11.1 已完成
- `frontend/src/views/home` 已删除
- `frontend/src/views/plan` 已删除
- `frontend/src/views/machine` 已删除
- `frontend/src/views/system/template/index.vue` 已删除
- `frontend/src/views/system/dictionary/dictPq/index.vue` 已删除
- `frontend/src/views/system/base/index.vue` 已删除
- `frontend/src/api/plan` 已删除
- `frontend/src/api/device` 已删除
- `frontend/src/api/home` 已删除
- `frontend/src/api/result` 已删除
- `frontend/src/api/check` 已删除
- `frontend/src/stores/modules/check.ts` 已删除
- `frontend/src/config/index.ts``HOME_URL` 已调整为 `/authority/user`
- `frontend/src/views/login/components/LoginForm.vue` 登录后已跳转新的平台首页
- `frontend/src/stores/modules/auth.ts` 已增加业务菜单过滤逻辑,用于屏蔽已下线页面对应菜单
- `frontend/src/api/user/login/index.ts` 中残留的检测业务接口定义已删除
- `frontend/src/stores/modules/mode.ts` 已删除,退出登录时不再清理检测模式/场景状态
- `frontend/src/components/ImportExcel` 已删除
- `frontend/src/components/ImportZip` 已删除
- `frontend/src/views/authority/resource/index.vue` 中误留的业务权限标识已修正
- `frontend/src/api/system/dictionary/dictData.ts` 业务静态字典样例已删除
- `frontend/src/api/system/log/logData.ts` 业务日志样例已删除
### 11.2 进行中
- 后端菜单、权限、字典与接口若仍保留旧业务数据,前端仍需要依赖 `auth.ts` 中的过滤逻辑进行保护
- 构建配置、全局类型、类型导入规范等历史工程问题仍存在,但不属于本轮业务裁剪直接目标
### 11.3 当前判断
- 当前前端裁剪已完成主体删除工作
- 当前已完成一轮业务语义残留和无引用旧代码清理
- 当前重点已转向联动验证和历史工程问题收尾
- 在后端菜单与接口未同步彻底下线前,前端仍需保留动态菜单过滤作为保护措施