案例278:基于微信小程序的体育课评分系统

文末获取源码

开发语言:Java

框架:SSM

JDK版本:JDK1.8

数据库:mysql 5.7

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.5.4

小程序框架:uniapp

小程序开发软件:HBuilder X

小程序运行软件:微信开发者

目录

目录

前言

系统展示

微信端界面的实现

首页界面的实现

体育教案功能的实现界面

校园风采功能的实现界面

教学评分功能的实现界面

学生心率功能的实现界面

身体素质测评功能的实现界面

教学比赛成绩功能的实现界面

运动报告记录功能的实现界面

管理员功能的实现界面

教师管理功能的实现界面

代码实现

登录功能实现代码

注册功能实现代码

密码重置功能实现代码

修改信息功能实现代码

删除信息功能实现代码

保存信息功能实现代码


前言

随着学习压力越来越大,很多学校不重视学生的体育锻炼。近几年,教育部门发现缺少体育锻炼会影响学生的全面发展,因此开始大力发展学生的体育锻炼。对教师的体育课进行评分可以保证老师的教学质量,现在大多数学校采用问卷的方式进行体育课评分。这种方式对评分结果的统计非常麻烦,同时也降低了评分的公正性,学生的私人感情影响非常大。目前,网络发展成熟,各类网站平台层出不穷,如果可以有专业的系统提供网上体育课评分,则可以帮助学校的体育课评分。

本基于微信小程序的体育课评分系统编程语言采用Java,数据库为Mysql。在技术中加入Vue,使界面更加丰富、友好。本系统针对体育课的在线评分而开发,使用角色为管理员和学生、教师。学生可以通过注册登录,在界面里浏览体育教案、校园风采,管理自己的心率和查询身体素质测评、比赛成绩、运动报告记录等,可以对教师的体育教案进行评分和提出建议。教师可以管理自己的体育教案和对学生进行点名、对学生的身体素质测评、管理教学比赛成绩和进行课堂小结、记录运动报告等。管理员可以管理用户信息、类型信息、体育教案信息、教学评分信息、学生心率信息等。在本系统中涉及到和体育相关的多种信息,可以保证学生的体育锻炼。


系统展示

微信端界面的实现

首页界面的实现

   本功能设计的目的是帮助用户一键返回首页,在首页里的元素包括图片、列表框、文字、导航栏等。在首页的上半部分轮播图、中间是体育教案推荐、下面是体育教案。导航栏里是首页、体育教案、校园风采、我的功能按键。首页界面的实现界面如下图5.1所示:

 

体育教案功能的实现界面

在体育教案功能里可以看到课程类型,点击体育教案功能可以看到教案的详情,并可以对教案进行评分和提出建议。体育教案功能的实现界面如下图5.2所示:

 

学生评分的实现界面如下图5.3所示: 

校园风采功能的实现界面

本界面里可以看到校园的风采信息,实现界面如下图5.4所示:

 

教学评分功能的实现界面

在本功能模块里展示已评分的体育教案,想要看具体的评分详情需要点击教案标题进入详情页。教学评分功能的实现界面如下图5.5所示:

 

学生心率功能的实现界面

学生可以添加和管理自己的心率,在填写心率时可以选择教师。添加学生心率信息功能的实现界面如下图5.6所示:

 

身体素质测评功能的实现界面

本界面展示了学生的具体身体素质各项数据。学生查询身体素质测评功能的实现界面如下图5.7所示:

 

教学比赛成绩功能的实现界面

学生可以查询比赛的成绩。查询教学比赛成绩功能的实现界面如下图5.8所示:

 

运动报告记录功能的实现界面

同样学生也可以查询自己的运动报告记录数据。运行报告记录功能的实现界面如下图5.9所示:

 

管理员功能的实现界面

管理员的功能为管理微信端信息和更新微信端信息以及管理用户信息。管理的微信端信息包括体育教案信息、校园风采信息和类型信息、用户信息等。管理员功能的实现界面如下图5.10所示:

 

教师管理功能的实现界面

教师的功能与管理员的功能类似,缺少管理员信息管理、系统管理和类型管理。教师管理的实现界面如下图5.11所示:

 


代码实现

登录功能实现代码

@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();
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值