航空订票系统毕业设计.doc_第1页
航空订票系统毕业设计.doc_第2页
航空订票系统毕业设计.doc_第3页
航空订票系统毕业设计.doc_第4页
航空订票系统毕业设计.doc_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

xxxxxx 大大 学学 本本 科科 毕毕 业业 设设 计(论文)计(论文) 题题 目:航空订票系统目:航空订票系统 学学 院:信息工程学院院:信息工程学院 专专 业:计算机科学与技术业:计算机科学与技术(应用方向应用方向) 班班 级:级:091 班班 学学 号:号: 学学 生:生: 指导教师:指导教师: 职称:职称: 时间:时间: 摘 要 随着社会发展的不断进步,民航事业的壮大,人均消费水平的提高,航空 运输现在已经成为我国运输事业的重要方式之一。但由于航空运输的特殊性, 很容易受到天气和人为因素的影响,从而给旅客及时获取航班信息,及时准确 的预定机票和退订机票带来了极大的不便。针对以上的问题,可以通过建立一 套完整的航空公司订票系统,来公布航班信息、查询航班信息、预定机票、退 订机票等操作,从而使旅客能够及时准确获得自己需要的信息或进行查询、订 票、退票等操作。 航空订票系统是为机场工作人员及旅客提供订票、退票等与机票相关的内 容和管理的系统。它分为前台和后台两个部分,前台主要提供了航班的查询、 机票的预定与退订等功能;后台是管理员管理界面,只有管理员才能进行操作, 它包括查看机票预定情况,对航班信息进行增、删、改、查,对用户信息进行 增、删、改、查,添加、删除、修改公布信息等操作。 本系统采用 MyEclipse 作为软件开发的环境,以 Tomcat6.0 作为 Web 服务 器,后台的数据库是使用 MYSQL5.2。使用 Microsoft 公司的 Win7 系统为开发 的系统,运用 JSP+JavaBean 的开发模式,从界面友好、实用的要求出发,开发 了一个利用 WEB 技术发布在网络上的基于 B/S 模式的航空系统。 关键词:飞机票预定系统;MyEclipse;MySQL Server 5.0;B/S 结构; JSP; ABSTRACT With the social development progresses, the civil aviation industry and growth, per capita consumption level, air transport has now become Chinas transportation industry is one important way. However, due to the special nature of air transport, are susceptible to weather and human factors, giving passengers timely access to flight information, timely and accurate ticket booking air tickets and unsubscribe brought great inconvenience. To solve the above problems, you can build a complete airline reservation system, to publish flight information, check flight information, booking tickets, unsubscribe tickets and other operations, so that the passengers can get timely and accurate information they need or query , booking, refunds and other operations. Tickets reservation system for airport staff and passengers booking, refunds and other relevant content with the ticket and management systems. It is divided into two parts, foreground and background, foreground provides a major route queries ticket booking and cancellation, see bulletin board and other functions; background is the administrator management interface, only administrators can operate, which includes view Flight situation, the flight information to add, delete, change, check the user information to add, delete, change, add, delete, modify, publish information and other operations. The system uses MyEclipse as a software development environment to Tomcat6.0 as a Web server, the background of the database is to useMYSQL5.2. Win7 system using Microsofts system for the development, the use of JSP + JavaBean pattern of development, from a user-friendly, practical requirements, developed a technique using the WEB published on the web-based B / S mode of the aviation system. Key words: Tickets reservation system; MyEclipse;MySQL Server 5.0;B/S structure ; JSP; 目目 录录 第一章 绪论1 1.1 课题背景及现状 1 1.2 选题意义.1 1.3 系统开发工具与技术介绍.1 1.3.1 开发环境.1 1.3.2 开发模式简介.2 1.3.3 开发技术.2 1.3.4 开发平台.2 第二章 需求分析3 2.1 可行性分析.3 2.1.1 经济可行性分析.3 2.1.2 技术可行性分析.3 2.2 功能需求.3 2.3 性能需求.4 2.4 数据信息需求.4 2.5 安全与保密需求.4 2.6 软硬件环境需求.5 2.7 其它需求 5 2.8 航空售票系统的实现目标.5 第三章 概要设计6 3.1 系统的总体结构设计 .6 3.2 功能模块设计.6 3.2.1 前台功能模块设计.6 3.2.2 后台功能模块设计.7 3.3 页面的设计.8 第四章 数据库设计.9 4.1 结构设计.9 4.1.1 概念结构设计.9 4.1.2 逻辑结构设计11 4.1.3 物理结构设计12 4.4 运用设计15 4.4.1 数据字典设计15 4.4.2 安全保密设计16 第五章 详细设计及实现17 5.1 前台功能设计17 5.1.1 用户登录17 5.1.2 用户注册18 5.1.3 航班查询20 5.1.4 机票预定21 5.1.5 修改个人信息22 3.2.6 修改密码23 5.1.7 订单查询24 5.1.8 退票25 5.1.9 改签26 5.2 后台功能设计27 5.2.1 订单查询28 5.2.2 航班管理28 5.2.3 用户管理29 5.2.4 管理员管理31 5.3 验证码生成程序设计说明31 5.3.1 程序描述31 5.3.2 算法31 5.3.3 流程逻辑31 5.4 连接数据库程序设计说明32 5.4.1 程序描述32 5.4.2 算法32 5.4.3 流程逻辑32 第六章 系统实现.34 6.1 登录功能模块的实现34 6.2 用户注册功能模块的实现 .35 6.3 航班查询功能模块的实现 .36 6.4 预定机票功能模块的实现 .37 6.5 修改个人信息功能模块的实现 .37 6.6 修改密码功能模块的实现 .38 6.7 订单查询功能模块的实现40 6.8 退票功能模块的实现 .41 第七章 使用说明.42 7.1 系统环境要求 .42 7.2 系统安装 .42 7.3 系统运行 .42 致 谢.43 参考文献.44 附 录.45 1 第一章 绪论 1.1 课题背景及现状 随着社会发展的不断进步,人均收入的不断的增高,使得越来越多的人将 目光放到提高生活质量上了,因此,旅游在人们的生活中占有越来越重要的地 位。而且人们选择出行的方式也越来越多元化,其中飞机所占的比重越来越高。 同时,中国十七届五中全会通过的国民经济和社会发展的第十个五年计划建议 中已明确指出:信息化是当今世界经济和社会发展的大趋势,也是我国产业优 化升级和实现工业化、现代化的关键环节。大力推进国民经济和社会信息化, 是覆盖现代化建设全局的战略举措。可见,这是民航快速发展的机遇,更是民 航信息化的机遇。 航空公司伴随着业务的增长,不端增长的信息量、落后的工作效率和管理 水平也带来很多的问题。老套的人工售票方式已经无法满足人们的需求,严重 的制约了工作效率。在计算技术及电子商务高速发展的今天,有必要引入高效 的计算机系统来处理航班查询、机票预定、信息管理的工作。因此,开发一套 具有航班查询、机票预定与退票、航班信息管理、客户信息管理的系统已经是 势在必行。 1.2 选题意义 航空订票系统是为机场工作人员及客户提供订票退票等与机票相关内容和 管理的系统,它具有开放体系结构、易扩充、易维护、具有良好人机界面的优 点。它除了克服存储乘客信息少,查询效率低下等问题外,更重要的是其安全、 可靠,实现航空公司的机票销售的自动化。它还为企业的决策层提供准确、精 细、迅速的机票销售信息,便于机场工作人员对机票信息进行管理,提高机场 工作人员的工作效率。 1.3 系统开发工具与技术介绍 1.3.1 开发环境 开发本系统所需要用到的软件环境如下: 1) JDK:JDK 6.0.24 版本是目前功能比较全、比较稳定的版本,其新添加 了许多以前版本所不具备的新特性,如整合脚本语言、自动打包解包、 安全性等功能。 2) Web 应用服务器:Tomcat6.0 服务器功能强大、方便易用,适用于中小 2 型系统的开发服务器,同时 Tomcat 可以从网上免费下载,从而降低了 开发成本。 3) 数据库:MySQL 5.0 数据库是目前小型应用开发中比较流行的数据库, 且其从 MySQL 5.0 版本开始支持事务,保证了数据库的完整性和安全性。 4) MyEclipse 工作平台:利用它我们可以在数据库和 JavaEE 的开发、发 布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富 的 JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能。 1.3.2 开发模式简介 本系统采用 B/S(浏览器/服务器)结构,在这种结构下,客户机上只需要装 有一个浏览器(Browser),用户就可以通过 WWW 浏览器来访问服务器上的内容, 在通用浏览器端就实现了原来需要复杂专用软件才能实现的强大功能,大大节 约了开发成本,是一种全新的软件系统构造技术。 1.3.3 开发技术 本系统采用 MyEclipse 作为软件开发的环境,以 Tomcat6.0 作为 Web 服务 器,后台的数据库是使用 MYSQL5.0。使用 Microsoft 公司的 Win7 系统为开发 的系统,运用 JSP+JavaBean 的开发模式,从界面友好、实用的要求出发,开发 了一个利用 WEB 技术发布在网络上的基于 B/S 模式的航空系统。 1.3.4 开发平台 本系统选择 Windows2007 作为开发平台,进行设计、测试和运行。因为 Windows 操作系统是目前应用最广的操作系统,它以全新的图形界面,简单快 捷的操作方式,支持多媒体功能等特点而成为软件开发的主流趋势,选用它作 为开发平台主要是易于功能的扩展和软件升级。 3 第二章 需求分析 2.1 可行性分析 2.1.1 经济可行性分析 在当前的各种人力和财力等限制条件下,利用现有的技术,本系统的功能 都能够实现;系统管理和维护比较简单,除了必要的设备投资外,后期运行成 本比较低;该系统正常商务运行后,将给航空公司带来极大的便利,提高工作的 效率,节省不必要的人员费用。 2.1.2 技术可行性分析 1) 在限制条件下功能目标能达到 2) 利用现有技术功能目标能达到 3) 现开发人员数量和质量的要求能满足,熟练掌握系统分析技术、数据库 技术和网络编程技术 4) 在规定的期限内,开发能完成 2.2 功能需求 随着互联网的快速发展,人们越来越习惯于通过网络来实现所需的服务, 网络已经深深影响了人们的生活方式,而且传统的人工售票已经不能满足航空 客运的发展要求,更不方便乘客的机票信息查询及购买。而且近年来航空客运 量持续快速增长,客运量需求的增长为航空业的快速发展带来了机遇,为了充 分满足旅客对出行时间和服务质量的需求,以及抢占运输市场份额,不断扩大 客运市场航空占有份额,航空公司就必须建立自己的售票系统,让客户能够通 过网络更充分地了解我的服务。 本系统主要分为两部分:管理员部分和普通用户部分。为了方便乘客查询 自己所需要的机票信息,因此,要求管理员对机票信息要进行合理的管理,并 提供了方便、快捷、灵活的查询条件,为乘客的出行带来了极大的方便。系统 要实现机票预定管理的自动化,就要完成对航线信息、航班信息、机票信息、 订单信息的管理及维护,对用户机票的预定及订单的支付情况进行管理。 所需的功能如下: 1) 能够实现用户的网上注册功能,用户在网上预定机票之前 ,需要先进 4 行注册成为本网站的用户,并提供用户的真实身份信息,以便用户订票 的时候进行身份验证和绑定用户信息并生成订单; 2) 用户通过网上注册后能够进行航班信息、机票信息的查询,网上预定机 票,并查询自己的历史订单情况; 3) 管理员登录系统后,能够实现航班的班次及航线信息的管理,对航班及 航线的变动信息及时更新; 4) 管理员能够实现对机票信息的管理,及时更新机票信息,能够根据实际 航班客运量来进行调价; 5) 用户界面需求,系统应提供用于工作明确的用户界面,并且尽可能地为 用户操作提供方便。用户应能通过界面较容易地实现所需功能,尽可能 为用户提示信息,在功能实现完善的基础上要求界面美观; 6) 能够提供友好的客服服务,让更多的乘客了解我们的服务并反馈他们的 宝贵意见,从而有利于提高航空公司的服务质量。 2.3 性能需求 主要质量属性 如下: 正确性:确保用户操作后能实现其正常的各种操作方式。 健壮性 :软件对规格定义之外的异常状况的适应能力不能过差 可靠性 :错误提示,数据不会无故丢失 性能,效率 良好 易用性 :操作简单易懂 清晰性 :流程清晰有条理,易于分类管理 安全性 不能随意的修改和泄漏用 户的信息等。 可扩展性 自适应各种系统环境 兼容性 :自适应各种操作系统和浏览器 2.4 数据信息需求 信息存储需求: 1) 机场提供的信息必须及时的反映在旅行社的工作平台上。 2) 售票系统的订单信息必须无差错的存储在航空公司的数据库中。 信息输入输出需求: 3) 数据输入需求:数据完整、准确 4) 数据输出需求:简捷,快速,实时,准确 2.5 安全与保密需求 1) 权限控制 (1)航空公司的管理员享有对航班信息、航班人员信息和公告信息进行 增、删、改、查的权利; 5 (2)所有的旅客都可以浏览、查找航班信息和公告信息; (3)只有登录的旅客才能进行机票预定; (4)航空公司的管理员和旅客的登录信息采用 MD5 验证。 2) 数据库备份 允许用户进行数据的备份和恢复,以弥补数据的破坏和丢失 2.6 软硬件环境需求 1)软件需求: (1)开发环境 WINDOWS 98 Internet EXPLORER 4.0 以上版本。 (2)开发工具 MyEclipse8.x 以上 2)硬件需求 : (1) 最低配制:内存 512MB,CPU1.8GHZ,硬盘 40G (2)服务器运行 Tomcat5.x 以上 (3)数据库 MYSQL5.0 或者更高版本 2.7 其它需求 提示信息要友善,界面设计要人性化,操作流程不要太过于复杂等。 2.8 航空售票系统的实现目标 1)功能设计齐全,能够快速方便地注册为本网站的用户; 2)设计高效的 SQL 查询语句,能根据用户查询的查询条件,实现快速地 获取到他们所需的各种信息,并且能显示机票、航班的详细信息,方便 乘客了解商品信息; 3)智能化修改已售机票信息的状态,使已出售机票不再显示在用户查询信 息中,做到了单张机票不重复卖出; 4)预定机票的操作简单快捷,真正实现人性化的设计 5)实现模拟网上支付功能,支付功能后自动修改订单的状态; 6)用户支付成功后,可到订单管理界面查询自己历史订单; 7)用户登录成功后,系统能记住用户的登录状态,如果出现临时断网重连 网络后不需要再次登录本系统; 8)界面设计美观,信息浏览灵活、方便、快捷; 9)数据库设计合理,提供了高效、准确、快捷、灵活的信息查询接口, 数据存储安全可靠; 10) 增加了客户服务信息栏,方便乘客能更多的了解我们的服务,从面得 到更多的实惠; 11) 增加了返程机票信息查询功能,减少了乘客的查询次数; 12) 增加了订单查询功能,能让乘客随时查阅自己的历史订单情况; 6 13) 系统最大限度地实现易维护性和易操作性; 14) 系统运行稳定、安全可靠,不会出现不可预测的状态。 第三章 概要设计 3.1 系统的总体结构设计 本系统采用的 BS 结构,因此,此系统可分成页面的设计,包括管理员页 面和用户页面;业务层的设计,主要是一些关于处理页面发过来的请求的方法。 由于我采用了 BS 结构,摆脱了 CS 传统的客户端和服务器端一对一的关系, 同时我们也注入了页面的显示,用户和服务器打交道不再是传统的客户端代码 和服务器端代码的编写。 BS 结构的特点就是所有的代码都是在服务器端也就是在公司内部实现, 用户端根本没有任何编码,只有显示,而这些显示就是要通过我们页面的设计 编码来实现。 3.2 功能模块设计 为了实现航空公司以及旅游行业的现代化管理,进一步提高工作效率,方 便旅客,需要开发一个航空订票系统。航空订票系统是一个独立的系统,它主 要由前台和后台两部分组成。 本系统在客户端实现了用户的登录,注册,航班的查询和退订的功能的页 面,在航空公司内部实现了管理员的登录,管理员对航班的增删查改等操作。 具体业务流程见下图。 机票预定系统 前台功能后台功能 图 3-1 航空订票系统总体结构 3.2.1 前台功能模块设计 (1)注册功能:用户可以填写注册信息并提交。 (2)登录功能:用户可以登录到个人界面中进行相应的操作。 7 (3)修改密码功能:用户及管理员登录后可以修改密码。 (4)修改个人信息:通过此功能用户可修改个人信息。 (5)航班查询功能:可以根据航班号或者起始站和目的地查询航班的详 细信息。 (6)订票功能:用户登录后可以提交订票信息并在核实后交费,实现订 票功能。 (7)订单查询功能:用户登录后可以根据身份证号或者订单号查询订单 信息 (8)退票功能:用户登录后可以进行退票。 前台功能结构如下图: 查询机票 登录 注册 机票预定 修改个人信息 订单查询 退票 改签 修改密码 安全退出 前台功能 图 3-2 航空订票系统前台功能结构图 3.2.2 后台功能模块设计 (1)查询功能:可以查看所有的订单信息。 (2)航班管理:管理员可以通过此功能对航班进行增、删、改、查的操 作。 (3)用户管理:在管理员界面中可对注册过的用户进行管理,包括增加 用户、删除用户、查询用户和修改用户信息的功能。 后台功能结构如下所示: 登录 订单查询 航班管理 用户管理 管理员管理 安全退出 查询航班 修改航班信息 增加航班 删除航班 查询用户 修改用户信息 增加用户 删除用户 查询管理员 修改管理员信息 增加管理员 删除管理员 用户管理 查询常用联系人 修改常用联系人信息 增加常用联系人 删除常用联系人 后台功能 图 3-3 航空订票系统后台功能结构图 8 3.3 页面的设计 页面设计中我采用的是 JSP 来显示页面,它能显示动态的页面,能够根据 用户不同的请求显示出不同的页面。 为了实现页面的复用,我使用了 Struts 中的 tile 框架,提供了一个通用的 模版,它能够将不同的 JSP 页面整合到一个页面中,使整个页面看起来更有逻 辑性,同时也更美观 1) 客户端功能的实现设计包含了以下页面: 用户登录页面: 此页面用于用户的登录操作。 用户注册页面: 此页面包含了用户注册信息的填写和注册成功的提示。 航班查询页面 :此页面包含了航班查询页面和查询结果显示页面。 航班预订页面: 此页面包含了航班信息显示,乘客信息填写。 航班退订页面: 此页面包含了用户已预订的航班的现实和退票的支付。 2) 管理员是在服务器端需先登录,然后才能对航班进行增删查盖等功能的 操作。本模块中设计了以下的页面: 管理员登录页面:用来完成管理员的登录功能。 航班查询页面:此页面包含有 2 个页面,查询条件页面和查询结果显示页 面。 航班删除页面:此页面包含航班的显示页面以及删除后的显示页面。 增加航班页面:此页面包含填写航班信息的页面和增加成功后的提示页面. 修改航班页面: 此页面包含需要修改航班信息的页面和修改成功后的提 示页面。 9 第四章第四章 数据库设计数据库设计 在一个 B/S 系统中数据无疑是非常重要的,数据的安全性、稳定性、可恢 复性对使用者起着极其重要的作用。选择一个健全稳定的数据库无疑也是系统 实现的首要步骤,本系统选用的是 MYSQL5.0,它能提供大型系统所需的数据 库服务。下面将介绍系统的数据库结构。 4.1 结构设计 4.1.1 概念结构设计 概念结构设计主要是为了说明本数据库将反映的现实世界中的实体属性和 它们之间的关系等原始数据形式,包括各项数据项、记录、系、文卷的标志符、 定义、类型、度量单位、和值域,建立本数据库的每一幅用户视图。 通过对整个系统进行分析,对各模块建立的实体关系图如下: 登录信息是用户登录及修改密码时所需要的信息,其中包含了用户编号、 用户名、密码、密码提问、密码提问答案五项属性。它们之间的关系如下图所 示: 图 4-1 用户基本信息实体 E-R 图 用户详细信息用于对用户进行详细的描述,其中包含了用户编号、姓名、 性别、出生日期、证件类型、证件号码、手机号码、固定电话、邮编、地址、 电子邮箱 11 个属性。它们之间的关系如下图所示: 10 图 4-2 用户详细信息实体 E-R 图 订单信息由订单号、用户编号、姓名、证件类型、证件号码、订票日期、 机票类型、出发日期、出发时间、出发航班、出发舱位等级、总价 12 个属性组 成,它们之间的关系如下图: 图 4-3 订单实体 E-R 图 管理员包含了管理员编号、管理员名称、是否为默认管理员、是否启用 4 个属性组成, 它们之间的关系如下图所示: 图 4-4 管理员实体 E-R 图 11 在机票预定系统中通过不同的用户的操作将这些实体联系在一起,如下图 所示: 图 4-5 机票预定系统实体关系图 4.1.2 逻辑结构设计 经过对原始数据的分解、合并后重新组织起来的数据架构如下: 1) User_Common(User_ID,Name,Password,Question,Answer) 说明:User_ID 表示用户编号,Name 表示用户名,Password 表示用户密码, Question 表示密码提示问题,Answer 表示密码。 2) User_Detail(User_ID,Dname,Sex,Borth,ID,IDCode,Teleph,FL_ tel,Mail,Address,Postcode) 说明:User_ID 表示用户编号,Dname 表示姓名,Sex 表示性别,Borth 表 示出生日期,ID 表示证件类型,IDCode 表示证件号码,Teleph 表示手机号码, FL_tel 表示固定电话,Mail 表示电子邮箱,Address 表示地址,Postcode 表示邮 编。 3) Order(Order_ID,User_ID,Dname,ID,IDCode,Booking_Date,Tick et_Type,Starting_Date,Starting_Time,S_FLT_No,S_Cabin_Type, Total_Amount) 说明:Order_ID 表示订单编号,User_ID 表示用户编号,Dname 表示姓名, ID 表示证件类型,IDCode 表示证件号码,Booking_Date 表示订票日期, Ticket_Type 表示证件类型,Starting_Date 表示出发日期,Starting_Time 表示出 发时间,S_FLT_No 表示出发航班号,S_Cabin_Type 表示出发舱位等级, Total_Amount 表示总价。 4) Flight(FLT_No,Starting_Date,Starting_Time,Starting,Destination,V oyage_time,Num_FCSC,Num_OC,Num_TC,Adult_FCSC,Child_F 12 CSC,Adult_OC,Child_OC,Adult_TC,Child_TC,discount,ACF, Fuel,Enabled) 说明:FLT_No 表示航班号,Starting_Date 表示出发日期,Starting_Time 表 示出发时间,Starting 表示出发地,Destination 表示目的地,Voyage_time 表示 飞行时间,Num_FCSC 表示头等舱座位数,Num_OC 表示商务舱座位数, Num_TC 表示经济舱座位数,Adult_FCSC 表示头等舱成人票价,Child_FCSC 表示头等舱儿童票价,Adult_OC 表示商务舱成人票价,Child_OC 表示商务舱 儿童票价,Adult_TC 表示经济舱承认票价,Child_TC 表示经济舱儿童票价, discount 表示折扣,ACF 表示机场建设费,Fuel 表示燃油费,Enabled 表示是否 启用。 5) User_manager(Manager_ID,Manager_name,Manager_password,IsAdm in,Enabled) 说明:Manager_ID 表示管理员编号,Manager_name 表示管理员名称, Manager_password 表示管理员密码,IsAdmin 表示是否是默认管理员,Enabled 表示是否启用。 4.1.3 物理结构设计 1) 表的建立 (1)用户登录信息表,它所有的属性和数据类型见下表: 表 4-1 用户登录信息表 字段名称字段类型长度是否为空说明 User_ID char12否主键、外键 Namechar30否用户名 Passwordchar15否密码 Questionchar40否密码提示问题 Answerchar40否密码答案 (2)用户详细信息表,它所有的属性和数据类型见下表: 表 4-2 用户详细信息表 字段名称字段类型长度是否为空说明 User_IDchar12否主键、外键 Dnamechar40否姓名 Sexchar2是性别 BorthDate是出生日期 IDchar20否证件类型 13 IDCodechar30否证件号码 FL_telchar12是固定电话 Mailchar20否电子邮箱 Addresschar40是地址 Postcodechar6是邮编 (3)订单信息表,它所有的属性和数据类型见下表: 表 4-3 订单信息表 字段名称字段类型长度是否为空说明 Order_IDchar15否订单号、 主键 User_IDchar12否用户编号、 外键 Dnamechar40否姓名 IDchar20否证件类型 IDCodechar30否证件编号 Booking_DataDate否订票日期 Ticket_TypeTime6否机票类型 Starting_DataDate否出发日期 Starting_TimeTime否出发时间 S_FLT_Nochar6否出发航班 号 S_Cabin_TypeChar6否出发舱位 等级 Returning_DataDate是返回日期 Returning_TimeTime是返回时间 R_FLT_Nochar6是返回航班 号 R_Cabin_Typechar6是返回舱位 等级 Total_Amountint否总价 (4)航班信息表,它所有的属性和数据类型见下表: 表 4-4 航班信息表 字段名称字段类型长度是否为空说明 FLT_Nochar6否航班号,主键 Starting_DateDate否出发日期 Starting_TimeTime否出发时间 14 Startingchar20否出发地 Destinationchar20否目的地 Voyage_timeFloat否航行时间 Num_FCSCint否头等舱座位数 Num_OCint否商务舱座位数 续表 4-5 航班信息表 字段名称字段类型长度是否为空说明 Num_TCint否经济舱座位数 Adult_FCSCint否头等舱成人价 Child_FCSCint否头等舱儿童价 Adult_OCint否商务舱成人价 Child_OCint否商务舱儿童价 Adult_TCint否经济舱成人价 Child_TCint否经济舱儿童价 discountfloat否折扣 ACFint否机场建设费 Fuelint否燃油费 Enabledint否是否启用 (5)管理员信息表,它所有的属性和数据类型见下表: 表 4-6 管理员信息表 字段名称字段类型长度是否为空说明 Manager_IDchar12否管理员编号、外键 Manager_namechar20否管理员名称 Manager_passwordchar15否管理员密码 IsAdminint否是否为默认管理员 Enabledint否是否启用 2) 表之间的关系 表与表之间的关系如下图: 15 图 4-6 表与表之间关系 4.4 运用设计 4.4.1 数据字典设计 数据字典的内容是随着数据流程图自顶向下地扩展而逐步充实的。在整个 系统的开发过程中,包括系统交付运行使用后的维护阶段,一直在充实和修改 这部数据字典,始终保持它的一致性和完整性。它是系统开发人员在各个阶段 必不可少的依据。系统设计人员要根据它制定系统设计方案。程序设计人员在 对系统进行修改或扩充功能时,必须以这部数据字典为依据,必要时要修改或 充实它。 航空订票系统中数据字典的设计如下: 表 4-7 管理员信息表 表 4-8 用户注册信息表 名称:用户注册信息 描述:用户注册时需要的基本信息 定义:用户基本信息=用户编号+用户名+用户密码+密码提示问题+密码答 案 位置:用户登录页面、用户注册页面 16 表 4-9 航班信息表 表 4-10 用户登录信息表 表 4-11 订单信息表 4.4.2 安全保密设计 在航空订票系统,用户只有登录后才能对数据库进行操作,而管理员根据 拥有的权限可以对数据库进行相应权限的操作。且用户及管理员的密码都经过 MD5 加密后进行存储。 名称:航班信息 描述:航班的详细信息 定义:航班信息=航班号+出发日期+出发时间+出发地+目的地+航行时间+ 头等舱座位数+商务舱座位数+经济舱座位数+头等舱成人价+头等舱 儿童价+商务舱成人价+商务舱儿童价+经济舱成人价+经济舱儿童价 +折扣+机场建设费+燃油费 位置:航班管理界面及用户航班查询界面 名称:用户登录信息 描述:用户登录时需要的基本信息 定义:用户基本信息=用户编号+用户名+用户密码+密码提示问题+密码答 案 位置:用户登录页面、用户注册页面 名称:订单信息 描述:订单中包含的项 定义:订单信息=订单号+姓名+证件编号+订票日期+机票类型+出发时间+出 发航班号+出发地点+到达时间+到达地点 位置:航班预定界面及订单查询界面 17 第五章 详细设计 及实现 详细设计是软件开发过程中的重要阶段,在这个阶段的主要任务是对概要 设计中产生的功能模块进行详细的设计及实现。 5.1 前台功能设计 在前台功能中所有的用户都能查询航班、浏览公告、浏览广告,但只有登 录的用户才能进行机票预定、订单查询、常用联系人管理等功能。 具体流程如下图所示: 开始 选择操作 查询机票 登录浏览公告浏览广告注册 登录是 否成功 功能选择 Y N 机票预定 修改个人信息订单查询退票改签修改密码常用联系人管理 注册是 否成功 结束 安全退出 图 5-1 航空订票系统前台功能流程图 5.1.1 用户登录 用户可以凭借自己的用户名和密码进行登录。只有登录后的用户才能进行 订单查询、预定机票、退票、改签、常用联系人管理、修改个人信息、修改密 码的操作。 用户登录的流程如下图所示: 18 开始 主界面 选择 操作 登录界面 登录 输入用户 登录信息 用户名是 否为空 密码是否 为空 N 验证码是 否为空 N 用户名不 能为空 Y 密码不 能为空 Y 验证码不 能为空 Y 验证码是 否正确 N 验证码输 入不正确 Y MD5加密 验证用户 名和密码 是否正确 用户个 人界面 Y 密码错N 结束 图 5-2 用户登录功能流程图 用户登录详细步骤如下: 1) 在本系统的主界面选择“登录”按钮; 2) 在登录界面输入的登录信息,包括用户名、密码、验证码、用户类型 (管理员、用户); 3) 判断各输入项是否为空或不合法,若为空或不合法将提示“输入为空” 或“输入不合法”; 4) 判断验证码是否正确,若不正确,将提示“验证码”错误; 5) 用 MD5 对用户的密码进行加密; 6) 根据用户类型,从不同的表中查找用户名和密码是否与输入的一致,若 一致,则登录到用户或管理员个人界面,否则在登录界面提示“密码错” 。 5.1.2 用户注册 19 用户只有注册以后才具有登录的用户名和密码,且每个用户具有唯一的用 户名。用户注册时必须按照规则输入完整的注册信息,同时注册过的用户不能 再次注册。用户的密码必须经过 MD5 加密后才能存储到数据库中。 用户注册的流程如下图所示: 开始 主界面 选择 操作 注册界面 注册 输入注 册信息 输入是 否完整 输入不 完整 N 输入是 否合法 Y 输入不 合法 N 判定用户是 否已经注册 Y 用户已 注册 Y MD5加密 N 存储用户 信息 注册成 功界面 用户个 人界面 结束 图 5-3 用户注册功能流程图 用户注册的详细步骤如下: 1) 在本系统的主界面选择“注册”按钮; 2) 在用户注册界面输入注册信息; 20 3) 判断注册信息是否完整,若输入不完整则在用户注册界面提示“注册信 息输入不完整”; 4) 判断注册信息是否输入合法,若输入不合法则在用户注册界面提示“注 册信息输入不合法”; 5) 判断用户是否已经注册,若用户已经注册则提示“该用户已注册”,否 则提“注册成功”。 5.1.3 航班查询 航班查询是主页面最基本的功能,所有访问本网页的用户不需要注册或登 录就能查询航班信息。 航班查询的流程图如下图: 开始 主界面 选择 操作 输入航班 查询信息 判断输入 是否合法 航班查 询界面 输入不 合法 N 查询航班 Y 航班显 示页面 结束 图 5-4 用户查询航班功能流程图 航班查询的详细步骤如下: 1) 在本系统的主界面选择出发地点,到达地点及出发日期,然后选择“查 询”按钮; 2) 判断输入是否全部为空,若为空则提示“用户输入不完整”; 3) 判断输入是否合法,若输入不合法则提示“用户输入不合法”; 4) 显示查询结果。 5.1.4 机票预定 预定机票是本系统提供的最主要的功能之一。用户必须成功登录后才能预 定机票,但也存在两种订票的方式,一种是用户先登录,再查找符合自己需求 21 的航班信息,并进行订票;另一种是用户先查找符合自己需求的航班信息,然 后登录并订票。 预定机票的具体流程如下: 图 5-5 用户预定机票流程图 5.1.5 修改个人信息 22 用户登录后在个人操作界面可以进行修改个人信息的操作,便于用户对个 人的信息进行维护。 修改用户信息的详细步骤如下: 1) 在本系统的主界面选择“登录按钮”,登录到用户个人页面; 2) 在用户个人页面选择“修改个人信息”选项卡,此时,系统将自动查询 该用户的基本信息,并显示在“修改个人信息”选项卡中; 3) 在“修改个人信息”选项卡中输入需要修改的用户信息; 4) 判断用户信息输入是否完整,若输入不完整则提示“输入不完整”; 5) 判断用户信息输入是否合法,若输入不合法则提示“输入不合法,请重 新输入”; 6) 更新数据库,提示“修改成功”。 修改个人信息的具体流程如下: 开始 用户登 录流程 选择 操作 修改个人 信息界面 修改个人信息 输入个 人信息 验证输入 是否完整 输入不 完整 N 验证输入 是否合法 Y 输入不 合法 N 更新数据库 结束 图 5-6 用户修改个人信息流程图 3.2.6 修改密码 23 为了安全起见,用户登录后可以进行修改密码的操作。修改密码前,用户 必须回答密码提问,只有答对密码提问后才能进行修改密码的操作。在修改密 码时还需判断原密码输入是否正确,若不正确也不能进行修改。 修改用户密码的详细步骤如下: 1) 在本系统的主界面选择“登录”按钮,并进行登录; 2) 在用户个人页面选择“修改密码”选项卡,此时将进入确认修改密码界 面; 3) 在确认修改密码界面,用户需要选择密码提问并输入密码问题; 4) 判断输入是否正确,若输入不正确则将提示“输入不正确”,若输入正 确则将进入修改密码界面; 5) 在修改密码界面用户需要输入原密码、新密码、确认新密码及验证码; 6) 判断输入是否完整,若输入不完整则提示“输入不完整”; 7) 判断输入是否合法,若输入不合法则提示“输入不合法”; 8) 判断验证码是否正确,若不正确将提示“验证码错误”; 9) 判断用户原密码是否正确,若原密码不正确则提示“用户原密码输入错 误,请重新输入”; 10) 更新数据库,并提示“密码修改成功”。 用户修改的密码的具体流程如下: 24 开始 用户登 录流程 选择 操作 密码提示 问题界面 修改密码 输入密码提示 问题及答案 判断答案 是否为空 答案是 否正确 N 答案不 能为空 Y 答案错误N 修改密 码界面 Y 输入新密 码信息 判断输入 是否完整 判断原密码 是否正确 Y 判断验证码 是否正确 Y 验证新密码与 确认新密码 Y 输入不 完整 N 验证码 错误 N 原密码 错误 N 新密码与原 密码不相符 N 更新数据库 Y 结束 图 5-7 用户修改密码流程图 5.1.7 订单查询 订单查询的功能是方便用户了解自己订单信息,用户只要输入订单查询信 息就能查找自己想要查找的订单信息。 订单查询的详细步骤: 25 1) 在本系统的主界面选择“登录”按钮,并进行登录; 2) 在用户个人界面选择订单查询选项卡; 3) 在订单查询选项卡中输入查询的限制信息(订票日期、出发日期),若 未输入查询限制信息时查找该用户的全部订单; 4) 判断输入是否合法,若输入不合法则提示“用户输入不合法”; 5) 根据查询限制条件查询符合要求的项,并进行显示。 订单查询的具体流程如下: 开始 用户登 录流程 选择 操作 订单查询 订单查 询界面 输入订单 查询信息 判断输入 是否合法 输入不 合法 N查询订单Y 显示查 询结果 结束 图 5-8 用户订单查询流程图 5.1.8 退票 退票功能给用户提供更多的方便,当用户的计划出现变化时可以随时进行 退票的操作。但用户退票时必须在允许退票的时间段内,即在预定出发时间的 两小时前。 用户退票的详细步骤如下: 1) 用户登录后进行订单查询; 2) 在查询结果中选择需要改签的订单,并在“订单查询”选项卡中选择 “退票”按钮; 3) 判断需要退票的订单是否在允许退票的时间范围内,若不在退票的时间 范围内则提示“该订单不能进行退票”,若在退票的时间范围内则更新 数据库,并提示“退票成功”。 26 退票的具体流程如下: 开始 用户登 录流程 选择 操作 退票 退票界面 查询订单 选择订单 退票 更新数据库 在退票界面显示 当前所有订单 结束 判定是否在允 许退票时间内 Y 提示退 票失败 N 图 5-9 用户退票流程图 5.1.9 改签 改签功能使用户能够更好的管理自己的订单。通过改签功能,用户可以进 行改签机票的操作。但改签必须在允许改签的时间段内,即在预定出发时间的 两小时前。 用户改签的详细步骤: 1) 用户登录后进行订单查询; 2) 在查询结果中选择需要改签的订单,并在“订单查询”选项卡中选择 “改签”按钮; 3) 判断需要改签的订单是否在允许改签的时间范围内,若不在改签的时间 范围内则提示“该订单不能进行改签”,若在改签的时间范围内则进行 用户登录后的机票预定流程。 4)改签功能使用户能够更好的管理自己的订单。通过改签功能,用户可以 进行改签机票的操作。但改签必须在允许改签的时间段内,即在预定出 27 发时间的两小时前。 改签的具体流程图如下: 开始 用户登 录流程 选择 操作 改签 改签界面 输入订单 查询信息 判断输入 是否合法 输入不 合法 N 查询订单 Y 显示查 询结果 选择订单 改签 判断是否在允许 改签的时间段内 提示不在改签 允许时间段内 N订票界面Y 输入航班 查询信息 判断输入 是否合法 输入不 合法 N查询航班Y 显示查 询结果 选择航班 订票 判断是否 存在票 订票成 功页面 Y 提示不存 在余票 N 结束 图 5-10 用户改签流程图 5.2 后台功能设计 28 管理员进行管理时必须先登录,然后才能进行相应的管理操作,具体流程 如下: 开始 登录 登录成功 N 选择操作 航班管理用户管理公告管理 订单管理管理员管理安全退出 结束 查询航班 修改航班信息 增加航班 删除航班 查询用户 修改用户信息 增加用户 删除用户 查询订单 修改订单 增加订单 删除订单 查询公告 修改公告 增加公告 删除公告 查询管理员 修改管理员信息 增加管理员 删除管理员 删除角色 常用联系人管理 查询常用联系人 修改常用联系人信息 增加常用联系人 删除常用联系人 Y 图 5-11 航空订票系统后台功能流程 后台功能主要包括订单查询、航班管理、公告管理、广告管理、用户管理、 常用联系人管理、管理员管理、角色管理等功能。并不是所有的管理员都具有 以上的全部功能,每个管理员根据自己所

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论