初始化

This commit is contained in:
李琦
2026-01-15 13:51:44 +08:00
commit b7b6d3e39e
156 changed files with 38913 additions and 0 deletions

View File

@@ -0,0 +1,172 @@
# 后台管理系统设计与开发
## 1. 系统架构设计
### 1.1 技术栈
- **前端**Vue3 + TypeScript + Vite + Element Plus
- **后端**Golang + Gin + MySQL
- **认证**JWT
- **权限控制**基于角色的访问控制RBAC
- **可视化**ECharts
### 1.2 数据库设计
#### 1.2.1 现有表结构
- posts博客文章表
- works作品表
- snippets代码片段表
- users用户表
- tags标签表
- post_tags文章标签关联表
- settings配置表
- access_logs访问日志表
#### 1.2.2 新增表结构
- post_history文章历史记录表用于记录文章的编辑修改轨迹
### 1.3 后端API设计
#### 1.3.1 认证模块
- POST /api/admin/login - 登录
- POST /api/admin/logout - 登出
- POST /api/admin/refresh - 刷新令牌
#### 1.3.2 用户管理
- GET /api/admin/users - 获取用户列表
- POST /api/admin/users - 创建用户
- GET /api/admin/users/:id - 获取用户详情
- PUT /api/admin/users/:id - 更新用户
- DELETE /api/admin/users/:id - 删除用户
#### 1.3.3 角色管理
- GET /api/admin/roles - 获取角色列表
- POST /api/admin/roles - 创建角色
- GET /api/admin/roles/:id - 获取角色详情
- PUT /api/admin/roles/:id - 更新角色
- DELETE /api/admin/roles/:id - 删除角色
#### 1.3.4 文章管理
- GET /api/admin/posts - 获取文章列表
- POST /api/admin/posts - 创建文章
- GET /api/admin/posts/:id - 获取文章详情
- PUT /api/admin/posts/:id - 更新文章
- DELETE /api/admin/posts/:id - 删除文章
- GET /api/admin/posts/:id/history - 获取文章历史记录
- GET /api/admin/posts/:id/history/:version - 获取文章指定版本
- POST /api/admin/posts/:id/history/:version/restore - 恢复文章到指定版本
#### 1.3.5 作品管理
- GET /api/admin/works - 获取作品列表
- POST /api/admin/works - 创建作品
- GET /api/admin/works/:id - 获取作品详情
- PUT /api/admin/works/:id - 更新作品
- DELETE /api/admin/works/:id - 删除作品
#### 1.3.6 代码片段管理
- GET /api/admin/snippets - 获取代码片段列表
- POST /api/admin/snippets - 创建代码片段
- GET /api/admin/snippets/:id - 获取代码片段详情
- PUT /api/admin/snippets/:id - 更新代码片段
- DELETE /api/admin/snippets/:id - 删除代码片段
#### 1.3.7 系统配置
- GET /api/admin/settings - 获取系统配置
- PUT /api/admin/settings - 更新系统配置
#### 1.3.8 操作日志
- GET /api/admin/logs - 获取操作日志
- GET /api/admin/logs/stats - 获取日志统计
#### 1.3.9 数据统计
- GET /api/admin/stats - 获取系统统计数据
### 1.4 前端界面设计
#### 1.4.1 页面结构
- 登录页面
- 仪表盘(首页)
- 用户管理
- 角色管理
- 文章管理
- 文章列表
- 文章编辑
- 文章历史记录
- 作品管理
- 代码片段管理
- 系统配置
- 操作日志
- 数据统计
#### 1.4.2 权限控制
- 基于角色的菜单权限
- 基于权限的按钮级控制
## 2. 实施步骤
### 2.1 后端开发
1. 创建文章历史记录模型
2. 实现文章历史记录相关API
3. 实现用户认证和授权中间件
4. 实现用户管理API
5. 实现角色管理API
6. 实现文章管理API含历史记录功能
7. 实现作品管理API
8. 实现代码片段管理API
9. 实现系统配置API
10. 实现操作日志API
11. 实现数据统计API
### 2.2 前端开发
1. 创建管理系统前端项目
2. 实现登录页面
3. 实现仪表盘
4. 实现用户管理页面
5. 实现角色管理页面
6. 实现文章管理页面
7. 实现作品管理页面
8. 实现代码片段管理页面
9. 实现系统配置页面
10. 实现操作日志页面
11. 实现数据统计页面
### 2.3 测试与部署
1. 单元测试
2. 集成测试
3. 安全测试
4. 部署到生产环境
## 3. 安全设计
### 3.1 数据安全
- 密码加密存储bcrypt
- JWT令牌认证
- HTTPS传输
### 3.2 防止攻击
- SQL注入防护使用参数化查询
- XSS攻击防护输入验证、输出转义
- CSRF防护
- 接口限流
### 3.3 日志审计
- 操作日志记录
- 登录日志记录
- 异常日志记录
## 4. 性能优化
### 4.1 后端优化
- 数据库索引优化
- 缓存策略
- 连接池优化
### 4.2 前端优化
- 路由懒加载
- 组件按需加载
- 图片懒加载
- 接口请求优化
## 5. 响应式设计
- 适配桌面端、平板、移动端
- 响应式布局
- 自适应菜单