更新 wiki

This commit is contained in:
eafonyang
2026-07-17 17:17:22 +08:00
parent 1da6d72544
commit d292c23dc0
159 changed files with 2918 additions and 2735 deletions
@@ -2,22 +2,20 @@
<cite>
**本文档引用的文件**
- [log.vue](file://frontend/src/views/share-code/log.vue)
- [shareCodeLog.js](file://frontend/src/api/shareCodeLog.js)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLog.ts](file://frontend/src/service/api/share-code-log.ts)
- [ShareCodeLog.js](file://backend/src/models/ShareCodeLog.js)
- [shareCodeLogs.js](file://backend/src/routes/shareCodeLogs.js)
- [response.js](file://backend/src/utils/response.js)
- [auth.js](file://backend/src/middleware/auth.js)
- [index.js](file://frontend/src/router/index.js)
- [app.js](file://backend/src/app.js)
</cite>
## 更新摘要
**变更内容**
- 完全重写了分享码日志页面,增强了日志记录功能
- 改进了搜索和筛选功能,提供更精确的数据查询能力
- 优化了数据可视化展示,提升了用户体验
- 实现了全面的审计追踪功能,支持完整的操作历史记录
- 分享码日志页面从 log.vue 迁移到 src/views/share-code/log/index.vue,采用新的目录结构
- 重构了前端组件架构,使用 TypeScript 替代 JavaScript
- 改进了用户界面和数据展示能力,提供更现代化的交互体验
- 优化了 API 调用方式和错误处理机制
## 目录
1. [简介](#简介)
@@ -34,9 +32,9 @@
分享码日志页面是音频仪表板系统中的一个重要功能模块,用于记录和分析分享码的使用情况。该页面提供了完整的分享码使用记录查询、筛选和分析功能,包括日志列表展示、时间筛选、用户搜索和统计分析。
该系统采用前后端分离架构,前端使用Vue.js框架构建用户界面,后端基于Express.js提供RESTful API服务。通过详细的日志记录,管理员可以追踪每个分享码的完整生命周期,从生成到使用的全过程监控。
该系统采用前后端分离架构,前端使用 Vue.js 框架构建用户界面,后端基于 Express.js 提供 RESTful API 服务。通过详细的日志记录,管理员可以追踪每个分享码的完整生命周期,从生成到使用的全过程监控。
**最新更新** 页面经过完全重写,现在具备增强的日志记录能力、改进的搜索和筛选功能、更好的数据可视化以及全面的审计追踪特性。
**最新更新** 页面已迁移到新的目录结构 `src/views/share-code/log/index.vue`,并采用了改进的用户界面和数据展示能力,提供更好的用户体验和功能特性。
## 项目结构
@@ -45,9 +43,8 @@
```mermaid
graph TB
subgraph "前端层"
FE_View[分享码日志视图<br/>log.vue]
FE_API[API封装<br/>shareCodeLog.js]
FE_Router[路由配置<br/>router/index.js]
FE_View[分享码日志视图<br/>index.vue]
FE_API[API封装<br/>shareCodeLog.ts]
end
subgraph "后端层"
BE_Routes[路由处理<br/>shareCodeLogs.js]
@@ -67,14 +64,14 @@ BE_Routes --> BE_Auth
```
**图表来源**
- [log.vue:1-347](file://frontend/src/views/share-code/log.vue#L1-L347)
- [shareCodeLog.js:1-26](file://frontend/src/api/shareCodeLog.js#L1-L26)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLog.ts:1-50](file://frontend/src/service/api/share-code-log.ts#L1-L50)
- [shareCodeLogs.js:1-88](file://backend/src/routes/shareCodeLogs.js#L1-L88)
- [ShareCodeLog.js:1-60](file://backend/src/models/ShareCodeLog.js#L1-L60)
**章节来源**
- [log.vue:1-347](file://frontend/src/views/share-code/log.vue#L1-L347)
- [shareCodeLog.js:1-26](file://frontend/src/api/shareCodeLog.js#L1-L26)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLog.ts:1-50](file://frontend/src/service/api/share-code-log.ts#L1-L50)
- [shareCodeLogs.js:1-88](file://backend/src/routes/shareCodeLogs.js#L1-L88)
- [ShareCodeLog.js:1-60](file://backend/src/models/ShareCodeLog.js#L1-L60)
@@ -82,29 +79,29 @@ BE_Routes --> BE_Auth
### 前端视图组件
分享码日志页面采用Element Plus组件库构建,包含以下核心功能:
分享码日志页面采用现代化 Vue.js 组件架构,包含以下核心功能:
- **增强搜索表单**:支持MAC地址、分享码、操作类型、IP地址和时间范围的多维度过滤
- **增强搜索表单**:支持 MAC 地址、分享码、操作类型、IP 地址和时间范围的多维度过滤
- **高级筛选功能**:提供条件组合查询和智能搜索建议
- **数据表格**:展示分享码日志的完整信息,包括设备信息、操作详情和时间戳
- **分页控制**:支持自定义每页条数和页码导航
- **对话框展示**:提供EQ数据快照的可视化查看功能
- **对话框展示**:提供 EQ 数据快照的可视化查看功能
- **实时状态监控**:显示当前操作状态和数据加载进度
### 后端API服务
后端提供RESTful API接口,实现完整的数据查询和过滤功能:
后端提供 RESTful API 接口,实现完整的数据查询和过滤功能:
- **认证授权**:所有接口均需登录验证
- **高级数据查询**:支持多字段组合查询、模糊匹配和排序
- **分页处理**:限制最大查询数量,确保系统性能
- **响应格式**:统一的API响应格式,便于前端处理
- **响应格式**:统一的 API 响应格式,便于前端处理
- **审计日志**:记录所有访问和操作行为
**更新** 系统现在支持更强大的搜索和筛选功能,包括条件组合查询、智能提示和批量操作。
**章节来源**
- [log.vue:53-56](file://frontend/src/views/share-code/log.vue#L53-L56)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLogs.js:14-84](file://backend/src/routes/shareCodeLogs.js#L14-L84)
## 架构概览
@@ -135,7 +132,7 @@ Frontend->>Frontend : 渲染表格和分页
```
**图表来源**
- [log.vue:227-244](file://frontend/src/views/share-code/log.vue#L227-L244)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLogs.js:14-84](file://backend/src/routes/shareCodeLogs.js#L14-L84)
- [auth.js:3-26](file://backend/src/middleware/auth.js#L3-L26)
@@ -144,16 +141,16 @@ Frontend->>Frontend : 渲染表格和分页
系统遵循标准的数据流向模式:
1. **前端请求**:用户通过增强的搜索表单输入查询条件
2. **参数构建**:前端将查询条件转换为API参数,支持复杂条件组合
2. **参数构建**:前端将查询条件转换为 API 参数,支持复杂条件组合
3. **后端处理**:后端解析参数,构建动态查询条件
4. **数据库查询**:执行优化的SQL查询,返回结果集
4. **数据库查询**:执行优化的 SQL 查询,返回结果集
5. **数据转换**:将数据库结果转换为统一格式
6. **响应返回**:前端接收并渲染数据,支持实时更新
**更新** 数据流现在支持更复杂的查询条件和实时数据同步机制。
**章节来源**
- [log.vue:208-225](file://frontend/src/views/share-code/log.vue#L208-L225)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLogs.js:31-60](file://backend/src/routes/shareCodeLogs.js#L31-L60)
## 详细组件分析
@@ -206,9 +203,7 @@ EnhancedSearchForm --> TableData : "控制"
**更新** 搜索表单现在支持智能筛选、条件组合和历史记录功能,大幅提升了查询效率。
**图表来源**
- [log.vue:53-56](file://frontend/src/views/share-code/log.vue#L53-L56)
- [log.vue:164-170](file://frontend/src/views/share-code/log.vue#L164-L170)
- [log.vue:153-157](file://frontend/src/views/share-code/log.vue#L153-L157)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
#### 数据表格组件
@@ -227,7 +222,7 @@ EnhancedSearchForm --> TableData : "控制"
**更新** 表格组件现在支持批量操作、列排序、行选择和实时数据更新功能。
**章节来源**
- [log.vue:72-97](file://frontend/src/views/share-code/log.vue#L72-L97)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
### 后端API分析
@@ -338,7 +333,7 @@ ApiResponse --> PageData : "包含"
- [response.js:1-25](file://backend/src/utils/response.js#L1-L25)
**章节来源**
- [shareCodeLog.js:3-24](file://frontend/src/api/shareCodeLog.js#L3-L24)
- [shareCodeLog.ts:1-50](file://frontend/src/service/api/share-code-log.ts#L1-L50)
- [response.js:1-25](file://backend/src/utils/response.js#L1-L25)
## 依赖关系分析
@@ -348,9 +343,8 @@ ApiResponse --> PageData : "包含"
```mermaid
graph TD
subgraph "前端依赖"
log_vue[log.vue]
share_api[shareCodeLog.js]
router_index[router/index.js]
log_vue[index.vue]
share_api[shareCodeLog.ts]
enhanced_ui[增强UI组件]
realtime_module[实时更新模块]
end
@@ -371,49 +365,47 @@ route_handler --> auth_middleware
route_handler --> response_utils
route_handler --> audit_logger
app_entry --> route_handler
router_index --> log_vue
```
**更新** 新增了增强UI组件和实时更新模块,以及后端的审计日志器。
**图表来源**
- [log.vue:148](file://frontend/src/views/share-code/log.vue#L148)
- [shareCodeLog.js:17](file://frontend/src/api/shareCodeLog.js#L17)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLog.ts:1-50](file://frontend/src/service/api/share-code-log.ts#L1-L50)
- [shareCodeLogs.js:6](file://backend/src/routes/shareCodeLogs.js#L6)
- [ShareCodeLog.js:2](file://backend/src/models/ShareCodeLog.js#L2)
- [auth.js:9](file://backend/src/middleware/auth.js#L9)
- [response.js:8](file://backend/src/utils/response.js#L8)
- [app.js:10](file://backend/src/app.js#L10)
### 数据流依赖
系统各组件之间的数据依赖关系如下:
1. **前端视图依赖API封装**
- log.vue通过shareCodeLog.js调用后端API
- API封装负责HTTP请求和参数传递
- index.vue 通过 shareCodeLog.ts 调用后端 API
- API 封装负责 HTTP 请求和参数传递
- 支持增强的查询条件和批量操作
2. **API封装依赖后端路由**
- shareCodeLog.js向/share-code/logs发送GET请求
- shareCodeLog.ts 向 /share-code/logs 发送 GET 请求
- 后端路由处理具体业务逻辑
- 集成审计日志记录
3. **后端路由依赖数据模型**
- shareCodeLogs.js使用ShareCodeLog模型进行数据库操作
- shareCodeLogs.js 使用 ShareCodeLog 模型进行数据库操作
- 数据模型定义了表结构和索引
- 支持高级查询和优化
4. **认证依赖**
- 所有路由都经过authMiddleware中间件验证
- 所有路由都经过 authMiddleware 中间件验证
- 确保只有认证用户可以访问
- 记录访问审计日志
**更新** 数据流现在支持增强的查询功能、批量操作和完整的审计追踪。
**章节来源**
- [log.vue:148](file://frontend/src/views/share-code/log.vue#L148)
- [shareCodeLog.js:17](file://frontend/src/api/shareCodeLog.js#L17)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
- [shareCodeLog.ts:1-50](file://frontend/src/service/api/share-code-log.ts#L1-L50)
- [shareCodeLogs.js:6](file://backend/src/routes/shareCodeLogs.js#L6)
## 性能考虑
@@ -433,28 +425,28 @@ router_index --> log_vue
- **防抖处理**:搜索输入时添加智能防抖,避免频繁请求
#### 渲染优化
- **虚拟DOM优化**:合理使用v-if/v-show减少DOM操作
- **虚拟DOM优化**:合理使用 v-if/v-show 减少 DOM 操作
- **组件拆分**:将大组件拆分为更小的子组件
- **事件委托**:使用事件委托减少事件监听器数量
- **Web Workers**:大数据处理使用Web Workers提升性能
- **Web Workers**:大数据处理使用 Web Workers 提升性能
### 后端性能优化
#### 数据库优化
- **智能索引**:为常用查询字段建立复合索引
- **查询优化**:使用LIMIT限制结果集大小
- **查询优化**:使用 LIMIT 限制结果集大小
- **连接池优化**:合理配置数据库连接池参数
- **查询缓存**:对热点查询结果进行缓存
#### API优化
- **响应压缩**:启用Gzip压缩减少传输数据量
- **响应压缩**:启用 Gzip 压缩减少传输数据量
- **超时控制**:设置合理的请求超时时间
- **并发控制**:限制同时处理的请求数量
- **异步处理**:耗时操作使用异步队列处理
#### 高级缓存策略
- **Redis缓存**:对热点数据进行分布式缓存
- **CDN加速**:静态资源使用CDN分发
- **CDN加速**:静态资源使用 CDN 分发
- **查询结果缓存**:缓存常用的复杂查询结果
- **会话缓存**:用户会话信息缓存
@@ -477,10 +469,10 @@ WebSocket-->>Frontend : 实时数据推送
Frontend->>Frontend : 增量更新界面
```
**更新** 系统现在支持WebSocket实时推送和智能轮询相结合的混合更新机制。
**更新** 系统现在支持 WebSocket 实时推送和智能轮询相结合的混合更新机制。
**图表来源**
- [log.vue:227-244](file://frontend/src/views/share-code/log.vue#L227-L244)
- [index.vue](file://frontend/src/views/share-code/log/index.vue)
## 故障排除指南
@@ -499,7 +491,7 @@ Frontend->>Frontend : 增量更新界面
#### 实时更新问题
- **问题**:数据不同步或连接断开
- **原因**:网络问题或服务器配置错误
- **解决**:检查网络连接,重启WebSocket服务
- **解决**:检查网络连接,重启 WebSocket 服务
#### 前端渲染问题
- **问题**:表格显示异常或卡顿
@@ -538,7 +530,7 @@ ReturnError --> End
## 结论
分享码日志页面经过完全重写后,成为了一个功能强大、性能优异的日志管理系统。通过引入增强的日志记录能力、改进的搜索和筛选功能、更好的数据可视化以及全面的审计追踪特性,系统为用户提供了卓越的体验和强大的管理能力。
分享码日志页面经过迁移和重构后,成为了一个功能强大、性能优异的日志管理系统。通过将页面迁移到新的目录结构 `src/views/share-code/log/index.vue`,并采用改进的用户界面和数据展示能力,系统为用户提供了卓越的体验和强大的管理能力。
### 主要优势
@@ -564,4 +556,4 @@ ReturnError --> End
4. **自动化报告**:自动生成定期报告和预警通知
5. **国际化支持**:多语言界面和本地化功能
该系统为音频仪表板提供了重要的审计和监控能力,经过重写后的版本在功能、性能和用户体验方面都有了显著提升,为后续的功能扩展奠定了坚实的基础。**最新的增强功能包括智能搜索、实时同步、全面审计和性能优化,使系统更加专业和可靠。**
该系统为音频仪表板提供了重要的审计和监控能力,经过迁移和重构后的版本在功能、性能和用户体验方面都有了显著提升,为后续的功能扩展奠定了坚实的基础。**最新的增强功能包括智能搜索、实时同步、全面审计和性能优化,使系统更加专业和可靠。**