文末获取源码
开发语言:Java
框架:SSM
JDK版本:JDK1.8
数据库:mysql 5.7
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.5.4
框架:uniapp
开发软件:HBuilder X
目录
前言
随着Internet的发展,人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化,网络化和电子化。网上管理,它将是直接管理签到系统app的最新形式。本论文是以构建签到系统app为目标,使用java技术制作,由前台和后台两大部分组成。着重论述了系统设计分析,系统主要包括首页、个人中心、通知公告管理、学生管理、教师管理、学生课表管理、课程信息管理、班级信息管理、课程签到管理、学生签到管理、学生补签管理、警告信息管理、系统管理等功能,以及后台数据库管理。从app设计到详细实现都根据了app的建设思想和mysql数据库的设计方法。
该系统的应用可以减少工作人员的劳动强度,提高工作效率与管理水平,具有很大的价值。它可以使签到系统app操作简单,成功率高,使网上签到系统app的管理向一个更高层次前进。
本系统尝试使用ssm框架在网上架构一个动态的签到系统app,以使每一用户在家就能通过系统来进行签到管理。
系统展示
用户登录,通过输入用户名,密码,选择角色并点击登录进行系统登录操作,如图5-2所示。
学生注册,在注册页面通过填写学号、密码、确认密码、姓名、年龄、性别、手机、班级等信息完成注册操作,如图5-3所示。
签到系统app,在app首页可以查看首页、学生课表、班级信息、课程签到、我的等内容进行详细操作,如图5-4所示。
学生课表,在学生课表页面可以查看日期、星期、图片、课程一、课程二、课程三、课程四、学号、姓名等详细内容,如图5-5所示。
班级信息,在班级信息页面可以查看班级、班级人数、班主任、封面、位置、详情等详细内容,如图5-6所示。
课程签到,在课程签到页面可以查看课程名称、班级、教师账号、教师姓名、签到码、开始时间、截止时间、详情等详细内容进行学生签到,学生补签操作,如图5-7所示。
学生,在我的页面可以对课程签到、学生签到、学生补签、警告信息、我的收藏管理等功能进行详细操作,如图5-8所示。
学生信息,在用户信息页面通过填写学号、密码、姓名、年龄、性别、手机、班级、照片等详细内容进行保存或退出登录操作,如图5-9所示。
后台登录,管理员和教师通过输入用户名,密码,选择角色并点击登录进行系统登录操作,如图5-10所示。
管理员登录app后,可以对首页、个人中心、通知公告管理、学生管理、教师管理、学生课表管理、课程信息管理、班级信息管理、课程签到管理、学生签到管理、学生补签管理、警告信息管理、系统管理等功能进行相应操作,如图5-11所示。
通知公告管理,在通知公告管理页面可以查看索引、标题、发布时间、封面等内容,并根据需要进行详情,修改和删除等操作,如图5-12所示。
学生管理,在学生管理页面可以查看索引、学号、姓名、年龄、性别、手机、照片等内容,并根据需要进行详情,修改和删除等操作,如图5-13所示。
教师管理,在教师管理页面可以查看索引、教师账号、教师姓名、年龄、工龄、性别、手机、照片等内容,并根据需要进行详情,修改和删除等操作,如图5-14所示。
学生课表管理,在学生课表管理页面可以查看索引、日期、星期、课程一、课程二、课程三、课程四、封面、学号、姓名等内容,并根据需要进行详情,修改和删除等操作,如图5-15所示。
课程信息管理,在课程信息管理页面可以查看索引、课程名称、课程分类、开课时间、结束时间、封面、教师账号、教师姓名等内容,并根据需要进行详情,修改和删除等操作,如图5-16所示。
班级信息管理,在班级信息管理页面可以查看索引、班级、班级人数、班主任、封面、位置等内容,并根据需要进行详情,修改和删除等操作,如图5-17所示。
课程签到管理,在课程签到管理页面可以查看索引、课程名称、班级、教师账号、教师姓名、签到码、开始时间、截止时间等内容,并根据需要进行详情和删除等操作,如图5-18所示。
学生签到管理,在学生签到管理页面可以查看索引、课程名称、学号、姓名、照片、类别、签到时间、签到地点、备注、教师账号、教师姓名等内容,并根据需要进行详情和删除等操作,如图5-19所示。
学生补签管理,在学生补签管理页面可以查看索引、课程名称、学号、姓名、照片、类别、补签时间、补签地点、备注、教师账号、教师姓名等内容,并根据需要进行详情和删除等操作,如图5-20所示。
警告信息管理,在警告信息管理页面可以查看索引、课程名称、封面、警告时间、学号、姓名、教师账号、教师姓名等内容,并根据需要进行详情和删除等操作,如图5-21所示。
管理员登录app后,可以对首页、个人中心、通知公告管理、课程信息管理、班级信息管理、课程签到管理、学生签到管理、学生补签管理、警告信息管理等功能进行相应操作,如图5-22所示。
代码实现
登录功能实现代码
@IgnoreAuth
@PostMapping(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);
}
注册功能实现代码
@IgnoreAuth
@PostMapping(value = "/register")
public R register(@RequestBody 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();
}
密码重置功能实现代码
@IgnoreAuth
@RequestMapping(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");
}
修改信息功能实现代码
@RequestMapping("/update")
public R update(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));
if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {
return R.error("用户名已存在。");
}
userService.updateById(user);//全部更新
return R.ok();
}
删除信息功能实现代码
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
userService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
保存信息功能实现代码
@PostMapping("/save")
public R save(@RequestBody 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();
}