宿舍对于学生来说是自己的第二个家。很多学生都会在宿舍中度过非常漫长的求学生涯,宿舍一般都是有多人来进行居住。这其中就需要更多的管理制度对宿舍进行。只有更好地对学生宿舍进行管理,才能够让学生住得更加的舒服,舒心,才能够更加全身心的投入到学习生活中去。传统的学生宿舍一般都是由管理人员手动进行管理。为了让学生宿舍管理与时代同步我们通过springboot+vue开发了本次的学生宿舍管理系统。本系统不仅很好的对宿舍进行了安排,同时对宿舍内的卫生以及报修等紧要核心业务进行了设计和管理,解决了很多高校对宿舍管理的首要问题。
目前许多人仍将传统的纸质工具作为信息管理的主要工具,而网络技术的应用只是起到辅助作用。在对网络工具的认知程度上,较为传统的office软件等仍是人们使用的主要工具,而相对全面且专业的学生宿舍管理系统的信息管理软件仍没有得到大多数人的了解或认可。本选题则旨在通过标签分类管理等方式,实现管理员:首页、个人中心、公告信息管理、院系管理、班级管理、学生管理、宿舍信息管理、宿舍安排管理、卫生检查管理、报修信息管理、报修处理管理、缴费信息管理,学生;首页、个人中心、公告信息管理、宿舍安排管理、卫生检查管理、报修信息管理、报修处理管理、缴费信息管理等功能。从而达到对学生宿舍管理系统信息的高效管理。
使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用IDEA/Eclipse/MyEclipse导入项目,修改配置,运行项目;
将项目中applicationContext.xml配置文件中的数据库配置改为自己的配置,然后运行;
运行成功后,在浏览器中输入:http://localhost:8080/项目名
开发工具:idea/eclipse、navicat for mysql
开发语言:java、jdk1.8、mysql
硬件环境:Win10系统、Google等。
主要技术:spring家族,springboot springmvc、mybatis、vue 、java等
根据对学生宿舍故障报修系统的分析,学生宿舍故障报修系统主要包括以下几大功能:
1、系统的总体处理流程:
学生宿舍故障报修管理系统的主要流程如下所述:
首先,学生通过系统将宿舍故障进行申报形成宿舍故障报修申请表;然后,宿舍管理员对该表进行审核,审核通过后形成新的宿舍故障报修表,将新表打印或传给维修人员;最后,维修人员根据该表准备所需要的设备进行维修。
对故障申请流的程图使用流程图表示如图3.1
作为学生还可以对维修的结果进行评价,同时也可以对所在宿舍的管理员进行评价;作为宿舍管理员,可以公布每天宿舍检查的成绩情况及一些重要的通知。
2、功能模块分配
①登录模块
包括学生登录、宿管登录、维修人员登录。
学生通过输入学号,密码,然后数据库核对密码,如果密码正确,则成功登录学生模块。如果密码不正确,提示错误。同时学生可以修改密码。
宿管通过输入编号,密码,然后数据库核对密码,如果密码正确,则成功登录学生模块。如果密码不正确,提示错误。同时宿管可以修改密码。
维修人员通过输入编号,密码,然后数据库核对密码,如果密码正确,则成功登录学生模块。如果密码不正确,提示错误。同时维修人员可以修改密码。
②报修模块
当学生或宿舍管理员登录进入自己的个人空间,在个人功能中包括设报修功能,当他们正确填写完申报表之后,系统将会把相应的数据存入数据库。
数据的输入包括鼠标和键盘的一些操作;
宿舍号:输入登录者所在的宿舍号,否则将会提示错误(即只能申报登陆者所在的宿舍,宿舍管理员申报除外)
宿舍楼号:输入登陆者所在的宿舍楼号。
设备类型:可以通过鼠标来进行选择下拉框。
设备名称:可以通过鼠标来进选择下拉框。系统会自动根据前面选择的设备类型,自动进行筛选出相应的设备名称共选择。
申报人:输入自己的名字。
申报时间:本项可以通过点击鼠标获得。
③报修审核子模块
报修表的主要作用是拥有管理权限的管理员登录系统后,获得相应的管理权限,可以对学生提交的宿舍报修表中的信息进行相应的管理。包括对需要维修的设备进行分类管理;对暂时不能维修的设备信息进行删除处理,并将信息留言给提交申请表的学生;对一些常见的问题,如因欠费造成停电的故障进行回复等。最终将审核后的信息进行备份并传送给维修人员,以供维修人员根据表单信息准备维修工具和器材。
在学生对宿舍内的相关信息进行了报修之后,管理人员要对相关的报修内容进行审核。审核无误,确定确实存在问题之后。安排相关维修人员对其进行处理,并给出处理结果
/**
* 登录相关
*/
("users")
public class UserController{
private UserService userService;
private TokenService tokenService;
/**
* 登录
*/
(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null || !user.getPassword().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
return R.ok().put("token", token);
}
/**
* 注册
*/
(value = "/register")
public R register( UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 退出
*/
(value = "logout")
public R logout(HttpServletRequest request) {
request.getSession().invalidate();
return R.ok("退出成功");
}
/**
* 密码重置
*/
(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null) {
return R.error("账号不存在");
}
user.setPassword("123456");
userService.update(user,null);
return R.ok("密码已重置为:123456");
}
/**
* 列表
*/
("/page")
public R page( Map<String, Object> params,UserEntity user){
EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
("/list")
public R list( UserEntity user){
EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
ew.allEq(MPUtil.allEQMapPre( user, "user"));
return R.ok().put("data", userService.selectListView(ew));
}
/**
* 信息
*/
("/info/{id}")
public R info(("id") String id){
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 获取用户的session用户信息
*/
("/session")
public R getCurrUser(HttpServletRequest request){
Long id = (Long)request.getSession().getAttribute("userId");
UserEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 保存
*/
("/save")
public R save( UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
/**
* 修改
*/
("/update")
public R update( UserEntity user){
// ValidatorUtils.validateEntity(user);
userService.updateById(user);//全部更新
return R.ok();
}
/**
* 删除
*/
("/delete")
public R delete( Long[] ids){
userService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
}
目录
1 绪论 1
1.1课题背景 1
1.2课题研究现状 1
1.3初步设计方法与实施方案 2
1.4本文研究内容 2
2 系统开发环境 4
2.1 使用工具简介 4
2.2 环境配置 4
2.3 B/S结构简介 4
2.4 MySQL数据库 5
2.5 框架介绍 5
3 系统分析 6
3.1系统可行性分析 6
3.1.1经济可行性 6
3.1.2技术可行性 6
3.1.3运行可行性 6
3.2系统现状分析 6
3.3功能需求分析 7
3.4系统设计规则与运行环境 8
3.5系统流程分析 8
3.5.1操作流程 8
3.5.2添加信息流程 9
3.5.3删除信息流程 10
4 系统设计 11
4.1系统设计主要功能 11
4.2数据库设计 11
4.2.1数据库设计规范 11
4.2.2 E/R图 11
4.2.3数据表 12
5 系统实现 25
5.1系统功能模块 25
5.2后台模块 27
5.2.1管理员功能模块 27
5.2.2用户功能模块 30
6 系统测试 33
6.1功能测试 33
6.2可用性测试 33
6.3性能测试 34
6.4测试结果分析 34
7结 论 35
参考文献 36
致 谢 37