火车票预订系统报告.docx

上传人:b****3 文档编号:4796533 上传时间:2022-12-09 格式:DOCX 页数:22 大小:243.84KB
下载 相关 举报
火车票预订系统报告.docx_第1页
第1页 / 共22页
火车票预订系统报告.docx_第2页
第2页 / 共22页
火车票预订系统报告.docx_第3页
第3页 / 共22页
火车票预订系统报告.docx_第4页
第4页 / 共22页
火车票预订系统报告.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

火车票预订系统报告.docx

《火车票预订系统报告.docx》由会员分享,可在线阅读,更多相关《火车票预订系统报告.docx(22页珍藏版)》请在冰豆网上搜索。

火车票预订系统报告.docx

火车票预订系统报告

基于.NET的火车联网售票系统的设计

摘要

基于B/S模式的火车联网售票系统是一个目前非常流行的在线售票系统。

该系统的出现大大满足了现今对于火车售票的需要,使原本极为麻烦的售票、购票过程变得方便快捷,从而提高效率并且大大降低了售票员的工作量。

火车联网售票系统主要包括的火车票查询子系统、订票子系统等功能系统。

它能够实现在线车票查询(包括简单查询、详细查询两个部分),在线订票等功能。

其开发主要包括后台数据库的建立管理和前台应用程序的开发这两个方面。

程序功能实现后用户将可通过互联网在线查询、订购所需的火车票,并能随时查看自己所订购的车票。

本文首先介绍了火车联网售票系统的整体系统构架及MicrosoftSQLSERVER2000数据库的建立,接着详细介绍了各子系统,包括各子系统的功能概述,具体实现,以及数据库相关表设计。

关键词:

在线售票;订单;管理

TheDesignofTrainOnlineBookingSystemBasedon.NET

Abstract

OnlineBookingSystembasedonB/Sstructureiscurrentlyaverypopularonlineticketingsystem.Thesystemcanmeettherequirementofthesellingtrainticketing,maketheextremelytroubleprocessofbuyingtrainticketfastandconvenient.Itimprovesefficiencyandreducesworkloadofconductor.

TrainOnlineBookingSystemmainlycompriseofticketquery,bookingsubsystem,completeonlineticketquery(includessimplequery,detailquery),onlinebookingandsoon.Thedevelopmentincludestheestablishmentandmanagementofthebackgrounddatabase,andtheimplementationofapplicationprogram.ThesystemwillallowcustomerstoinquiriesandbookthetrainticketsthroughtheInternet.Theycaninquireabouttheticketsoftheirbookingatanytime.

ThispaperintroducestheticketingsysteminterconnectionoftheoverallsystemarchitectureandhowtocreateMicrosoftSQLSERVERdatabasebeingfollowedbyadetaileddescriptionofthesubsystems,includingthesubsystemsoverview,thedetailofrealizationandtherelateddesignoftable.

Keywords:

onlinebooking;order;manage

论文总页数:

21页

1引言

1.1课题背景

随着我国经济的高速发展,我国的交通运输能力不断提高,越来越多的国民开始走出家门来到异地进行商务或者旅游等活动。

在这一条件下,客流量不断增大。

火车售票的管理对于交通运输的正常运行起着至关重要的作用,而随着信息量的逐步增加,繁杂的数据处理费时费力,单纯以人力进行的火车售票已经不适合现状了。

现在的时代是一个信息产业的时代,国家把信息产业作为了增长国民经济重要的一环。

在这样的环境下,以先进的信息技术进行火车售票的管理成为了时代发展的必然。

综上所述,开发这样一个火车联网售票系统是相当有必要的。

1.2本课题研究的意义

火车联网售票系统以计算机为操作工具,把售票的工作人员从繁杂的数据管理以及处理中解放出来,从而增加工作效率,火车联网售票系统把车票的各种信息保存于数据库中,通过计算机可以很方便地对所需要数据进行查询等各种操作,而且这些操作全部由系统内部的代码完成,用户只需要通过该系统友好的界面,输入一些简单的数据便可操作,使用者可以很轻易地学会使用。

2系统概述

2.1开发目的

本系统采用B/S模式设计,开发目的除了方便用户可以通过系统查询车票情况,或者对车票进行预定等操作之外,还能让售票员管理火车票信息,相当方便。

2.2开发环境

本系统是在WindowsXP操作系统下,基于Web服务器和浏览器IE6.0及其以上的版本。

本系统主要由使用ASP.NET以及HTML开发的页面和由SQLSEVER2000开发的数据库组成。

具体配置如下:

2.2.1硬件环境

1)CPU:

AMD2500+

2)内存:

512MB

3)硬盘:

80G

2.2.2软件环境

1)WindowsXP(含IIS)

2)MicrosoftSQLServer2000

2.3软硬件需求

为了保证系统运行的效率和可靠性,服务器端应具有较高软硬件配置,客户端的要求不需要很高。

此应用程序可广泛运行于Internet,也适用于内部的局域网,在运行本系统前,请检查一下计算机是否满足以下的客户端配置要求:

2.3.1硬件配置要求

1)CPU:

赛扬2.0GHZ以上

2)内存:

256MB以上

3)硬盘:

20G以上

2.3.2软件配置要求

1)Windows2000/NT/XP/2003

2)IE6.0

3数据库设计

3.1数据库概念模型

E-R(Entity-RelationshipApproach)图是最常用的概念模型表示方法,也是数据库的核心和基础,它是按用户的观点来对数据和信息建模,依据概念模型设计应具的特点:

真实性、易理解性、易修改性、易转换性,火车联网售票系统的E-R图如下所示。

图3.1订单信息E-R图

图3.2管理员信息E-R图

图3.3车票信息E-R图

图3.4火车线路E-R图

图3.5用户信息E-R图

 

图3.6用户留言E-R图

图3.7公告信息E-R图

3.2数据库各表设计

火车联网售票系统数据库采用MicrosoftSQLSERVER,数据库中的表及其作用如下。

Account:

包含用户注册信息,主要有用户名(登录网站用的名字)、登录网站的密码、用户身份证号、用户的姓和名等。

如表3-1所示。

AddressMessage:

包含火车时刻表信息,即是记录火车从始发站到最后的终点站这一的路线上所经过的每一站和到站时间、离站时间。

如表3-2所示。

Admin:

包含管理员信息,即管理员帐号和密码。

如表3-3所示。

HotMessage_Notice:

存放热门信息和公告,记录由管理员发布的公告信息及其他热门信息等。

如表3-4所示。

Orders:

存放订单信息,主要是订单号、用户所订购火车票的票号、订票的用户名、票单价、用户订购票的数量等。

如表3-5所示。

UserLeaveMessage:

存放用户留言,即用户对网站的一些建议,想与其他用户之间交换、出售、购买火车票等的信息。

如表3-6所示。

TicketDetail:

包含火车票信息,主要有车票的票号、是否被订购、车票日期、车票单价、车次、到站时间、离站时间。

如表3-7所示。

 

表3-1Account

字段名

数据类型

长度

是否允许为空

字段描述

userId

varchar

80

用户名

email

varchar

80

用户邮箱

firstName

varchar

80

lastName

varchar

80

addr

varchar

80

用户地址

identifyNum

varchar

20

用户身份证号

phone

varchar

80

用户电话

passWord

varchar

80

用户密码

表3-2AddressMessage

字段名

数据类型

长度

是否允许为空

字段描述

id

int

4

编号

trainId

varchar

20

车次

name

varchar

20

车站名

arriveTime

varchar

20

到站时间

leaveTime

varchar

20

离站时间

表3-3Admin

字段名

数据类型

长度

是否允许为空

字段描述

adminId

varchar

80

管理员帐号

adminPassWord

varchar

80

管理员密码

表3-4HotMessage_Notice

字段名

数据类型

长度

是否允许为空

字段描述

id

int

4

编号

showTime

datetime

8

发表时间

content

varchar

50

内容

表3-5Orders

字段名

数据类型

长度

是否允许为空

字段描述

orderId

int

4

订单号

userId

varchar

80

用户名

ticketId

int

4

车票编号

ticketUnitPrice

money

8

车票单价

orderticketNum

int

4

订购数目

orderTime

varchar

20

订票时间

trainId

varchar

20

车次

 

表3-6UserLeaveMessage

字段名

数据类型

长度

是否允许空

字段描述

id

int

4

编号

userId

varchar

80

用户名

writeTime

datetime

8

留言时间

content

text

16

留言内容

表3-7TicketDetail

字段名

数据类型

长度

是否允许为空

字段描述

ticketId

int

4

车票编号

orderTicketStatus

bit

1

是否被订

ticketDay

varchar

20

车票日期

ticketUnitPrice

money

8

车票单价

trainId

varchar

20

车次

sourceAddr

varchar

20

起点站

destinationAddr

varchar

20

终点站

arriveTime

varchar

20

到站时间

leaveTime

varchar

20

离站时间

seatStatus

varchar

20

卧铺/硬座

3.3数据库的连接

1)为了在移植程序时便于数据库连接,将连接字符串写为一个类,在程序中调用这个类。

2)如遇到移植程序需要更改连接字符串时,只需要在类这一处更改就可以了,极大的减轻了工作量,增强了程序的可移植性。

3)这个类名为Strconn,代码如下:

publicclassStrconn

{

publicStrconn()

{

//TODO:

在此处添加构造函数逻辑

}

privatestaticstringconnString="server=(local);database=TrainSaildb;uid=sa;Pwd=sa";

publicstaticstringConnString

{

Get

{

returnconnString;

}

}

}

4系统总体设计

根据火车联网售票系统的逻辑划分,本系统一共分为五个子系统,分别是用户登录和注册子系统,火车票查询子系统,订票子系统,用户管理子系统,管理员管理子系统。

其功能结构图如图4.1所示。

图4.1系统功能结构图

4.1用户登录和注册子系统

4.1.1用户登录模块

主要完成用户登录的功能,并将用户名记录入cookie中。

如果注册用户想要订购火车票,就必须登录。

登录时必须正确添写用户名和密码。

如果游客没有注册。

登录界面有到注册界面的连接。

4.1.2用户注册模块

完成用户注册的功能。

登录的注册用户和未登录的游客的区别在于登录的注册用户可以浏览首页,查询火车票,订购火车票,管理(查看、修改)自己的注册信息,查看自己的订单信息,可以在网站上留言(例如:

用户查询到自己想要的火车票已经售完,就可以在网站上留言,求购此票);而未登录的游客则只能浏览首页,查询火车票,其余的功能都不能用。

4.2火车票查询子系统

4.2.1快速查询

主要实现按起点站、终点站来查询车票。

在首页有一个快速查询模块,用户无须经过点击连接按钮,转到专门的查询页面再进行查询这样一个麻烦的过程就能得到较为满意的查询结果。

4.2.2详细查询

主要实现按日期、起点站、终点站、车次、是否是卧铺这五点来查询。

虽然有快速查询这样一个方便的查询模块,但其功能不够强大,有时可能不能满足用户的查询要求,这时就需要这样一个功能强大的详细查询模块。

4.3订票子系统

主要实现将用户选种的车票进行锁定,以及生成定单并显示。

这是网站的一个重要功能模块,在显示详细的查询信息页面点击订购按钮后,将转向订单页面,并向之传递用户所订购火车票的信息,然后在订单页面生成订单并显示。

4.4用户管理子系统

4.4.1用户注册信息的管理

主要实现用户自己的注册信息的修改。

有时用户因为各种情况需要修改自己的注册信息,就可以进入用户管理子系统。

点击用户注册管理的子模块,修改自己的注册信息。

4.4.2订单管理

主要实现查询和删除用户已经下了的订单。

4.4.3用户留言模块

实现用户留言功能。

这是用户与用户之间,用户与管理员之间交流的窗口。

用户可以通过它向网站提出建议;与其他用户之间进行信息交流,例如用户查询到自己想要的火车票已经售完,就可以在网站上留言,求购此票,或与其他用户换票等。

极大的丰富网站功能,方便了用户。

4.5管理员管理子系统

4.5.1订单信息管理

主要实现查询所有的订单以及删除订单的功能。

可能会出现一些情况,使管理员需要删除一些用户的某些订单,这个功能模块就是为应对这种情况而作的。

4.5.2用户信息管理

主要实现查询所有的用户注册信息以及删除功能。

一个完善的网站一定会有对用户信息管理,主要是查看删除用户的注册信息。

4.5.3车票信息管理

主要实现查询所有的车票信息以及对车票信息的修改和删除。

可能会出现一些情况使得现有车票不符和实际情况,所以就需要管理员能对车票信息进行修改和删除。

4.5.4地址信息管理

主要实现查询所有的地址信息以及对地址信息的修改和删除。

可能会出现一些情况使得火车到点时刻出现变化,这就需要管理员能对之进行相应的改动。

4.5.5用户留言管理

主要实现查询所有的用户留言以及对用户留言删除。

首先管理员应该能够查看所有的用户的所有留言,这才能发现违反规定的用户留言,为进一步的删除操作做好前提准备。

其次用户留言可能会很多,如不及时清除会站用太多的存储空间,所以需要管理员能够对用户留言进行删除。

4.5.6发布公告/热门信息模块

主要实现管理员对一些信息的发布。

这个模块是实现与用户交流的一个窗口。

管理员可以通过它发布一些当前的热门车票的信息;发布一些网站公告等。

它与用户留言模块一起构成了网站与用户的沟通。

5系统具体设计

5.1用户登录和注册子系统设计

5.1.1功能概述

1)登录时用户输入自己的用户名和密码,如果少输或输入出错及没有注册,则给出相应的出错信息。

2)按提示填写注册信息。

用验证控件来控制用户是否输入,检验用户输入密码与确认密码是否一致。

5.1.2用户登录和注册子系统的实现

1)用户登录和注册主要由Login.aspx和CreateNewAccount.aspx来完成。

2)当用户进入Login.aspx页面要登录时,先选择登录身份,然后输入用户名和密码就可以了。

如果输入错误或少输入了一项或两项则会显示出错信息。

3)如果要注册帐户,则进入CreateNewAccount.aspx页面,按照页面上的提示填写注册信息,然后提交。

对于用户输入的信息由验证控件来验证。

4)以下是在Login.aspx页面里实现在cookie中记录用户ID,以便在其他页面能够对用户是否登录进行验证,从而避免用户在浏览器的地址栏中直接输入网址,从而跳过身份验证页面进对非法访问。

Ø创建cookie的代码如下:

HttpCookienewcookie_Manager=newHttpCookie("ManagerCookie");

newcookie_Manager.Values["ManagerID"]=this.username.Text;

Response.AppendCookie(newcookie_Manager);

Ø对管理员是否登录的验证代码:

if(Request.Cookies["ManagerCookie"]==null)

Response.Redirect("Login.aspx");

Ø对用户是否登录的验证代码:

if(Request.Cookies["customerCookie"]==null)

Response.Redirect("Login.aspx");

5.2火车票查询子系统设计

5.2.1功能概述

1)快速查询功能是指只输入起点站、终点站,就可查询的一个功能模块。

2)

详细查询功能是指按日期、起点站、终点站、车次、是否是卧铺这五点的任意组合来查询的一个功能模块。

如图5.1所示。

图5.1详细查询页面截图

5.2.2火车票查询子系统的实现

1)查询是由用户控件SimpleSearch.ascx、DetailSearch.aspx和SearchResults.aspx三个文件来完成。

2)当用户登录首页时,会有供选择查询条目的两个下拉框(简单查询),用户在下拉列表中选择所需的条目,然后点击提交按钮。

3)当用户需要更详细的查询时,可进入详细查询页面(DetailSearch.aspx),其中有包括日期、起点站、终点站、车次、是否是卧铺这五种查询条件的下拉框,用户可选择这五种查询条件的任意组合,进行查询。

4)两种查询方式在提交后,都将转向查询结果页面(SearchResults.aspx),在其中显示查询结果,以便进一步操作。

5)实现多种查询条件任意组合进行查询的关键是根据不同的组合选用相应的SOL语句,是由SelectIdentify()函数完成实现的,代码如下:

(因代码太多,共有200多行,所以只取其一部分,其余的用省略号代替)

protectedstringSelectIdentify()

{

if(Session["ticketday"].ToString()!

="")

{

if(Session["sourceaddr"].ToString()!

="")

{

if(Session["destinationaddr"].ToString()!

="")

{

if(Session["trainid"].ToString()!

="")

{

if(Session["seatstatus"].ToString()!

="")

{

return"selecttrainId,ticketDay,sourceAddr,destinationAddr,arriveTime,leaveTime,seatStatus,ticketUnitPrice,ticketIdfromTicketDetailwhereticketDay=@ticketdayandsourceAddr=@sourceaddranddestinationAddr=@destinationaddrandtrainId=@trainidandseatStatus=@seatstatusandorderTicketStatus<>0andoperateStatus<>1";

}

else

{

return"selecttrainId,ticketDay,sourceAddr,destinationAddr,arriveTime,leaveTime,seatStatus,ticketUnitPrice,ticketIdfromTicketDetailwhereticketDay=@ticketdayandsourceAddr=@sourceaddranddestinationAddr=@destinationaddrandtrainId=@trainidandorderTicketStatus<>0andoperateStatus<>1";

}

……

}

}

5.3订票子系统设计

5.3.1功能概述

用户在查找到自己所需的票后,点击订购,就会自动生成订单,完成订票功能。

在详细信息页面点击订购,就完成了订购功能,转向订单页面显示。

如图5.2所示。

图5.2显示订单页面截图

5.3.2订票子系统的实现

1)订票的实现主要是由ShowDetail.aspx和Order.aspx两个文件来完成的。

2)在显示详细页面(ShowDetail.aspx)中,每一张票都有一个对应的“点击订购”的按钮,用户点击后会将参数传到Order.aspx页面,在其中生成订单,并返回显示。

3)本页主要代码如下:

Ø将订单信息插入订单表Orders中的代码:

SqlCommandcmd=newSqlCommand("upOrdersadd",conn);

cmd.CommandType=CommandType.StoredProcedure;

SqlDataAdapterda=newSqlDataAdapter(cmd);

Ø显示自己的定单信息的代码:

stringsql="select*fromOrderswhereuserId=@userid";

SqlCommandcmd_show=newSqlCommand(sql,conn);

HttpCookiecookie=Request.Cookies["customerCookie"];

cmd_show.Parameters.Add("@userid",SqlDbType.VarCha

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

当前位置:首页 > 工程科技 > 电力水利

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

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