欢迎光临
我们一直在努力

社区活动管理系统 — 三端功能与实现说明

社区活动管理系统 — 三端功能与实现说明

本文按 普通成员 / 社团干部 / 系统管理员 三个端介绍功能与代码实现,


在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

目录

  • 一、项目概述
  • 二、技术栈与工程结构
  • 三、角色划分与路由壳层
  • 四、普通成员端(前台)
  • 五、社团干部端(/manage)
  • 六、系统管理员端(/admin)
  • 七、认证、权限与安全
  • 八、核心业务流程
  • 九、数据库与后端分层
  • 十、环境搭建与演示账号

一、项目概述

社区活动管理系统面向高校或社区场景:成员浏览活动、加入社团、报名与签到;社团干部维护社团资料、发布活动、审核报名、发起签到;系统管理员审核社团与活动上架、管理用户、查看全站统计。

系统采用 前后端分离:后端 Spring Boot 单体 API(端口 8080),前端 Vue 3 + Element Plus(开发端口 5173,代理 /api → 8080)。


二、技术栈与工程结构

层次
技术
后端 JDK 17、Spring Boot 3.2.5、Spring Security、JWT、MyBatis-Plus、MySQL 8
前端 Vue 3、TypeScript、Vite、Pinia、Vue Router、Element Plus、ECharts
数据库 community_activity,字符集 utf8mb4

目录结构(核心)

├── backend/ # Spring Boot 后端
│ └── src/main/java/com/community/activity/
│ ├── controller/ # REST 接口
│ ├── service/ # 业务逻辑
│ ├── mapper/ # MyBatis-Plus
│ ├── entity/ # 实体
│ ├── dto/ # 请求/响应 DTO
│ └── security/ # JWT 过滤器、UserDetails
├── frontend/
│ └── src/
│ ├── layouts/ # MainLayout / OfficerLayout / AdminLayout
│ ├── views/ # 页面组件
│ ├── api/ # axios 封装
│ └── router/index.ts # 路由与守卫
├── sql/
│ ├── schema.sql # 建表
│ └── data.sql # 种子数据
└── init-db.bat # 一键初始化数据库

统一响应:Result<T>,code=0 表示成功;日期时间 JSON 格式为 yyyy-MM-dd HH:mm:ss。


三、角色划分与路由壳层

系统角色存于 sys_user + sys_user_role + sys_role,编码为:

角色编码
说明
登录后默认页
USER 普通成员 / 活动广场
OFFICER 社团干部 /manage 干部工作台
ADMIN 系统管理员 /admin 管理控制台

种子账号角色 互斥(一人一角):member / officer / admin,密码均为 password。

三端壳层(Layout)

壳层
路径前缀
组件
可见角色
成员前台 /、/clubs、/my MainLayout.vue 未登录访客 + USER;管理员可浏览前台
干部工作台 /manage/** OfficerLayout.vue OFFICER(及兼干部身份的管理员)
管理后台 /admin/** AdminLayout.vue ADMIN

路由守卫要点(router/index.ts + stores/auth.ts):

  • 干部(非管理员)仅能访问 /manage/**,访问活动广场等前台路径会重定向到 /manage。
  • 管理员登录后默认进入 /admin,也可浏览前台活动详情等页面。
  • 需登录路由带 meta.requiresAuth;管理端带 requiresAdmin;发布活动页带 requ
赞(0)
未经允许不得转载:171主机测评 » 社区活动管理系统 — 三端功能与实现说明
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址