# CampusforumApi **Repository Path**: small-code-library/campusforum-api ## Basic Information - **Project Name**: CampusforumApi - **Description**: CampusforumApi是一个专为校园论坛设计的管理端API集合,基于SpringBoot框架和Layui框架搭建而成。提供用户管理、院系管理、活动管理、文章管理、活动/文章审核、数据监控等功能,由于笔者能力有限,仅开发出管理端,若大家有需要可以在此基础上进行拓展。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-04-14 - **Last Updated**: 2025-12-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 校园论坛开发说明书 **项目说明**:本项目基于Spring Boot + Layui前端框架,使用前后端分离技术实现一个毕设项目 以本校为研究对象的校园论坛管理系统。因笔者能力有限,目前仅开发出校园论坛管理端,且仍需完善,本文档提供数据库设计关系模式,其中只使用了一部分表作为管理端的数据库表格,如有需要可自行拓展(其中加粗字体为本管理系统使用到的数据库表,未加粗仅最初设计但未真正使用)。 ## 运行环境搭建 * JDK版本 17.0.7 * java版本 java 17 * SpringBoot版本 3.4.3 * Maven版本 3.9.3 * LayUI版本2.5.6 ### 项目目录介绍 ###### java/com.example.campusforumapi/ * controller:控制器,用于接收用户请求的文件 * dao:数据接口访问层,存放数据访问对象接口 * entity:用来定义用数据库中的实体类 * util:存放工具类 * AliOSSProperties 和 AliOSSUtils 两个类用于处理图像或文档 * JwtUtil用于获取token * MD5Util用于密码加密 * PageResult用于分页封装 * Result用于返回统一json格式响应结果 * interceptor:springboot拦截器(和config文件中Webconfig用于接口请求前的拦截,检查请求头所携带token是否存在或有效) * service:业务逻辑相关接口及Impl(实现类) * config:配置文件夹 ###### resources/ * mapper:存放Mapper接口和xml文件映射数据库 * public:存放网页图标 * static:存放前端代码文件夹 ### 数据库表设计 ##### 关系模式 **用户(用户ID,用户名,密码,头像,性别,注册时间,最后更新时间,邮箱,手机号,出生日期,院系ID(外键),isdel)** **角色(角色ID,角色名称,是否启用,角色描述,父角色ID,创建时间,最后更新时间)** 权限(权限ID,权限名称,权限编码,资源类型,操作类型,权限描述,范围限制,是否启用,创建时间) **院系(院系ID,院系名称,联系电话,院系简介,创建时间,更新时间,学院邮箱,isdel)** **文章(文章ID,标题,内容,收藏量,点赞量,浏览量,字数,附件,视频,发布状态,用户ID,分类ID,院系ID,发布时间,审核提交时间,审核结果反馈)** **活动(活动ID,标题,描述,发布时间,是否全局,更新时间,开始时间,结束时间,审核提交时间,收藏量,点赞量,浏览量,活动状态,附件,视频,活动标签ID,院系ID,用户ID,审核结果反馈)** 日志(日志ID,日志时间,IP地址,操作类型,操作用户ID,目标类型,目标ID,操作详情,操作状态,日志类型ID) 消息(消息ID,发送者ID,接受者ID,接收者类型,标题,内容,目标类型,目标id,状态,优先级,创建时间,类型ID) **文章分类(分类ID,名称,描述,最后更新时间,创建时间)** **活动标签(标签ID,名称,热度值,描述,创建时间,更新时间)** 日志类型(日志类型ID,类型名称,类型描述,安全级别,保留策略,是否启用,创建时间,最后更新时间) 消息类型(类型ID,类型名称,类型描述,是否启用,默认模版,模版变量,允许发送角色,创建时间,最后更新时间) **评论(评论ID,内容,点赞量,用户ID,评论类型,关联目标ID(活动id/文章id),父评论ID,创建时间,更新时间,isdel)** 点赞表(点踩ID,用户ID,操作类型,关联目标ID(活动id/文章id/评论)创建时间 更新时间 状态(0 取消1点赞-1点踩)) 用户私信(私信ID,内容,状态,类型,创建时间,更新时间,附件,视频,发送者ID,接收者ID) **用户角色关联表(用户ID,角色ID,生效时间,失效时间)** 角色权限关联表(角色ID,权限ID,生效时间,失效时间,优先级) 好友管理表(发送者ID,接受者ID,申请时间,处理时间,状态,备注) 审核表(审核ID,目标类型,目标ID,提交者ID,审核人ID,审核结果,审核意见,审核时间,提交时间,优先级) **活动参与(用户ID,活动ID,状态,报名时间,签到时间,评价内容,**评分) ##### 角色分类(此处分类为最初设想,目前仅实现超级管理员端基本功能) * 普通用户(未实现) * 超级管理员 ##### 权限管理 * 超级管理员权限: * 用户管理 * 查询用户 * 添加用户 * 删除用户 * 修改用户 * 设置用户角色 * 院系管理 * 院系查询 * 增加院系 * 删除院系 * 修改院系 * 文章管理 * 增加文章 * 删除文章 * 修改文章 * 查询文章 * 活动管理 * 增加活动 * 删除活动 * 修改活动 * 查询活动 * 消息管理(审核,每日一句) * 反馈审核结果 * 增加消息(每日一句) * 删除消息 * 修改消息 * 查询审核消息 * 活动审核消息 * 文章审核消息 * 日志管理(权限,操作,审核,安全) * 增加日志 * 删除日志 * 修改日志 * 查询日志 * 评论管理(活动,文章) * 增加评论 * 删除评论 * 修改评论 * 查询评论 * 角色与权限管理 * 增加角色/权限 * 删除角色/权限 * 修改角色/权限 * 查询角色/权限 * 数据监控与分析 * 活动热度统计 * 文章热度统计 * 访问量统计 * 新用户统计 * 普通用户权限: * 个人信息管理 * 用户信息列表 * 修改个人信息 * 文章管理 * 审核发布文章 * 修改文章 * 删除文章 * 搜索文章 * 发布评论 * 点赞评论 * 点赞文章 * 收藏文章 * 活动管理 * 发布活动 * 修改活动信息 * 查询活动信息 * 申请活动 * 点赞活动 * 收藏活动 * 发布评论 * 点赞评论 * 活动评分 * 私信管理 * 发送私信 * 撤回私信 * 发送附件 * 发送表情 * 删除私信 * 通知管理(消息管理) * 活动申请人审核 * 好友申请审核 * 管理员审核结果查看 * 通知消息删除 * 好友管理 * 申请好友 * 删除好友 * 修改好友备注 * 查看好友列表 * 数据监控与分析 * 活动热度数据 * 文章热度数据 ### 系统界面图片 1. 登录界面 2. 首页 3. 审核界面