案例036:基于微信小程序的在线课堂系统

news/2024/7/20 4:33:08 标签: 微信小程序, 小程序, java, 微信, 开发语言

文末获取源码

开发语言:Java

框架:SSM

JDK版本:JDK1.8

数据库:mysql 5.7

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.5.4

小程序框架:uniapp

小程序开发软件:HBuilder X

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

目录

前言

系统展示

用户前台功能实现

管理员后台功能实现

代码实现

登录功能实现代码

注册功能实现代码

密码重置功能实现代码

修改信息功能实现代码

删除信息功能实现代码

保存信息功能实现代码


前言

随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,在线课堂微信小程序>微信小程序被用户普遍使用,为方便用户能够可以随时进行在线课堂微信小程序>微信小程序的数据信息管理,特开发了基于在线课堂微信小程序>微信小程序的管理系统。

在线课堂微信小程序>微信小程序的设计主要是对系统所要实现的功能进行详细考虑,确定所要实现的功能后进行界面的设计,在这中间还要考虑如何可以更好的将功能及页面进行很好的结合,方便用户可以很容易明了的找到自己所需要的信息,还有系统平台后期的可操作性,通过对信息内容的详细了解进行技术的开发。

在线课堂微信小程序>微信小程序的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与在线课堂微信小程序>微信小程序的实际需求相结合,讨论了基于在线课堂微信小程序>微信小程序的使用。 


系统展示

用户前台功能实现

注册用户通过注册窗口,进行在线填写用户账号、用户姓名、性别、年龄、头像、用户手机等,信息编辑完成后核对信息无误后进行选择注册,系统核对用户所输入的账号信息是否准确,核对信息准确无误后系统进入到操作界面。

用户登录通过填写账号、密码进行登录,进入到在线课堂微信小程序>微信小程序主界面

 用户首页页面可以查看首页、课程信息、公告栏、我的等信息,进行相对应的操作        

用户进入课程信息页面可以查看课程名称、课程分类、课程图片、任课老师、课程价格、预览视频、课程介绍等信息,进行课程订阅、点我收藏操作

 用户进入公告栏页面可以查看公告标题、公告类型、封面图片、发布日期、发布人、内容等信息,进行提交操作

用户进入我的页面可以查看课程信息、课程订阅、课程视频、我的收藏管理、在线客服、留言板等信息,进行相对应的操作

 用户进入用户信息页面可以填写用户账号、密码、用户姓名、性别、年龄、头像、用户手机等信息,进行保存、退出登录操作

用户进入课程订阅页面可以填写订阅编号、课程名称、课程分类、课程图片、任课老师、课程价格、用户账号、用户姓名、用户手机等信息,进行提交操作 

管理员后台功能实现

管理员通过在线课堂微信小程序>微信小程序进行确认,管理员进入到在线课堂微信小程序>微信小程序主界面,管理员进入到操作界面,通过登录窗口进行在线填写用户名和密码、角色进行登录,登录成功后进入到系统操作界面进行相应信息的获取

 管理员进入到界面,通过界面的任务大厅,登录成功后进入到系统可以进行查看首页、个人中心、用户管理、课程分类管理、课程信息管理、课程订阅管理、课程视频管理、公告栏管理、留言板管理、系统管理等功能模块,进行相对应操作

管理员进入到用户管理页面可以查看用户账号、用户姓名、性别、年龄、头像、用户手机等信息,进行详情、修改、删除操作

 管理员进入到课程分类管理页面可以查看课程分类等信息,进行详情、修改、删除操作


代码实现

登录功能实现代码

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

注册功能实现代码

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

密码重置功能实现代码

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

修改信息功能实现代码

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

删除信息功能实现代码

java">@RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }

保存信息功能实现代码

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


http://www.niftyadmin.cn/n/5219259.html

相关文章

国标GB28181安防视频平台EasyGBS现场突发播放中断是什么原因?

视频流媒体安防监控国标GB28181平台EasyGBS视频能力丰富&#xff0c;部署灵活&#xff0c;既能作为业务平台使用&#xff0c;也能作为安防监控视频能力层被业务管理平台调用。国标GB28181视频EasyGBS平台可提供流媒体接入、处理、转发等服务&#xff0c;支持内网、公网的安防视…

Redis Lua沙盒绕过 命令执行(CVE-2022-0543)漏洞复现

Redis Lua沙盒绕过 命令执行(CVE-2022-0543)漏洞复现 Redis如果在没有开启认证的情况下&#xff0c;可以导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取Redis的数据。–那么这也就是redis未授权访问了 Redis的默认端口是6379 可以用空间测绘搜索&#xff…

python - - 绘制垂直剖面图的脚本

把日常用的绘图脚本在这里做个记录&#xff0c;方面下次直接粘贴复制该脚本主要为绘制经度-时间的二维剖面图 四个子图&#xff0c;涉及一些图片的美化 边框加粗边框方向调整朝内添加colorbar添加小标题添加经度信息添加colorbar&#xff0c;colorbar边框加粗设置cmap设置填色…

负索引和负方向

在python里有序集合的index位置信息可正可负&#xff0c;方向可以从左向右或从右向左。以“python”字符串通过list函数转化生成的列表为例&#xff0c;其正负位置信息index值如下所示&#xff1a; 0 1 2 3 4 5 p y t h o n -6 -5 -4 -3 -2 -1 故&#xff0c;切片的start、end、…

视频号小店怎么做?新手应该怎么运营?实操经验分享!

我是电商珠珠 视频号小店自22年7月以来&#xff0c;尤其是今年被各大培训公司所推广。 为什么&#xff1f; 第一是因为他的流量和抖音不相上下&#xff0c;拥有8亿的用户且在vx的支付软件上&#xff0c;多种曝光渠道&#xff0c;其中包括视频号、朋友圈、企微、公众号等&…

element ui 的表单规则动态删减与校验

场景&#xff1a; 根据表单某个字段的选择不同&#xff0c;需要出现的el-form的表单项也不同&#xff0c;在这里直接写完所有的字段的校验规则&#xff0c;没有显示的表单项使用 this.$refs.payForm.validate((valid) > { if (valid) {} } 不会被校验

paddle detection整体结构

核心思想就是通过Yaml文件将主体模块和可拔插的模块组成一个完整的pipline. train.py流程解析&#xff1a; 初始化训练参数 1 parserArgsParser() #读取命令行传递参数&#xff0c;加载yaml文件参数 2 整合参数&#xff0c;检查参数配置是否正确 3 检查是否使用GPU加速 4 检查…

java springboot测试类Transactional解决 测试过程中在数据库留下测试数据问题

好 目前 我们已经完成了表现层对应的测试了 但这里有个坑 如果我们在执行某个声明周期时 包含了测试的过程 它会在数据库中留下一条数据 但真实企业开发 绝对不允许 过一遍留一组数据的 那么 我们的期望就是 执行测试过程 但不要留下任何数据 这是我们的数据库表 然后 这里…