文末获取源码

开发语言:Java

使用框架:spring boot

前端技术:JavaScript、Vue 、css3

开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code

数据库:MySQL 5.7/8.0

数据库管理工具:phpstudy/Navicat

JDK版本:jdk1.8

Maven:apache-maven 3.8.1-bin

目录

一、前言介绍

二、功能需求分析

2.1学生模块

2.2教师模块

2.3管理员模块

三、前台学生功能

3.1学生首页模块

3.2社区互动模块

3.3新闻资讯模块

3.4疫苗信息模块

3.5学生接种预约模块

四、学生后台功能模块

4.1出行报备管理模块

4.2学生接种预约管理模块

4.3请假管理模块

五、教师后台功能模块

5.1请假管理审核页面

六、管理员功能模块

6.1轮播图管理模块

6.2教师管理模块

6.3新闻资讯管理模块

七、部分核心代码

7.1疫苗信息的关键代码

7.2接种预约关键代码

7.3出行报备关键代码

7.4学生注册的关键代码

7.5学生登录的关键代码


一、前言介绍

系统采用了Java技术,将所有业务模块采用以浏览器交互的模式,选择MySQL作为系统的数据库,开发工具选择IDEA来进行系统的设计。基本实现了大学校园防疫与服务系统 应有的主要功能模块,本系统有管理员、教师、学生。管理员:后台首页、轮播图、公告栏、用户管理、社区互动、新闻资讯、出行报备、疫苗信息、学生接种预约、教师接种预约、请假管理、销假申请。教师;后台首页、社区互动、出行报备、教师接种预约、请假管理、销假申请。学生;后台首页、社区互动、出行报备、教师接种预约、请假管理、销假申请管理等。

对系统进行测试后,改善了程序逻辑和代码。同时确保系统中所有的程序都能正常运行,所有的功能都能操作,并且该系统有很好的操作体验,实现了对于大学校园防疫与服务系统 对学生管理、教师管理、政府部门双赢。

二、功能需求分析

大学校园防疫与服务系统 在对需求做解析后,整个系统主要分为三个部分:管理员、教师和学生,每个模块下的分支功能不一样。对功能做出如下说明:

2.1学生模块

账号登录认证。

管理个人资料信息,修改可修改的信息项。

出行报备,添加和查询已有出行的记录。

2.2教师模块

个人资料管理,修改删除自己的信息。

学生的添加与查询、出行报备的查询、疫苗接种预约的查询、请假管理的查询与审核请假、销假申请的查询及删除、通知公告的查询。

2.3管理员模块

系统用户的管理,管理和添加删除管理员,可以设置登录权限,或者删除所有用户账号。

教师管理,添加教师的具体信息与查询教师同时也具备删除教师。

通知公告管理,添加发布公告查询公告和删除公告的功能。

学生管理,查询学生的信息,也具备修改和删除功能。

出行报备管理,查询学生出行报备的信息,也具备修改和删除功能。

疫苗接种预约管理,查询学生疫苗接种的信息,也具备修改和删除功能。

请假管理,查询学生请假的信息,也具备修改和删除功能。

销假管理,查询学生销假的信息,也具备修改和删除功能。

系统管理,系统的备份功能。

三、前台学生功能

3.1学生首页模块

3.2社区互动模块

3.3新闻资讯模块

3.4疫苗信息模块

3.5学生接种预约模块

四、学生后台功能模块

4.1出行报备管理模块

4.2学生接种预约管理模块

4.3请假管理模块

五、教师后台功能模块

5.1请假管理审核页面

六、管理员功能模块

6.1轮播图管理模块

6.2教师管理模块

6.3新闻资讯管理模块

七、部分核心代码

7.1疫苗信息的关键代码

 @PostMapping("/add")@Transactionalpublic Map<String, Object> add(HttpServletRequest request) throws IOException {service.insert(service.readBody(request.getReader()));return success(1);}@Transactionalpublic Map<String, Object> addMap(Map<String,Object> map){service.insert(map);return success(1);}

7.2接种预约关键代码

@RequestMapping("/get_list")public Map<String, Object> getList(HttpServletRequest request) {Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));return success(map);}

7.3出行报备关键代码

@RequestMapping("/get_obj")public Map<String, Object> obj(HttpServletRequest request) {Query select = service.select(service.readQuery(request), service.readConfig(request));List resultList = select.getResultList();if (resultList.size() > 0) {JSONObject jsonObject = new JSONObject();jsonObject.put("obj",resultList.get(0));return success(jsonObject);} else {return success(null);}}public Query select(Map<String,String> query,Map<String,String> config){StringBuffer sql = new StringBuffer("select ");sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");}if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");}if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);}log.info("[{}] - 查询操作,sql: {}",table,sql);return runEntitySql(sql.toString());}

7.4学生注册的关键代码

/*** 注册* @param user* @return*/@PostMapping("register")public Map<String, Object> signUp(@RequestBody User user) {// 查询用户Map<String, String> query = new HashMap<>();query.put("username",user.getUsername());List list = service.select(query, new HashMap<>()).getResultList();if (list.size()>0){return error(30000, "用户已存在");}user.setUserId(null);user.setPassword(service.encryption(user.getPassword()));service.save(user);return success(1);}/*** 用户ID:[0,8388607]用户获取其他与用户相关的数据*/@Id@GeneratedValue(strategy = GenerationType.IDENTITY)@Column(name = "user_id")private Integer userId;/*** 账户状态:[0,10](1可用|2异常|3已冻结|4已注销)*/@Basic@Column(name = "state")private Integer state;/*** 所在用户组:[0,32767]决定用户身份和权限*/@Basic@Column(name = "user_group")private String userGroup;/*** 上次登录时间:*/@Basic@Column(name = "login_time")private Timestamp loginTime;/*** 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时*/@Basic@Column(name = "phone")private String phone;/*** 手机认证:[0,1](0未认证|1审核中|2已认证)*/@Basic@Column(name = "phone_state")private Integer phoneState;/*** 用户名:[0,16]用户登录时所用的账户名称*/@Basic@Column(name = "username")private String username;/*** 昵称:[0,16]*/@Basic@Column(name = "nickname")private String nickname;/*** 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成*/@Basic@Column(name = "password")private String password;/*** 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时*/@Basic@Column(name = "email")private String email;/*** 邮箱认证:[0,1](0未认证|1审核中|2已认证)*/@Basic@Column(name = "email_state")private Integer emailState;/*** 头像地址:[0,255]*/@Basic@Column(name = "avatar")private String avatar;/*** 创建时间:*/@Basic@Column(name = "create_time")@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")private Timestamp createTime;@Basic@Transientprivate String code;}

7.5学生登录的关键代码

/*** 登录* @param data* @param httpServletRequest* @return*/@PostMapping("login")public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {log.info("[执行登录接口]");String username = data.get("username");String email = data.get("email");String phone = data.get("phone");String password = data.get("password");List resultList = null;Map<String, String> map = new HashMap<>();if(username != null && "".equals(username) == false){map.put("username", username);resultList = service.select(map, new HashMap<>()).getResultList();}else if(email != null && "".equals(email) == false){map.put("email", email);resultList = service.select(map, new HashMap<>()).getResultList();}else if(phone != null && "".equals(phone) == false){map.put("phone", phone);resultList = service.select(map, new HashMap<>()).getResultList();}else{return error(30000, "账号或密码不能为空");}if (resultList == null || password == null) {return error(30000, "账号或密码不能为空");}//判断是否有这个用户if (resultList.size()<=0){return error(30000,"用户不存在");}User byUsername = (User) resultList.get(0);Map<String, String> groupMap = new HashMap<>();groupMap.put("name",byUsername.getUserGroup());List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();if (groupList.size()<1){return error(30000,"用户组不存在");}UserGroup userGroup = (UserGroup) groupList.get(0);//查询用户审核状态if (!StringUtils.isEmpty(userGroup.getSourceTable())){String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();String res = String.valueOf(service.runCountSql(sql).getSingleResult());if (res==null){return error(30000,"用户不存在");}if (!res.equals("已通过")){return error(30000,"该用户审核未通过");}}//查询用户状态if (byUsername.getState()!=1){return error(30000,"用户非可用状态,不能登录");}String md5password = service.encryption(password);if (byUsername.getPassword().equals(md5password)) {// 存储Token到数据库AccessToken accessToken = new AccessToken();accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));accessToken.setUser_id(byUsername.getUserId());tokenService.save(accessToken);// 返回用户信息JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));user.put("token", accessToken.getToken());JSONObject ret = new JSONObject();ret.put("obj",user);return success(ret);} else {return error(30000, "账号或密码不正确");}}

SpringBoot+Vue项目大学校园防疫与服务系统的设计与实现相关推荐

  1. 基于springboot大学校园防疫与服务系统毕业设计源码111556

    基于springboot大学校园防疫与服务系统 摘 要 2019年12月19号中国武汉发生第一例新冠病毒的到来,大家都在听从政府的号召在居家隔离,不管是在城市还是在乡镇.农村,这引起我的注目,设计一套 ...

  2. 基于Spring Boot的大学校园防疫与服务系统毕业设计源码111556

    基于springboo大学校园防疫与服务系统 摘 要 2019年12月19号中国武汉发生第一例新冠病毒的到来,大家都在听从政府的号召在居家隔离,不管是在城市还是在乡镇.农村,这引起我的注目,设计一套大 ...

  3. 计算机毕业设计Java校园帮代服务系统的设计与实现(源码+系统+mysql数据库+Lw文档)

    计算机毕业设计Java校园帮代服务系统的设计与实现(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java校园帮代服务系统的设计与实现(源码+系统+mysql数据库+Lw文档) 本源码技术栈 ...

  4. 【Springboot+vue项目开发】:网盘系统项目开发流程(03 微服务项目的划分及构建)

    03 微服务项目的划分及构建 项目链接 问题1:IDEA如何将git下来的是工程转为maven工程 IDEA如何将git下来的是工程转为maven工程 问题2:jdk1.8的选用 问题3:Maven工 ...

  5. Springboot毕设项目健康美食及菜谱分享系统的设计与实现xr4n8(java+VUE+Mybatis+Maven+Mysql)

    项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  6. ssm校园帮代服务系统的设计与实现答辩PPT模板

    今日PPT展示如下:

  7. 基于Java+SpringBoot+Vue民宿管理系统 民宿预定系统的设计与实现

  8. ssm校园拼车服务系统毕业设计源码211633

    SSM校园拼车服务系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用.信息时代的到来已成为不可阻挡的时尚潮流,人类发展 ...

  9. (附源码)ssm校园拼车服务系统 毕业设计211633

    SSM校园拼车服务系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用.信息时代的到来已成为不可阻挡的时尚潮流,人类发展 ...

最新文章

  1. 浅谈高性能数据库集群——读写分离
  2. jsoup 获取html中body内容_python爬虫之下载盗墓笔记(bs4解析HTML)
  3. easypoi导出word表格_拒绝加班,批量将word文档中的信息高效率提取出来存储到Excel中...
  4. c语言二次函数拟合,二次函数拟合算法
  5. 设计思路工作笔记-使用当天时间戳的差值读取实时数据绕过错误数据
  6. [转] Asp.net Session常见问题集锦
  7. 汽车辐射监测系统-Qt开发
  8. Paip.断点调试MYSQL存储过程跟函数的解决方案大法
  9. FedEx联邦快递查询寄件电子面单API接口接入教程-快递100API(以国际电子面单接口为例)
  10. 【UML 建模】在线UML建模工具 ProcessOn 使用详解
  11. SCARA机器人matlab仿真
  12. 浅谈0-day漏洞的在野利用
  13. 小组取什么名字好_2020鼠年男孩取什么名字好
  14. 网站漏洞修复公司 对网站上传文件漏洞的修复与安全加固
  15. 网易新版BLOG邀请,有需要的朋友进。
  16. oeasy教您玩转vim - 27 - 文件类型
  17. B端大数据量查询优化方案
  18. 再见Dubbo,不学会新的Java开发框架。你以为阿里P7能这么好拿?
  19. 创建 ROS 工作区
  20. cee怎么把大图片放进小盒子_PS的实际应用:怎么给盒子制作包装图片

热门文章

  1. C/C++基础题056.菱形
  2. 【游戏策划】和平精英
  3. 经典的武功招式中译英
  4. 2018年计算机等级一级教程,2018年计算机一级考试内容
  5. 浮躁的IT,浮躁的CSDN
  6. python web服务器部署
  7. _beginthreadex创建多线程的用法
  8. java重定向输出流到文件(从文件到输入流)
  9. 服务器网页测速软件,网站速度测速,推荐5款实用的网站速度测速工具
  10. python前景怎么样-Python 未来发展前景怎么样?