基于微信小程序的优选驾考小程序

文末联系获取源码

开发语言:Java

框架:ssm

JDK版本:JDK1.8

服务器:tomcat7

数据库:mysql 5.7/8.0

数据库工具:Navicat11

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.3.9

浏览器:谷歌浏览器

小程序框架:uniapp

小程序开发软件:HBuilder X

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

一、前言介绍 

进入21世纪网络和计算机得到了飞速发展,并和生活进行了紧密的结合。目前,网络的运行速度以达到了千兆,覆盖范围更是深入到生活中的脚脚落落。这就促使小程序的发展。网上办公可以实现远程处理事务,远程提交工作和随时追踪工作的状态,小程序给人们带来前所未有的体验,满足了新时代人们的办公需求,所以网上小程序的管理模式得到大力发展。

本系统为优选驾考小程序,是采用微信技术和网络技术进行开发的在线驾考管理平台,可以实现报名驾校、预约练车、在线考试、试卷管理、考试场地管理等。本系统采用Java语言,数据库为mysql,运行环境为Eclipse。使用角色分为用户、管理员、驾校,本系统的功能包括驾考文章管理、学员管理、报名管理、练车预约管理、考试场地管理、考试预约管理、考试管理、用户管理、驾校管理等。其中,用户负责浏览信息、预约考试、报名驾校、预约练车、在线考试等,驾校可以管理学员、处理练车信息、报名信息、考试信息等。本系统实现了驾考的在线预约与审核,方便了用户和管理员、驾校三方的利益,提高预约的效率,更符合现代人生活。 

二、系统功能分析

本人参考大量的驾校管理软件,以及充分调查需要驾考的用户和管理员,驾校需求,设计出的本优选驾考小程序使用角色为用户,管理员,驾校,框架界面分为用户操作界面、管理员操作界面和驾校操作界面。

2.1用户的功能设计

(1)个人资料管理功能,可以针对自己的信息资料进行修改管理; 

(2)报名入口功能,本界面里展示了不同的驾校信息,可以按照要求进行报名﹔

(3)学员报名管理功能,本界面里展示了自己所有报名的驾校,可以根据具体情祝进行修改; 

(4)练车预约功能,可以根据自己的时间进行预约练车; 

(5)考试信息功能,可以浏览自己需要参加的考试以及要求进行自我安排;

(6)考试预约功能,在线填写预约信息实现考试的预约; 

(7)我的收藏管理功能,管理自己收藏的所有信息;

(8)试卷列表功能,可以查询所有的试卷,选择适合自己的试卷进行考试;

(9)理论考试记录功能,查询考试记录信息; 

(10)错题本功能,自己曾经做错的题目都在本界面保存,方便用户进行针对性的学习。

2.2管理员的功能设计

(1)驾考文章管理功能,可以发布、编辑、删除驾考文章信息;

(2)个人中心功能,本功能可以修改管理员的个人资料﹔

(3)学员管理功能,此功能可以对用户的账号、资料等进行审核管理;

(4)驾校管理功能,对驾校的账号、密码等进行管理;

(5)驾照类型管理功能,对不同型号的车需要考不同的驾照,本功能负责类型的管理;

(6)报名入口管理功能,实现学员报名入口信息的审核管理;

(7)学员报名管理功能,实现审核学员报名的功能;

(8)练车预约功能,可以审核学员的预约练车信息;

(9)考试场地管理功能,安排考试的场地;

(10)考试场次管理,安排考试的不同场次;

(11)考试信息管理功能,对考试的内容进行安排:

(12)考试预约管理功能,审核学员的考试预约;

(13)试卷管理功能,可以设置试卷;

(14)试题管理功能,对试题信息进行添加管理;

(15)系统管理功能,发布和管理公告信息、轮播图。

2.3驾校的功能设计

(1)个人中心功能,实现对驾校资料的管理;

(2)学员管理功能,实现对自己学员信息的资料管理;

(3)驾考文章管理功能,实现浏览文章信息和管理文章信息;

(4)报名入口管理功能,发布报名信息和管理报名信息;

(5)学员报名管理功能,查询和处理学员的报名;

(6)练车预约功能,审核学员的练车预约并进行安排;

(7)考试信息管理功能,实现考试内容信息的安排管理;

(8)考试预约管理功能,审核学员的预约考试。 

2.4系统功能结构

系统的功能结构是系统实现的框架,本系统的主要结构为管理员和用户、驾校。本优选驾考小程序功能结构图如下图所示: 

三、小程序端

3.1用户注册功能的界面实现 

用户在使用本系统时需要先进行注册,注册界面里需要填写用户名、密码、姓名、性别、手机号、身份证号。用户注册功能的运行界面如下图所示: 

3.2登录功能的界面实现 

用户注册后,需要登录。登录界面设计的目的是保证当前的使用角色等级。管理员、驾校同样需要登录后才可以进行操作。在管理员、驾校的登录界面里加入了权限的选择,在登录时只需要填写用户账号和密码就可以实现。用户登录的运行界面如下图所示:

3.3报名功能的界面实现 

用户的功能主要为报名驾校、预约练车、预约考试、在线考试。在报名时需要选择好要报名的驾校、驾照类型。报名功能的运行界面如下图所示: 

3.4预约考试功能的实现界面 

用户在查询到考试信息后可以在线预约考试。预约考试功能的运行界面如下图所示: 

3.5预约练车功能的实现界面 

在报名成功后,用户可以预约练车。用户预约练车功能的实现界面如下图所示: 

3.6在线考试功能的实现 

在试卷列表里可以选择试卷进行在线考试,实现界面如下图所示: 

3.7我的功能界面实现 

我的功能界面相关于用户中心,展示了用户的所有操作内容。我的功能界面实现如下图所示: 

四、管理员功能的设计实现

在登录的界面中包含的元素有系统题目、输入框、登录按钮、选择框。本系统的使用权限为管理员和用户、驾校。管理员登录的运行界面如下图所示: 

4.1学员管理功能的实现界面 

学员的信息可由管理员添加,本功能设计的目的是添加和审核学员的资料,当发现不当的使用用户可以删除其账号。当删除用户信息后相对应的用户信息表里的信息也会随着删除掉。查询学员信息.功能的运行界面如下图所示: 

4.2个人中心管理功能的实现界面 

个人中心管理的内容包括管理个人资料和修改密码,本系统中可以拥有多个管理员。个人中心功能的运行界面如下图所示: 

4.3试卷管理功能的实现界面

用户浏览的试卷都是由管理员在此功能里进行维护添加的,同样当管理员添加、编辑试卷信息后,数据库表中的试卷信息表也会发生改变。试卷信息管理功能的运行界面如下图所示: 

在添加试卷信息时可以重置和提交。发布新试卷的运行界面如下图所示:

五、驾校角色功能的实现界面 

驾校的功能与管理员的功能相似,没有管理员的权力大,可以管理学员信息、报名信息、考试预约信息、考试信息、驾考文章信息、练车预约信息、考试预约信息。实现界面如下图所示: 

六、部分核心代码

6.1登录系统主要代码

/**
	 * 登录
	 */
	@IgnoreAuth
	@RequestMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuzhanghao", username));
		if(user==null || !user.getMima().equals(password)) {
			return R.error("账号或密码不正确");
		}
		
		String token = tokenService.generateToken(user.getId(), username,"yonghu",  "用户" );
		return R.ok().put("token", token);
	}

6.2上传文件关键代码

@RequestMapping("/upload")
	public R upload(@RequestParam("file") MultipartFile file,String type) throws Exception {
		if (file.isEmpty()) {
			throw new EIException("上传文件不能为空");
		}
		String fileExt = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1);
		File path = new File(ResourceUtils.getURL("classpath:static").getPath());
		if(!path.exists()) {
		    path = new File("");
		}
		File upload = new File(path.getAbsolutePath(),"/upload/");
		if(!upload.exists()) {
		    upload.mkdirs();
		}
		String fileName = new Date().getTime()+"."+fileExt;
		File dest = new File(upload.getAbsolutePath()+"/"+fileName);
		file.transferTo(dest);
		/**
  		 * 如果使用idea或者eclipse重启项目,发现之前上传的图片或者文件丢失,将下面一行代码注释打开
   		 * 请将以下的"D:\\springbootq33sd\\src\\main\\resources\\static\\upload"替换成你本地项目的upload路径,
 		 * 并且项目路径不能存在中文、空格等特殊字符
 		 */
//		FileUtils.copyFile(dest, new File("D:\\springbootq33sd\\src\\main\\resources\\static\\upload"+"/"+fileName)); /**修改了路径以后请将该行最前面的//注释去掉**/
		if(StringUtils.isNotBlank(type) && type.equals("1")) {
			ConfigEntity configEntity = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "faceFile"));
			if(configEntity==null) {
				configEntity = new ConfigEntity();
				configEntity.setName("faceFile");
				configEntity.setValue(fileName);
			} else {
				configEntity.setValue(fileName);
			}
			configService.insertOrUpdate(configEntity);
		}
		return R.ok().put("file", fileName);
	}
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值