《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc

上传人:哈尼dd 文档编号:5016811 上传时间:2020-01-28 格式:DOC 页数:21 大小:621.50KB
返回 下载 相关 举报
《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc_第1页
第1页 / 共21页
《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc_第2页
第2页 / 共21页
《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc_第3页
第3页 / 共21页
《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc_第4页
第4页 / 共21页
《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc》由会员分享,可在线阅读,更多相关《《数据库课程设计》课程设计说明书-汽车租赁管理系统.doc(21页珍藏版)》请在三一文库上搜索。

1、设计说明书设计说明书 课程名称 数据库课程设计数据库课程设计 题目名称 汽车租赁管理系统 学生姓名 学号 专 业 指导教师 年 月 日 目录目录 第一章第一章 系统概述系统概述 1 1 1.1 背景1 1.2 发展现状1 第二章第二章 需求分析需求分析 2 2 2.1 功能需求2 2.2 数据需求3 第三章第三章 系统设计系统设计 5 5 3.1 系统结构5 3.2 数据库设计5 3.2.1 ER 图 .5 3.2.2 逻辑结构6 3.2.3 数据库物理结构7 3.2.4 数据库实现9 3.3 用户控制系统9 3.4 模块设计.10 3.4.1 汽车管理模块设计.10 3.4.2 基本设置模块

2、设计.11 第四章第四章 系统实现系统实现 1111 4.1 用户登录模块.11 4.2 汽车管理模块实现.12 4.3 汽车预租模块实现.16 第五章第五章 后记后记 1818 5.1 完善计划.18 5.2 个人总结.19 参考文献参考文献 1919 -1- 第一章第一章 系统概述系统概述 1.1 背景 今天,随着人民生活水平的提高,汽车工业的发展和汽车的普及,汽车如今已经 与我们的生活密不可分,而汽车租赁也已成为一个极具市场潜力的行业,面对飞速发 展的汽车租赁市场,其经营管理的汽车种类繁多,样式各异,客户需求量大,客户要求 高,每天的工作量大,一套完整的管理系统对于汽车租赁公司来说已经十

3、分重要, 在信 息飞速发展的今天,计算机在事务管理方面的应用已经相当广泛,但目前很多汽车租 赁公司还停留在人工管理的水平上,显然不适应时代的发展,管理人员目前需要一套 方便、计算机化的管理信息系统来代替他们繁琐、低效的传统手工管理方式,并最终 实现汽车租赁管理的全面自动化,使用汽车租赁管理系统可以规范企业的管理和经营 行为,减少企业的经营成本,提高工作效率。 汽车租赁管理系统是为汽车租赁公司提供的一个简单易用的系统,随着科技的发展, 设备和管理的现代化,在实际工作中如何提高工作效率成为一个很重要的问题。而建 立管理系统是一个很好的解决办法。 1.2 发展现状 目前市场上相关系统并不多,毕竟汽车

4、租赁行业也算是个新兴的产业,但由于它 的飞速发展,市场也看到了它的设计价值,不过大都大同小异,一般市场上的汽车租 赁管理系统多是针对汽车租赁的业务处理的一种系统,其它管理层面也有涉及,只是 比较简略,一般包括基本设置、综合管理、业务处理、查询报表、统计排行以及系统 管理等模块,优点在于业务处理模块比较结合实际,所以对于日常的汽车租赁管理系 统已经不成问题,但缺点也是存在的。如汽车照片的存储仍然采取相对路径的存储, 用户密码的安全性做得不够,系统的扩展性也不是很全等。 因此,我们决定利用所学知识设计一个汽车租赁管理系统,主要是针对汽车租赁 的基本设置、综合管理、业务处理、查询报表、统计排行以及系

5、统管理进行全面管理 的系统,而并不再是只注重于业务处理,并且我们将解决一些问题,如汽车照片用二 进制进行存取,用户密码进行双重加密,基本设置模块更好地体现系统的扩展性,报 表的打印,SQL 语句利用视图跟存储过程,以增强系统的访问安全性,试图完善汽车 租赁管理系统的安全性跟扩展性,让其更人性化,更好地服务于汽车租赁公司。 -2- 第二章第二章 需求分析需求分析 2.1 功能需求 经过调研及分析,汽车租赁管理系统主要完成以下功能: (1)综合管理 此模块主要对客户(包括普通客户跟会员) ,员工以及汽车的具体信息进行管理, 分为普通客户管理,会员管理,员工管理以及汽车管理。 汽车管理:管理员可以对

6、租赁公司现已拥有的汽车的具体信息进行查看,修改信 息或者删除档案(当汽车报废或不再租赁时) ,而且是可以批量删除的,也可添加新 购进的汽车的具体信息,以便更快地投入租赁市场,方便客户了解,以便做出更好的 租赁选择。 普通客户管理/会员管理:管理员对客户的资料(包括普通客户跟会员)可以进行 查看,添加新客户,修改一些基本资料以及删除客户档案; 员工管理:对聘用的员工的资料也可以进行查看,对新聘用的员工添加其详细信 息,修改一些基本信息以及删除员工档案。 (2)业务管理 此模块提供对汽车日常业务进行管理,包括汽车预租/出租/续租,汽车加油,汽车 维修,还车结算,催车还交以及事故登记。 汽车预租:员

7、工可以根据客户需求帮其预租汽车,可以查看及修改预租的相关信 息,但是不可以删除客户之前已经预租的汽车,管理员可以修改以及取消客户之前已 经预租的汽车,可以查看已经预租汽车的情况等。 汽车出租:员工可以根据客户的需求出租汽车,可以查看及修改出租的相关信息, 但也不可以删除已经出租的汽车,而管理员则可以修改,查看以及删除出租汽车的相 关情况。当汽车出租时可以打印相关合同,双方签订合同。 汽车续租:在客户出租汽车的还车时间三天之前可前往汽车租赁公司办理汽车续 租手续,员工在检查完汽车的相关情况后,可根据实际情况调整还车时间以便达到续 租的目的。 汽车加油:员工可以进行记录相关加油情况,修改,删除加油

8、记录。 汽车维修:员工可以进行记录汽车相关维修情况,修改,删除维修记录。 还车结算:员工对来还车的客户进行查询,统计其它费用(如事故费,罚金费等) , 算出总费用,收款后返回客户押金以及客户抵押件等。 催车还交:员工可以根据出租汽车的还车时间,催促那些还车时间快到了的客户 -3- 及时还车以免交罚金。 事故登记:员工应该根据所出租的汽车发生的事故的具体情况登记入表,以便以 后查询,也可修改或删除信息。 (3)基本设置管理 此模块提供对汽车信息设置以及服务信息设置的全面管理功能。包括汽车设置管 理与服务设置管理等。管理员可以对一些基本信息进行添加,修改,删除。 汽车设置管理包括汽车类型设置,汽车

9、名称设置,燃油类型设置;服务设置管理 包括修理厂设置,加油站设置,保险类型设置。 这项管理可以使管理员更好地根据租赁公司实际情况修改汽车以及服务的一些基 本信息,使系统更适合其公司的运营,而且管理员只需在设置界面进行修改,而不需 自己修改数据库,更体现出系统的人性化。 (4)查询报表 此模块分为加油记录查询,维修记录查询,汽车预租查询,汽车出租查询,还车 结算查询,事故记录查询,单车租赁查询,汽车资料查询,会员资料查询,客户资料 查询以及员工资料查询。 此模块可对客户,员工以及汽车相关业务的情况进行查询,对查询到的相关信息 可以生成相应的 Excel 文件以及打印报表,尤其是汽车资料查询还可以

10、生成显示照片 的报表等。 (5)统计排行 此模块根据汽车出租次数的实际情况可以统计出本周/本月/全部排行,进而有利于 管理员分析购买哪些汽车能使公司的利润最大化。 还可以根据客户(包括普通客户和会员)租赁汽车的次数,统计出其排行,有利 于管理员有针对性地对某些客户进行高质里的服务。 (6)系统维护 备份数据:可以提供直接备份数据库的相关数据 还原数据:当系统出现异常状况时可以通过此还原数据库的相关数据 修改密码:可以账户修改登录密码,密码是采取双重 MD5 加密,使其更具安全性。 2.2 数据需求 :系统外部 :实物或单据 :实物或信息流 向 -4- :处理 :数据存储 图图 2-12-1 综

11、合管理流程图综合管理流程图 图图 2-22-2 汽车预租流程图汽车预租流程图 图图 2-32-3 汽车出租、续租流程图汽车出租、续租流程图 图图 2-42-4 还车结算流程图还车结算流程图 员工查询 汽车信息表 普通客户/会员信 息登记 客户信息表 管理员 员工信息登记 汽车信息登记员工信息表 客户(普通 客户/会员) 预租 请求 汽车预租表员工 员工 汽车预租表 签订合同 客户 汽车出租表 续租 请求 费用结算表 客户(普通 客户/会员) 员工 还车查 询费用 缴纳费用 P003 员工 加油、维修、 事故登记 加油、维修、 事故信息表 -5- 图图 2-52-5 汽车加油、维修、事故流程图汽

12、车加油、维修、事故流程图 图图 2-62-6 基本设置流程图基本设置流程图 第三章第三章 系统设计系统设计 3.1 系统结构 此汽车租赁管理系统主要实现 6 个大的功能模块:综合管理、业务管理,基本设 置,查询报表、统计排行、系统维护。每个模块有分成多详细的功能子模块。详情如 下图 3-1 所示: 图图 3-13-1 系统结构图系统结构图 3.2 数据库设计 汽车租赁管理系统 汽车设置管理 基本设置管理 服务设置管理 综合管理 汽车管理 业务管理 汽车预/出/续租 汽车加油 汽车维修 还车结算 催车还交 事故登记 查询报表 统计排行 汽车查询 客户资料查询 客户租赁排行 本周/月/全部排行 人

13、事管理 系统维护 备份数据 权限管理 员工运用 基本设置表 管理员 基本设置录入 -6- 3.2.1 ER 图 3.2.2 逻辑结构 1、用户信息表 用户(uid , users, pwd, type) 分析:因为 uid 是主键,而且 users 不允许重复,所以主键只有一个属性,不存在 部分依赖;又因为 uid users,所以不存在非主属性对主键 uid 的传递依赖,所以 该关系属于 3NF。 2、客户信息表 客户(kid, ktype,kname,ksex,ksf,kdy,ktel,klic,kadd,ktimes) 分析:因为只有 kid 是主键,所以不存在部分依赖,因此该关系属于

14、2NF。但存在 非主属性 kname 通过 ktel 对主键 kid 的传递依赖,所以该关系不属于 3NF。 3、员工信息表 员工(eid,ename,esex,esf,etel,eadd) 分析:因为只有 eid 是主键,所以不存在部分依赖,因此该关系属于 2NF。但存在 非主属性 ename 通过 etel 对主键 eid 的传递依赖,所以该关系不属于 3NF。 4、管理员信息表 管理员(uid,uname,usex) 分析:因为只有 uid 是主键,所以不存在部分依赖,且不存在非主属性对主键 uid 缴纳 收缴 设置 属于 属于2 属于3 0,n 0,n 0,n 0,n 1,n0,n 0

15、,n 0,n 0,n 汽车 cid cname ctype cnum cclor clsu coil cpho cmile cgm cbf cdep cdm csta ctimes Serial (4) Characters (10) Characters (10) Characters (10) Characters (6) Characters (10) Characters (6) Image Number (5) Date database=car;user id=admin;password=admin“ ElseIf type.Trim = “员工“ Then con.Connec

16、tionString = “server=.;database=car;user id=employee;password=employee“ ElseIf type.Trim = “客户“ Then con.ConnectionString = “server=.;database=car;user id=kh;password=kh“ End If cmd.Connection = con End Sub 4.2 汽车管理模块实现 1、界面如图 4-2 所示: -13- 图图 4-24-2 汽车管理模块汽车管理模块 2、重点代码 (1) 、批量删除 Public Sub deletedgv

17、s(ByRef dgv As DataGridView, ByVal sql As String) count = dgv.SelectedRows.Count res = MsgBox(“确定删除这“ & count & “条记录?“, 1 + 32 + 0, “提示“) If res = 1 Then Try For i = count - 1 To 0 Step -1 cmd.CommandText = sql & dgv.SelectedRows(i).Cells(0).Value & “ con.Open() cmd.ExecuteNonQuery() dgv.Rows.Remove

18、(dgv.SelectedRows(i) con.Close() Next Catch ex As Exception MsgBox(“删除记录失败!“, 0 + 48 + 0, “删除失败“) con.Close() -14- Exit Sub End Try MsgBox(“已删除“ & count & “条记录!“, 0 + 48 + 0, “删除成功“) con.Close() Else Exit Sub End If End Sub (2) 、灵活性填充(填充 DataGridView 的 filldgv 函数) Public Sub filldgv(ByRef dgv As Dat

19、aGridView, ByVal sql As String) If dr.HasRows Then While dr.Read With dgv .Rows.Add() For j = 0 To dr.FieldCount - 1 .Columns(j).Name = dr.GetName(j).Trim .Rows(i).Cells(j).Value = dr.GetValue(j) Next End With i = i + 1 End While Else For j = 0 To dr.FieldCount - 1 dgv.Columns(j).Name = dr.GetName(j

20、).Trim Next End If con.Close() For i = 0 To dgv.ColumnCount - 1 cmd.CommandText = “select * from nameset where oldname=“ & dgv.Columns(i).Name.Trim & “ con.Open() dr = cmd.ExecuteReader If dr.Read Then dgv.Columns(i).HeaderCell.Value = dr.GetString(1).Trim -15- End If con.Close() Next End Sub (3) 、把

21、图片转换成二进制流 Public Sub 选择照片(ByRef OpenFileDialog1 As OpenFileDialog, ByRef pb As PictureBox) OpenFileDialog1.ShowDialog() If OpenFileDialog1.FileName “ Then filepath = OpenFileDialog1.FileName.ToString pic = New Bitmap(filepath) pb.Image = pic Dim ms As New IO.MemoryStream pb.Image.Save(ms, pb.Image.R

22、awFormat) data = ms.GetBuffer ms.Close() Else If data Is Nothing Then pb.Image = Nothing End If End If End Sub (4) 、把图片从数据库取出 If dr.IsDBNull(7) Then pb.Image = Nothing Else data = CType(dr.Item(7), Byte() Dim ms As New IO.MemoryStream(data) pb.Image = Image.FromStream(ms) ms.Close() End If (5)填充 Com

23、boBox Public Sub showjb(ByRef combo As ComboBox, ByVal sql As String) cmd.CommandText = “select sname from jb where sstyle=“ & sql & “ -16- con.Open() dr = cmd.ExecuteReader While dr.Read combo.Items.Add(dr.GetString(0).Trim) End While con.Close() End Sub 4.3 汽车预租模块实现 1、界面如图 4-3 所示: 图图 4-34-3 汽车预租模块

24、汽车预租模块 2、重点代码 (1)查询条件 For i = 0 To arr.Count - 1 If dgv1.Rows(i).Cells(0).Value = “ Then If dgv1.Rows(i).Cells(3).Value Is Nothing Then -17- MsgBox(“查询条件不能为空!“, 0 + 48 + 0, “提醒“) Exit Sub End If sql = sql + arr.Item(i).ToString.Trim + sign + “ & dgv1.Rows(i).Cells(3).Value.ToString.Trim & “ “ ElseIf

25、 dgv1.Rows(i).Cells(0).Value = “并且“ Then If dgv1.Rows(i).Cells(3).Value Is Nothing Then MsgBox(“查询条件不能为空!“, 0 + 48 + 0, “提醒“) Exit Sub End If sql = sql + “and “ + arr.Item(i).ToString.Trim + sign + “ & dgv1.Rows(i).Cells(3).Value.ToString.Trim & “ “ Else If dgv1.Rows(i).Cells(3).Value Is Nothing The

26、n MsgBox(“查询条件不能为空!“, 0 + 48 + 0, “提醒“) Exit Sub End If sql = sql + “or “ + arr.Item(i).ToString.Trim + sign + “ & dgv1.Rows(i).Cells(3).Value.ToString.Trim & “ “ End If Next (2) 、生成 Excel Public Sub getExcel(ByRef dgv As DataGridView) myBook = myApp.Workbooks.Add() mySheet = myBook.Worksheets(1) my

27、Sheet.Name = dsname mySheet.Cells(1, 1) = dsname + “详细资料“ For k = 0 To dgv.Columns.Count - 1 mySheet.Cells(2, k + 1).Value = dgv.Columns(k).HeaderText mySheet.Cells(2, k + 1).Font.Bold = True Next mySheet.Rows(3).select() For i = 0 To dgv.Rows.Count - 1 For j = 0 To dgv.Columns.Count - 1 -18- myShee

28、t.Cells(i + 3, j + 1).value = “ + dgv(j, i).Value.ToString.Trim Next Next myApp.Visible = True End Sub (3) 、汽车预租报表 ParamField.Name = “报表标题“ discreteVal.Value = dsname + “详细资料报表“ ParamField.CurrentValues.Add(discreteVal) ParamFields.Add(ParamField) crv.ParameterFieldInfo = ParamFields Dim rent As New

29、 租车报表() rent.SetDataSource(ds.Tables(dsname) crv.ReportSource = rent 第五章第五章 后记后记 5.1 完善计划 汽车租赁管理系统针对的是汽车租赁公司在向客户提供出租车辆服务过程中面对 的各种问题,对其业务信息进行自动化、信息化处理,使车辆租赁管理变得规范、快 捷、高效。 为规范操作流程,降低劳动强度使租赁业务走向标准化和科学化, 设计开发了 这套管理系统,它的使用将有利于提高租赁公司的劳动生产率,节约生产成本,增加 经济效益,希望它能为业内人员的工作提供一定的帮助。 后期将针对目前大多数汽车租赁行业设计开发一套更加科学,更加人

30、性化的汽车 租赁管理系统,使其操作简单,查询报表更加丰富,将包含汽车租赁过程中的多数细 节:如增加司机相关信息管理,会员进行积分制,会员进行分类等,并可分类统计查 询:日收入,月收入,总收入,司机,车辆,会员以及客户报表等;而且改进连接数 据库使系统能够全面地兼容不同的常用数据库,如 SQL Server2000,SQL Server2005,Oracle 等。 基于上面各方面的研究,同时针对汽车租赁公司的实际情况,再应用数据库、管 理信息系统、软件工程的一些基本原理和理论思想,结合具有强大的应用程序开发功 能和数据库开发功能的开发工具,设计开发了出一套完善的汽车租赁管理系统,使其 -19-

31、在 Windows 环境下,具有比较友好的界面和基本完善的功能,使用轻松方便,易于维 护,适应性强,安全性跟扩展性都得到保证。 5.2 个人总结 经过一学期的学习,我对数据库应用课程设计这门学科有了充分的了解。这次的课 程设计我们选择的题目是汽车租赁管理系统。通过本次的可视化编程课程设计,巩固 了我在课堂上所学的理论知识,更进一步的理解了面向对象编程的基本思想,并且对 可视化编程工具 VB2005 这个软件的应用也有了一个简单的了解,开拓了自己的知识 面。 本次课程设计,在梁玉强老师的指导下,通过不懈的努力完成了本次课程设计的 任务,汽车租赁管理系统的设计及运行基本实现。通过本课程设计,培养了我的团队 精神,学会了如何和别人合作,同时也从同学那里学到了许多东西。当然我们也遇到 了各种各样的问题和错误。但面对种种问题和困难,我们小组的成员个个都非常的努 力。 经过不懈的努力,最终总算交出一个满意的系统。 参考文献参考文献 1、王涛,唐植华 Visual Basic 2005+SQL Server 2005 清华大学出版社 2008 年 6 月 2、李捷 Visual Basic 2005 程序设计教程机械工业出版社 2009 年 8 月 3、陈志泊 数据库原理及应用教程 人民邮电出版社 2009 年 12 月

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1