民航票务管理系统分析和设计.docx

上传人:b****8 文档编号:9952648 上传时间:2023-05-22 格式:DOCX 页数:27 大小:754.40KB
下载 相关 举报
民航票务管理系统分析和设计.docx_第1页
第1页 / 共27页
民航票务管理系统分析和设计.docx_第2页
第2页 / 共27页
民航票务管理系统分析和设计.docx_第3页
第3页 / 共27页
民航票务管理系统分析和设计.docx_第4页
第4页 / 共27页
民航票务管理系统分析和设计.docx_第5页
第5页 / 共27页
民航票务管理系统分析和设计.docx_第6页
第6页 / 共27页
民航票务管理系统分析和设计.docx_第7页
第7页 / 共27页
民航票务管理系统分析和设计.docx_第8页
第8页 / 共27页
民航票务管理系统分析和设计.docx_第9页
第9页 / 共27页
民航票务管理系统分析和设计.docx_第10页
第10页 / 共27页
民航票务管理系统分析和设计.docx_第11页
第11页 / 共27页
民航票务管理系统分析和设计.docx_第12页
第12页 / 共27页
民航票务管理系统分析和设计.docx_第13页
第13页 / 共27页
民航票务管理系统分析和设计.docx_第14页
第14页 / 共27页
民航票务管理系统分析和设计.docx_第15页
第15页 / 共27页
民航票务管理系统分析和设计.docx_第16页
第16页 / 共27页
民航票务管理系统分析和设计.docx_第17页
第17页 / 共27页
民航票务管理系统分析和设计.docx_第18页
第18页 / 共27页
民航票务管理系统分析和设计.docx_第19页
第19页 / 共27页
民航票务管理系统分析和设计.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

民航票务管理系统分析和设计.docx

《民航票务管理系统分析和设计.docx》由会员分享,可在线阅读,更多相关《民航票务管理系统分析和设计.docx(27页珍藏版)》请在冰点文库上搜索。

民航票务管理系统分析和设计.docx

民航票务管理系统分析和设计

数据库原理与应用课程设计任务书

课题

名称

民航票务管理系统

设计

目的

本课程设计的目的是通过实践使学生经历一个数据库系统开发的全过程并受到一次综合的训练,以便能较全面地理解、掌握和综合运用所学的知识去分析、解决实际问题。

实验

环境

1、Windows2000与以上

2、SQLServer2000

3、ASP.NET2005

任务

要求

任务:

完成《民航票务管理系统分析和设计》系统的分析设计工作,并选用适当的开发工具完成系统的开发。

要求:

1、完成需求分析;

2、进行数据库的概念设计;

3、进行数据库的逻辑设计;

4、进行数据库的物理设计;

5、进行应用程序设计;

6、编程实现。

工作进度计划

序号

起止日期

工作容

1

需求分析

2

概念设计

3

逻辑设计

4

系统设计

5

课程设计报告纂写

指导教师(签章):

2008年1月3日

计算机工程系

数据库原理与应用

课程设计报告

 

选题名称:

 民航票务管理系统

系(院):

计算机工程系

专业:

计算机科学与技术(信息安全方向)

班级:

信息1051

姓名:

高 博学号:

1051303116

指导教师:

万利王红艳

学年学期:

2007~2008学年第1学期

2008年1月3日

 

摘要:

随着信息技术在管理上越来越深入而广泛的应用以与信息的不断海量化,在很多行业对信息的管理不得不依赖计算机,而不是使用比较原始的纯人力管理方法。

在当今,各行各业都有很多计算机管理的系统,特别是民航方面,每天,有上千万的人次订票、买票或者乘坐飞机,如果采取传统的人工售票或登记的方式会大大影响机场运作的效率,并且也无法避免一些人为的错误。

所以一个好的票务管理系统由为重要,特别是现在很多人喜欢提前订票或上网订票,自然,好的票务管理系统不仅需要快捷方便的操作、优秀的保存和统计功能、还要应付大容量数据的快速查找和保存与应付长时间的工作需要,必须保证系统的稳定性和安全性,更重要的是,安全的票务管理系统不仅需要有能够防护各种病毒和黑客恶意攻击的能,还需要有能够应付突发状况的能力,比如突然断电之后,系统的售票信息和当前正在进行的进程、操作应该怎么处理,或者,系统突然死机之后,所有数据又应该怎样处理等等。

这些问题都是我们在实际生活中经常会遇到的,所以,能不能解决上述问题就成了评价一个好的票务管理系统的主要依据。

而这次的课程设计则是根据票务管理系统中的最主要的功能,结合数据库中所学的知识,来实现一个简单的民航票务管理系统,供学习和研究之用!

 

关键词:

民航票务管理系统;数据库;查询;修改;ASP.NET

 

数据库原理与应用课程设计报告

1需求分析

1系统目标:

实现一个计算机民航票务系统,完成对航班的管理、机票管理以与登机牌的管理等功能。

2系统功能需求:

本系统的用户分为管理员和普通用户两类,管理员主要负责对航班进行管理,包括航班的增加、修改和删除。

主要为管理者增添航线时使用。

而普通用户既机场前台系统,主要进行机票的购买和退换,登机牌的发放以与航班信息的查询等功能。

(1)功能划分:

用户通过身份验证之后分别进入管理员或普通用户的主接口。

在管理员页面中,主要进行航班管理,有增加航班、修改航班和删除航班三种功能。

而普通用户的页面中主要有航班查询、订票、退票、机票查询、换登机牌和航班信息查询6种主要功能。

(2)功能描述:

航班管理

在航班管理中,管理员可以对现有的所有航线的所有航班进行修改操作,同时也可以增加新的航线,或者删除已有的旧的航线,相应的操作会影响航班查询的结果。

同时在删除航班的操作中应注意,如果需要删除的航班已经有票售出便无法删除。

航班查询

航班查询是普通用户可以进行的操作。

在航班查询中,分为两种查询方式:

按航空公司查询和按目的地查询。

顾名思义,在按航空公司查询的方式中,只要在下拉列表框中选择你需要查询的航空公司名即可查询到该航空公司的所有航线,在按目的地查询的查询方式中,只要输入目的地名称,即可查询到在一天中所有飞往该目的地的航班信息。

订票

订票功能是普通用户可以进行的操作。

在订票功能中,用户只要输入目的地然后选择需要乘作的航班就可以完成订票了。

在订票的过程中,需要输入旅客的个人数据,这些数据将存入数据库中,方便以后的查询以与登机牌的发放。

退票

退票功能是普通用户可以进行的操作。

在退票功能中,需要输入机票上的四位由系统产生的验证码验证之后才能进行操作。

机票查询

机票查询是普通用户可以进行的操作。

机票查询可以查询到该机票的所有信息,方便旅客在购票后与时核对自己的机票。

换登机牌

换登机牌是普通用户可以进行的操作。

在换登机牌的过程中,需要核对机票,然后进行座位的选择,一旦换了登机牌之后就不可以再进行退票的操作了。

换了登机牌之后,旅客就可以凭登机牌登机了。

航班信息查询

航班信息查询是普通用户可以进行的操作。

航班信息查询分为两种查询,航班详细信息查询和旅客查询。

这里的航班详细信息查询跟航班查询是有区别的。

在详细的航班信息查询中,可以查询到包括该航班的所有机组人员的信息的航班全部信息。

在旅客查询中可以查询到某架次航班所有实际登机的旅客。

2数据库的概念设计

1系统的概念模型

图1

图1:

民航票务系统概念模型的E/R图

图1是民航票务管理系统的概念模型的E/R图,该系统涉与的实体集有:

员工实体集:

具有属性员工编号、员工、员工性别和员工职务。

班组实体集:

具有属性班组编号、班组名称、机长、副驾驶、乘务长、乘务员1、乘务员2、乘务员3、乘务员4、乘务员5和备注。

航空公司实体集:

具有属性航空公司ID号和航空公司名。

飞机实体集:

具有属性飞机ID号、飞机型号、头等舱座位数、商务舱座位数和经济舱座位数。

航班实体集:

具有属性航班编号、航空公司ID号、起始地、目的地、时间、中转标志、中转地、头等舱价格、商务舱价格、经济舱价格、飞机ID号、班组号和登机口。

机票实体集:

具有属性机票编号、验证码、日期、舱位、票价、签转标志、保险标志、旅客ID、登机牌编号、航班编号。

登机牌实体集:

具有属性登机牌编号、座位号、座位编号、托运标志。

乘客实体集:

具有属性乘客ID、乘客、乘客性别。

一个班组中的一个岗位只有一个员工,而一个员工只能在一个班组里面,所以员工和班组之间的联系为1:

1的联系。

一个航班只有一个班组工作,而一个班组可以工作于多个不同的航班中,所以班组和航班之间的联系是1:

M的联系。

一个航空公司底下可以有多个航班,而一个航班只属于一个航空公司,所以航空公司和航班之间的联系是1:

M的联系。

一个航班只有一架飞机,而一架飞机一次只能执行一个航班的飞行任务,所以飞机和航班之间的联系是1:

1的联系。

一个登机牌只能由一机票换到,而一机票也只能换到一个登机牌,所以登机牌和机票之间的联系是1:

1的联系。

一个航班可以形成许多机票,而一机票只能对应于一个航班,所以航班与机票之间的联系是1:

M的联系。

一个乘客可以买许多机票,而一机票只属于一位乘客,所以乘客与机票之间的联系是1:

M的联系。

3数据库的逻辑设计

1将概念模型转换成关系模型

将E/R模型转换为关系模式

(1)员工实体集可以转换为关系:

STAFFINF(STAID,STANAME,STASEX,STADUTY)

STAID表示员工编号,STANAME表示员工,STASEX表示员工性别,STADUTY表示员工职务。

(2)班组实体集可以转换为关系:

GROUNP(GROID,GRONAME,REMARK)

GROID表示班组编号,GRONAME表示班组名称,REMARK表示备注。

(3)航空公司实体集可以转换为关系:

COMPANY(COMPANYID,COMPANYNAME)

COMPANYID表示航空公司编号,COMPANYNAME表示航空公司名称。

(4)飞机实体集可以转换为关系:

PLANEINF(PLANEID,PLANETYPE,F_CLASS,B_CLASS,E_CLASS)

PLANEID表示飞机ID号,PLANETYPE表示飞机机型,F_CLASS表示头等舱座位数,B_CLASS表示商务舱座位数,E_CLASS表示经济舱座位数。

(5)航班实体集可以转换为关系:

FLIGHTINF(FLIGHTID,START,DESTINATION,F_TIME,TRANSFERTAG,TRANSFERPLACE,F_PRICE,B_PRICE,E_PRICE,BOARDINGGATE)

FLIGHTID表示航班号,START表示起始地,DESTINATION表示目的地,F_TIME表示起飞时间,TRANSFERTAG表示中转标志,TRANSFERPLACE标号中转地,F_PRICE表示头等舱价格,B_PRICE表示商务舱价格,E_PRICE表示经济舱价格,BOARDINGGATE表示登机门。

(6)机票实体集可以转换为关系:

TICKETS(TICKETID,VALIDATECODE,FDATE,CLASS,FEE,CEK_TRF_MARK,INSURANCEMARK)

TICKETID表示机票编号,VALIDATECODE表示验证码,FDATE表示航班日期,CLASS表示舱位,FEE,表示价格,CEK_TRF_MARK表示签转标志,INSURANCEMARK表示保险标志。

(7)登机牌实体集可以转换为关系:

BOARDINGPASS(BOARDINGPASSID,SEATNUM,SNO,CONSIGNMARK)

BOARDINGPASSID表示登机牌编号,SEATNUM表示座位号,SNO表示座位编号,CONSIGNMARK表示托运标志。

(8)乘客实体集可以转换为关系:

PASID(PASID,PASNAME,PASSEX)

PASID表示乘客字号即乘客ID号,PASNAME表示乘客,PASSEX表示乘客性别。

(9)员工和班组之间的联系是1:

1的联系,所以没有必要为其建立一个关系,可以通过扩展班组关系来表示:

GROUNP(GROID,GRONAME,CAPTAIN,VCAPTAIN,STEWARDCP,STEWARD1,STEWARD2,STEWARD3,STEWARD4,STEWARD5,REMARK)

CAPTAIN表示机长,VCAPTAIN表示副驾驶,STEWARDCP表示乘务长,STEWARD1表示乘务员1,STEWARD2表示乘务员2,STEWARD3表示乘务员3,STEWARD4表示乘务员4,STEWARD5表示乘务员5。

(10)班组和航班之间的联系是1:

M的联系,所以没有必要为其建立一个关系,可以通过扩展航班关系来表示:

FLIGHTINF(FLIGHTID,START,DESTINATION,F_TIME,TRANSFERTAG,TRANSFERPLACE,F_PRICE,B_PRICE,E_PRICE,GROID,BOARDINGGATE)

GROID表示班组编号。

(11)航空公司和航班之间的联系是1:

M的联系,所以没有必要为其建立一个关系,可以通过扩展航班关系来表示:

FLIGHTINF(FLIGHTID,FCOMPANYID,START,DESTINATION,F_TIME,TRANSFERTAG,TRANSFERPLACE,F_PRICE,B_PRICE,E_PRICE,GROID,BOARDINGGATE)

FCOMPANYID表示航空公司ID号。

(12)飞机和航班之间的联系是1:

M的联系,所以没有必要为其建立一个关系,可以通过扩展航班关系来表示:

FLIGHTINF(FLIGHTID,FCOMPANYID,START,DESTINATION,F_TIME,TRANSFERTAG,TRANSFERPLACE,F_PRICE,B_PRICE,E_PRICE,PLANEID,GROID,BOARDINGGATE)

PLANEID表示飞机ID号。

(13)机票和登机牌之间的联系是1:

1的联系,所以没有必要为其建立一个关系,可以通过扩展机票关系来表示:

TICKETS(TICKETID,VALIDATECODE,FDATE,CLASS,FEE,CEK_TRF_MARK,INSURANCEMARK,BOARDINGPASSID)

BOARDINGPASSID表示登机牌编号。

(14)航班和机票之间的联系是1:

M的联系,所以没有必要为其建立一个关系,可以通过扩展机票关系来表示:

TICKETS(TICKETID,VALIDATECODE,FDATE,CLASS,FEE,CEK_TRF_MARK,INSURANCEMARK,BOARDINGPASSID,FLIGHTID)

FLIGHTID表示航班编号。

(15)乘客和机票之间的联系是1:

M的联系,所以没有必要为其建立一个关系,可以通过扩展机票关系来表示:

TICKETS(TICKETID,VALIDATECODE,FDATE,CLASS,FEE,CEK_TRF_MARK,INSURANCEMARK,PASSID,BOARDINGPASSID,FLIGHTID)

PASSID表示旅客ID号。

4数据库的物理设计

1把关系模型转换为表结构:

员工信息表(StaffInf):

包含所有的员工信息,定义如下:

域名

含义

数据类型

例子

备注

STAID

员工编号

字符类型

3001

主键

STANAME

员工

字符类型

王剑

STASEX

员工性别

字符类型

STADUTY

员工职务

字符类型

机长

班组信息表(Group):

包含所有班组的信息,定义如下:

域名

含义

数据类型

例子

备注

GROID

班组编号

数值类型

1031

主键

GRONAME

班组名称

字符类型

新青年

CAPTAIN

机长

字符类型

3002

员工编号

VCAPTAIN

副驾驶

字符类型

3004

员工编号

STEWARDCP

乘务长

字符类型

4007

员工编号

STEWARD1

乘务员1

字符类型

4008

员工编号

STEWARD2

乘务员2

字符类型

4009

员工编号

STEWARD3

乘务员3

字符类型

4005

员工编号

STEWARD4

乘务员4

字符类型

0000

员工编号

STEWARD5

乘务员5

字符类型

0000

员工编号

REMARK

备注

字符类型

航空公司信息表(Company):

包含所有航空公司的信息,定义如下:

域名

含义

数据类型

例子

备注

COMPANYID

航空公司编号

字符类型

KA

主键

COMPANYNAME

航空公司名称

字符类型

港龙航空

飞机信息表(PlaneInf):

包含所有飞机的信息,定义如下:

域名

含义

数据类型

例子

备注

PLANEID

飞机编号

字符类型

A3010

主键

PLANETYPE

飞机机型

字符类型

A340-300

F_CLASS

头等舱座位数

数值类型

12

B_CLASS

商务舱座位数

数值类型

18

E_CLASS

经济舱座位数

数值类型

252

航班信息表(FlightInf):

包含所有航班的信息,定义如下:

域名

含义

数据类型

例子

备注

FLIGHTID

航班号

字符类型

CA3031

主键

FCOMPANYID

航空公司编号

字符类型

CA

外键

START

起始地

字符类型

DESTINATION

目的地

字符类型

F_TIME

起飞时间

字符类型

13:

50

TRANSFERTAG

中转标志

数值类型

0

1表示需要转机

TRANSFERPLACE

中转地

字符类型

F_PRICE

头等舱价格

数值类型

0

B_PRICE

商务舱价格

数值类型

1900

E_PRICE

经济舱价格

数值类型

1500

PLANEID

飞机编号

字符类型

A3040

外键

GROID

班组编号

数值类型

1032

外键

BOARDINGGATE

登机口

字符类型

B1

机票信息表(TicketInf):

包含所有机票的信息,定义如下:

域名

含义

数据类型

例子

备注

TICKETID

机票编号

数值类型

10000

主键

VALIDATECODE

验证码

数值类型

1303

FDATE

日期

字符类型

01/10

CLASS

舱位

字符类型

B

FEE

票价

数值类型

558

CEK_TRF_MARK

签转标志

数值类型

0

1为可签转

INSURANCEMARK

保险标志

数值类型

1

1为已保险

PASSID

乘客ID

字符类型

1

外键

BOARDINGPASSID

登机牌编号

数值类型

1008

外键

FLIGHTID

航班号

字符类型

ZH9877

外键

登机牌信息表(BoardingPass):

包含所有登机牌的信息,定义如下:

域名

含义

数据类型

例子

备注

BOARDINGPASSID

登机牌编号

数值类型

1008

主键

SEATNUM

座位号

字符类型

23C

SNO

座位编号

数值类型

133

CONSIGNMARK

托运标志

数值类型

1

1为有行托运

乘客信息表(PasInf):

包含所有乘客的信息,定义如下:

域名

含义

数据类型

例子

备注

PASID

字号

字符类型

7

主键

PASNAME

字符类型

PASSEX

性别

字符类型

用户账号表(User):

包含所有用户的账号和口令信息:

定义如下:

域名

含义

数据类型

例子

备注

USERID

用户ID号

字符类型

1001

主键

USERNAME

用户

字符类型

Benny

PASSWORD

用户密码

字符类型

123

PURVIEW

用户权限

数值类型

1

0为管理员

2实现数据完整性

通过各种约束,缺省实现数据的完整性。

由于航空票务管理系统的重要性和各个数据之间的复杂相关性,保证数据的完整性显得更为重要。

不能让用户随意的删除,修改数据。

(1)各种外键约束保证数据的完整性,不能随意删除。

外键的设置在上面数据库建表时已经提到。

(2)主键约束保证实体的完整性,主键的设置在上面的数据库建表的时候也已经提到了。

(3)创建存储过程,保证在换登机牌的同时能将登机牌的编号更新至机票表中的相关字段,确保数据的完整性。

5应用程序设计

1航空管理系统的处理流程图

2总体结构和外部模块设计

6编程实现

1Login.aspx

这是系统登陆接口,系统根据账号自动选择进入管理员或普通用户页面。

2Index.aspx

这是普通用户登陆成功的接口,在上侧有一条功能选择菜单,通过此菜单,用户可以实现各种操作。

(1)按下航班查询,页面加载FlightSearch.ascx,进行航班查询的一些相关操作。

(2)按下订票,页面载入Book.ascx,进行订票的相关操作。

(3)按下退票,页面载入ReturnTic.ascx,进行退票的相关操作。

(4)按下机票查询,页面加载TicketInfl.ascx,进行机票查询的相关操作。

(5)按下换登机牌,页面载入BoardingPass.ascx,进行换登机牌的相关操作。

(6)按下航班信息,页面加载FlightInfButton.ascx,进行航班信息查询的相关操作。

(7)按下退出系统,退出系统。

3FlightSearch.ascx

在航班查询的功能页面中,有两种查询方式,第一是按目的地查询,第二是按航空公司查询。

上面两图片分别是按目的地查询的查询过程(上图)和按航空公司查询的查询过程(下图)。

(1)按目的地查询:

在这种查询方式下,只要在搜索栏中用汉字输入需要前往的城市名,然后点击查询按钮后,就可以在列表中出现在一天中所有飞往该城市的航班信息。

显示的航班信息包括:

航班号,航空公司,起始地,目的地,时间,是否需要中转以与飞机型号。

需要注意的是,起始地为。

(2)按航空公司查询:

在这种查询方式下,只要从下拉列表中选择你所需要查询的航空公司,然后点击查询按钮后,所有该航空公司拥有的全部航线都会显示在列表中。

显示的航班信息包括:

航班号,航空公司,起始地,目的地,时间,是否需要中转以与飞机型号。

需要注意的是,起始地为。

4Book.ascx

在订票的功能页面中,用户只需要输入目的地与日期,点击提交按钮之后,页面中会显示出所有当天匹配的所有航班信息。

接下来,在出现的页面中填写所需要订购的航班的航班号等其他信息后,然后再在旅客信息资料中填写购票人的,字号等信息后按提交按钮后就可以完成订票的操作了。

5ReturnTic.ascx

在此退票的功能页面中,用户首先需要输入机票上的流水号,点击提交按钮之后,系统会显示出该机票的详细信息,包括航班号、出发地、目的地、日期、时间、舱位、中转地和旅客。

在核对机票信息后,如果确定退票,在输入框中输入机票上的四位验证码,点击提交按钮之后既完成退票的操作。

6TicketInfl.ascx

在机票查询的功能页面中,用户可以对自己所购买的机票的航班信息进行查询。

在输入机票流水号和机票上面的四位验证码并提交之后,系统就会显示出本机票的所有信息,包括:

航班号、航空公司名称、机型、出发地、目的地、日期、时间、舱位、中转地、旅客、保险状态、签转状态和票价。

7BoardingPass.ascx

在换登机牌的功能页面中,用户可以完成登机牌的更换的操作。

当旅客到达机场后,需要进行登机牌的更换,此时,只要输入机票流水号和机票上的四位验证码,在系统出现该机票的详细信息后,旅客可以选择自己所需要的座位,在选择座位的时候,系统会显示出当前航班的所有座位被选择的情况,红色方块表示该座位已经被选择了,而绿色的方块则表示此座位可以被选,当选择好座位后再选择是否需要托运行就完成了登机牌的更换的操作,此时系统会打印出乘客的登机牌。

8FlightInfButton.ascx

在航班信息查询的功能页面中,有两种查询方式,分别是查询航班详细信息和查询航班旅客。

(1)查询航班详细信息:

在查询航班详细信息的功能页面中,用户只要在页面中输入所要查询的航班的航班号以与日期,就可以将次航班的所有信息查询到,并显示出来。

航班的详细信息包括:

航班号、航空公司名称、出发地、目的地、时间、日期、飞机型号、头等舱票数、商务舱票数和经济舱票数以与对应的此航班的的飞航小组的信息,包括乘务组名称、机长、副机长、乘务长、乘务员1、乘务员2、乘务员3、

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2