5.3 KiB
5.3 KiB
系统使用统计前后端落地文件清单
1. 本次提交信息
后端
- 仓库:
leaudit-platform-backend - 分支:
main - 提交:
0fec8ba - 提交信息:
fix(rbac): expose usage stats menu in settings
前端
- 仓库:
legal-platform-frontend - 分支:
wren-dev - 提交:
09ed1d7 - 提交信息:
feat(usage-stats): add system usage statistics page
2. 后端文件清单
2.1 fastapi_modules/fastapi_leaudit/services/impl/rbacServiceImpl.py
本次对应该文件的职责是把“系统使用统计”正式接入系统设置菜单和 RBAC 路由兼容层。
已完成内容:
- 把
/usage-stats加入最小可见路由前缀列表 - 在系统设置兼容菜单蓝图下新增子菜单:
- 路径:
/usage-stats - 标题:
系统使用统计 - 图标:
ri-bar-chart-box-line
- 路径:
- 给
/usage-stats补充权限前缀映射:usage_stats:
落地效果:
- 后端返回的系统设置菜单中会包含“系统使用统计”
- 前端在系统设置模式下能够根据 RBAC 路由正常显示该菜单
3. 前端文件清单
3.1 legal-platform-frontend/app/(audit)/usage-stats/page.tsx
页面路由入口文件。
已完成内容:
- 新增
/usage-stats页面入口 - 挂载
UsageStatsClient
3.2 legal-platform-frontend/app/(audit)/usage-stats/UsageStatsClient.tsx
系统使用统计页面主实现文件,也是本次前端改动的核心文件。
已完成内容:
- 总览区
- 登录人数
- 活跃用户数
- 主文档上传数
- 评查发起次数
- 筛选区
- 统计时间
- 地区
- 地区口径
- 趋势指标
- 趋势粒度
- 趋势区
- 支持折线图 / 面积图 / 柱状图切换
- 支持 hover 提示框,展示“时间 + 次数”
- 支持时间轴补齐,缺数据月份/周/日按
0显示 - 支持图表内部横向滚动
- 支持“时间窗口”滑条控制图表内部滚动
- 列表区
- 按部门查看使用成效
- 按地区查看使用成效
- 支持分页
- 支持导出当前页 CSV
- 联动修复
- 统计时间、地区、地区口径筛选会联动趋势、部门、地区区块
- 地区列表改为前端完整拉取后再分页,避免只取后端第一页导致数据不全
3.3 legal-platform-frontend/lib/api/legacy/usage-stats/usage-stats.ts
系统使用统计接口封装文件。
已完成内容:
- 新增类型定义:
UsageStatsOverviewUsageStatsTrendUsageStatsDepartmentPageUsageStatsAreaPage- 以及对应 item 类型
- 新增接口封装:
getUsageStatsOverviewgetUsageStatsTrendsgetUsageStatsDepartmentsgetUsageStatsAreas- 预留了
getUsageStatsUsers - 预留了
getUsageStatsDetails
- 统一封装 usage-stats 响应解包逻辑
3.4 legal-platform-frontend/styles/pages/usage-stats.css
系统使用统计页面专属样式文件。
已完成内容:
- 页面头部、总览卡片、表格卡片样式
- 趋势图专属样式:
- 折线/面积/柱状图视觉风格
- hover 提示框
- 图表切换按钮
- 时间窗口滑条
- 卡片风格统一到现有系统设置页视觉语言
- 多轮修复图表导致整页横向滚动的问题
3.5 legal-platform-frontend/components/layout/Sidebar.tsx
系统设置菜单识别与侧边栏渲染逻辑。
已完成内容:
- 把
/usage-stats纳入系统设置路径识别 - 系统设置模式下允许显示
/usage-stats - 非系统设置模式下继续隐藏设置类菜单
- 修复系统设置模式路由切换时的依赖问题
3.6 legal-platform-frontend/styles/main.css
页面主布局样式文件。
已完成内容:
- 对
.main-content增加:min-width: 0overflow-x: hidden
- 对
.content-container增加:min-width: 0overflow-x: hidden
落地效果:
- 防止趋势图等宽内容把整个页面撑出横向滚动
- 确保图表横向滚动只发生在内部视口,而不是整页
4. 本次页面能力范围
本次已落地的系统使用统计页面能力为:
- 总览
- 总览趋势
- 按部门查看使用成效
- 按地区查看使用成效
本次未在页面中展开,但接口层已经预留的能力包括:
- 按用户查看使用成效
- 使用明细明细流
5. 相关联动说明
菜单显示链路
系统使用统计菜单显示依赖以下链路全部打通:
- 后端 RBAC 路由兼容层返回
/usage-stats - 前端侧边栏把
/usage-stats识别为系统设置子页面 - 当前账号具备
usage_stats:*权限
图表与布局修复链路
为解决“整页横向滚动”“时间窗口拖了图不动”等问题,本次实际同时改动了:
- 趋势图 SVG 实际宽度控制
- 趋势图内部滚动视口
- 时间窗口滑条与
scrollLeft联动 - 主内容区与内容容器的
min-width / overflow-x
因此这部分不是单点改动,而是一组联动修复。
6. 建议后续增强项
后续如果继续迭代系统使用统计,建议优先按下面顺序推进:
- 接入“按用户查看使用成效”
- 接入“行为明细”查看页
- 增加更细粒度筛选:
- 入口模块
- 文档类型
- 趋势图增加更完整的交互:
- tooltip 优化
- 缩略导航
- 导出趋势图
- 增加系统使用统计专属权限点配置页说明文档