当前位置: 首页 > news >正文

基于springboot,vue校园社团管理系统

开发工具:IDEA

服务器:Tomcat9.0, jdk1.8

项目构建:maven

数据库:mysql5.7

系统分前后台,项目采用前后端分离

前端技术:vue+elementUI

服务端技术:springboot+mybatis-plus

本系统分学生、社长、管理员三个角色,功能如下:

一、学生(用户)功能包括: 

1.登录、注册、首页、修改密码、修改个人信息

2.入团申请管理:可以向感兴趣的社团提交申请。

3.浏览社团信息:可以浏览所有社团及其基本信息。

4.活动信息管理:查看活动信息和申请加入活动。

5.通知信息查询:可以查询发布的通知信息。

6.缴费信息管理:实现缴费查询和缴费缴纳功能。

二、社长功能包括:

1.登录、首页、修改密码、修改个人信息

2.入团申请处理:可以对提交社团申请的用户进行审核。

3.社团成员管理:实现对社团的成员查询和删除功能。

4.社团活动管理:可以查看和发布社团活动。

5.社团通知管理:可以查看,发布社团活动,删除本社团发布的通知

6.社团费用管理:可以查看,删除,根据社员编号发布缴费通知。

三、管理员功能包括:

1.登录、首页、修改密码、修改个人信息

2.系统用户管理:可以查看系统所有用户的基本信息,并修改和删除。

3.社团类型管理:可以对社团类型进行修改,删除,查询操作,并且可以根据需求增添社团类型。

4.社团信息管理:可以对社团进行查询,删除,创建社团,修改社团信息。

5.活动信息管理:可以查询,删除社团活动。

6.通知信息管理:可以查询,删除,发布社团活动。

7.查询缴费记录:可以查询各个社团的缴费记录。

文档截图: 

学生(用户)截图:

社长截图:

管理员截图: 

package self.cases.teams.controller;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;import self.cases.teams.entity.Users;
import self.cases.teams.handle.CacheHandle;
import self.cases.teams.service.UsersService;
import self.cases.teams.utils.DateUtils;
import self.cases.teams.utils.IDUtils;
import self.cases.teams.msg.R;
import self.cases.teams.msg.PageData;import self.cases.teams.entity.Teams;
import self.cases.teams.service.TeamsService;import java.util.List;/*** 系统请求响应控制器* 社团信息*/
@Controller
@RequestMapping("/teams")
public class TeamsController extends BaseController {protected static final Logger Log = LoggerFactory.getLogger(TeamsController.class);@Autowiredprivate CacheHandle cacheHandle;@Autowiredprivate UsersService usersService;@Autowiredprivate TeamsService teamsService;@RequestMapping("")public String index() {return "pages/Teams";}@GetMapping("/info")@ResponseBodypublic R getInfo(String id) {Log.info("查找指定社团信息,ID:{}", id);Teams teams = teamsService.getOne(id);return R.successData(teams);}@GetMapping("/all")@ResponseBodypublic R getAll(){Log.info("获取全部的社团");List<Teams> list = teamsService.getAll();return R.successData(list);}@GetMapping("/man")@ResponseBodypublic R getListByManId(String manId){Log.info("获取指定社团管理员相关的社团列表");List<Teams> list = teamsService.getListByManId(manId);return R.successData(list);}@GetMapping("/page")@ResponseBodypublic R getPageInfos(Long pageIndex, Long pageSize,String token, Teams teams) {Users user = usersService.getOne(cacheHandle.getUserInfoCache(token));if(user.getType() == 1){teams.setManager(user.getId());}Log.info("分页查找社团信息,当前页码:{},"+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,pageSize, teams);PageData page = teamsService.getPageInfo(pageIndex, pageSize, teams);return R.successData(page);}@PostMapping("/add")@ResponseBodypublic R addInfo(Teams teams) {teams.setId(IDUtils.makeIDByCurrent());teams.setCreateTime(DateUtils.getNowDate("yyyy-MM-dd"));Log.info("添加社团信息,传入参数:{}", teams);teamsService.add(teams);return R.success();}@PostMapping("/upd")@ResponseBodypublic R updInfo(Teams teams) {Log.info("修改社团信息,传入参数:{}", teams);teamsService.update(teams);return R.success();}@PostMapping("/del")@ResponseBodypublic R delInfo(String id) {Log.info("删除社团信息, ID:{}", id);Teams teams = teamsService.getOne(id);teamsService.delete(teams);return R.success();}
}

相关文章:

基于springboot,vue校园社团管理系统

开发工具&#xff1a;IDEA 服务器&#xff1a;Tomcat9.0&#xff0c; jdk1.8 项目构建&#xff1a;maven 数据库&#xff1a;mysql5.7 系统分前后台&#xff0c;项目采用前后端分离 前端技术&#xff1a;vueelementUI 服务端技术&#xff1a;springbootmybatis-plus 本系…...

广州华锐互动:VR虚拟现实物理学习平台,开启数字化教学新格局

随着虚拟现实(VR)技术的不断发展&#xff0c;越来越多的领域开始应用这一技术。广州华锐互动开发的VR虚拟现实物理学习平台就得到了广泛应用&#xff0c;平台涉及力学、光学、热学等初中物理知识&#xff0c;还包含了物理名人、实验器具、物理现象的还原和学习&#xff0c;相比…...

【tio-websocket】8、T-IO对半包和粘包的处理

介绍 t-io对数据的解码是在DecodeRunnable中完成的,一个TCP连接对应一个DecodeRunnable半包粘包的处理也都在DecodeRunnable中完成的关于DecodeRunnable 先贴上 DecodeRunnable 的源代码: import java.nio.BufferUnderflowException; import java.nio.ByteBuffer; import j…...

【Linux】安装与配置虚拟机及虚拟机服务器坏境配置与连接

目录 操作系统介绍 什么是操作系统 常见操作系统 UNIX操作系统 linux操作系统 mac操作系统 嵌入式操作系统 个人版本和服务器版本的区别 安装VMWare虚拟机 VMWare虚拟网卡 ​编辑 配置虚拟网络编辑器 ​编辑 安装配置Windows Server 2012 R2 安装Windows Server 2…...

Redis常识

文章目录 缓存的三个风险数据结构淘汰策略 和 过期删除策略过期删除淘汰 如何理解单线程redis特性复制gossip协议事务&#xff08;和mysql不同&#xff0c;是不严格的事务 &#xff09;集群&#xff08;高可用&#xff09;管道持久化 缓存的三个风险 缓存雪崩&#xff08;缓存…...

Instant,LocalDate,LocalTime,LocalDateTime和ZonedDateTime

Instant 封装了从 1970-01-01T00:00:00Z 开始的秒数&#xff0c;相当于时间戳。 主要有两个属性&#xff1a; private final long seconds; private final int nanos;LocalDate 用于表示日期&#xff0c;包括年、月、日&#xff0c;例如 2017-12-03。 主要有三个属性&…...

Web入门笔记

Web入门笔记 HTTP协议 超文本传输协议 规定了浏览器和服务器之间数据传输的规则&#xff0c;请问数据和响应数据的格式 基于TCP请求-响应模式一次请求对应一次响应无状态的协议 请问数据格式 浏览器版本&#xff1a;解决浏览器兼容问题。GET请求体&#xff1a;存放请求参数…...

Linux网络编程二(TCP三次握手、四次挥手、TCP滑动窗口、MSS、TCP状态转换、多进程/多线程服务器实现)

TCP三次握手 TCP三次握手(TCP three-way handshake)是TCP协议建立可靠连接的过程&#xff0c;确保客户端和服务器之间可以进行可靠的通信。下面是TCP三次握手的详细过程&#xff1a; 假设客户端为A&#xff0c;服务器为B 1、第一次握手&#xff08;SYN1&#xff0c;seq500&…...

C#核心笔记——(一)C#和.NET Framework

C#是一种通用的&#xff0c;类型安全的面向对象编程语言。其目标是提高程序员生产力。 一.面向对象 C#实现了丰富的面向对象范式&#xff0c;包括封装、继承、多态。 C#面向对象特性包括&#xff1a; 统一的类型系统 类与接口 属性、方法、事件 C#支持纯函数模式 二、类型安…...

【2023年冬季】华为OD统一考试(B卷)题库清单(已收录345题),又快又全的 B 卷题库大整理

目录 专栏导读华为OD机试算法题太多了&#xff0c;知识点繁杂&#xff0c;如何刷题更有效率呢&#xff1f; 一、逻辑分析二、数据结构1、线性表① 数组② 双指针 2、map与list3、队列4、滑动窗口5、二叉树6、并查集7、栈 三、算法1、基础算法① 贪心算法② 二分查找③ 分治递归…...

云服务器的先驱,亚马逊云科技海外云服务器领军者

随着第三次工业革命的发展&#xff0c;移动互联网技术带来的信息技术革命为我们的生活带来了极大的便捷。其中&#xff0c;不少优秀的云服务器产品发挥了不可低估的作用&#xff0c;你或许听说过亚马逊云科技、谷歌GCP、IBM Cloud等优秀的海外云服务器。那么云服务器有哪些&…...

QT webengine显示HTML简单示例

文章目录 参考示例1TestWebenqine.promainwindow.hmainwindow.cppmain.cpp效果 示例2 (使用setDevToolsPage函数)main.cpp效果 参考 QT webengine显示HTML简单示例 示例1 编译器 : Desktop Qt 5.15.2 MSVC2019 64bit编辑器: QtCreator代码: TestWebenqine.pro # TestWeben…...

Spark_SQL函数定义(定义UDF函数、使用窗口函数)

一、UDF函数定义 &#xff08;1&#xff09;函数定义 &#xff08;2&#xff09;Spark支持定义函数 &#xff08;3&#xff09;定义UDF函数 &#xff08;4&#xff09;定义返回Array类型的UDF &#xff08;5&#xff09;定义返回字典类型的UDF 二、窗口函数 &#xff08;1&…...

【Leetcode】【每日一题】【中等】274. H 指数

力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台备战技术面试&#xff1f;力扣提供海量技术面试资源&#xff0c;帮助你高效提升编程技能&#xff0c;轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/h-index/description/?envTyped…...

MySQL读写分离技术及实现方案

MySQL读写分离技术及实现方案 本文主要介绍了MySQL读写分离技术的原理、实现方案以及示例。通过使用读写分离技术&#xff0c;可以提高数据库的性能&#xff0c;降低服务器的压力。 一、MySQL读写分离技术简介 读写分离是指将数据库的读操作和写操作分别分配到不同的服务器上…...

git 推送到github远程仓库细节处理(全网最良心)

我查看了很多网上的教程都不是很好 我们先在github创建一个仓库&#xff0c;且初始化 readme 我们到本地文件初始化仓库 添加远程仓库 这时候我们就 git add . , git commit ,再准备git push 的时候 显示没有指定远程的分支 我们按照提示操作 提示我们要先git pull 提示我…...

算法训练|数据流中的中位数

LCR 160. 数据流中的中位数 - 力扣&#xff08;LeetCode&#xff09; 总结&#xff1a;这题自己最开始的想法是直接使用vector容器&#xff0c;每次取中位数的时候就进行一次排序&#xff0c;超时。题解很巧妙的利用大根堆和小根堆来解决问题&#xff0c;大根堆和小根堆各存一…...

LeetCode 2558. 从数量最多的堆取走礼物【模拟,堆或原地堆化】简单

本文属于「征服LeetCode」系列文章之一&#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁&#xff0c;本系列将至少持续到刷完所有无锁题之日为止&#xff1b;由于LeetCode还在不断地创建新题&#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章…...

windows服务器环境下使用php调用com组件

Office设置 安装 office2013 且通过正版激活码激活 在组件服务 计算机 我的电脑 DOM 中找到 Microsoft Word 97 - 2003 文档 服务&#xff0c;右键属性 身份验证调整为 无 在 标识中 调整为 交互式用户 php环境设置 开启com组件扩展 在php.ini中设置 extensionphp_com_dotn…...

3DCAT+东风日产:共建线上个性化订车实时云渲染方案

近年来&#xff0c;随着5G网络和云计算技术的不断发展&#xff0c;交互式3D实时云看车正在成为一种新的看车方式。 与传统的到4S店实地考察不同&#xff0c;消费者可以足不出户&#xff0c;通过网络与终端设备即可实现全方位展示、自选汽车配色、模拟效果、快捷选车并进行个性…...

ESP32读取DHT11温湿度数据

芯片&#xff1a;ESP32 环境&#xff1a;Arduino 一、安装DHT11传感器库 红框的库&#xff0c;别安装错了 二、代码 注意&#xff0c;DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学&#xff08;ECC&#xff09;是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础&#xff0c;例如椭圆曲线数字签…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

均衡后的SNRSINR

本文主要摘自参考文献中的前两篇&#xff0c;相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程&#xff0c;其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt​ 根发送天线&#xff0c; n r n_r nr​ 根接收天线的 MIMO 系…...

Qemu arm操作系统开发环境

使用qemu虚拟arm硬件比较合适。 步骤如下&#xff1a; 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载&#xff0c;下载地址&#xff1a;https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

springboot 日志类切面,接口成功记录日志,失败不记录

springboot 日志类切面&#xff0c;接口成功记录日志&#xff0c;失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...

MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释

以Module Federation 插件详为例&#xff0c;Webpack.config.js它可能的配置和含义如下&#xff1a; 前言 Module Federation 的Webpack.config.js核心配置包括&#xff1a; name filename&#xff08;定义应用标识&#xff09; remotes&#xff08;引用远程模块&#xff0…...

高考志愿填报管理系统---开发介绍

高考志愿填报管理系统是一款专为教育机构、学校和教师设计的学生信息管理和志愿填报辅助平台。系统基于Django框架开发&#xff0c;采用现代化的Web技术&#xff0c;为教育工作者提供高效、安全、便捷的学生管理解决方案。 ## &#x1f4cb; 系统概述 ### &#x1f3af; 系统定…...