Files
OpticalSystem/jy-system/README_FORUM.md
一休哥哥6666 e186d45bec Initial commit
2026-06-14 14:39:51 +08:00

212 lines
4.4 KiB
Markdown
Raw 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.

# 开发者论坛模块说明
## 文件结构
### 前端文件
- `src/views/forum/index.vue` - 论坛首页组件
- `src/api/forum/post.js` - 帖子相关API
- `src/api/forum/reply.js` - 回复相关API
### 后端文件
- `ForumPostController.java` - 帖子控制器
- `IForumPostService.java` - 帖子服务接口
- `ForumPostServiceImpl.java` - 帖子服务实现
- `ForumPostMapper.java` - 帖子Mapper接口
- `ForumPostMapper.xml` - MyBatis映射文件
- `ForumPost.java` - 帖子实体类
### 数据库文件
- `database/forum_tables.sql` - 数据库表结构SQL
## 安装步骤
### 1. 数据库安装
执行 `database/forum_tables.sql` 文件创建数据库表:
```sql
-- 执行SQL文件
source database/forum_tables.sql;
```
### 2. 后端代码集成
1. 将后端Java文件复制到对应的包路径
- Controller: `com.ruoyi.jysystem.controller`
- Service: `com.ruoyi.jysystem.service`
- Mapper: `com.ruoyi.jysystem.mapper`
- Domain: `com.ruoyi.jysystem.domain`
2.`ForumPostMapper.xml` 复制到 `resources/mapper/jysystem/` 目录
3. 确保MyBatis扫描到Mapper接口
### 3. 前端代码集成
前端文件已自动集成到项目中,路由已配置。
## API接口说明
### 帖子相关接口
#### 查询帖子列表
```
GET /forum/post/list
参数:
- pageNum: 页码
- pageSize: 每页数量
- categoryId: 分类ID可选
- sort: 排序方式latest/hot/replies/views
- keyword: 搜索关键词(可选)
```
#### 查询帖子详情
```
GET /forum/post/{id}
```
#### 新增帖子
```
POST /forum/post
Body: {
categoryId: 分类ID,
title: 标题,
content: 内容,
excerpt: 摘要(可选)
}
```
#### 修改帖子
```
PUT /forum/post
Body: {
id: 帖子ID,
title: 标题,
content: 内容,
...
}
```
#### 删除帖子
```
DELETE /forum/post/{ids}
```
#### 增加浏览量
```
PUT /forum/post/view/{id}
```
#### 点赞/取消点赞
```
PUT /forum/post/like/{id}
返回: { isLiked: true/false }
```
#### 收藏/取消收藏
```
PUT /forum/post/favorite/{id}
返回: { isFavorited: true/false }
```
#### 标记为已解决
```
PUT /forum/post/solved/{id}
```
## 数据库表说明
### forum_category - 论坛分类表
- id: 分类ID主键
- name: 分类名称
- description: 分类描述
- sort_order: 排序顺序
- status: 状态0正常 1停用
- post_count: 帖子数量
### forum_post - 论坛帖子表
- id: 帖子ID主键
- category_id: 分类ID
- title: 标题
- content: 内容
- excerpt: 摘要
- author_id: 作者ID
- author_name: 作者名称
- author_avatar: 作者头像
- view_count: 浏览量
- reply_count: 回复数
- like_count: 点赞数
- favorite_count: 收藏数
- is_top: 是否置顶0否 1是
- is_hot: 是否热门0否 1是
- is_solved: 是否已解决0否 1是
- status: 状态0正常 1删除 2审核中
- last_reply_time: 最后回复时间
### forum_reply - 论坛回复表
- id: 回复ID主键
- post_id: 帖子ID
- parent_id: 父回复ID0表示直接回复帖子
- content: 回复内容
- author_id: 作者ID
- author_name: 作者名称
- like_count: 点赞数
- status: 状态0正常 1删除 2审核中
### forum_post_like - 帖子点赞表
- id: ID主键
- post_id: 帖子ID
- user_id: 用户ID
- create_time: 创建时间
### forum_post_favorite - 帖子收藏表
- id: ID主键
- post_id: 帖子ID
- user_id: 用户ID
- create_time: 创建时间
### forum_reply_like - 回复点赞表
- id: ID主键
- reply_id: 回复ID
- user_id: 用户ID
- create_time: 创建时间
## 功能特性
1. **帖子管理**
- 发布、编辑、删除帖子
- 分类管理
- 置顶、热门标记
- 已解决标记
2. **互动功能**
- 点赞/取消点赞
- 收藏/取消收藏
- 回复功能(支持嵌套回复)
- 浏览量统计
3. **搜索和排序**
- 关键词搜索
- 按最新、热门、回复数、浏览量排序
- 分类筛选
4. **用户体验**
- 响应式设计
- 实时更新
- 友好的时间显示
## 注意事项
1. 确保用户认证系统正常工作
2. 根据实际需求调整权限控制
3. 建议添加内容审核功能
4. 可以考虑添加图片上传功能
5. 建议添加敏感词过滤
## 后续扩展建议
1. 添加帖子详情页面
2. 添加回复功能页面
3. 添加用户个人中心(我的帖子、我的回复)
4. 添加管理员后台管理功能
5. 添加消息通知功能
6. 添加标签系统
7. 添加附件上传功能