基于 Spring Boot 3 + Vue 3 + MySQL 的校园网计费与运营管理系统,覆盖管理员端和用户端的套餐订阅、公告管理、设备绑定、日志审计、消息通知等核心场景,可直接用于课程实践或二次开发。
- 管理员端:账号管理、套餐上下架与手动订阅、公告发布、操作日志审计、用户批量导入/重置密码。
- 用户端:注册/登录、个人资料与账号安全、套餐订购与支付记录、设备绑定(含上限与重复校验)、消息中心。
- 支付流程:内置模拟支付与订购链路,便于替换为真实微信/支付宝(参考
system/files/campus_network_testing_report.md的接入指南)。 - 日志与审计:统一操作日志记录,支持筛选与导出,满足合规留痕需求。
- 后端:Spring Boot 3.3、MyBatis、PageHelper、Hutool、MySQL 8
- 前端:Vue 3、Vite、Vue Router、Element Plus、Axios
- 构建与运行:Maven、Node.js 18+/npm、Nginx(生产部署可选)
system/
├─ springboot/ # 后端(Maven 项目,端口默认 9090)
│ ├─ src/main/java/com/example/
│ ├─ src/main/resources/
│ │ └─ mapper/*.xml
│ └─ pom.xml
├─ vue/ # 前端(Vite 项目)
│ ├─ src/
│ ├─ public/
│ └─ vite.config.js
└─ files/ # 上传/静态文件目录(示例)
更多业务说明与接口列表见 system/files/project_overview.md,各专题文档位于 system/files/*.md。
cd system/springboot
# 如需修改数据库连接与上传目录,请先编辑 src/main/resources/application.yml
mvn clean package -DskipTests
java -jar target/springboot-0.0.1-SNAPSHOT.jar默认端口:9090。若本地 MySQL 用户名/密码不同,请修改 application.yml 中的 spring.datasource.*。
cd system/vue
npm install
npm run dev本地默认请求后端 http://localhost:9090(如需代理或部署到生产,请调整 src/utils/request.js 或构建时的环境变量)。
- 在 MySQL 创建数据库
netsystem,执行netsystem.sql或参考system/files/project_overview.md的建表 SQL。 - 插入至少一个管理员账号(表
admin),以便登录管理端。 - 若需要演示数据,可预置套餐、公告等基础信息。
- 后端:
mvn clean package -DskipTests后上传 jar 与application-prod.yml,以-Dspring.profiles.active=prod运行,建议使用 systemd 管理。 - 前端:
npm run build生成dist/,通过 Nginx/静态服务托管;可将接口代理到后端9090。 - 配置安全:数据库密码、支付密钥等敏感信息不要提交仓库,改用环境变量或外部配置。
- 文件上传:根据
fileBaseUrl配置本地目录或对象存储,并在反向代理中暴露/files/访问路径。
system/files/project_overview.md:数据库结构、主要接口、文档索引。system/files/campus_network_testing_report.md:测试方法、部署步骤、支付改造指南。system/files/*.md:用户管理、套餐计费、公告管理、日志审计、用户门户等专题说明。
- 请检查并移除配置文件中的真实账号、密码、域名等敏感信息(如
application.yml内的数据库凭据),改为示例值或环境变量。 - 建议新增
.env.example/application-example.yml供他人参考,并在提交前清理target/、dist/等编译产物。 - 如需仓库说明徽章、截图,请在 README 补充状态徽章与界面截图。