网上航空订票系统设计与实现.docx
- 文档编号:16535653
- 上传时间:2023-07-14
- 格式:DOCX
- 页数:51
- 大小:2.35MB
网上航空订票系统设计与实现.docx
《网上航空订票系统设计与实现.docx》由会员分享,可在线阅读,更多相关《网上航空订票系统设计与实现.docx(51页珍藏版)》请在冰点文库上搜索。
网上航空订票系统设计与实现
单位代码01
学号********01
分类号TP315
密级
毕业设计说明书
网上航空订票系统系统的设计与实现
院(系)名称
信息工程学院
专业名称
14计科专升本
学生姓名
郑智杰
指导教师
杜献峰
2016年5月15日
网上航空订票系统系统的设计与实现
摘要
随着人们生活质量的提升,物质文化需求的提高及各类交通工具也应运而生。
现阶段出外旅行及出差的人越来越多,而飞机快速、价低、便捷等优点开始成为越来越多人的选择。
从而一个好的航空信息管理系统变得越来越重要。
管理信息系统的实施在技术上已逐步成熟、越来越深入而广泛的应用,管理信息系统是一个不断发展的新型学科,就要高效率地建立与自身特点相适应的管理信息系统,该系统是完成一个基于票务管理、飞机航线航班管理、帮助出行等特殊服务以及查询业务的航空信息管理系统。
使用C#语言进行代码的编写,对于底层平台的依赖更少,其组件具有更强的实用性;系统框架使用MVC框架,MVC架构完全支持松耦合,高可维护性的开发模式。
数据库使用SQLServer2014版本进行数据的管理,SQLServer的数据库服务器具有快速、可靠和易于使用、稳定性高、可移植性强的特点。
系统最终达到的效效果远远高于用户的需求,快捷方便的为用户服务,既能提高工作人员的效率,又降低人为出错的几率。
数据方便统计与管理,大大节约了数据存储的成本。
关键词:
C#,MVC,SQLServer
TheDesignandimplementationofonlineairlinebookingsystem
Author:
ZhengZhijie
Tutor:
DuXianfeng
Abstract
Withtheenhancementofpeople'squalityoflife,andtoimprovethematerialandculturalneedsofalltypesofvehicleshaveemerged.Presenttotravelonbusinessandmoreandmorepeople,andtheplanefast,lowprice,convenienceandotheradvantagesbecamemoreandmorepeopletochoosefrom.Thusagoodaeronauticalinformationmanagementsystembecomesincreasinglyimportant.
Implementationofmanagementinformationsystemhasgraduallymaturedtechnically,morein-depthandextensiveapplicationofnewmanagementinformationsystemisanevolvingdiscipline,itisnecessarytoestablishefficientmanagementinformationsystemwithitsowncharacteristics,thesystemisbasedonthecompletionofticketingmanagement,managementofaircraftflightroutes,travelassistanceandotherspecialservicesandqueryingbusinessaviationinformationmanagementsystem.UseC#languagetowritecode,andlessdependenceontheunderlyingplatform,theassemblyhasamorepractical;systemframeworkusingMVCframework,MVCarchitecturefullysupportslooselycoupled,maintainabledevelopmentmodel.UseversionofSQLServer2014databasetomanagethedata,thedatabaseserverSQLServerhasafast,reliableandeasytouse,highstability,portabilityfeatures.Systemandultimatelyachievetheeffectismuchhigherthantheefficiencyoftheuser'sneeds,fastandconvenientservicesforusers,bothtoimprovetheefficiencyofthestaff,butalsoreducethechanceofhumanerror.Tofacilitatedatamanagementandstatistics,asignificantreductioninthecostofdatastorage.
Keywords:
C#,MVC,SQLServer
1引言
1.1项目背景
随着人们生活质量的提升,物质文化需求的提高及各类交通工具也应运而生。
现阶段出外旅行及出差的人越来越多,而飞机快速、价低、便捷等优点开始成为越来越多人的选择。
从而一个好的航空信息管理系统变得越来越重要。
管理信息系统的实施在技术上已逐步成熟、越来越深入而广泛的应用,管理信息系统是一个不断发展的新型学科,就要高效率地建立与自身特点相适应的管理信息系统,该系统是完成一个基于票务管理、飞机航线航班管理、帮助出行等特殊服务以及查询业务的航空信息管理系统。
网上航空订票系统将可以为用户提供在网上订购机票,航班信息查询、航班时间等一系列功能,这些都是开拓航空机票业务能力的十分有效的手段,不仅能够提高常用户的方便、快捷的使用,还能够提高公司效率以及降低运营成本,同时非常适应现在越来越进步的互联网时代,所以网上航空订票系统的开发应用将是未来航空订票服务的趋势。
随着,社会的进步,互联网、计算机等技术的飞速发展并与社会各个方面领域的深度融合,已经融入了人们的生活之中,成为了必不可分的一部分。
目前,我国对信息化的基础建设的加大以及信息化基础建设的普及,在这种国家大力发展信息化基础建设的大背景、大环境下,网上航空订票系统的信息化建设也在朝着越来越严密、越来越科学、越来越完善的管理体系进行更高、更快的发展。
这是一个十分具有意义的项目,这个项目的开发与实现不仅可以使用户更加的方便订票出行,而且可以减轻销售机票人员的工作强度,更加提高公司的业务效率和拓宽企业销售渠道以及知名程度,从而提高了整个公司的整体营运能力,盈利水平和增强企业竞争力。
随着互联网更进一步发展和应用,越来越融入人们生活的同时,加强通过网上订票等越来越高方便,快捷的订票方式和越来越便捷的服务方式,为企业的发展提供了方向,只有迎合消费者的利益,让消费者满意,才会为公司将来的竞争中取得越来越大的知名度和经济效益。
这个系统的特点十分的鲜明:
一是消费者直接网上进行订票十分方便、便捷,可以不需要去售票点买票,工作繁忙没有空闲时间的时候,直接就可以买到机票了。
二是可以选择各个航空公司的机票,可以根据消费者乘坐经验,选择消费自己认为服务周到的航空公司。
目前网上航空订票系统存在着许多的不足:
版本兼容性、拓展性、软件版本低、复用率低、不够方便灵活,对于上面的这些不足之处,以网上的携程、途牛、去哪儿等网上电子商务网上航空订票系统就很好的解决了这些问题。
1.2研究现状
管理信息系统的实施在技术上已逐步成熟、越来越深入而广泛的应用,管理信息系统是一个不断发展的新型学科,就要高效率地建立与自身特点相适应的管理信息系统,该系统是完成一个基于票务管理、飞机航线航班管理、帮助出行等特殊服务以及查询业务的航空信息管理系统。
根据目前电子商务公司以及航空公司各种各样的开发平台与管理系统、软件系统互相之间不配套、不兼容,不能进行互联互通。
例如:
分布式对象技术在跨平台以及对网上一些应用软件伸缩性的适应会出现很多问题,防火墙如何通过,协议怎么匹配。
比如:
当消费者遇见航空机票日期更改,改签等问题的时候,由于各个系统之间的不兼容导致了不能进行更改,为消费者带来了不便,所以,首先我们就要对如何解决网上航空的票系统的兼容性问题进行研究。
本系统使用C#语言进行代码的编写,对于底层平台的依赖更少,其组件具有更强的实用性;系统框架使用MVC框架,MVC架构完全支持松耦合,高可维护性的开发模式。
数据库使用SQLServer2014版本进行数据的管理,SQLServer的数据库服务器具有快速、可靠和易于使用、稳定性高、可移植性强的特点。
系统最终达到的效效果远远高于用户的需求,快捷方便的为用户服务,既能提高工作人员的效率,又降低人为出错的几率。
数据方便统计与管理,大大节约了数据存储的成本。
1.3项目意义
这个项目的意义就在于这个项目的开发与实现不仅可以使用户更加的方便订票出行,而且可以减轻销售机票人员的工作强度,更加提高公司的业务效率和拓宽企业销售渠道以及知名程度,从而提高了整个公司的整体营运能力,盈利水平和增强企业竞争力。
这个系统主要是进行对网上消费者订票服务的后台管理,主要涉及航班、飞机、机场信息,查票、订票信息,客户信息等多种数据信息。
这个系统要求能够实现实时,高效,便捷等特点。
2需求分析
2.1系统环境需求
开发环境需求:
硬件要求:
1.6GHz或更快的处理器,1GBRAM(如果在虚拟机上运行,则为1.5GB)20GB可用硬盘空间,5400RPM硬盘驱动器,与DirectX9兼容的视频卡,其显示分辨率为1024x768或更高
软件要求:
Windows7以上
其他要求:
InternetExplorer10
需要KB2883200(可通过Windows更新获得)
开发工具要求:
VisualStudio2015
SQLServer2014
2.2功能需求分析
机票信息管理:
主要实现机票基本信息的显示和查询,在该功能模块中,点击预定可以显示航空公司,飞机型号,起飞机场,降落机场,机舱类型,单程票价,往返票价以及起飞时间,降落时间等基本信息的显示功能,在订单中,实现了客户姓名、联系方式、证件号码等基本信息填写的功能。
航班查询:
主要用户查询航班的起飞时间和飞行时间。
航班动态:
主要让用户清楚的看到各个航班运行的路线以及时间。
帮助中心:
一些常见问题(如:
行李托运重量物品限制)网上机票预订等等。
建议和投诉:
主要实现客户对机票价格以及业务服务的建议和评价。
根据我对本系统功能的要求和它的特点,通过对系统的分析,制作完成如图1-1所示的系统功能模块结构图。
图1-1系统功能模块图
3系统功能设计
3.1概念结构设计
3.1.1概念模型
(1)客机实体属性图,如图3-1所示。
图3-1客机实体属性图
(2)客户实体属性图,如图3-2所示。
图3-2客户实体属性图
(3)航班实体属性图,如图3-3所示。
图3-3航班实体属性图
(4)机票实体属性图,如图3-4所示。
图3-4机票实体属性图
根据分析,可得到本系统总实体属性图,如图3-5所示。
图3-5系统总实体属性图
3.1.2物理模型
将生成的概念模型通过PowerDesigner工具栏中的GeneratePhysicalDataModel命令来转换成物理模型,生成结果如下图3-6所示:
图3-6航空机票预订系统物理模型图
3.2数据库分析
3.2.1数据库描述
航空数据库(AirlineReservation)保存了所有用户的数据以及网站航空信息,以及第三方接口调用数据库记录及数据,SQL数据库的使用可以很多数据进行控制和管理,利用各大数据使得它们产生联系。
SQL可以及时对各种数据出现的问题进行恢复,防止程序出现故障,即使发生了故障也能及时恢复正常。
3.2.2数据表设计
表3.1Tbl_Address(客户地址表)
字段
类型
是否为空
备注
AddressID
String
不可为空
地址ID
MemberID
String
不可为空
客户编号
CountryCode
int
不可为空
国家编码
StateCode
int
不可为空
省份编码
CityCode
int
不可为空
城市编码
Address
String
不可为空
详细地址
ZipCode
int
可为空
邮编
String
可为空
邮箱
Tel
String
可为空
电话
Mobile
int
不可为空
手机号码
表3.2Tbl_Member(客户信息表)
字段
类型
是否为空
备注
MemberID
String
不可为空
客户编号
MemberName
String
不可为空
客户名称
Password
String
不可为空
密码
StatusCode
Int
不可为空
客户状态(1/2/3)
StatusName
String
不可为空
正常/冻结/异常
MemberGradeCode
Int
不可为空
会员等级
MemberGradeName
String
不可为空
Sex
String
不可为空
性别
1-男
2-女
IDNuber
String
不可为空
身份证号
Tel
String
不可为空
电话
Mobile
Int
不可为空
手机号
String
不可为空
邮箱
IP
String
不可为空
IP
OrderNum
Int
不可为空
订单数量
Avatar
String
不可为空
头像
Comments
String
不可为空
备注
RegisterDate
Datetime
不可为空
注册时间
LastLoginDate
Datetime
不可为空
最后一次登录时间
表3.3tbl_City(城市表)
字段
类型
是否为空
备注
CityCode
Int
不可为空
城市Code
CityName
Sting
不可为空
城市名称
CountryCode
Int
不可为空
国家编号
StateCode
Int
不可为空
省份Code
表3.4tbl_Country(国家表)
字段
类型
是否为空
备注
CountryCode
Int
不可为空
国家Code
CountryName
Sting
不可为空
国家名称
StandardCode
String
不可为空
国家编号
CreateDate
Datetime
不可为空
创建时间
表3.5tbl_State(省份表)
字段
类型
是否为空
备注
StateCode
Int
不可为空
省份Code
StateName
Sting
不可为空
省份名称
CountryCode
Int
不可为空
国家编号
StateNa5meEn
不可为空
省份简称
CreateDate
Int
不可为空
创建时间
表3.6Tbl_AirplanesInfo(客机信息表)
字段
类型
是否为空
备注
AirplanesID
nchar
不可为空
客机编号
AirplanesName
nchar
不可为空
客机名称
EconomyClassNum
int
不可为空
经济舱座位
FirstClassNum
int
不可为空
头等舱座位
BusinessClassNum
int
不可为空
商务舱座位
Comments
nchar
不可为空
备注
表3.7Tbl_Complaints(客户申诉表)
字段
类型
是否为空
备注
ComplaintsID
uniqueidentifier
不可为空
申诉ID
MemberID
nchar
不可为空
客户ID
MemberName
nchar
不可为空
客户名称
ComplaintsContent
nvarchar
不可为空
申诉内容
nchar
不可为空
邮箱
Tel
nchar
不可为空
电话
Mobile
int
不可为空
手机号码
CreateDate
datetime
不可为空
申述时间
表3.8Tbl_OrderInfo(订单信息表)
字段
类型
是否为空
备注
OrderID
nvarchar
不可为空
订单ID
MemberID
nchar
不可为空
客户ID
AirlineID
nvarchar
不可为空
航线ID
ShippingSpace
nchar
不可为空
舱位等级
TicketPrices
decimal
不可为空
机票价格
PaymentAmount
decimal
不可为空
支付金额
OrderRemarks
nvarchar
不可为空
订单备注
CouponID
nvarchar
不可为空
优惠券ID
表3.9Tbl_Airline(航线信息表)
字段
类型
是否为空
备注
AirlineID
nvarchar
不可为空
航线ID
StartingCityCode
int
不可为空
起始站Code
StartingCityName
nchar
不可为空
起始站Code
TerminusCityCode
int
不可为空
终点站Code
TerminusCityName
nchar
不可为空
终点站
StartingDate
datetime
不可为空
起飞时间
ArrivingDate
datetime
不可为空
到达时间
FlightTime
datetime
不可为空
航飞时间
AirlineRemarks
nvarchar
可为空
航线备注s
表3.10Tbl_Counpon(优惠券)
字段
类型
是否为空
备注
CouponID
uniqueidentifier
不可为空
优惠券ID
CouponName
nvarchar
不可为空
优惠券名称
CouponAmount
decimal
不可为空
优惠金额
MemberID
nchar
不可为空
客户ID
Type
int
不可为空
优惠券类型
TypeName
nvarchar
不可为空
优惠券类型名称
BeginDate
datetime
不可为空
开始时间
EndDate
datetime
不可为空
结束时间
IsUse
bit
不可为空
是否使用s
Comments
nvarchar
可为空
优惠券备注
3.2.3数据库优化方法
一、语句的优化
(1)减少对数据库的查询次数;
(2)数据库对数据有约束性;
(3)数据库数据执行中,可以进行过滤。
1、通过使用in描述数据简单易懂,优化的时候,要用exists替换它
2、NOTIN操作符强列推荐不使用的,因为它不能应用表的索引。
用NOTEXISTS或(外连接+判断为空)方案代替,因为Oracle在处理In时是按Or的方式做的,即使使用了索引也会很慢。
3、通过替换,这是一条简单易记的规则,
低效:
SELECFROM LOCATION WHERE LOC_ID =10OR LOC_ID=20OR LOC_ID=30
高效:
SELECTFROM LOCATION WHERE LOC_IN IN (10,20,30);
二、结构的优化
1、DELETE以TRUNCATE替代:
如果你没有COMMIT事务
2、用Where子句替换HAVING子句:
避免使用HAVING子句,当删除表中的记录时,在通常情况下检索结果出来后进行过滤。
如果能通过WHERE子句限制记录的数目,那就能减少这方面的开销.过滤之后可以减少有需要处理的数据。
3、语句的格式
先将语句进行进行解析,再更改格式在执行
4、不要改变索引类型
通过对不同数据类型进行比对是,可以自行进行转换。
5、特殊语句优化
提高GROUPBY语句的效率,不需要的记录在GROUPBY之前过滤掉.下面两个查询返回相同结果
低效:
1SELECT JOB,AVG(SAL)FROM EMP GROUPby JOBHAVING JOB= 'PRESIDENT' OR JOB ='MANAGER'
高效:
1SELECT JOB,AVG(SAL)FROM EMP WHERE JOB ='PRESIDENT'OR JOB='MANAGER'GROUPby JOB
优化方案
1.进行表分区
通过对数据进行分区,似的如果我们对数据库数据查询时我们只需要对特定的表进行查询即可。
这样不仅可以优化时间,还可以将数据分别保存在自己需要的特定位置方便查询可按月自动建表分区。
2.别名的使用
别名的使用就是将表分区命名成特定的名字方便查询,加快查询速度。
3.索引优化设计
通过优化设计将表里的数据映射到特定的位置,因此来迅速找到需要的数据,减少所需要的时间。
当你对一个庞大的数据进行查询时,建立索引分区优化资源配置。
频繁的使用会导致数据发生分裂,所以要进行维护。
4系统功能实现
4.1系统登陆与注册界面实现
首页点击注册按钮,会跳转到注册页面,注册需要填写账户(手机号/邮箱)及密码,密码需要输入2次校验,如果一直会提示登陆成功,登陆成功后会自动跳转到个人中心。
注册页面效果图如下图4-1所示。
图4-1注册页面效果图
实现注册功能核心代码如下:
publicActionResultUserRegister(stringuserName,stringpassword)
{
Tbl_Memberm=newTbl_Member();
m.MemberID=userName;
m.Password=password;
m.StatusCode="1";状态默认1正常
m.Balance=0;//账户金额默认0元
boolfig=bll.AddAccount(m);
if(fig)
{
//注册成功后把用户名存到Session
Session["UserName"]=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 航空 订票 系统 设计 实现