毕业设计(论文)
题 目:
基于web的车辆租赁管理系统设
计有实现
学 生: 指导老师: 院 系: 专 业: 班 级: 学 号:
2014年6月
福建工程学院本科毕业设计(论文)作者承诺保证书
本人郑重承诺: 本篇毕业设计(论文)的内容真实、可靠。如果存在弄虚作假、抄袭的情况,本人愿承担全部责任。
学生签名:
年 月 日
福建工程学院本科毕业设计(论文)指导教师承诺保证书
本人郑重承诺:我已按有关规定对本篇毕业设计(论文)的选题与内容进行了指导和审核,该同学的毕业设计(论文)中未发现弄虚作假、抄袭的现象,本人愿承担指导教师的相关责任。
指导教师签名:
年 月 日
目 录
1 项目来源......................................................... 0
1.1 项目背景及目的 .............................................. 0 1.2 汽车租赁管理系统的现状 ...................................... 0 1。3 项目研究的目的和方法 ........................................ 1
1.3。1 项目的研究目的....................................... 1 1.3.2 开发方法及步骤 ........................................ 1
2 开发平台介绍 ..................................................... 1
2。1 系统平台环境 ................................................ 1
2。1.1 硬件平台 .............................................. 1 2。1。2软
2
件
平
台
2。2 相关技术介绍 ................................................ 2
2。2。1B/S
2
模
式
2.2.2 JQuery和Easyui ....................................... 3 2.2.3 Struts2+hibernate+Spring .............................. 3 2。2。4.................................................. maven
3
3 可行性研究 ....................................................... 3
3.1 现行组织目标 ................................................ 3 3.2 业务概况 .................................................... 3 3。3 存在的问题 .................................................. 3 3.4 可行性分析 .................................................. 3
3.4.1 经济可行性分析 ........................................ 3 3.4.2 技术可行性分析 ........................................ 4 3。4。3社
4
会
因
素
可
行
性
3。4.4 结论 .................................................. 4
4 系统功能需求 ..................................................... 4
4.1 需求分析 .................................................... 4
4。1.1 概述 .................................................. 4 4.1.2 总目标 ................................................ 4 4.2 系统功能 .................................................... 5 4。3 系统功能分析 .............................................. 6
4。3。1 概要................................................ 6 4。3.2 创建系统用例模型..................................... 6 4.3.3 创建系统静态模型...................................... 9 4。3。4. 创建系统顺序图模型................................. 12
5 系统概要设计 .................................................... 18
5.1 概述 ....................................................... 18 5。2 系统E—R图 ................................................ 18 5.3 数据库设计 ................................................. 20
5。3.1 概述................................................ 20 5.3。2 数据库表设计........................................ 21
6 系统详细设计与实现 .............................................. 23
6.1 程序设计与说明 ............................................. 23
6.1。1 用户锁定窗口模块。 ................................... 23 6。1。2增
24
约
管
理
模
块
之
增
加
加
车
辆
模
块
6。1。3预
25
6.1.4 计算费用 ............................................. 25 6。1。5报
26
表
模
块
6.1。6 车辆展示模块 ......................................... 27
7 总结 ............................................................ 29 致谢语............................................................. 30 参考文献........................................................... 31
I
基于web的车辆租赁管理系统设计与实现
摘要:现如今,大多数的中小汽车租赁公司还在采用手工作业,手工管理的方式来管理租赁活
动,这不仅仅让工作效率变得低下,还利于错误的滋生,而且不利于车辆等信息的发布。本系统主要实现租赁公司对车辆信息的发布,管理、统计租与还的业务,能够有效的提高管理效率,降低管理费用的支出。系统应用了B/S架构,将系统的主要部分集中到网络服务器上,简化了系统的开发,使用,以及更新.系统使用了sturts2+hibernate4.0+Spring+easyui等主流的框架,这些框架技术成熟,推广面高,不仅高效稳定,而且利于后期的开发与扩展.系统较好的满足了租赁公司的需求,在提高信息发布效率,管理租赁效率上,取得了一定的效果
关键字:汽车租赁管理;JSP;SQL Server 2005;sshe;myeclipse
0
Car rental management system based on web
design and implementation
Abstract: Nowadays, most of the small and medium car rental companies are still
using manual labor, manual management methods to manage the leasing activities, this is not only leads to inefficient work, but also prone to a variety of errors, and is not conducive for the information release. this system is mainly to achieve the vehicle leasing company to publish information, management and statistical rent business, it can effectively improve the efficiency of management and reduce the management cost of spending。 System adopts B/S architecture, the core of the system on the server, simplifies development, maintenance, updating and using. System USES the sturts2 + hibernate4.0 + Spring + easyui mainstream framework, such as the framework of mature technology, promoting high surface, not only efficient, stable and conducive to the development and extension of late. this system is better meet the needs of the leasing company,it achieved a certain results in improving the efficiency of information and the management efficiency of lease.
Key words: Car rental management; The JSP. SQL server 2005。 sshe;myeclipse
1
1 项目来源
1.1 项目背景及目的
伴随着时代的变化,人们对汽车租赁行业产生了更加浓厚的兴趣,更加愿意参与到汽车租赁的活动中来,因而使汽车租赁行业高速的发展.汽车租赁是指将汽车的资产所有权与使用权分开来,出租人具有资产的所有权,而租赁人和出租人以签订合同的方式,使之拥有资产的使用权。
随着电子信息化的发展,信息系统已经渗透到了各行各业当中,并且成为了节约成本,提高效益的最有效的途径之一。在这种大趋势的推动之下,汽车租赁行业采用信息系统来管理,也成为了必然的结果。其目的是以先进的计算机技术与通信技术,将汽车租赁带入到信息化管理的行列.
以往的手工作业的方式,已经无法满足租赁公司与租赁者的要求,以手工作业的方式,管理车辆的租赁,不仅仅使得业务进行的缓慢,加重工作人员的工作量,使业务更加的繁重,还容易由于各种疏忽,而诱发公司利益上的损失.而对于租赁者来说,选车的不方便,得到的信息不够全,就是所面临的一个大问题.所以就该开发一个租赁系统,将出租,归还与预约进行信息化的管理,以满足租赁者与汽车租赁公司的需求.
1.2 汽车租赁管理系统的现状
汽车租赁系统在我国的很多地方与地区得到了应用,其中系统最主要的功能就是方便用户,提高效益,降低成本,减少错误。还有就是能够改善公司的管理,提升客户的体验,提高管理人员的素质,让其做的每一步,都符合公司的规定,无形之中,也提高了公司的效益,促成了现代化的管理.而上述这些效果,基本条件便是,有一个好的信息系统,且将这个系统很好的应用在公司的业务上。
在汽车租赁系统中,主要的设计理念便是为了更好的服务租赁者,方便其快速的找到自己需要的车,选车自己所需要的车进行预约。而对租赁公司方面来说,系统能够提供管理客户的信息,车辆的信息,以及租赁管理等。
现如今租赁行业面临的最大问题是,如何让客户选到自己心仪的车,如何让客户更好的预约,如何让客户更快更及时的取到车辆,如何让公司更好的管理各种数据,就是该租赁管理系统所要解决的最重要的难题。为了能够减少工作人员的工作量,减少手工作业的时间,提升效率,让工作流程透明化,合理化。上述这些问题的解决,都必须依赖于租赁管理系统.
0
1.3 项目研究的目的和方法
1。3。1 项目的研究目的
该汽车租赁系统的开发,首先通过对汽车租赁流程的分析,业务功能的分析,以及业务数据的分析,列出系统必须要实现的功能。其次,系统采用B/S设计,方便使用者随时随地的使用系统,降低系统的使用成本;通过使用SQL2005数据库,更加迅速方便的管理客户的数据.《基于web的车辆租赁管理系统》主要功能包括查询车辆,预约车辆,查询租赁的各种信息,发布车辆,管理租赁的各种信息等.系统的使用方法与方式符合用户群的习惯,具有简单易用,方便快捷等优点。
1.3.2 开发方法及步骤
1 可行性分析
首先列出多种方案,然后对他们进行比较,找出可行性最高的一种,提出可性研究的报告。
2 需求分析
通过租赁公司,租赁者的需求描述,以及自己租车的需求体验,不同途径收集到的各种资料,对租赁流程进行一个完整的了解,更加需求,确定出系统所必须要有的功能,性能等。
3 数据库的设计
更加系统的各方面的需求,例如,业务的需求,信息的需求等,设计出符合系统要求的数据库,建立E—R图,完善数据库的设计,建立功能符合需求的数据库。
4 系统实现
采用struts2+hibernate+spring+easyui框架,实现该系统。 5 测试与分析
进行各个模块的测试,找个系统的bug,分析系统的不足之处。
2 开发平台介绍
2.1 系统平台环境
2.1.1 硬件平台
硬件平台是根据系统的设计需求,确定系统运行的物理环境,所提供的物理平台在充分满足系统的要求之下,还要有可靠性,安全性,以及高性价比等要
1
求,以提高系统的体验。根据上文的描述,提出了需要以下的硬件要求。
客户端: 处理器 Inter(R) Core(TM) i3-2330M CPU @2.20GHz 内存:2.0GB 以上
服务器端:处理器 Inter(R) Core(TM) i3—2330M CPU @2。20GHz 内存:2。0GB 以上
2.1.2 软件平台
软件平台是系统所需要的软件集成的环境,选择实用的软件环境对系统来说是至关重要的.选择时,还必须考虑该软件平台的易使用性,使用的广泛性以及软件平台的性能与价钱等。
本系统所采用的软件平台如下: 1 操作系统
操作系统作为PC机最重要的软件平台,目前使用的主要有,Linux和window这两种,本系统使用的是window 7 进行开发的,对于上述的系统,建议使用window7以上的。
2支撑软件
支撑软件是帮助开发人员更高效的开发信息系统的软件,包括编程软件,数据库和一些集成的插件等等。
(1) Myeclipse 作为企业级工作平台,利用Myeclipse我们可以在数据库与java开发,发布时提供极大的便利。而且其集成了许多的插件,方便我们编程时的使用,提供效率。
(2)SQL2005 数据库作为管理数据的必备工具,极大程度上方便了开发人员存储数据,查询数据,更改数据,删除数据等。SQL2005数据库作为微软开发的数据库,性能相当的高效,非常方面开发人员的使用。
2.2 相关技术介绍
2.2.1 B/S模式
就是浏览器/服务器模式,该模式的优点是,在TCP/IP协议等相关通信技术的支持下,能够使得客户通过浏览器来访问服务器,做到客户端与服务端的交互。相对于C/S架构的升级困难,开发费用高等缺点,B/S架构的最大优点就是运行和维护的成本很低,能够实现不同的人,从不同的地方,登录系统,进行自己所
2
需要的服务。另外,B/S模式更能够面向广大的用户,只要你要电脑,电脑能够连的上网络,那么,你就能使用基于B/S架构的系统。 2.2.2 JQuery和Easyui
JQuery是一个优秀的JavaScript框架,你是一个轻量级的js库,使用它,能够方便快捷的与后台实习Ajax交互,而且它的API非常的完全,能够让开发人员很快的上手,使之提高工作效率。Easyui是一组基于JQuer的ui插件的集合,它能够让开发人员很方便的书写后台,打造出既美观又使用的ui界面。 2.2.3 Struts2+hibernate+Spring
Ssh(Struts2+hibernate+Spring)中,其中,Struts2对模型层,控制层与视图层都提供了相应的组件.Spring是为了解决开发的复杂性,使用基本的JavaBean代替EJB,能够使你的代码更加清晰与明了。Hibernate主要是用来进行对象关系映射的,它对java与数据库之间的连接进行了非常好的封装,使开发的人员能够更好的应用面向对象的思维方式来编写代码,最大的优点是能够使系统跨数据库平台。 2.2.4 maven
maven可以利用很少的代码来描述项目的文件的构建。我就利用了maven提供的关于jar包的管理。
3 可行性研究
3.1 现行组织目标
汽车租赁管理信息系统管理的主要目标有:一、方便增加车辆 。二、方便管理用户.三、方便管理租与还。四、统计租与还量大的地区。
3.2 业务概况
汽车租赁管理系统是面向租赁公司与租赁者,对他们的各项事宜进行管理,其中包括车辆的增加,人员的管理,租与还的管理等.
3.3 存在的问题
租赁制度的管理不够完善,收费不够合理,存在乱收费的现象。 选取车辆的不方便
无法统计热门的借车与还车点等.
3.4 可行性分析
3.4.1 经济可行性分析
3
与C/S架构方式的系统来对比,采用B/S的系统有着无与伦比的优势,那就是升级与维护的费用小。并且能够让人们快速方便的使用系统,提高了系统具有的性价比。因此该系统不存在经济上的问题,相反,能够提高员工的工作效率,降低了人力的成本. 3.4.2 技术可行性分析
该系统主要采用的技术是学校中基本有接触到的技术,而且在网上的相关资料也非常的多,这些技术都是非常成熟的技术,所以不会存在技术上的问题。综上所述,技术上是完全可行的。 3.4.3 社会因素可行性
目前已经有很多基于B/S的汽车租赁系统了,租赁公司需要让管理更加信息化,智能化,快捷化,方便化,所以对该系统是有需求的。而且系统便于维护与更新,因此具有社会因素可行性。 3.4.4 结论
通过对以上三个方面的分析,我认为该系统完全具备开发的可行性。而且是有必要的,方便于公司与用户的,所以可以进行该系统的开发。
4 系统功能需求
4.1 需求分析
4.1.1 概述
基于web的汽车租赁管理系统主要是面向个租赁公司已以及租赁者的,系统主要具有的功能是用户信息管理,车辆信息管理,预约管理,出租管理,归还管理,费用计算等。系统力求于满足实际的需求,与实际相结合,提高租赁公司的工作效率,提升客户的体验。 4.1.2 总目标
目前许多中小的车辆租赁公司还在采用手工的方式来管理用户的信息,车辆信息,以及租赁的记录,这样极其不利于公司的推广,不利于让用户发现新车,也会导致不利于公司业务的展开.
这个系统能够帮汽车租赁公司完成下面的功能: 1 2 3
车辆的发布,更新,删除等 客户信息的管理等 预约信息的管理等
4
4 5 6
租赁信息的管理等
统计热门车型,热门租车地方等 计算费用
该系统能够帮助租赁者完成以下功能: 1 2 3 4
查询车辆
进行预约,修改预约等 进行租赁查询 查询费用等
本系统作为一个汽车租赁的管理系统,是租赁公司最重要的组成成分之一。
4.2 系统功能
基于目前市场实际情况,为了使汽车租赁公司更好的管车辆源信息,客户信息,租金费用等问题,同时为了让求租者能够更方便快捷的查看车辆信息。该车辆租赁系统应拥有下面的功能。
管理端:
1 系统管理:主要对系统的用户信息的维护和管理,具体包括:添加管理员,删除管理员 ,登录后密码修改,设置权限等。它是出于系统的安全考虑和用户所具有软件操作权限的控制.
2 客户管理:主要对客户信息的维护和管理,具体包括 :增、删。改、查客户信息.客户包括:租赁人,会员。
3 车辆管理:主要对车辆的信息进行管理,具体包括增、删、改、差车辆的信息,以及对车辆出租和归还时车辆状态的更新.
4 费用管理:根据租赁者租赁的车辆以及预计使用的时间,进行预计费用的计算,根据租赁者实际使用的时间,进行实际费用的计算,以及对租赁者资金冻结的管理。
5 租赁管理:主要是针对租赁者的车辆预约的管理,包括在预约时间之前,预约的车辆必须处于待租的状态。
用户端:
1 个人信息管理:主要是对用户个人信息的修改,其中包括对身份证,姓名以及密码等等。
2 租赁查询:包括查询租赁车辆的时间,所需要缴纳的各种费用等。
5
3 车辆查询:包括对车辆的信息进行查询,例如单天的费用,可以租的时间等。
4.3 系统功能分析
4。3.1 概要
这个部分主要是对系统需要实现的功能进行分析,用以明确系统主要是在做什么,需要实现哪些功能,这些功能的顺序是怎么样的。 4。3.2 创建系统用例模型
用例模型作为系统分析的第一个步骤.作为描述系统参与者所期望拥有的功能,它在需求分析阶段有着相当大的作用。
系统有以下的参与者:
1租赁者(Lease):车辆租赁者能够通过该系统进行租赁车辆,查询车辆信息,预定车辆,查询个人租赁信息等操作。
2车辆管理员(manager):对于系统来说,租赁者租赁车辆和归还车辆都需要车辆管理员进行处理。
3系统管理员(Administrator):系统管理员负责车辆.租赁者等信息的维护.
如图4—1租赁者用例图所表示,系统能够提供给租赁者如下的功能: 查找车辆:租赁者能够通过车辆的品牌或者型号或类别等查找车辆的详细信息.
登录系统:租赁者能够根据自己的用户名和相关密码登录系统,查询个人信息,查询车辆信息,进行车辆预定,查询租赁信息(包括各项费用)。
注册:租赁者可以注册一个账号,以获取登录系统的功能。 预定车辆:在登入系统后,租赁者可以预定选中的车辆。 租赁车辆:租赁者可以向车辆管理员进行车辆的租借。
归还车辆:租赁者通过车辆管理员归还租赁的车辆,并交纳相应的费用。
6
查询车辆预定车辆< 图4—1 租赁者用例图 如图4—2 车辆管理员用例图所示,系统支持车辆管理员有着以下的活动。 处理租赁:租赁者可以通过车辆管理员租赁车辆。当车辆管理员处理租赁时,需要检查用户的合法性,如果不合法,不允许租赁车辆。如果在这之前,车辆已经被用户预订,那么需要删除这条预订.(判断方法:是否缴费等)已经将车辆交付给租赁者之前的对车辆检查,对车辆的信息进行更新。 处理归还:租赁者可以通过车辆员归还车辆,并交纳相应的费用。车辆管理员应当检查车辆的状态,判断租赁者除了租金以外,还需要交纳的费用.包括:油量的使用费用,车辆破损的费用费,应该缴纳的罚单费用。 查询车辆信息:车辆管理员能够查询各种车辆信息。 添加车辆信息:车辆管理员可以进行车辆的添加,添加时需要输入车辆的详细信息。 删除车辆信息:车辆管理员可以进行车辆的删除,删除车辆时,车辆的所有信息都将被删除。 修改车辆信息:车辆的基本信息可以被车辆管理员修改。 查询租赁者信息:车辆管理员有权限查询租赁者的信息。 添加租赁者:车辆管理员可以添加租赁者,添加时需要输入租赁者的详细信息 删除车辆信息:车辆管理员可以进行租赁者的删除,删除租赁者时,租赁者的所有信息都将被删除 7 修改租赁者信息:租赁的信息可以被车辆管理员修改。 < 图4—2 车辆管理员用例图 如图4—3 系统管理员用例图所示,系统能够为系统管理员提供以下的活动支持。 查询车辆信息:系统管理员能够查询各种车辆信息. 添加车辆信息:系统管理员可以进行车辆的添加,添加时需要输入车辆的详细信息。 删除车辆信息:系统管理员可以进行车辆的删除,删除车辆时,车辆的所有信息都将被删除。 修改车辆信息:系统管理员可以更改汽车的信息. 查询租赁者信息:系统管理员有权限查询租赁者的信息。 添加租赁者:系统管理员可以添加租赁者,添加时需要输入租赁者的详细信息 删除车辆信息:系统管理员可以进行租赁者的删除,删除租赁者时,租赁者的所有信息都将被删除 修改租赁者信息:租赁的信息可以被系统管理员修改. 修改密码:系统管理员有权限修改其他用户的密码,可以有效防止租赁者或车辆管理员忘记账号密码。 修改角色:系统管理员能够修改用户的角色(租赁者和车辆管理员),更 8 改他们所拥有的系统功能 查询车辆信息删除车辆信息修改密码添加车辆信息修改角色修改车辆信息删除车辆信息manager查询车辆信息添加车辆信息修改车辆信息 图4—3 系统管理员用例图 4。3.3 创建系统静态模型 首先,确定参与者的属性,应当有以下几种: 人员信息类,如图4-4所示。该类主要是用来描述人员的相关属性的. Tmanager-id(编号) : string-name(登录名) : string-pwd(密码) : string-factualname(姓名) : string-card(身份证) : string-email((电子邮箱) : string-createdatetime(创建时间) : Date-modifydatetime(最后修改时间) : Date-role(角色0 : string-tappointments:Set 图4—4 人员信息类 其次,对系统中的一些实体类进行辨别与确定,这些类正常情况下要进行保存。 9 车辆信息类,如图4-5所示。该类主要是用来描述车辆相关属性的. Tcar-id(编号) : string-brand(品牌) : string-type(类型) : string-model(型号) : string-state(状态) : string-introduction(简介) : string-picture(图片) : string-deposit(押金) : string-price(价格) : string-area(所在地区) : string-trentrecords :Set 图4—5 车辆信息类 如图4-6所示,为租车记录类。该类主要是用来描述 Trentrecord-id(编号) : string-Tcar(租借的车辆) : Tcar-Tmanager(租借人) : Tmanager-Starttime(开始时间) : Date-Estimatendtime(预计结束时间) : Date-Estimatuseday(预计使用天数) : int-area(借车地区) : string-Rentbeforestate(租车前状态) : string-Gasoline(剩余油量) : int-operator(操作员) : Tmanager-rentstate(还车状态) : string-treturnrecords :Set 图4-6 租车记录类 还车记录类,如图4-7所示。该类主要用来描述还车记录所具有的属性. 10 Treturnrecord-id(编号) : string-Trentrecord(租车记录) : Trentrecord-endtime(结束时间) : Date-useday(使用天数) : int-rentafterstate(还车后状态) : string-gasoline(剩余油量) : int-ticket(罚单信息) : string-pexpense(破损费) : string-yexpense(油费) : string-sexpense(使用费用) : string-fexpense(罚单费用) : string-returncararea(换车地区) : string-Tmanager(操作用) : Tmanager 图4—7 还车记录类 预约记录类,如图4-8所示.该类只要用来描述预约信息所具有的属性。 Tappointment-id(编号) : string-Tcar(预约的车辆) : Tcar-Tmanager(预约人) : Tmanager-Starttime(开始时间) : Date-Estimatendtime(预计结束时间) : Date-Estimatuseday(预计使用天数) : int-area(地区) : string-appointmentstate(预约状态) : string 图4-8 预约记录类 根据不同的角色在系统中拥有不一样的权限,设计出角色所拥有的的菜单类. 菜单类,如图4-9所示. 11 Tmenu-id(编号) : string-Tmenu(父菜单) : Tmenu-text(名字) : string-iconcls(图标) : string-url(链接) : string-tmenus:Set 图4—9菜单类 图4-10为以上实体类之间的联系。 TmanagerTcar11111...nTappointment1...n10...11...n1...nTrentrecordTreturnrecord11图4-10 类图(实体类之间的相互联系) 4。3。4。 创建系统顺序图模型 为了能够清楚明白的看出系统对象之间的相互作用的行为,我们还应该创建系统的顺序图模型。 一组对象之间在时间上的相互作用可以使用顺序图进行描述。 对“租赁者预定车辆”用例的描述如下:表4—1,图4—11。 表4—1 用例租赁者预定车辆描述 名称 标示 租赁者预定车辆 UC_002 12 描述 前提 结果 扩展 包含 继承自 租赁者通过系统进行车辆的预定 登录系统 预定成功或者失败 N/A N/A N/A 预定页面TcarAppointmentlease1.预定车辆2.查找车辆3.返回车辆信息4.添加预定车辆5.是否预定成功6.显示是否预定成功信息 图4—11 租赁者预定车辆顺序图 对“租赁者查询车辆”用例的描述如下:表4—2图4-12 表4-2 租赁者查找车辆 名称 标识 描述 前提 结果 扩展 包含 继承自 租赁者查找车辆 UC001 租赁者可以查询未出租的车辆,包括车辆的各种信息 通过查询全部或者输入品牌型号等 显示相关车辆的信息 N/A N/A N/A 13 查询车辆界面Carlease1.查找车辆2.根据输入的特征模糊查找车辆3.返回车辆信息4.显示车辆信息 图 4—12 租赁者查找车辆顺序图 对“租赁者查询车辆\"用例的描述如下:表4—3图4-13 表4—3 租赁者查询个人信息 名称 标识 描述 前提 结果 扩展 包含 继承自 租赁者查询个人信息 UC 003 租赁者通过登录租赁系统来查询自己的信息 登录系统 显示出个人的信息 N/A 登录系统用例 N/A 14 登录界面用户信息显示页面lease1.登录系统2.登录信息3.实例化租赁者对象lease5.显示租赁者信息4.返回租赁者信息 图4—13租赁者查询个人信息 对“车辆管理员处理租赁”用例的描述如下:表4-4图4—14 表4—4 车辆管理员处理租赁 名称 标示 描述 前提 结果 扩展 包含 继承自 车辆管理员处理租赁 UC_010 车辆管理员对租赁者预租赁的车辆请求进行处理。 租赁者向车辆管理员请求租赁车辆冰提交身份证或驾驶证与押金等。 租赁成功或者失败 N/A N/A N/A 15 租赁车辆界面Tcarleasemanager1.提交身份证,押金与所需车辆信息2.输入车辆信息与租赁者信息3.选择车辆4.返回车辆信息5.检查车辆,输入最新车辆情况6.更新车辆信息7.添加租赁记录10.归还身份证,交付车辆9.显示租赁信息8.添加租赁信息消息 图4-14车辆管理员处理租赁 对“车辆管理员处理还车\"用例的描述如下:表4—5图4-15 表4—5 车辆管理员处理还车 名称 标示 描述 前提 结果 扩展 包含 继承自 UC_011 车辆管理员对租赁者归还的车辆进行处理。 租赁出去的车辆被租赁者归还。 添加归还记录。 N/A N/A N/A 16 归还车辆界面lease1.归还租赁车辆2.处理还车3.获取车辆信息5.检查车辆,输入最新车辆情况4.返回车辆信息6.更新车辆信息10.缴纳费用9.显示还车信息managerTcarreturnrecord7.添加租赁记录,计算费用8.添加还车信息消息 图4—15 车辆管理员处理还车 对“系统管理员增加车辆\"用例的描述如下:表4-6图4—16。 表4-6系统管理员增加车辆 名称 标识 描述 前提 结果 扩展 包含 继承自 系统管理员车辆的添加 UC 025 系统管理员通过系统进行车辆的增加操作。 系统管理员已登录 新增车辆被添加 N/A N/A N/A 17 添加车辆界面CarAdministrator1.添加车辆2.设置车辆信息5.显示提示信息3.添加车辆4.添加车辆是否成功 图4-16 系统管理员车辆的添加 5 系统概要设计 5.1 概述 通过系统概要设计,为后期的系统创造一个模型,在软件系统中,完成系统的的数据设计和系统的构建. 按照上面的需求分析,现在开始设计系统的概要设计。 5.2 系统E-R图 图5—1为系统的E-R图,现实世界可以应用e—r图进行描述,该系统中各个实体之间的关系在下图中进行了描述. 18 管理n车辆管理员处理业务租赁n检查n归还记录nnnnn车辆nnnnn租赁者n预约预约记录n拥有nn查询管理n租赁记录 管理nn系统管理员 图5-1 E-R图 实体的属性图为5-2。 登录名编号密码编号登陆名角色系统管理员车辆管理员角色密码 编号登陆名姓名编号品牌类型邮箱用户身份证简介车辆价钱押金创建时间最后修改时间出租状态地区图片 19 n编号预约者编号车辆编号编号出租状态租赁者编号车辆编号开始时间预约状态预约记录开始时间地区租赁记录预计结束时间预计使用天数地区预计使用天数预计结束时间操作员出租前车辆状态剩余油量 使用费用编号租赁单编号罚单破损费用归还记录油费地区罚单费操作员归还时车辆状态 图5—2 实体属性图 结束时间使用天数剩余油量5.3 数据库设计 5.3。1 概述 数据库作为信息系统的核心,在信息系统中有着无与伦比的作用,系统做的好不好,很大程度上依赖于数据库的设计是否完善。好的数据库设计,能够让开发人员在设计系统的时候,达到效率的事半功倍,反之,若数据库设计的不合理,不仅会照成数据的冗余,也会导致开发系统时事倍功半。 5.3.2. 数据库安全设计及描述 对系统进行了角色的划分,能够很好的保证系统数据的安全,不同的角色应该有着不同的权限,系统将为其提供不同的服务。表5—1 为角色与权限的对应表。 表5—1 角色权限对应表 权限 租赁者 描述 个人信息与车辆信息的查询,车辆的预定。 20 车辆管理员 系统管理员 对租赁者的预约,借车,还车等进行处理。 对系统的各个方面的信息进行操作. 5.3.2 数据库表设计 表5-2用来存放系统各个用户的基本信息—Tmanager 字段名 Id createdatetime modifydatetime email Name Pwd factualname Role Card 字段的类型 varchar(32) Date Date Varchar(30) Varchar(10) Varchar(32) Varchar(20) Varchar(10) Varchar(20) 是否空 N N N N N N N N N 是否唯一 是否主键 Y N N N Y N N N N Y N N N N N N N N 主键 创建时间 最后修改时间 电子邮箱 登录名 登录密码 真实姓名 角色 身份证号 所具有的含义 表5-3用来存放车辆的基本信息—Tcar 字段名 Id Brand Type Model State introduction picture deposit Price Area 字段的类型 varchar(32) Varchar(30) Varchar(30) Varchar(30) Varchar(10) Text Varchar(100) Integer Integer Varchar(20) 是否空 N N N N N N N N N N 是否唯一 是否主键 Y N N N N N N N N N Y N N N N N N N N N 主键 车辆品牌 车辆类型 型号 车辆状态 简介 图片 押金 价钱 地区 所具有的含义 表5—4用来存放预约记录—Tappointment 字段名 Id 字段的类型 varchar(32) 是否空 N 是否唯一 是否主键 Y Y 主键 所具有的含义 21 Tcar Tmanager starttime estimatendtime estimateuseday Area appointmentstate Varchar(32) Varchar(32) Date Date Integer Varchar(20) Varchar(20) N N N N N N N N N N N N N N N N N N N N N 车辆编号,外键 预约人编号,外键 开始时间 预计结束时间 预计使用天数 地区 预约状态 表5—5用来存放租借记录—Trentrecord 字段名 Id Tcar Tmanager Operator starttime estimatendtime estimateuseday Area rentbeforestate Gasoline rentstate 字段的类型 varchar(32) Varchar(32) Varchar(32) Varchar(32) Date Date Integer Varchar(20) Varchar(100) Integer Varchar(20) 是否空 N N N N N N N N N N N 是否唯一 是否主键 Y N N N N N N N N N N Y N N N N N N N N N N 主键 车辆编号,外键 租借编号,外键 操作员编号,外键 开始时间 预计结束时间 预计使用天数 地区 交车前车辆状态 剩余油量 出租情况 所具有的含义 表5—6用来存放归还记录—Trturnrecord 字段名 Id trentrecord Operator endtime useday returncararea rentafterstate 字段的类型 varchar(32) Varchar(32) Varchar(32) Date Integer Varchar(20) Varchar(100) 是否空 N N N N N N N 是否唯一 是否主键 Y N N N N N N Y N N N N N N 主键 租借编号,外键 操作员编号,外键 结束时间 使用天数 归还地区 还车时车辆状态 所具有的含义 22 Gasoline ticket pexpense yexpense fexpense sexpense Integer Varchar(100) Integer Integer Integert Integer N N N N N N N N N N N N N N N N N N 剩余油量 罚单信息 破损费用 油费 罚单费用 使用费用 表5—7用来存放系统菜单—— Tmenu 字段名 Id Pid iconCls text url 字段的类型 varchar(32) Varchar(32) Varchar(30) Varchar(30) Varchar(30) 是否空 N N N N N 是否唯一 是否主键 N N N N N Y N N N N 主键 父节点,外键 菜单图标 菜单名称 链接 所具有的含义 6 系统详细设计与实现 6.1 程序设计与说明 本系统实现了用户基本信息管理,车辆基本信息管理,预约管理,出租管理,归还管理等系统模块,以下部分将对系统中的部分代码进行说明。 6.1.1 用户锁定窗口模块。 1 描述:该模块能够让用户在暂时需要离开,又不想关闭窗口时起到很好的作用,它能锁定窗口。 2 页面展示如图6-1: 23 图6—1 用户锁定窗口界面 3实现原理:当用户点击锁定按钮时,先根据jsp页面上保存的session中用户的登录名,在弹出的dialog中显示并设定dialog的属性modal为true。当用户输入密码,点击确定时,在后台获取用户输入的密码与本来就存在的用户名,与数据库中的数据进行匹配,进行判断是否解锁成功。 6.1.2 增加车辆模块 1描述:车辆的增加是系统管理员通过这个模块完成的。 2页面展示6-2: 图6-2 添加车辆界面 3实现原理:根据车辆所需要的信息提供文本框进行数据的录入,在预览图 24 片的时候,使用了滤镜,当管理员点击了增加,图片就会被保存到指定的位置,而在数据库存储的将是该图片的url。后天收到这些数据后,对其进行处理转换后,转为实体类Tcar的属性,然后Dao层调用save()方法. 6.1.3 预约管理模块之增加 1 描述:该模块通过输入租赁者的身份证号或者是驾驶证,以及选择相关的车辆,进行预约的操作。 2效果展示6—3: 图6—3 预约管理模块界面 3实现原理:通过使用combogrid,从Tmanager取到租赁者的信息,从Tcar中取到车辆的信息,然后输入相应的开始时间和预计结束时间,能够自动的计算出相应的天数。将这些数据传入后台,实例化出预约记录对象,然后对用其的save()方法. 6.1.4 计算费用 1描述:该模块能够根据管理员输入的相应 汽油种类的单价,与损坏车辆的差价,罚单的费用进行自动的计算出租赁者应当缴纳的费用。其中包括车辆的使用费用。车辆的使用若超过当天的12点,则算一天。 2效果展示图6—4: 25 图6—4 计算费用界面 3实现原理:首先,要进行时间的计算,我采用的方法是先将时间转换为毫秒数,然后将结束时间—开始时间,得到的是两者相差的毫秒数,除以一天的毫秒数,就能获得使用的天数,其中需要注意的是,要判断还车时间是否超过了当天的12点,根据情况的不同,进行相应的时间相加减。其次,根据租车钱剩余的油量,与还车时剩余的油量,进行使用油量的计算.破损费用则是根据租前和还时,车辆是否遭到的人员损坏进行判断应当补缴多少钱.罚单费用的信息则来自于交警大队,员工在处理还车时,应该进行罚单的咨询。违约费用则是租赁在在预计结束时间之后才进行还车,此时应该根据公司的规定,对租赁者进行一定违约费用的罚款.最后根据上面等到的各个金额,计算出最后应该缴纳的总费用. 6.1.5 报表模块 1描述:该模块主要是在统计不同地区的借车辆与还车辆,利用管理人员对某些借还量大的地区,集中更大的精力,展开更多的业务,用以获得更大的效益. 2效果展示6-5: 26 图6-5 报表展示页面 3实现原理:本部分主要采用了highcharts插件来构建柱状图,数据于后台进行实时的加载,数据有出租记录表与归还记录表分别取得,在同一个柱状图中进行展示. 6.1.6 车辆展示模块 1描述:该模块主要是为了向租赁者展示租赁公司所具有的的车辆,能够提供车辆的详细信息与价格等信息。 2效果展示图6-6: 27 图6-6 车辆展示模块 3这个模块在jsp页面上使用了struts2提供的struts-tags标签,以便更好的获取后台传回的list类型的数据.后台则根据用户在前台输入的搜索条件,从数据库中查找出相应的数据,实例化出相应的对象,返回到前台的显示页面上。 28 7 总结 经过这学期的毕设,我对ssh的开发模式有了一定程度上的了解,也终于明白的什么样才能算是面向对象的思维。以前在专周做系统的时候,经常做的就是用数据库的思想去考虑类与类,对象与对象之间的关系,这是一件很错误的事情,而直到今天,我才发现了自己的错误。毕设也许是告一段落了,但是我的学习生涯却也许刚刚才开始,我要学习的东西真的还有很多。 在开发的过程中,我深刻的明白了写好代码的格式是一件非常有必要的事情,特别是在书写js代码的,好的代码书写方式,能够给自己带来极大程度上的方便,这些当然包括了变量的命名,方法的命名以及类的命名等,如果大量的使用那些毫无意义的命名,比如a,aa等,那么,这只会给自己带来极大的麻烦, 你会很快的发现,你已经不知道自己在写些什么,想得到什么数据了。 在出去实习之前,我对maven可以说是一无所知,现在我学会了如何通过简单的配置来使用maven来管理jar包,一下子觉的真的太方便了,它能很好的找到我们所需要的jar包,还能够避免包之间的冲突。当然,在做毕设的过程过,我也发现了自己大量的问题,那就是基础知识的严重不牢固,经常很简单的代码语句,我都会忘记,很容易犯一些很低级的错误,而这些错误却往往让我浪费了大量的时间.在你解决出难题的时候,你会得到极大的满足,而当你发现你的问题只是因为你犯的低级错误而导致的,那么,你将极度的懊恼.我就是在这种心情中,慢慢的去补充以前那浪费的时光. 总之,在这次毕业之中,不仅仅学到了很多的东西,也发现了自己大量的问题,但我相信,在解决这些问题的同时,我会不停的进步。 29 致谢语 回忆着几个月的毕设一学期来,我从一个学习困难户到能够做出一个简单的系统来,很大程度是因为有着老师们的指导,同学们的鼓励.此时,毕业设计已经接近了尾声,我的论文,我的系统,都是在蒋老师指导下完成的,在此,我衷心的感谢她在我毕设期间对我的帮助,是她让我能够更好的做出毕设。 毕业设计是一次综合的测试,能够让我们很好的发现自己的不足,让我们更好的认清自己,当我们改正这些不足的时候,我们就能得到很好的提高。 最后,我要再次感谢老师对我的帮助,是你让我能够将系统慢慢的完成下去。 30 参考文献 [1] Adobe Flex 3。0 For Dummies Doug McCune, Deepa Subramaniam August 2008 [2] 闪四清.SQL Server实用简明教程[M].清华大学出版社,2005 [3] 杨学瑜,王志军,刘同利.JSP入门与提高[M].清华大学出版社,2002 [4] 廖望,何俊,谢春旺,钟永生,黄智诚.SQL Server 2000案例教程[M].冶金工业出版社,2004. [5] Java基础教程—(从问题分析到程序设计).马里克、莱欧著,译。北京:清华大学出版社,2004.10 [6] 连洪武.Eclipse Web开发从入门到精通[M]。清华大学出版社,2007.6. [7] 耿祥义,张跃平。JSP实用教程(第2版)[M]。清华大学出版社,2007.10. [8] Flex第一步 邱彦林 著 清华大学出版社 [9] Flex 程序设计 (美)布郎 著,张骥 等译 人民邮电出版社 [10] 精通FLEX3。0 基于Actionscript3。0 实现 吕晓鹏 编 人民邮电出版社 [11] Flex3.0 RIA开发详解 黄曦 等编 电子工业出版社 [12] Flex3企业级Web应用系统设计与实现 姜天格 编著 机械工业出版社 [13] Adobe Flex高级编程 (美)特托拉,(美)巴伯,(美)埃里克森 著,郝刚,袁永刚 译 人民邮电出版社 [14] Flex 3 RIA开发详解与精深实践 杨占坡,杨铭,翁颖 编著 [15] 现代图书馆信息管理 赵茹林 著 科学出版社, 2008。10 [16] Vivek Chopra,Jon Eaves,Rupert Jones编著,张文静,林琪等翻译。JSP程序设计[M]。人民邮电出版社,2006 [17](美)Floyd Marinescu 。Flex Builder 3.0 Design Patterns[M] 。Wiley Computer Publishing,2002 31 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- haog.cn 版权所有 赣ICP备2024042798号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务