文末获取源码
开发语言:Java
使用框架:spring boot
前端技术:JavaScript、Vue.js 、css3
开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code
数据库:MySQL 5.7/8.0
数据库管理工具:phpstudy/Navicat
JDK版本:Java jdk8
Maven:apache-maven 3.8.1-bin
目录
一、前言介绍
二、功能需求分析
三、管理员功能模块
3.1用户管理页面
3.2学院信息管理页面
3.3健康打卡管理页面
3.4信息上报管理页面
3.5中高风险地区管理页面
四、学生功能模块
4.1请假管理页面
4.2健康打卡页面
4.3返校管理页面
4.4信息上报页面
五、辅导员功能模块
5.1审核请假管理页面
5.2返校审核管理页面
5.3信息上报页面
六、教职工功能模块
6.1公告管理页面
七、部分核心代码
7.1通知公告的关键代码
7.2健康打卡发布的关键代码
7.3教职工登录的关键代码
7.4请假管理代码
一、前言介绍
校园健康检测管理系统主要功能模块包括:健康打卡、请假管理、返校管理、信息上报、中高风险地区管理等,采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作,采取Mysql作为后台数据的主要存储单元,采用Springboot框架、MVVM模式进行业务系统的编码及其开发,实现了本系统的全部功能。本次报告,首先分析了研究的背景、作用、意义,为研究工作的合理性打下了基础。针对校园健康检测管理的各项需求以及技术问题进行分析,证明了系统的必要性和技术可行性,然后对设计系统需要使用的技术软件以及设计思想做了基本的介绍,最后来实现部署运行。
二、功能需求分析
用户功能如下:
注册账号:用户填写个人信息,并验证手机号码。
登录:根据账号密码进行登录操作。
浏览公告栏:用户可以浏览公告栏发布的通知公告信息等。
已注册学生的功能如下:
维护个人信息:学生因个人信息的变更可以随时修改自己注册信息。
健康打卡:每日进行健康打卡信息上传。
请假:存储用户的请假信息。
返校:存储用户的返校信息等。
信息上报:用户进行健康信息上报操作。
管理员功能如下:
修改密码:管理员可以随时修改自己进入系统的登录密码,以保证系统的安全性。
公告管理:对公告信息进行维护,添加、删除、修改信息。
健康打卡管理:对用户的健康打卡信息进行维护,添加、删除、修改信息。
请假管理:审核请假管理。
返校管理:对返校申请数据进行维护管理。
用户管理:可以查看注册用户的信息,并对其进行管理。
信息上报管理:对用户的健康上报信息进行维护管理。
中高风险地区管理等。
三、管理员功能模块
3.1用户管理页面
3.2学院信息管理页面
3.3健康打卡管理页面
3.4信息上报管理页面
3.5中高风险地区管理页面
四、学生功能模块
4.1请假管理页面
4.2健康打卡页面
4.3返校管理页面
4.4信息上报页面
五、辅导员功能模块
5.1审核请假管理页面
5.2返校审核管理页面
5.3信息上报页面
六、教职工功能模块
6.1公告管理页面
七、部分核心代码
7.1通知公告的关键代码
@RequestMapping(value = {"/avg_group", "/avg"})
public Map<String, Object> avg(HttpServletRequest request) {
Query count = service.avg(service.readQuery(request), service.readConfig(request));
return success(count.getResultList());
}
7.2健康打卡发布的关键代码
@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.3教职工登录的关键代码
/**
* 登录
* @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);
7.4请假管理代码
@RequestMapping(value = {"/count_group", "/count"})
public Map<String, Object> count(HttpServletRequest request) {
Query count = service.count(service.readQuery(request), service.readConfig(request));
return success(count.getResultList());
}