一、需求分析
1.1 功能需求及描述
通过对机票预定业务的调查,明确了飞机订购票系统共包括乘客信息模块,航班信息模块,机票订购模块,机票退票模块以及取票信息模块五个模块
图1-1 总体功能模块图
图1-2 用户信息管理模块
(1)用户信息管理:
1)建立用户信息表,对于新办理的用户,令其注册,将其信息加入到用户信息表中
2)输入订票人身份证号查询订票人详细信息,包括订单号、用户姓名、手机号、身份证号等
图1-3 航班信息管理模块
(2)航班信息管理:
1)管理员对所有的航班都要统一编码,对所有航班进行信息登记
2)新增的航班要进行编码和信息登记,对取消的航班要注销其所有信息,用户可以通过输入航班号可以查询到航班的所有详细信息
图1-4 订票信息管理模块
(3)订票信息管理:
用户订票时,先查看所要乘坐线路所包含的飞机航班号及其所剩余的票量,选择所要乘坐的用户信息,最终生成机票订单
图1-5 退票信息管理模块
(4)退票信息管理:
用户退票时,首先查询机票,确认用户是否超过航班登机时间,如果已超过则不予退票;如果没有再看其是否已取票,如果已取票则清除用户订单记录到管理员处退票,如果没有取票,则直接在网上退票
图1-6 取票信息管理模块
(5)取票信息管理
用户在乘坐飞机之前要在机场的自助取票机取票,只需把身份证放上去便可识别出行信息,取票过后通过安检乘坐飞机
1.2业务流程图
1.3实体及重要属性
- 通过分析,我们可以得到本系统中主要管理的对象是用户、航班、机票、机型、退票信息、取票信息,需存储的信息包括:
- 用户信息:姓名,性别,身份证号,电话号
- 航班信息:航班号,起飞地,目的地,起飞时间
- 座位信息:座位号,航班号,座位信息,机票类型
- 退票信息:订单号,姓名,电话号,身份证号
- 取票信息:姓名,身份证号,航班号,座位号,机票类型
通过分析,本系统中各实体之间的联系如下:
- 用户-航班:一个用户可以订购产生多个航班信息,一个航班信息只属于一个用户,因此用户和航班信息之间的关系是一对多的关系。
- 航班-座位:一个航班信息可以包含多个座位信息,一个座位信息只属于一个航班,因此航班和座位信息之间的关系是一对多的关系。
- 用户-取票:一个用户可以取多张机票,一张机票只属于一个用户,因此用户和取票之间的关系是一对多的关系
- 用户-退票:一个用户可以退多张机票,一张机票只属于一个用户,因此用户和退票之间是一对多的关系
二、概念结构设计
2.1 全局E-R图的设计
三、逻辑结构设计
3.1 关系模式设计
根据E-R图中的实体及实体之间的联系,关系模式如下:
- 用户信息(姓名,性别,身份证号,电话号)
- 航班信息(航班号,起飞地,目的地,起飞时间)
- 座位信息(座位号,航班号,座位信息,机票类型)
- 退票信息(订单号,姓名,电话号,身份证号)
- 取票信息(姓名,身份证号,航班号,座位号,机票类型)
3.2表设计
3.2.1表结构
表1 yyxx(用户信息表)
字段名 |
描述 |
数据类型 |
可否为空 |
备注 |
name |
姓名 |
char(20) |
否 |
|
sex |
性别 |
char(4) |
否 |
(男,女) |
id |
身份证号 |
char(20) |
否 |
主键 |
phone |