毕业设计(论文)-网上航空订票系统设计与实现.doc

上传人:小小飞 文档编号:3949843 上传时间:2019-10-11 格式:DOC 页数:53 大小:3.77MB
返回 下载 相关 举报
毕业设计(论文)-网上航空订票系统设计与实现.doc_第1页
第1页 / 共53页
毕业设计(论文)-网上航空订票系统设计与实现.doc_第2页
第2页 / 共53页
毕业设计(论文)-网上航空订票系统设计与实现.doc_第3页
第3页 / 共53页
毕业设计(论文)-网上航空订票系统设计与实现.doc_第4页
第4页 / 共53页
毕业设计(论文)-网上航空订票系统设计与实现.doc_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《毕业设计(论文)-网上航空订票系统设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-网上航空订票系统设计与实现.doc(53页珍藏版)》请在三一文库上搜索。

1、黄河科技学院毕业论文 第 II 页单位代码 01 学 号 1403010001 分 类 号 TP315 密 级 毕业设计说明书网上航空订票系统系统的设计与实现 院(系)名称信息工程学院 专业名称14计科专升本 学生姓名郑智杰 指导教师杜献峰2016年5月15日黄河科技学院毕业设计说明书 第IV页 网上航空订票系统系统的设计与实现摘 要随着人们生活质量的提升,物质文化需求的提高及各类交通工具也应运而生。现阶段出外旅行及出差的人越来越多,而飞机快速、价低、便捷等优点开始成为越来越多人的选择。从而一个好的航空信息管理系统变得越来越重要。管理信息系统的实施在技术上已逐步成熟、越来越深入而广泛的应用,管

2、理信息系统是一个不断发展的新型学科,就要高效率地建立与自身特点相适应的管理信息系统,该系统是完成一个基于票务管理、飞机航线航班管理、帮助出行等特殊服务以及查询业务的航空信息管理系统。使用C#语言进行代码的编写,对于底层平台的依赖更少,其组件具有更强的实用性;系统框架使用MVC框架,MVC架构完全支持松耦合,高可维护性的开发模式。数据库使用 SQL Server2014版本进行数据的管理,SQL Server的数据库服务器具有快速、可靠和易于使用、稳定性高、可移植性强的特点。系统最终达到的效效果远远高于用户的需求,快捷方便的为用户服务,既能提高工作人员的效率,又降低人为出错的几率。数据方便统计与

3、管理,大大节约了数据存储的成本。关键词: C#,MVC,SQL ServerThe Design and implementation of online airline booking systemAuthor:Zheng ZhijieTutor:Du XianfengAbstractWith the enhancement of peoples quality of life, and to improve the material and cultural needs of all types of vehicles have emerged. Present to travel on

4、business and more and more people, and the plane fast, low price, convenience and other advantages became more and more people to choose from. Thus a good aeronautical information management system becomes increasingly important.Implementation of management information system has gradually matured t

5、echnically, more in-depth and extensive application of new management information system is an evolving discipline, it is necessary to establish efficient management information system with its own characteristics, the system is based on the completion of ticketing management, management of aircraft

6、 flight routes, travel assistance and other special services and querying business aviation information management system. Use C # language to write code, and less dependence on the underlying platform, the assembly has a more practical; system framework using MVC framework, MVC architecture fully s

7、upports loosely coupled, maintainable development model. Use version of SQL Server2014 database to manage the data, the database server SQL Server has a fast, reliable and easy to use, high stability, portability features. System and ultimately achieve the effect is much higher than the efficiency o

8、f the users needs, fast and convenient services for users, both to improve the efficiency of the staff, but also reduce the chance of human error. To facilitate data management and statistics, a significant reduction in the cost of data storage.Keywords: C#,MVC,SQL Server 目 录 1 引 言11.1 项目背景11.2 研究现状

9、21.3 项目意义22 需求分析32.1 系统环境需求32.2 功能需求分析33 系统功能设计53.1概念结构设计53.1.1概念模型53.1.2物理模型73.2数据库分析83.2.1数据库描述83.2.2数据表设计83.2.3数据库优化方法124 系统功能实现154.1 系统登陆与注册界面实现154.2 网站首页及机票展示界面实现184.3 提交订单及订单列表界面实现234.4 账户充值及资产动态界面实现295 系统测试3551 测试方法3552 测试过程355.2.1 登录界面测试355.2.2 系统功能测试3553 测试总结36结 论37致 谢38参考文献39附 录40源程序代码40黄河

10、科技学院毕业设计说明书 第48页1 引 言1.1 项目背景随着人们生活质量的提升,物质文化需求的提高及各类交通工具也应运而生。现阶段出外旅行及出差的人越来越多,而飞机快速、价低、便捷等优点开始成为越来越多人的选择。从而一个好的航空信息管理系统变得越来越重要。管理信息系统的实施在技术上已逐步成熟、越来越深入而广泛的应用,管理信息系统是一个不断发展的新型学科,就要高效率地建立与自身特点相适应的管理信息系统,该系统是完成一个基于票务管理、飞机航线航班管理、帮助出行等特殊服务以及查询业务的航空信息管理系统。网上航空订票系统将可以为用户提供在网上订购机票,航班信息查询、航班时间等一系列功能,这些都是开拓

11、航空机票业务能力的十分有效的手段,不仅能够提高常用户的方便、快捷的使用,还能够提高公司效率以及降低运营成本,同时非常适应现在越来越进步的互联网时代,所以网上航空订票系统的开发应用将是未来航空订票服务的趋势。随着,社会的进步,互联网、计算机等技术的飞速发展并与社会各个方面领域的深度融合,已经融入了人们的生活之中,成为了必不可分的一部分。目前,我国对信息化的基础建设的加大以及信息化基础建设的普及,在这种国家大力发展信息化基础建设的大背景、大环境下,网上航空订票系统的信息化建设也在朝着越来越严密、越来越科学、越来越完善的管理体系进行更高、更快的发展。这是一个十分具有意义的项目,这个项目的开发与实现不

12、仅可以使用户更加的方便订票出行,而且可以减轻销售机票人员的工作强度,更加提高公司的业务效率和拓宽企业销售渠道以及知名程度,从而提高了整个公司的整体营运能力,盈利水平和增强企业竞争力。随着互联网更进一步发展和应用,越来越融入人们生活的同时,加强通过网上订票等越来越高方便,快捷的订票方式和越来越便捷的服务方式,为企业的发展提供了方向,只有迎合消费者的利益,让消费者满意,才会为公司将来的竞争中取得越来越大的知名度和经济效益。这个系统的特点十分的鲜明:一是消费者直接网上进行订票十分方便、便捷,可以不需要去售票点买票,工作繁忙没有空闲时间的时候,直接就可以买到机票了。二是可以选择各个航空公司的机票,可以

13、根据消费者乘坐经验,选择消费自己认为服务周到的航空公司。目前网上航空订票系统存在着许多的不足:版本兼容性、拓展性、软件版本低、复用率低、不够方便灵活,对于上面的这些不足之处,以网上的携程、途牛、去哪儿等网上电子商务网上航空订票系统就很好的解决了这些问题。1.2 研究现状管理信息系统的实施在技术上已逐步成熟、越来越深入而广泛的应用,管理信息系统是一个不断发展的新型学科,就要高效率地建立与自身特点相适应的管理信息系统,该系统是完成一个基于票务管理、飞机航线航班管理、帮助出行等特殊服务以及查询业务的航空信息管理系统。根据目前电子商务公司以及航空公司各种各样的开发平台与管理系统、软件系统互相之间不配套

14、、不兼容,不能进行互联互通。例如:分布式对象技术在跨平台以及对网上一些应用软件伸缩性的适应会出现很多问题,防火墙如何通过,协议怎么匹配。比如:当消费者遇见航空机票日期更改,改签等问题的时候,由于各个系统之间的不兼容导致了不能进行更改,为消费者带来了不便,所以,首先我们就要对如何解决网上航空的票系统的兼容性问题进行研究。本系统使用C#语言进行代码的编写,对于底层平台的依赖更少,其组件具有更强的实用性;系统框架使用MVC框架,MVC架构完全支持松耦合,高可维护性的开发模式。数据库使用 SQL Server2014版本进行数据的管理,SQL Server的数据库服务器具有快速、可靠和易于使用、稳定性

15、高、可移植性强的特点。系统最终达到的效效果远远高于用户的需求,快捷方便的为用户服务,既能提高工作人员的效率,又降低人为出错的几率。数据方便统计与管理,大大节约了数据存储的成本。1.3 项目意义这个项目的意义就在于这个项目的开发与实现不仅可以使用户更加的方便订票出行,而且可以减轻销售机票人员的工作强度,更加提高公司的业务效率和拓宽企业销售渠道以及知名程度,从而提高了整个公司的整体营运能力,盈利水平和增强企业竞争力。这个系统主要是进行对网上消费者订票服务的后台管理,主要涉及航班、飞机、机场信息,查票、订票信息,客户信息等多种数据信息。这个系统要求能够实现实时,高效,便捷等特点。2 需求分析2.1

16、系统环境需求开发环境需求:硬件要求:1.6 GHz 或更快的处理器,1 GB RAM(如果在虚拟机上运行,则为 1.5 GB)20 GB 可用硬盘空间, 5400 RPM 硬盘驱动器, 与 DirectX 9 兼容的视频卡,其显示分辨率为 1024 x 768 或更高软件要求:Windows 7以上其他要求:Internet Explorer 10需要 KB2883200(可通过 Windows 更新获得)开发工具要求:Visual Studio 2015 SQL Server 20142.2 功能需求分析机票信息管理:主要实现机票基本信息的显示和查询,在该功能模块中,点击预定可以显示航空公司

17、,飞机型号,起飞机场,降落机场,机舱类型,单程票价,往返票价以及起飞时间,降落时间等基本信息的显示功能,在订单中,实现了客户姓名、联系方式、证件号码等基本信息填写的功能。航班查询:主要用户查询航班的起飞时间和飞行时间。航班动态:主要让用户清楚的看到各个航班运行的路线以及时间。帮助中心:一些常见问题(如:行李托运重量物品限制)网上机票预订等等。建议和投诉:主要实现客户对机票价格以及业务服务的建议和评价。根据我对本系统功能的要求和它的特点,通过对系统的分析,制作完成如图1-1所示的系统功能模块结构图。图1-1 系统功能模块图3 系统功能设计3.1概念结构设计3.1.1概念模型(1)客机实体属性图,

18、如图3-1所示。客机客机编号座位数客机名图3-1 客机实体属性图(2)客户实体属性图,如图3-2所示。地址旅客姓名性别身份证号号码码旅客编号图3-2 客户实体属性图(3)航班实体属性图,如图3-3所示。航班起飞地航班编号起飞时间到达时间目的地图3-3 航班实体属性图(4)机票实体属性图,如图3-4所示。机票航班号票价座位类型座位号客户姓名当前预售状态图3-4 机票实体属性图根据分析,可得到本系统总实体属性图,如图3-5所示。n航班旅客包含机票购买n姓名身份证号码联系电话起飞时间航班编号目的地起飞地座位号当前预售状态客户姓名票价姓名密码1mmn有客机11客机编号折扣到达时间付款状态数量座位数包含

19、1n航班号+号实付款业务员旅客编号客机名机票类型+号图3-5 系统总实体属性图3.1.2物理模型将生成的概念模型通过PowerDesigner工具栏中的Generate Physical DataModel命令来转换成物理模型,生成结果如下图3-6所示:图3-6 航空机票预订系统物理模型图3.2数据库分析3.2.1数据库描述航空数据库(AirlineReservation)保存了所有用户的数据以及网站航空信息,以及第三方接口调用数据库记录及数据,SQL数据库的使用可以很多数据进行控制和管理,利用各大数据使得它们产生联系。SQL可以及时对各种数据出现的问题进行恢复,防止程序出现故障,即使发生了故

20、障也能及时恢复正常。3.2.2数据表设计表3.1 Tbl_Address (客户地址表)字段类型是否为空备注AddressIDString不可为空地址IDMemberIDString不可为空客户编号CountryCodeint不可为空国家编码StateCodeint不可为空省份编码CityCodeint不可为空城市编码AddressString不可为空详细地址ZipCodeint可为空邮编EmailString可为空邮箱TelString可为空电话Mobileint不可为空手机号码表3.2 Tbl_ Member (客户信息表)字段类型是否为空备注MemberIDString不可为空客户编号M

21、emberNameString不可为空客户名称PasswordString不可为空密码StatusCodeInt不可为空客户状态(1/2/3)StatusNameString不可为空正常/冻结/异常MemberGradeCodeInt不可为空会员等级MemberGradeNameString不可为空SexString不可为空性别1-男2-女IDNuberString不可为空身份证号TelString不可为空电话MobileInt不可为空手机号EmailString不可为空邮箱IPString不可为空IPOrderNumInt不可为空订单数量AvatarString不可为空头像CommentsS

22、tring不可为空备注RegisterDateDatetime不可为空注册时间LastLoginDateDatetime不可为空最后一次登录时间表3.3 tbl_City (城市表)字段类型是否为空备注CityCodeInt不可为空城市CodeCityNameSting不可为空城市名称CountryCodeInt不可为空国家编号StateCodeInt不可为空省份Code表3.4 tbl_Country (国家表)字段类型是否为空备注CountryCodeInt不可为空国家CodeCountryNameSting不可为空国家名称StandardCodeString不可为空国家编号CreateD

23、ateDatetime不可为空创建时间表3.5 tbl_ State(省份表)字段类型是否为空备注StateCodeInt不可为空省份CodeStateNameSting不可为空省份名称CountryCodeInt不可为空国家编号StateNa5 meEn不可为空省份简称CreateDateInt不可为空创建时间表3.6 Tbl_AirplanesInfo (客机信息表)字段类型是否为空备注AirplanesIDnchar不可为空客机编号AirplanesNamenchar不可为空客机名称EconomyClassNumint不可为空经济舱座位FirstClassNumint不可为空头等舱座位B

24、usinessClassNumint不可为空商务舱座位Commentsnchar不可为空备注表3.7 Tbl_ Complaints (客户申诉表)字段类型是否为空备注ComplaintsIDuniqueidentifier不可为空申诉IDMemberIDnchar不可为空客户IDMemberNamenchar不可为空客户名称ComplaintsContentnvarchar不可为空申诉内容Emailnchar不可为空邮箱Telnchar不可为空电话Mobileint不可为空手机号码CreateDatedatetime不可为空申述时间表3.8 Tbl_ OrderInfo(订单信息表)字段类型

25、是否为空备注OrderIDnvarchar不可为空订单IDMemberIDnchar不可为空客户IDAirlineIDnvarchar不可为空航线IDShippingSpacenchar不可为空舱位等级TicketPricesdecimal不可为空机票价格PaymentAmountdecimal不可为空支付金额OrderRemarksnvarchar不可为空订单备注CouponIDnvarchar不可为空优惠券ID表3.9 Tbl_ Airline(航线信息表)字段类型是否为空备注AirlineIDnvarchar不可为空航线IDStartingCityCodeint不可为空起始站CodeSt

26、artingCityNamenchar不可为空起始站CodeTerminusCityCodeint不可为空终点站CodeTerminusCityNamenchar不可为空终点站StartingDatedatetime不可为空起飞时间ArrivingDatedatetime不可为空到达时间FlightTimedatetime不可为空航飞时间AirlineRemarksnvarchar可为空航线备注s表3.10 Tbl_ Counpon(优惠券)字段类型是否为空备注CouponIDuniqueidentifier不可为空优惠券IDCouponNamenvarchar不可为空优惠券名称CouponA

27、mountdecimal不可为空优惠金额MemberIDnchar不可为空客户IDTypeint不可为空优惠券类型TypeNamenvarchar不可为空优惠券类型名称BeginDatedatetime不可为空开始时间EndDatedatetime不可为空结束时间IsUsebit不可为空是否使用sCommentsnvarchar可为空优惠券备注3.2.3数据库优化方法一、语句的优化(1)减少对数据库的查询次数;(2)数据库对数据有约束性;(3)数据库数据执行中,可以进行过滤。1、通过使用in描述数据简单易懂,优化的时候,要用exists替换它2、NOT IN操作符强列推荐不使用的,因为它不能应

28、用表的索引。用NOT EXISTS或(外连接+判断为空)方案代替,因为Oracle在处理In时是按Or的方式做的,即使使用了索引也会很慢。3、通过替换,这是一条简单易记的规则, 低效:SELECFROMLOCATIONWHERELOC_ID=10ORLOC_ID=20ORLOC_ID=30高效:SELECTFROMLOCATIONWHERELOC_ININ(10,20,30);二、结构的优化1、DELETE以TRUNCATE替代:如果你没有COMMIT事务2、用Where子句替换HAVING子句:避免使用HAVING子句, 当删除表中的记录时,在通常情况下检索结果出来后进行过滤。如果能通过WH

29、ERE子句限制记录的数目,那就能减少这方面的开销.过滤之后可以减少有需要处理的数据。3、语句的格式 先将语句进行进行解析,再更改格式在执行4、不要改变索引类型通过对不同数据类型进行比对是,可以自行进行转换。5、特殊语句优化提高GROUP BY语句的效率,不需要的记录在GROUP BY之前过滤掉.下面两个查询返回相同结果低效:1SELECTJOB,AVG(SAL)FROMEMPGROUPbyJOBHAVINGJOB=PRESIDENTORJOB=MANAGER高效:1SELECTJOB,AVG(SAL)FROMEMPWHEREJOB=PRESIDENTORJOB=MANAGERGROUPbyJO

30、B优化方案1进行表分区通过对数据进行分区,似的如果我们对数据库数据查询时我们只需要对特定的表进行查询即可。这样不仅可以优化时间,还可以将数据分别保存在自己需要的特定位置方便查询可按月自动建表分区。2.别名的使用别名的使用就是将表分区命名成特定的名字方便查询,加快查询速度。3.索引优化设计通过优化设计将表里的数据映射到特定的位置,因此来迅速找到需要的数据,减少所需要的时间。当你对一个庞大的数据进行查询时,建立索引分区优化资源配置。频繁的使用会导致数据发生分裂,所以要进行维护。4 系统功能实现4.1 系统登陆与注册界面实现首页点击注册按钮,会跳转到注册页面,注册需要填写账户(手机号/邮箱)及密码,

31、密码需要输入2次校验,如果一直会提示登陆成功,登陆成功后会自动跳转到个人中心。注册页面效果图如下图4-1所示。图4-1注册页面效果图实现注册功能核心代码如下: public ActionResult UserRegister(string userName, string password) Tbl_Member m = new Tbl_Member(); m.MemberID = userName; m.Password = password; m.StatusCode = 1;状态默认1正常 m.Balance = 0;/账户金额默认0元 bool fig = bll.AddAccount

32、(m); if (fig) /注册成功后把用户名存到Session SessionUserName = userName; return Json(new status = fig ); public bool AddAccount(Tbl_Member m) try return dal.AddAccount(m); catch (Exception) return false; public bool AddAccount(Tbl_Member m) using (var context = LinqDBHelper.WebDataContext) context.Tbl_Member.I

33、nsertOnSubmit(m); context.SubmitChanges(); return true; 在登录界面用户,输入帐号和密码,如果输入的帐户和密码的用户不存在,则显示错误信息;若输入的帐户和密码的用户存在,则跳转到个人中心,登陆页面效果图,如下图4-2所示:图4- 2登陆页面效果图实现登陆功能核心代码如下: public ActionResult Login(string UserName, string PassWord) bool fig = false; fig = bll.Login(UserName, PassWord); if (fig) /注册成功后把用户名存到

34、Session SessionUserName = UserName; return Json(new status = fig ); public bool Login(string UserName,string PassWord) try Tbl_Member m = dal.GetAccountInfo(UserName); if (m != null & m.Password = PassWord) return true; return false; catch (Exception) return false; / / 查询账号信息 / / / public Tbl_Member

35、 GetAccountInfo(string UserName) using (var context = LinqDBHelper.WebDataContext) return context.Tbl_Member.Where(i = i.MemberID = UserName).SingleOrDefault(); 4.2 网站首页及机票展示界面实现网站首页主要功能有机票查询,特价机票的展示,热品推荐,特殊服务等,搜索功能用户输入出发城市或者终点城市,点击查询后系统会到数据库里面查询对应的机票,查询出对应的机票后会现在页面,若没查到对应的机票信息,会提醒暂无该航班机票,网站首页及特价机票效

36、果图,如下图4-3和4-4所示:图4- 3首页效果图图4-4 特价机票页面效果图实现首页查询及机票信息功能核心代码如下: public ActionResult Index(string type) List AirlineList = new AirlineBLL().GetAirlineList(type); ViewBag.AirlineList = AirlineList; return View(); public List GetAirlineList(string Search) try return dal.GetAirlineList(Search); catch (Exce

37、ption) return null; / 根据搜索条件查询机票信息 / / / public List GetAirlineList(string Search) using (var context = LinqDBHelper.WebDataContext) return context.Tbl_Airline.Where(i = (string.IsNullOrWhiteSpace(Search) | i.StartingCityName.Contains(Search) | i.TerminusCityName.Contains(Search).ToList(); / / 根据出发城

38、市or终点城市or时间查询机票信息 / / 关键词 / 出发地点 / 到达地点 / 出发时间 / 到达时间 / public List GetAirlineList(string Search, string CF, string DD, DateTime CFT, DateTime DDT) using (var context = LinqDBHelper.WebDataContext) if (!string.IsNullOrWhiteSpace(Search) return context.Tbl_Airline.Where(i = (string.IsNullOrWhiteSpace(Search) | i.StartingCityName.Cont

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

当前位置:首页 > 其他


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