航空售票系统设计报告源代码Word文档下载推荐.docx

上传人:b****8 文档编号:22758904 上传时间:2023-02-05 格式:DOCX 页数:41 大小:568.38KB
下载 相关 举报
航空售票系统设计报告源代码Word文档下载推荐.docx_第1页
第1页 / 共41页
航空售票系统设计报告源代码Word文档下载推荐.docx_第2页
第2页 / 共41页
航空售票系统设计报告源代码Word文档下载推荐.docx_第3页
第3页 / 共41页
航空售票系统设计报告源代码Word文档下载推荐.docx_第4页
第4页 / 共41页
航空售票系统设计报告源代码Word文档下载推荐.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

航空售票系统设计报告源代码Word文档下载推荐.docx

《航空售票系统设计报告源代码Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《航空售票系统设计报告源代码Word文档下载推荐.docx(41页珍藏版)》请在冰豆网上搜索。

航空售票系统设计报告源代码Word文档下载推荐.docx

管理员可以查看已订票乘客所有的订票信息,同时也可以查看所有等待订票的乘客信息。

3.6航班信息(管理员)

管理员可以查看终点站、航班号、飞机型号、飞机日期、乘员定额、余票量。

4,本系统对不同的用户角色有权限设置。

管理员的用户名或密码是系统内设置的无法更改或注册,乘客可以通过姓名和身份证号码注册登录。

(注:

身份证号即为密码)

二、概要分析

1.1,功能模块(管理员)

……(可扩展)

航班信息

航班号

飞行型号

飞行日期

终点站

录入功能

查询功能

订票信息

6

已订票客户

为订票客户

1.2,功能模块(乘客)

办理

退票

退票功能

订票功能

离开

等待

录入

2,数据结构(C#)

2.1单链表(详见类Linklist_singly.cs)

///<

summary>

///结点类

/summary>

typeparamname="

T"

>

<

/typeparam>

publicclassNode<

T>

{

privateTdata;

privateNode<

next;

///构造函数

publicNode(){}

publicNode(Tval)

data=val;

}

///数据域属性

publicTData

get{returndata;

set{data=value;

///引用域的属性

publicNode<

Next

get{returnnext;

set{next=value;

///单链表(头结点的引用不为空)

publicclassLinklist<

head;

publicLinklist()

head=null;

///头引用的属性

Head

get{returnhead;

set{head=value;

///求单链表的长度

returns>

链表的长度<

/returns>

publicintGetLength()

Node<

p=head;

intlen=0;

while(p!

=null)

++len;

p=p.Next;

returnlen;

///判断链表是否为空

若为空,返回true,否则返回false<

publicboolIsEmpty()

if(head==null)

returntrue;

else

returnfalse;

///在单链表末尾添加数据

paramname="

item"

T类型的数据<

/param>

publicvoidAppend(Titem)

q=newNode<

(item);

p=newNode<

();

head=q;

return;

while(p.Next!

p.Next=q;

///删除单链表中第i个结点

i"

索引号<

publicTDelete(inti)

if(IsEmpty()||i<

0)

returndefault(T);

//T是类为引用类型,返回null;

if(i==1)//删除头结点

q=head;

head=head.Next;

returnq.Data;

intj=1;

=null&

&

j<

i)//p为要删除的结点,q为p前面的一个结点

++j;

q=p;

if(i==j)

q.Next=p.Next;

//删除p结点

returnp.Data;

2.2单链队(详见类Linklist_Queue.cs,代码略)

三,功能实现

本系统提供不同角色的登录功能。

管理员的用户名:

王昌,密码:

123;

用户的登录名的用户名:

421126************。

系统为管理员和用户分别提供了不同的功能。

为了使系统的功能实现更加清晰,故本系统采用了三层架构的知识来实现不同角色的不同功能。

首先,建立了三个类库,分别为数据层(DAL)、模型层(Model)、业务层(BLL)。

数据层(DAL)主要是分别获取航班信息、已订票客户信息、未订票客户信息,同时还提供保存航班信息、已订票客户信息、未订票客户信息的方法。

模型层(Model)提供了航班信息、已订票客户信息、未订票客户信息的类,分别提供了相关信息的字段和属性。

业务层(BLL)是实现用户与windows窗体交互的功能具体实现的方法。

数据层(DAL)、模型层(Model)、业务层(BLL)和windows窗体,这几者之间是相互调用的。

数据层需要对模型层进行引用,业务层需要调用模型层、数据层来实现相关功能,windows窗体是与业务层进行交互的,与其他的没有之间的联系。

3,1模型层(Model)

飞行类

publicclassFlightInformation

privatestringter_name;

privatestringair_num;

privatestringplane_num;

privatestringday;

privateinttkt_amt;

privateinttkt_sur;

///航班信息

t"

终点站<

a"

航班号<

p"

飞机型号<

d"

飞行时间<

amt"

乘员定额<

sur"

余票量<

publicFlightInformation(stringt,stringa,stringp,stringd,intamt,intsur)

ter_name=t;

air_num=a;

plane_num=p;

day=d;

tkt_amt=amt;

tkt_sur=sur;

publicFlightInformation(){}

///终点站的属性

publicstringTer_name

get{returnter_name;

set{ter_name=value;

///航班号的属性

publicstringAir_num

get{returnair_num;

set{air_num=value;

///飞机型号

publicstringPlane_num

get{returnplane_num;

set{plane_num=value;

///飞行时间

publicstringDay

get{returnday;

set{day=value;

///乘员定额

publicintTkt_amt

get{returntkt_amt;

set{tkt_amt=value;

///余票量

publicintTkt_sur

get{returntkt_sur;

set{tkt_sur=value;

已(未)订票客户信息类

publicclasscustomer_book

privatestringname;

privatelongidnumber;

privateinttkt_book;

///未订票客户信息

ter"

n"

客户姓名<

身份证号<

订票数量<

起飞时间<

publiccustomer_book(stringter,stringn,longi,intt,stringd)

ter_name=ter;

name=n;

idnumber=i;

tkt_book=t;

publiccustomer_book(){}

///客户姓名的属性

publicstringName

get{returnname;

set{name=value;

///客户身份证号的属性

publiclongIdnumber

get{returnidnumber;

set{idnumber=value;

///订票数量的属性

publicintTkt_book

get{returntkt_book;

set{tkt_book=value;

///飞行时间的属性

///已订票的客户信息

publicclasscustomer_booked:

customer_book

privatestringplane_number;

privatestringair_number;

_plane"

_air"

publiccustomer_booked(stringter,stringn,longi,intt,stringd,string_plane,string_air)

:

base(ter,n,i,t,d)

plane_number=_plane;

air_number=_air;

publiccustomer_booked(){}

publicstringPlane_number

get{returnplane_number;

set{plane_number=value;

///航班号

publicstringAir_number

get{returnair_number;

set{air_number=value;

3,2数据层(DAL)

3.2.1.1获取飞行信息的方法

publicstaticList<

FlightInformation>

GetFlight()

try

if(flag1==1)

string[]strText=File.ReadAllLines("

Flight.txt"

System.Text.Encoding.Default);

string[]s;

chara='

'

;

for(inti=0;

i<

strText.Length;

i++)

s=strText[i].Split(a);

FlightInformationfli=newFlightInformation();

fli.Ter_name=s[0];

fli.Air_num=s[1];

fli.Plane_num=s[2];

fli.Day=s[3];

fli.Tkt_amt=Int32.Parse(s[4]);

fli.Tkt_sur=Int32.Parse(s[5]);

flights.Add(fli);

flag1++;

catch

returnnull;

returnflights;

3.2.1.2获取已订票客户信息的方法

customer_booked>

Getbooked()

if(flag2==1)

Cusbooked.txt"

customer_bookedcus=newcustomer_booked();

cus.Plane_number=s[0];

cus.Air_number=s[1];

cus.Ter_name=s[2];

//终点站

cus.Name=s[3];

cus.Idnumber=long.Parse(s[4]);

cus.Tkt_book=Int32.Parse(s[5]);

cus.Day=s[6];

cusbooked.Add(cus);

flag2++;

returncusbooked;

3.2.1.3获取未订票客户信息的方法(代码略)

3.2.2.1保存航空信息

publicstaticboolSaveFlight()

if(flights.Count<

1)

FileStreamfileStream=newFileStream("

FileMode.Create);

StreamWriterstw=newStreamWriter(fileStream,System.Text.Encoding.Default);

flights.Count;

StringBuilderstr=newStringBuilder();

str.Append(flights[i].Ter_name.ToString()+"

"

);

str.Append(flights[i].Air_num.ToString()+"

str.Append(flights[i].Plane_num.ToString()+"

str.Append(flights[i].Day.ToString()+"

str.Append(flights[i].Tkt_amt.ToString()+"

str.Append(flights[i].Tkt_sur.ToString());

stw.WriteLine(str.ToString());

stw.Close();

fileStream.Close();

3.2.2.2保存已订票客户信息

publicstaticboolSaveBooked()

if(cusbooked.Count<

cusbooked.Count;

str.Append(cusbooked[i].Plane_number.ToString()+"

str.Append(cusbooked[i].Air_number.ToString()+"

str.Append(cusbooked[i].Ter_name.ToString()

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1