末尾获取源码
开发语言:Java
Java开发工具:JDK1.8
后端框架:SSM
前端:采用Vue技术开发
数据库:MySQL5.7和Navicat管理工具结合
服务器:Tomcat8.5
开发软件:IDEA / Eclipse
是否Maven项目:是
目录
一、项目简介
二、数据库表结构
单车信息表
还车订单信息表
管理员信息表
用户信息表
租赁订单信息表
租赁费用信息表
三、系统项目截图
单车信息管理
租赁订单管理
还车订单管理
信息统计
单车信息
租赁订单
还车订单
租赁费用
四、核心代码
查询租赁订单代码
修改租赁订单代码
查询信息统计代码
查询单车信息代码
一、项目简介
网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。因此高校单车租赁信息的管理计算机化,系统化是必要的。设计开发高校共享单车管理系统不仅会节约人力和管理成本,还会安全保存庞大的数据量,对于高校单车租赁信息的维护和检索也不需要花费很多时间,非常的便利。
高校共享单车管理系统是在MySQL中建立数据表保存信息,运用SSM框架和Java语言编写。并按照软件设计开发流程进行设计实现。系统具备友好性且功能完善。管理员管理单车和区域,审核租赁订单和还车订单,收取租赁费用,查看单车租赁统计信息。用户租赁单车,归还单车,支付单车租赁费用。
高校共享单车管理系统在让高校单车租赁信息规范化的同时,也能及时通过数据输入的有效性规则检测出错误数据,让数据的录入达到准确性的目的,进而提升高校共享单车管理系统提供的数据的可靠性,让系统数据的错误率降至最低。
二、数据库表结构
为了设计出结构合理,性能优良的数据库,在设计数据库时,需要遵循三大范式:
第一范式:确保数据表当中的每列所代表的字段值都不能再进行分解了;
第二范式:在满足第一范式基础上,让数据表中每列与主键相关;
第三范式:在满足第二范式基础上,确保每列数据直接与主键相关,不是间接相关。
从上面的表述中可以看出,这三大范式,在等级上还是有区分的,最低等级的就数第一范式,最高等级的就是第三范式,趋于两者中间的是第二范式。总之,数据库设计按照这三大范式进行,可以简化设计过程,并且还会减少数据冗余,对于数据检索效率的提升也很有帮助。
单车信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
danchebianhao | varchar(200) | 是 | NULL | 单车编号 |
suoshuquyu | varchar(200) | 是 | NULL | 所属区域 |
tingfangweizhi | varchar(200) | 是 | NULL | 停放位置 |
xiaoshijiage | int(11) | 否 | 小时价格 | |
danchetupian | varchar(200) | 是 | NULL | 单车图片 |
yajin | int(11) | 是 | NULL | 押金 |
beizhu | varchar(200) | 是 | NULL | 备注 |
还车订单信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
zulinbianhao | varchar(200) | 是 | NULL | 租赁编号 |
danchebianhao | varchar(200) | 是 | NULL | 单车编号 |
yajin | varchar(200) | 是 | NULL | 押金 |
zulinfeiyong | varchar(200) | 是 | NULL | 租赁费用 |
zulinshijian | varchar(200) | 是 | NULL | 租赁时间 |
haicheshijian | datetime | 否 | 还车时间 | |
guihaiweizhi | varchar(200) | 是 | NULL | 归还位置 |
yonghuzhanghao | varchar(200) | 是 | NULL | 用户账号 |
yonghuxingming | varchar(200) | 是 | NULL | 用户姓名 |
yonghushouji | varchar(200) | 是 | NULL | 用户手机 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
管理员信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
username | varchar(100) | 否 | 用户名 | |
password | varchar(100) | 否 | 密码 |
用户信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
yonghuzhanghao | varchar(200) | 否 | 用户账号 | |
mima | varchar(200) | 否 | 密码 | |
yonghuxingming | varchar(200) | 是 | NULL | 用户姓名 |
xingbie | varchar(200) | 是 | NULL | 性别 |
nianling | int(11) | 是 | NULL | 年龄 |
touxiang | varchar(200) | 是 | NULL | 头像 |
yonghushouji | varchar(200) | 是 | NULL | 用户手机 |
租赁订单信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
zulinbianhao | varchar(200) | 是 | NULL | 租赁编号 |
danchebianhao | varchar(200) | 是 | NULL | 单车编号 |
tingfangweizhi | varchar(200) | 是 | NULL | 停放位置 |
yajin | varchar(200) | 是 | NULL | 押金 |
xiaoshijiage | varchar(200) | 是 | NULL | 小时价格 |
zulinshizhang | int(11) | 否 | 租赁时长 | |
zulinfeiyong | varchar(200) | 是 | NULL | 租赁费用 |
yonghuzhanghao | varchar(200) | 是 | NULL | 用户账号 |
yonghuxingming | varchar(200) | 是 | NULL | 用户姓名 |
yonghushouji | varchar(200) | 是 | NULL | 用户手机 |
zulinshijian | datetime | 是 | NULL | 租赁时间 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
租赁费用信息表
字段 | 类型 | 空 | 默认 | 注释 |
id (主键) | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
zulinbianhao | varchar(200) | 是 | NULL | 租赁编号 |
danchebianhao | varchar(200) | 是 | NULL | 单车编号 |
yajin | varchar(200) | 是 | NULL | 押金 |
shifouchaoshi | varchar(200) | 是 | NULL | 是否超时 |
zulinfeiyong | varchar(200) | 是 | NULL | 租赁费用 |
chaoshifeiyong | varchar(200) | 是 | NULL | 超时费用 |
zongfeiyong | varchar(200) | 是 | NULL | 总费用 |
yonghuzhanghao | varchar(200) | 是 | NULL | 用户账号 |
yonghuxingming | varchar(200) | 是 | NULL | 用户姓名 |
yonghushouji | varchar(200) | 是 | NULL | 用户手机 |
guihaishijian | datetime | 是 | NULL | 归还时间 |
ispay | varchar(200) | 是 | 未支付 | 是否支付 |
三、系统项目截图
单车信息管理
管理员权限中的单车信息管理,其运行效果见下图。管理员设置单车所属区域,每小时价格以及押金信息,并对这些数据进行修改或删除。
租赁订单管理
管理员权限中的租赁订单管理,其运行效果见下图。用户租赁单车,需要管理审核通过才可以使用。
还车订单管理
管理员权限中的还车订单管理,其运行效果见下图。用户使用完毕单车之后,自行归还单车,管理员也需要审核单车归还信息,同时对用户租赁单车产生的费用包括超时费等进行登记。
信息统计
管理员权限中的信息统计,其运行效果见下图。管理员查看数据统计信息,统计结果通过柱状图显示。
单车信息
用户权限中的单车信息,其运行效果见下图。用户在前台查询单车,在单车介绍页面,对单车进行租赁。
租赁订单
用户权限中的租赁订单,其运行效果见下图。用户查看租赁的单车的审核状态,审核状态为通过时,用户才可以使用单车,用户归还单车也需要在此模块操作。
还车订单
用户权限中的还车订单,其运行效果见下图。用户归还单车,其信息也需要管理员审核。
租赁费用
用户权限中的租赁费用,其运行效果见下图。用户提交的还车信息在管理员审核通过之后,需要在此模块支付租赁单车产生的费用。
四、核心代码
查询租赁订单代码
@RequestMapping("/query")public R query(ZulindingdanEntity zulindingdan){EntityWrapper< ZulindingdanEntity> ew = new EntityWrapper< ZulindingdanEntity>();ew.allEq(MPUtil.allEQMapPre( zulindingdan, "zulindingdan")); ZulindingdanView zulindingdanView = zulindingdanService.selectView(ew);return R.ok("查询租赁订单成功").put("data", zulindingdanView);}
修改租赁订单代码
@RequestMapping("/update")public R update(@RequestBody ZulindingdanEntity zulindingdan, HttpServletRequest request){//ValidatorUtils.validateEntity(zulindingdan);zulindingdanService.updateById(zulindingdan);//全部更新return R.ok();}
查询信息统计代码
@RequestMapping("/query")public R query(XinxitongjiEntity xinxitongji){EntityWrapper< XinxitongjiEntity> ew = new EntityWrapper< XinxitongjiEntity>();ew.allEq(MPUtil.allEQMapPre( xinxitongji, "xinxitongji")); XinxitongjiView xinxitongjiView = xinxitongjiService.selectView(ew);return R.ok("查询信息统计成功").put("data", xinxitongjiView);}
查询单车信息代码
@RequestMapping("/query")public R query(DanchexinxiEntity danchexinxi){EntityWrapper< DanchexinxiEntity> ew = new EntityWrapper< DanchexinxiEntity>();ew.allEq(MPUtil.allEQMapPre( danchexinxi, "danchexinxi")); DanchexinxiView danchexinxiView = danchexinxiService.selectView(ew);return R.ok("查询单车信息成功").put("data", danchexinxiView);}