飞机售票系统

合集下载

UML可视化建模(航空订票系统)

UML可视化建模(航空订票系统)

《可视化建模与UML》课程结业报告课题名称: 航空客运订票系统建模姓名: ***学号: *******班级:****: ***完成日期: 2013.06.16目录第一章概述 (3)1.1系统开发的摸底和开发背景 (3)1.2系统功能 (3)1.3系统结构框架 (4)1.4开发环境 (5)第二章用例模型 (6)2.1用例模型简介 (6)2.2用例图的的含义及其作用 (6)2.3用例图及用例描述 (7)第三章类模型 (10)3.1类模型简介 (10)3.2类图的作用 (10)3.3类图 (11)第四章交互模型 (13)4.1交互模型简介 (13)4.2序列图简介 (13)4.3序列图的作用 (13)4.4序列图描述及其序列图 (14)第五章行为模型 (20)5.1行为模型简介 (20)5.1.1活动图简介 (20)5.1.2活动图的作用 (20)5.1.3状态图简介 (21)5.1.4状态图的作用 (21)5.2行为模型图 (21)5.2.1活动图及其描述 (21)5.2.2状态图及其描述 (23)第六章构件图和部署图 (25)6.1构件图简介 (25)6.2部署图简介 (25)第七章课程学习小结 (27)7.1课程小结 (27)7.2学习心得 (27)参考文献 (28)第一章概述1.1系统开发的摸底和开发背景随着科技与经济的发展,越来越多的人选择乘飞机,这跟我国的经济增长有很大关系,人们在追求快节奏的生活方式,所以做飞机无疑成了首选。

而且随着网络的盛行,航空订票系统就显得尤为重要,我们开发这个系统主要是为了方便大家,让大家能够快速、清晰、准确地了解航班信息,而不至于像以前那样排队等候,从而避免耽搁乘客大量的等待时间。

航空客运业务诞生已有进一个世纪了,作为现有交通工具中最方便快捷的一种,它确实地给大家的生活、出行带来了极大的方便。

随着航空客运业务多年来的发展,其售票业务也同样不断地发展。

1.2系统功能机票预订系统是在现代社会生活节奏不断加快,对机票预订工作的自动化和准确化要求也日益强烈的背景下,为了实现机票预订工作的网络化,以及实现网络查询和统计一体化而开发的管理信息系统。

飞机订票系统完整版

飞机订票系统完整版

C语言程序设计课程设计报告设计题目:飞机订票系统设计专业微电子班级微电子0122学生姓名苗珠环学号3120433049指导教师张如亮2012 年秋季学期一、总体设计1.程序的总体设计2. 数据结构3. 函数原型声明二、详细设计三、测试及调试(测试方案、存在的问题及解决方法)四、小结附件:主要源程序代码C++#include <stdio.h>#include <conio.h>struct Plane{int p[20][4];};int main(){int i, j, row, num, flag = false;char ch,n,name[30],id[25];Plane plane1;for (i=0;i<20;i++)for (j=0;j<4;j++)plane1.p[i][j] = false; // 初始化所有位置为空printf("\t\t========飞机订票系统=======\t\t\n\n"); printf("\t\t本飞机现在还有如下空位:\t\t\n\n"); printf("\t\tA和D靠窗\t\t\n\n");for (i=0;i<20;i++){if (i==18)printf("\n\t\t********以下为吸烟区*******\t\t\n\n"); printf("\t\t");for (j=0;j<4;j++){if (plane1.p[i][j] == false)printf("%d%c\t",i+1,j+65);else printf(" \t");}printf("\n");}do{printf("\t\t有您满意的座位吗?(y/n) ");scanf("%c",&ch);} while (ch != 'y' && ch != 'Y' &&ch != 'n' && ch != 'N');if (ch == 'y' || ch == 'Y'){do{printf("\t\t请输入您满意的座位排数及编号:(如10D)\n\t\t"); scanf("%d%c",&row,&n);num = (int)(n-65);if (plane1.p[row-1][num] == true){printf("\t\t对不起,此座位已出售!请重新选择!\n");flag = true;}} while (row<1||row>20||n<'A'||n>'D'||flag == true);plane1.p[row-1][num] = true;printf("\t\t请输入您的姓名:");scanf("%s",name);printf("\t\t请输入您的身份证号:");scanf("%s",id);printf("\t\t恭喜您,订票成功!\n");printf("\t\t您的信息:\n");printf("\t\t姓名:%s\n",name);printf("\t\t身份证号:%s\n",id);printf("\t\t座位:%d%c\n",row,n);printf("\t\t祝您旅途愉快!");}else printf("\t\t对不起,请您选择另一航班!");getch();return 0;C语言#include <stdio.h>#include <conio.h>#define FALSE 0#define TRUE 1struct Plane{int p[20][4];};int main(){int i, j, row, num, flag = FALSE;char ch,n,name[30],id[25];struct Plane plane1;for (i=0;i<20;i++)for (j=0;j<4;j++)plane1.p[i][j] = FALSE; // 初始化所有位置为空printf("\t\t========飞机订票系统=======\t\t\n\n"); printf("\t\t本飞机现在还有如下空位:\t\t\n\n"); printf("\t\tA和D靠窗\t\t\n\n");for (i=0;i<20;i++){if (i==18)printf("\n\t\t********以下为吸烟区*******\t\t\n\n"); printf("\t\t");for (j=0;j<4;j++){if (plane1.p[i][j] == FALSE)printf("%d%c\t",i+1,j+65);else printf(" \t");}printf("\n");}do{printf("\t\t有您满意的座位吗?(y/n) ");scanf("%c",&ch);} while (ch != 'y' && ch != 'Y' &&ch != 'n' && ch != 'N');if (ch == 'y' || ch == 'Y'){do{printf("\t\t请输入您满意的座位排数及编号:(如10D)\n\t\t"); scanf("%d%c",&row,&n);num = (int)(n-65);if (plane1.p[row-1][num] == TRUE){printf("\t\t对不起,此座位已出售!请重新选择!\n");flag = TRUE;}} while (row<1||row>20||n<'A'||n>'D'||flag == TRUE);plane1.p[row-1][num] = TRUE;printf("\t\t请输入您的姓名: ");scanf("%s",name);printf("\t\t请输入您的身份证号: ");scanf("%s",id);printf("\t\t恭喜您,订票成功!\n");printf("\t\t您的信息:\n");printf("\t\t姓名: %s\n",name);printf("\t\t身份证号: %s\n",id);printf("\t\t座位: %d%c\n",row,n);printf("\t\t祝您旅途愉快!");}else printf("\t\t对不起,请您选择另一航班!");getch();return 0;}elseif(sel==2)printf("\t\t成功退出该系统.\n");elseprintf("输入0返回主菜单\n");getch();a=getch();if(a==0)main();}#include <stdio.h>#include <conio.h>#define FALSE 0#define TRUE 1struct Plane{int p[20][4];};int main(){int i, j, row, num,sel,a,flag = FALSE;char ch,n,name[30],id[25];struct Plane plane1;printf("\t\t========飞机订票系统========\t\t\n\n");printf("\t\t=======1--进入订票系统======\t\t\n\n");printf("\t\t=========2--退出系统========\t\t\n\n");printf("\n\n\n\t\t\t请输入选择: ");scanf("%d",&sel);if(sel==1){for (i=0;i<20;i++)for (j=0;j<4;j++)plane1.p[i][j] = FALSE; // 初始化所有位置为空printf("\t\t========飞机订票系统=======\t\t\n\n");printf("\t\t本飞机现在还有如下空位:\t\t\n\n");printf("\t\tA和D靠窗\t\t\n\n");for (i=0;i<20;i++){if (i==18)printf("\n\t\t********以下为吸烟区*******\t\t\n\n");printf("\t\t");for (j=0;j<4;j++){if (plane1.p[i][j] == FALSE)printf("%d%c\t",i+1,j+65);elseprintf(" \t");}printf("\n");}do{printf("\t\t有您满意的座位吗?(y/n) ");scanf("%c",&ch);}while (ch != 'y' && ch != 'Y' &&ch != 'n' && ch != 'N');if(ch == 'y' || ch == 'Y'){do{printf("\t\t请输入您满意的座位排数及编号:(如10D)\n\t\t");scanf("%d%c",&row,&n);num = (int)(n-65);if (plane1.p[row-1][num] == TRUE){printf("\t\t对不起,此座位已出售!请重新选择!\n");flag = TRUE;}} while (row<1||row>20||n<'A'||n>'D'||flag == TRUE);plane1.p[row-1][num] = TRUE;printf("\t\t请输入您的姓名: ");scanf("%s",name);printf("\t\t请输入您的身份证号: ");scanf("%s",id);printf("\t\t恭喜您,订票成功!\n");printf("\t\t您的信息:\n");printf("\t\t姓名: %s\n",name);printf("\t\t身份证号: %s\n",id);printf("\t\t座位: %d%c\n",row,n);printf("\t\t祝您旅途愉快!");}elseprintf("\t\t对不起,请您选择另一航班!");getch();return 0;}elseif(sel==2)printf("\t\t成功退出该系统.\n");}。

飞机订票系统 山东建筑大学计算机软件技术基础课程设计

飞机订票系统     山东建筑大学计算机软件技术基础课程设计

摘要飞机在现今的社会中已是越来越重要了,人们在旅游、工作、学习等生活中对飞机几乎是不可缺少了。

而由乘坐飞机所引起的问题也深入到了计算机领域,飞机订票系统就是解决这种问题的一种途径。

该设计可以对飞机航班信息进行排序和查找。

可以查询航班号、飞机号、目的地、订票数、余票数等信息。

对于本设计,主要是通过线性表的逻辑结构、存储结构,线性表及队列上基本运算实现的。

可以让我们学会如何把学到的知识用于解决实际问题。

主要包括以下模块:保存模块、订票模块、显示模块、退票模块、查询模块。

关键词:航班信息;客户信息;信息保存修改;链式存储结构一、设计目的和要求1设计目的1.1 进一步掌握和利用C语言进行程设计的能力;1.2 进一步理解和运用结构化程设计的思想和方法;1.3 初步掌握开发一个小型实用系统的基本方法;1.4 学会调试一个较长程序的基本方法;1.5 学会利用流程图或N-S图表示算法;1.6 掌握书写程设计开发文档的能力(书写课程设计报告)。

2设计要求2.1 录入航线信息每条航线信息包括航班号、飞机号、目的地、订票书、余票数共5项。

假设现在有3条航线,目的地分别是北京、上海、广州,飞机上可乘坐100人(即初始订票数为0,余票数为100);2.2 订票业务用户包括姓名,航班号,座位号(初始为0)。

有新客户订票室,先输入客户的姓名和他提出的航班号,查询该航线的订票情况,若有余票,则为客户办理订票手续,分配给客户一个座位号,然后将新客户的信息添加,并修改该航线的订票数和余票数。

若无余票,则输出客满信息。

进一步可实现如果该航班已经无票,可以提供相关可选择航班情况;2.3 退票业务根据客户提出的航班号,办理退票、删除该客户的信息,并修改文件相应航线的订票数和余票数;2.4 修改航班信息当航班信息改变可以修改。

二、设计原理1主要框架:1.1用C语言实现系统;1.2利用结构体数组实现乘客订票的数据结构设计;1.3系统具有增加,查询,插入等基本功能;1.4系统的各个功能模块要求用函数的形式实现;2各模块理论依据:2.1保存模块含有机票信息的管理,对机票信息输入,查询,修改,删除。

飞机票订票系统设计

飞机票订票系统设计

课程设计报告 课程名称:基于.NET信息系统项目实战 开课学期: 2012 至 2013 学年 第一学期 开课班级: 信息管理与信息系统(软件服务外包) 指导老师: 刘位龙 完成时间: 2012 年 12 月 日 课程设计名称: 任务奉献表 序号 姓名 班级 学号 E_mail 电话 签名

1 杨宇 信管 任务 贡献

2 任务 贡献 3 任务

项目组长 学号: 98 姓名: 杨宇 成 员 学号: 姓名: 学号: 姓名: 学号: 姓名: 贡献 目 录 1.系统概述 ........................................................................ 错误!未定义书签。 背景.............................................................................. 错误!未定义书签。 系统目标...................................................................... 错误!未定义书签。 系统需求规格说明...................................................... 错误!未定义书签。 2.系统分析 ......................................................................... 错误!未定义书签。 用例建模...................................................................... 错误!未定义书签。 识别参与者和用例.............................................. 错误!未定义书签。 绘制用例图.......................................................... 错误!未定义书签。 用例的描述.......................................................... 错误!未定义书签。 类图建模...................................................................... 错误!未定义书签。 识别对象和类...................................................... 错误!未定义书签。 识别属性与操作.................................................. 错误!未定义书签。 概念类之间的关系.............................................. 错误!未定义书签。 绘制类图.............................................................. 错误!未定义书签。 顺序图建模.................................................................. 错误!未定义书签。 “登录”用例...................................................... 错误!未定义书签。 “**”用例............................................................ 错误!未定义书签。 ……........................................................................ 错误!未定义书签。 .* 对用例的调整................................................. 错误!未定义书签。 .** 对类图的调整................................................. 错误!未定义书签。 状态图建模.................................................................. 错误!未定义书签。 确信需要进行状态图建模的类(对象).......... 错误!未定义书签。 识别状态.............................................................. 错误!未定义书签。 绘制状态图.......................................................... 错误!未定义书签。 活动图建模(可选).................................................. 错误!未定义书签。 3.系统设计 ......................................................................... 错误!未定义书签。 系统界面设计.............................................................. 错误!未定义书签。 系统数据库设计.......................................................... 错误!未定义书签。 其他设计(从实现角度选做,例如构件图、部署图、涉及的设计模式)................................................................................................ 错误!未定义书签。 4.系统实施 ......................................................................... 错误!未定义书签。 程序设计...................................................................... 错误!未定义书签。 系统测试...................................................................... 错误!未定义书签。 系统操作手册.............................................................. 错误!未定义书签。

数据结构课程设计:飞机订票系统设计与实现 (里面附有源代码!)

数据结构课程设计:飞机订票系统设计与实现 (里面附有源代码!)

课程设计题目飞机订票系统院系*******专业***************姓名******学号*********指导教师***2012年7月1. 需求分析1.1 问题描述基于目前人们外出远行频繁,为方便乘客提前买票及优化飞机航空订票服务,需要开发一个飞机订票系统,此程序就是要实现航班情况的录入,查询,订票,退票以及航班的查询和修改等基本功能。

本课程设计的题目为:飞机订票系统。

1.2 基本要求1.2.1 输入的形式和输入值的范围录入航班信息时,需要输入航班号,起降时间,起飞抵达城市,值为字符串;还需要输入航班票价,票价折扣,值为浮点型(float);还需要输入航班是否满仓,值为整型(int)(“1”表示已满仓,“0”表示没有满仓);如需要继续录入航班信息,要输入判别信息,值为整型(“1”表示继续录入航班信息,“0”表示停止录入航班信息)。

客户订票时,需要输入起飞抵达城市,然后选择航班进行查询,选择航班时需要输入航班号,值为字符串。

客户退票时,需要输入姓名,证件号进行退票操作,值为字符串。

查询某个航班的情况时,需要输入航班号,值为字符串;在查询某个航线的情况时,还可以通过输入起飞抵达城市来查询,值为字符串。

查询某个订单时,需要输入订单号,值为整型(int);或者需要输入客户姓名和证件号,值为字符串。

修改航班时,需要输入字符型数据选择进行何种修改操作;增加航班时,需要输入航班号,起降时间,起飞抵达城市,值为字符串;还需要输入航班票价,票价折扣,值为浮点型(float);还需要输入航班是否满仓,值为整型(int)(“1”表示已满仓,“0”表示没有满仓);如需要继续录入航班信息,要输入判别信息,值为整型(“1”表示继续录入航班信息,“0”表示停止录入航班信息);删除航班时,需要输入要删除的航班的航班号;修改航班时间时,需要输入要修改的航班的航班号,修改后的航班起飞时间和抵达时间。

1.2.2 输出形式在所有操作后的输出中都显示操作是否正确以及操作后单链表的内容。

飞机订票系统完整版

飞机订票系统完整版

飞机订票系统标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]商学院课程设计报告课程名称 c语言程序设计题目名称飞机订票系统学生学院商学院专业班级信息管理与信息系统_学号 ____ __ __ _学生姓名______ _____ ____完成日期2014年月日目录1. 设计目的与要求 (3)1.1 题目与设计要求 (3)1.2 本程序涉及的知识点 (3)2.功能设计 (3)2.1总体设计 (3)2.2详细设计 (3)3. 程序实现 (4)3.1程序实现时应考虑的问题 (4)3.2 模块代码 (4)4.测试分析 (14)4.1 测试结果及分析 (14)5.总结 (16)参考文献 (16)1.设计目的与要求1.1 题目与设计要求题目:飞机订票系统设计设计要求:本程序首先输入机票信息,管理员在保存功能中通过密码验证输入机票信息,可以对机票信息进行查询;修改;删除等功能。

一般用户可以使用订票;显示;退票等功能,在订票时用户输入密码在退票时通过验证后成功退票。

假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。

设计一个飞机订票系统,使之能提供下列服务:1、航班信息录入功能(航班信息用文件保存)包括航班号、起始站、重点站、机票数等;2、航班信息浏览功能4、查询航线:按航班号查询1.2 本程序涉及的知识点运用了access函数判断文件是否存在。

系统初始化后,没有寻找到数据文件,则进行新建数据文件,此函数的作用就是进行新建文件数据的录入。

运用到了文件指针的定义FILE *fp,文件的打开fopen和关闭fclose、成块读写函数中的fwrite;运用for循环进行各组数据的输入,用m++记录下输入的航班数量,并运用if语句判断是否输入下一条航班信息,若不继续则返回主界面。

系统初始化之后,若原始数据文件存在,则进行文件内航班信息的读取,以供接下来程序中的各个函数来使用。

飞机订票系统程序设计_课程设计

飞机订票系统程序设计_课程设计
只做稍稍修改就行退票成功是用..
将航班地剩余票数加上去以显示即时航班信息.
模块分工:
进入系统菜单、输出航班信息、订票信息由刘妍负责
输入航班信息、保存航班信息、读取航班信息由龚媛负责
查询航班信息、退票信息、修改信息部分由郭勇艳负责
3、详细设计
系统程序结构(流程图)
謀荞抟箧飆鐸怼类蒋薔。
录入信息系统流程图
printf ("\t\t ~本系统由、、编写完成~ \n\n")。
printf ("\t\t ~(*^__^*)~ \n\n")。
printf ("\t\t\t用户登录\n\n")。
for(k=0。k!=3。) //打开文件并判断綾镝鯛駕櫬鹕踪韦辚糴。
{
printf("\t\t\t\t用户名:")。//打印用户名驅踬髏彦浃绥譎饴憂锦。
printf("请在0-6中选择以回车键结束:\n")。
scanf("%d",&j)。
switch(j)
{
case 1: input()。//调用输入模块
break。
case 2:print()。//调用打印模块
break。
case 3:correct()。//调用修改模块
break。
case 4:search()。//调用查询模块
do
{
printf(" 1.录入航班信息\n")。籟丛妈羥为贍偾蛏练淨。
printf(" 2.浏览航班信息\n")。預頌圣鉉儐歲龈讶骅籴。
printf(" 3.修改航班信息\n")。渗釤呛俨匀谔鱉调硯錦。

民航售票管理系统数据库设计与实现 大学毕业设计

民航售票管理系统数据库设计与实现 大学毕业设计

民航售票管理系统──数据库设计与实现摘要:现在人们更多的使用飞机作为出行交通工具,因此机票票务市场也在快速发展。

人们希望机票销售手段也能相应地有所调整,并对如何能经济、方便和及时地购买到自己所需要的机票表现出极大的关注。

随着社会的不断进步,国内外航空事业的飞速发展,各航空公司对票务管理的要求也在不断的提高,本系统就是针对这种日益增长的需求也进行开发的。

本文针对航空公司的订票实际情况,按照软件工程的结构化设计思想,经过项目的可行性研究和需求分析,总体设计,详细设计,以及编码实现和调试等步骤设计开发站网上订票系统。

并运用数据流图和数据字典,E-R 图和数据库逻辑结构,层次图,系统流程图,以及程序流程图,对该系统的数据需求,数据库,系统软件结构,系统流程,以及处理过程等进行了分析和设计。

本系统前台主要使用JSP作为开发语言,后台使用SqlServer作为数据库管理系统,开发环境是MyEclipse,服务器采用tomcat,开发出的一个基于Web技术的B/S结构的机票售票系统。

关键词:机票售票 JSP B/S结构Abstract:Now more people use the plane as travel transport, so the ticket market also in fast development. People want to ticket sales approach can also be adjusted accordingly, and how can the economic, convenient and timely to buy what they need to ticket showed great concern. With the constant progress of the society, the rapid development of aviation industry at home and abroad, the airline ticket management requirements are constantly improve, this system is aimed at the growing demand for development also.This article in view of the actual situation of the airline tickets, according to the software engineering structured design thought, after the project can do study and needs analysis, overall design, detailed design, as well as code realization and debugging and other steps designed and developed tickets online system fire station. And the use of a data flow graph and data dictionary, e-r chart and database logic structure, the hierarchical graph, the system flow diagram, and program flow chart, the system of data requirements, database, software system structure, system flow process, as well as the process of analysis and design。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录第一章系统概述 (2)1.1.项目描述 (2)第二章可行性研究 (4)2.1.技术可行性 (4)2.2.操作可行性 (4)第三章需求分析 (5)3.1.功能识别和描述 (5)3.2.数据流图 (5)3.3.数据字典 (6)第四章总体设计 (7)4.1.层次结构 (7)4.2.接口设计(人机界面设计) (9)4.3.数据库设计 (9)第五章详细设计 (12)第六章编码实现 (16)6.1.编码 (16)第七章综合测试 (18)7.1目的 (18)7.2 目标 (19)7.3 运行环境 (19)7.4 测试方案 (19)7.5 测试过程 (19)7.5.1乘客注册 (19)7.5.2管理员登录添加航线 (20)7.6 测试结果 (21)第八章总结 (22)参考文献 (23)第一章系统概述1.1.项目描述前台(1)会员注册及登陆模块:实现会员注册及注册信息验证,会员登陆,会员留言,会员密码修改,会员资料的修改,会员密码找回等功能。

(2)航班查询模块:客户可以按出发地、目的地、关键字、日期等条件对机票信息进行综合检索查询。

并且可以查看一些会员优惠票、活动折扣票、儿童票、老年票等。

同时,客户还可以选择单程、往返订票。

另外,还可以查看目的地最近几天的天气情况、酒店信息及旅游景点的简单介绍。

(3)预定机票模块:通过对航班的查询,进入机票预定界面,填写相关信息,完成预定过程,同时生成订单并提交。

(4)退票模块:进行退票操作。

后台(1)会员管理模块:查询、增加、删除、修改会员信息,会员分级制管理。

(2)机票信息模块:机票的查询、添加、删除、修改。

同时可以发布一些机票打折信息和一些优惠活动。

(3)订单管理模块:这是本系统的设计的核心。

订单的有效性确认,会员订单付款情况,订单执行情况,订单付款和售出情况。

同时对订单情况进行汇总统计,分析哪些航班的机票比较畅销,从而能更大的满足客户的需要。

(4)退票管理模块:记录退票信息,同时对库存进行及时更新。

(5)机票库存管理模块:对机票的售出和退回情况进行管理。

(6)管理员管理模块:后台管理员资料的查询、添加、删除、修改。

要求用java语言+oracle,ssh2框架可用可不用。

要求有源码和数据库导入文件(可以参考像携程,elong的机票订购系统)1.2.问题定义随着社会的发展,人民生活水平的不断提高,出行旅游成为了人们放松心情、接触自然的最好方式。

优质的服务,快速的运输,廉价的机票,空运成为了人们出行的第一选择。

然而传统的购票方式,仍然是人工机械的处理。

大多数乘客通过电话方式了解信息和预订机票。

这样给服务台增加了很大的压力,并且大多数时间不能及时响应乘客的要求。

这种传统的购票方式,不仅效率低下,而且给人们的出行带来了很多不便。

同时,人工处理的成本再加上巨额的通信费用造成了传统购票方式的巨大开销。

当面对机票订购高峰时刻的大量数据处理的时候,仅靠手工操作以现有的工作人员根本无法应付。

同时还会出现由此带来的大量记录存放和管理所带来的问题。

从而给旅客和管理人员带来了许多的不便。

目标:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息,为旅客提供快捷、方便的服务。

系统规模与功能:1. 旅行社记录旅客的基本信息以及航班需求,并且加工这些信息,最后存储这些信息。

2.旅行社提供旅客订票信息:各个旅行社把预定机票的旅客信息输入到系统中;3.系统处理订票信息:系统根据旅行社提供的旅客订票信息,为旅客安排航班;4.系统打印取票通知单和帐单:当旅客交付了预订金后,系统打印出取票通知和帐单给旅客;5.系统出票:旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客;6.航班信息中心:包括各航班飞机的乘载情况等信息;7.对于本系统还应补充一下功能:(1).旅客延误了取票时间的处理(2).航班取消后的处理(3).旅客临时更改航班的处理8.系统的外部输入:旅客、旅行社和航空公司。

9.注意事项:在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知和交款发票)等。

第二章可行性研究2.1.技术可行性在计算机网络、数据库和先进的开发平台的基础上,使用JSP技术,在加上好的硬件支持,和高速的校园网络,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统是可行的。

在加上扎实的理论知识和一些开发经验。

在现有的技术条件和硬件条件的支持下开发机票预定系统被证实为可行的。

本系统使用的操作系统和数据库是目前最为普及和成熟的一种系统开发软件。

从这种软件过去使用、升级情况和软件商所承诺的今后软件发展情况分析,系统软件应支持原系统版本上的各种应用正常使用。

因而,该机票预定系统不存在技术问题。

2.2.操作可行性所有员工都要接受培训,包括前台工作人员和系统管理人员。

要求所有员工都具有一定的计算机操作能力。

客户端与服务器端联系在一起,在旅游局中只设立终端,在机场设立服务器,数据输入由终端输入,所有数据都由服务器处理,只在终端上显示数据结果。

此设计简化了数据处理,但加重了服务器的数据处理。

而使用客户端/服务器机理,简化数据流量,加快数据处理。

第三章需求分析3.1.功能识别和描述(1)客户端功能旅行社把旅客要求订票的信息由专人负责输入,进行网上订票。

当旅客交付了预订金后,系统打印出取票通知和帐单给旅客。

(2)服务器端功能接收由旅行社客户端发回的所需机票信息。

通过网络接收机票信息并存入到服务器的数据库中。

生成航班信息。

根据所需机票信息(时间,地点),在数据库中查询并得到正确的航班的信息,分配所需的机票数并在数据库中做出已售出的标记。

传递航班信息到旅行社(客户端),把得到的航班信息通过网络传递到旅行社。

打印机票给已经订票的旅客。

根据旅客的取票通知及帐单,经过确认无误后,接受旅客的付款后把机票印出来交给旅客。

3.2.数据流图3.2.1 数据流图(1)旅客订票流程图,如图 3.1所示:图 3.1 旅客订票流程(2)旅客取票流程图,如图3.2所示:图 3.1 旅客取票流程3.3.数据字典名字:旅客信息别名:custom描述:旅客个人信息,用于确认旅客定义:旅客信息=姓名+性别+身份证号码+旅行时间+旅行目的地位置:输入到旅行社(浏览器端)名字:订票旅客清单别名:orderList描述:已订票的旅客的记录定义:订票旅客清单=所有订票旅客信息的集合位置:输入到旅行社(浏览器端)名字:订票信息别名:orderInf描述:旅客的旅行时间和目的地,用于确定旅客的航班定义:订票信息=旅客旅行时间+旅客旅行目的地位置:传输到航空公司端(服务器端)名字:机票信息别名:ticket描述:旅客的航班信息,根据旅客的旅行时间和目的地确定定义:航班机票信息=旅客机票时间+旅客机票班次+剩余机票数位置:记录在航空公司(服务器端)名字:取票通知别名:getMesg描述:旅客领取机票的凭证定义:取票通知=旅客姓名+旅客身份证号码位置:输出到打印机第四章总体设计总体设计可能的设计方法有自顶向下,逐步细化设计方法;模块化设计方法;结构化设计方法。

针对以上系统要完成的功能,本系统总体设计采用自顶向下,逐步细化的方法将功能层次结构的各个部分组合起来,以完成整个系统的实现细节。

4.1.层次结构1 系统的的顶层结构,如图4.1所示:图 4.1 系统的的顶层结构2 航班信息管理,如图4.2所示:图 4.2 航班信息管理3 订票处理,如图4.3所示:图 4.2 订票处理4 取票处理,如图4.4所示:图 3.4 取票处理5 例外处理,如图4.5所示:(此处航班改变后,均做退票处理)图 4.4 例外处理4.2.接口设计(人机界面设计)管理员和票务员使用同一登陆界面,登陆后进去后有个自的界面,然后进一步操作。

1 大体的界面设计如图4.6所示。

管理员票务员登陆管理界面取票界面录入航班界面浏览航班界面修改航班界面操作结果界面票务界面订票界面例外界面操作结果界面图 4.6界面设计2 订票界面,如图4.7所示。

图 4.7订票界面4.3.数据库设计1 整体E-R 图,如图4.8所示:图 4.8 整体E-R图2 本系统使用了mysql数据库,由E—R图导出的数据库表如下。

(1)旅客信息,如表 1.1所示表 4.1 旅客信息表(2)航班信息,如表4.2所示表 4.2 航班信息(3)订票信息,如表4.3所示表 4.3 订票信息(4)用户表,如表4.4所示:表 4.4 用户表第五章详细设计1 登陆模块如图5.1所示.图 5.1 登陆模块2 航班信息管理的各个模块如图5.2所示。

图5.2 详细模块3 订票处理的各个模块如图5.3所示.图5.3 订票处理各模块4 取票处理模块如图5.4所示.图 5.4 取票处理5 例外处理退票面模块如图5.5所示(延误取票和这个模块类似).图 5.5 例外处理第六章编码实现6.1.编码部分模块代码如下,此模块为处理订票模块:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><%@ page language="java" contentType="text/html; charset=UTF-8 pageEncoding="UTF-8"%> <%@ page import="com.gmy.jipiao.*" %><html xmlns="/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>机票信息确认</title><link href="style.css" rel="stylesheet" type="text/css" media="all" /></head><body><%String passenger_ID = request.getParameter("passenger_ID");String informed = request.getParameter("informed");if(passenger_ID==null || passenger_ID.length()==0 || informed==null || informed.length()==0 ){request.getRequestDispatcher("set_ticket.jsp").forward(request,response);}int passengerID = Integer.parseInt(passenger_ID);Passenger passenger = (new DBPassenger()).getPassengerById(passengerID);String sex = passenger.getSex()==1?"男":"女";if(informed.equals("0")){%><form action="UpdateTicket" method="post"><table width="690" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td class="tableName">短信通知</td></tr></table><table width="690" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td width="130" class="td-line_left"><strong>发给:</strong></td><td class="td-line"><%=passenger.getPaName() %><input style="width:89px;" type="text" value="<%=passenger.getMobilePhone() %>" disabled="disabled" /></td></tr><tr><td class="td-line_left"><strong>内容:</strong><input type="hidden"value="noticket" name="action" /><input type="hidden" value="<%=passenger.getID() %>" name="passenger_ID" /></td><td class="td-line"><textarea name="textarea" style="width:429px;height:79px;">尊敬的客户:<%=passenger.getPaName() %>,我们非常抱歉的通知您,您预定的从<%=passenger.getStartCity() %>飞往<%=passenger.getArriveCity() %>的机票没有适合航班.请选择其他交通方式,非常抱歉!</textarea></td></tr><tr><td colspan="2" align="center" class="td-line_left"><input name="s" type="submit" value="发出通知(短信)" /></td></tr></table></form></body></html><%return;}String line_ID = request.getParameter("line_ID");int lineID = Integer.parseInt(line_ID);Line line = (new DBLine()).getLineByID(lineID);String notice = (String) request.getAttribute("notice");if (notice != null && notice != ""){notice = "<span class=\"notice\">" + notice + "</span>";}elsenotice = "&nbsp;";%><table width="690" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td class="tableName">机票信息确认</td><td class="tableName"><%=notice %></td></tr></table><form action="AddTicket" method="post"><table width="690" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td width="130" class="td-line_left"><strong>姓名:</strong></td><td class="td-line"><%=passenger.getPaName() %></td><td width="110" class="td-line"><strong>性别:</strong></td><td class="td-line"><%=sex %></td></tr><tr><td class="td-line_left"><strong>身份证号码:</strong></td><td class="td-line"><%=passenger.getIdentCard() %></td><td class="td-line"><strong>票价:</strong></td><td class="td-line"><%=line.getID() %></td></tr><tr><td class="td-line_left"><strong>航班号:</strong></td><td class="td-line"><%=line.getLineName() %><%=line.getID() %></td><td class="td-line"><strong>起飞时间:</strong></td><td class="td-line"><%=line.getLineDate() %> <%=line.getLineTime() %> </td></tr><tr><td class="td-line_left"><strong>出发城市:</strong></td><td class="td-line"><%=line.getStartCity() %></td><td class="td-line"><strong>到达城市:</strong></td><td class="td-line"><%=line.getArriveCity() %><input type="hidden"value="<%=passenger.getID() %>" name="passenger_ID" /><input type="hidden"value="<%=line.getID() %>" name="line_ID" /></td></tr><tr><td colspan="4" align="center" class="td-line_left"><input name="button"type="submit" value="确认出票" /></td></tr></table></form></body></html>第七章综合测试7.1目的在开发大型软件的漫长过程中,面对极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺。

相关文档
最新文档