diff --git a/docs/project_context.md b/docs/project_context.md index 794b37e..0f85566 100644 --- a/docs/project_context.md +++ b/docs/project_context.md @@ -1,5 +1,14 @@ # 项目上下文记录 +## 2026-06-26:新增工具发布平台投稿文档(docs/upload) + +- 按工具平台投稿模板新增 `docs/upload/` 三份文档:`工具说明书.docx`、`测试报告.docx`、`工具详细介绍.md`。 +- Word 文档用 python-docx 生成(一次性脚本写在 tmp/docs 下,生成后已删除,依赖装在 .venv,未写入 requirements.txt)。设置了中文字体(微软雅黑)、标题/章节层级、蓝色表头底纹的表格样式。 + - 工具说明书:介绍(名称/版本 3.0.0/作者 NIXEVOL)、安装与配置、使用指南(6 模块)、常见问题(含桌面版闪退=9081 占用、默认账号 root/Capacity 等)。 + - 测试报告:介绍/测试目的/测试环境/测试用例/测试结果/改进规划/性能评估/总结;测试人员与联系信息留「(请填写)」占位,测试日期 2026-06-26。 +- 内容均以实际项目为准;本机无 LibreOffice,无法自动渲染 PNG,改用 python-docx 回读校验结构(章节数、表格行列、表头正确)。 +- 提示:`.docx`/`.md` 不在 .gitignore 忽略范围,会随仓库提交。 + ## 2026-06-26:新增使用说明 USAGE.md + 文档去 Metrix - 新增根目录 `USAGE.md`(Web 端使用说明):登录(`root`/`Capacity`)、整体流程与数据处理管线 Mermaid 图、准备工作/各功能页/系统设置标签页/注意事项均用表格。内容以实际代码为准:处理阶段取 `FileWorkflow.vue` 的 `stageLabels`(远程下载/更新 CellData/授权校验/解压/转换 Excel/导入/运行脚本);系统设置 6 个标签(数据库、远程数据源、自动调度、规则映射、修改密码,及仅 Metrix 启用时的「数据源/仓库」);数据处理含容量数据 + CellData 两区、本地上传 vs 远程下载;任务锁串行、文件名时间戳、每目录 7 天、授权按数据日期等注意事项。`README.md` 增加指向 USAGE.md 的链接。 diff --git a/docs/upload/工具详细介绍.md b/docs/upload/工具详细介绍.md new file mode 100644 index 0000000..6a00dfc --- /dev/null +++ b/docs/upload/工具详细介绍.md @@ -0,0 +1,80 @@ +# CapacityReport 容量报表处理系统 - 工具详细介绍 + +## 一、背景介绍 + +无线网络每周都会产出大量的容量性能数据,覆盖 4G、5G 各频段的海量小区。这些数据通常以 Excel / CSV / ZIP 的形式分散在 FTP/SFTP 服务器的多级目录中,单次处理动辄数百万行。 + +过去这类数据主要依靠人工用 Excel 逐周下载、汇总、清洗、套公式计算,再人工筛选高负荷小区。这种方式存在明显痛点: + +- 数据量大,Excel 打开慢、易卡死,公式计算容易出错。 +- 字段名称、表头格式每期可能有差异,人工对齐字段耗时耗力。 +- 高负荷小区的判定标准依赖人工经验,缺乏统一、可复用的规则。 +- 处理过程不可追溯,出了问题难以复盘。 + +CapacityReport 正是为了把这套"下载 - 清洗 - 入库 - 计算 - 分析"的流程自动化、标准化而开发的工具。 + +## 二、整体概述 + +CapacityReport 是一套自包含的容量报表数据处理系统,覆盖从数据获取到结果分析的完整链路: + +- **数据获取**:支持本地上传,也支持从 FTP/SFTP 远程目录自动下载,并可按自然周自动调度。 +- **数据处理**:自动解压、Excel/CSV 转换、按字段映射清洗,批量入库到 MySQL。 +- **报表计算**:执行可在线编辑的业务 SQL 脚本,生成 4G/5G 容量结果表。 +- **结果分析**:内置容量看板,对高负荷小区做可视化分析并给出优化建议。 +- **数据管理**:在线浏览、编辑、导入导出数据库表。 + +系统提供三种发布形态,适配不同部署环境:浏览器访问的服务端版、免安装数据库的桌面版(Tauri)、以及容器化的 Docker 版。 + +## 三、工具亮点 + +**业务闭环,一站式完成。** 从远程下载、清洗入库到报表计算、可视化分析,全流程在一个工具内完成,无需在多个 Excel、脚本、数据库客户端之间来回切换。 + +**面向大数据量优化。** 处理链路针对 4G/5G 各数百万行的数据规模做了优化(数值清洗、批量入库、SQL 计算),相比人工 Excel 处理更快、更稳,避免卡死和公式出错。 + +**配置驱动,适应数据变化。** 字段映射、Sheet 过滤、目录到数据表的映射均可在界面上配置,源数据表头有调整时无需改代码,配置即可适配。 + +**高负荷分析智能化。** 容量看板自动按统一规则判定高负荷、利用率预警、高流量预警等问题小区,并给出优化建议,把依赖人工经验的判断沉淀为可复用的规则。 + +**自动调度,省人力。** 可按目标自然周自动检查远程数据是否就绪,就绪后自动下载并处理,减少每周的人工操作。 + +**可追溯、可在线维护。** 每次处理都有完整的处理历史与分级日志,原始数据可回溯下载;业务 SQL 脚本支持在线编辑、保存和执行。 + +**离线友好。** 运行期无需外网,前端资源、桌面端 WebView 均可离线部署,适合内网环境;桌面版安装包内置 WebView2 离线安装器。 + +## 四、功能设计 + +系统主界面左侧导航分为 6 个功能模块: + +- **数据处理**:本地上传或远程下载容量数据 / CellData 数据,自动清洗入库并执行报表 SQL,实时显示处理阶段与日志。 +- **容量看板**:4G/5G 高负荷小区分析大屏,包含汇总指标、多维图表、问题小区清单(支持筛选、搜索、导出)以及单小区详情和优化建议。 +- **处理历史**:查看每次处理任务的状态、分级日志,浏览并下载历史原始数据。 +- **数据管理**:浏览、编辑、删除数据库表数据,支持 CSV/XLSX 导入导出、模板下载和在线执行 SQL,可在主数据库与 CellData 数据库间切换。 +- **脚本编辑**:在线编辑并执行业务 SQL(容量报表脚本 / CellData 脚本),带 SQL 高亮,保存前自动备份。 +- **系统设置**:配置数据库连接、远程数据源、自动调度、字段映射规则等,并提供配置导入导出与修改密码。 + +配套使用的外部依赖: + +- 一个 FTP/SFTP 数据源(存放每周容量报表数据,远程下载时使用)。 +- 一个 MySQL 8.0+ 数据库(作为数据仓库)。 + +## 五、应用场景 + +- **每周容量报表例行处理**:自动从远程目录获取本周数据,清洗入库并生成 4G/5G 结果表,替代人工 Excel 处理。 +- **高负荷小区排查**:通过容量看板快速定位高负荷、利用率预警、高流量预警的小区,并参考优化建议进行网络优化。 +- **历史数据回溯**:在处理历史中查看任意一期的处理日志与原始数据,便于复盘和问题定位。 +- **数据临时查询与维护**:在数据管理中直接查看、修正、导出库表数据,无需额外的数据库客户端。 +- **业务规则调整**:当报表计算逻辑或字段映射需要调整时,在脚本编辑和系统设置中在线修改即可生效。 + +## 六、技术栈与发布形态 + +- **后端**:Python + FastAPI + Uvicorn +- **前端**:Vue 3 + TypeScript + Vite + Naive UI +- **桌面端**:Tauri 2(Rust)+ Python sidecar +- **数据库**:MySQL 8.0+ +- **数据处理与可视化**:Pandas、OpenPyXL、ECharts、Monaco Editor + +发布形态: + +- **服务端便携版**:解压即用,浏览器访问,适合服务器部署。 +- **桌面版**:Tauri 打包的安装程序,双击即用,适合个人电脑。 +- **Docker 版**:容器镜像 + Compose,适合容器化部署。 diff --git a/docs/upload/工具说明书.docx b/docs/upload/工具说明书.docx new file mode 100644 index 0000000..3e21b93 Binary files /dev/null and b/docs/upload/工具说明书.docx differ diff --git a/docs/upload/测试报告.docx b/docs/upload/测试报告.docx new file mode 100644 index 0000000..d43a742 Binary files /dev/null and b/docs/upload/测试报告.docx differ