博主主页:猫头鹰源码
博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战
主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询
文末联系获取
项目介绍:
本系统分为三个角色,分别是管理员、社长、社员,以校园社团为主题,采用前后端分离,适合选题:社团管理、社团、校园社团、前后端分离类其他社团系统等。系统采用springboot+vue整合开发,前端主要使用了element-ui框架、项目后端主要使用了springboot,数据层采用mybatis。
系统包含技术:
后端:springboot,mybatis
前端:element-ui、js、css等
开发工具:idea/vscode
数据库:mysql 5.7
JDK版本:jdk1.8
部分截图说明:
下面是首页
下面是登录页面,不同角色可以登录
管理员查看系统用户
管理员查看社团活动
管理员查看社团类型
查看社团申请
社团信息
管理员通知信息查看
学生申请社团
信息维护
部分代码:
登录
@PostMapping("/login") @ResponseBody public R login(String userName, String passWord, HttpSession session){ Log.info("用户登录,用户名:{}, 用户密码:{}", userName, passWord); Users user = usersService.getUserByUserName(userName); if(user == null) { return R.error("输入的用户名不存在"); }else { if(passWord.equals(user.getPassWord().trim())) { String token = IDUtils.makeIDByUUID(); cacheHandle.addUserCache(token, user.getId()); return R.success("登录成功", token); }else { return R.error("输入的密码错误"); } } }
社团操作
@GetMapping("/info") @ResponseBody public R getInfo(String id) { Log.info("查找指定社团信息,ID:{}", id); Teams teams = teamsService.getOne(id); return R.successData(teams); } @GetMapping("/all") @ResponseBody public R getAll(){ Log.info("获取全部的社团"); List<Teams> list = teamsService.getAll(); return R.successData(list); } @GetMapping("/man") @ResponseBody public R getListByManId(String manId){ Log.info("获取指定社团管理员相关的社团列表"); List<Teams> list = teamsService.getListByManId(manId); return R.successData(list); } @GetMapping("/page") @ResponseBody public 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") @ResponseBody public R addInfo(Teams teams) { teams.setId(IDUtils.makeIDByCurrent()); teams.setCreateTime(DateUtils.getNowDate("yyyy-MM-dd")); Log.info("添加社团信息,传入参数:{}", teams); teamsService.add(teams); return R.success(); }
以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。
好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~