机票预订系统.
1.调试过程中遇到的问题是如何解决的以及对设计与实现的回顾、讨论和分析;
运行程序的时候出现了很多bug,经过一番分析最终得到了解决。比如插入数据的时候遇到插错行或者不能插入的情况。
2.算法的时间复杂度和空间复杂度的分析,改进设想。
从这方面分析,我的算法比较简单但是相同的代码写了很多遍,我觉得应该适当的将这部分相同的代码放在一个函数中,用其他模块来调用,这样才能提高软件的运行效率和可读性。
if(Session["pass"]=="right")
3.3.1测试
给出测试数据,输出测试的结果,测试数据应该完整(覆盖算法各种情况)。
在登陆部分我用了session对象来保持登陆的状态,用for循环控制登陆输入的次数,用exexcutescalar来返回选择数据库用户名和密码的有无情况;在各个部分显示数据库的数据用到了gridview控件,在支付界面使用了for循环选择gridview的行的长度,并且使用checkbox来检查哪行被选中,从而实现支付算法;从gridview中选择要插入的行到数据库中也是这样设计的,不过相应的代码不同,其他用gridview中的编辑选项实现删除操作,将删除的text改成选购,当删除某一行时,利用数据库中设置的触发器将这行数据插入到已购订单表中,从而实现选购。购票成功后还可以利用gridview来显示,不满意还可以删除之。
航空信息表(did,航空公司,出发城市,到达城市,飞机型号,起飞时间,到达时间,出发日期)
票价(did,航空公司,出发城市,到达城市,飞机型号,起飞时间,到达时间,出发日期,单程票价,往返票价)
机票订单(did,航空公司,出发城市,到达城市,飞机型号),起飞时间,到达时间,出发日期,单程票价,往返票价,订购时间)
3.1.4订票界面
主窗体的订票界面,你可以点击你想查询的有关机票的信息的按钮(查询出发地,查询目的地,航线查询,客户信息查询)获得相关信息的表,根据表的内容,你可以选中你要定的票信息,点确定后在下面会显示你的机票的相关内容,如果满意可以点击订票,把相关信息添加到机票数据库表中,跳转到支付界面;如果不满意,可以点击返回,所有信息清空,再重新选择;
用于存储客户下单的单程票信息
数据库序列的数据字典
序列
描述
seqid
用于实现订单的订单号的自增和航空信息表的id信息的自增
触发器的数据字典
触发器
描述
in_wangfanpiao
实现机票订单表完成删除操作后将这条数据插入往返票表
航空信息表;票价表;机票订单表;用户信息表;往返票表;单程票表;
将E-R图转换成关系模型,关系的主码用横线标识:
软件学院
综合训练项目报告书
课程名称.NET框架程序设计
项目名称机票预订系统
专业班级软件13- 7班
组别第9组
成员
任课教师刘亮
随着民航事业的壮大,人们消费水平的提高,在现实生活中,乘坐民航的消费者也越来越多。由于中国人口众多,订购机票成为了旅客们最头疼的问题!怎样为旅客提供高效,便捷的服务是国家在航空运输中应该首要解决的问题。通过网络实现机票预定已经成为一种消费的时尚,给消费者带来极大的便捷!预定查询系统因此在各机票预定网点中的作用也越显重要。
系统要实现的基本功能是航班的售票,订票,退票,乘客信息的管理;而系统在以后扩展时还可以实现的功能有:对机组工作人员的管理,预定机票的送票情况管理等。此系统的开发由我们分模块完成,而我所负责的模块是实现系统的售票,订票,退票功能。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。
源程序代码及必要注释。
MasterPage.master.cs
protected void Page_Load(object sender, EventArgs e)
{
DateTime d = DateTime.Now;
Label1.Text = d.ToLongDateString() + d.ToLongTimeString();
图1机票预定系统业务系统功能图
1.本程序中用到的所有抽象数据类型的定义及实现;
数据表的数据结字典
表名
描述
航空信息表
用于存储各个航班的航行情况
票价
用于存储各个航班路线的价钱等信息
机票订单
用于存储用户的下单情况
用户信息
用于存储用户的个人基本信息,完成注册、登陆等操作
往返票
用于存储客户下单的往返票信息
单程票
用户信息(id,用户名,密码,联系方式,身份,状态)
往返票(did ,航空公司,出发城市,到达城市,飞机型号,起飞时间,到达时间,出发日期,往返票价,订购时间)
单程票(did ,航空公司,出发城市到达城市,飞机型号,起飞时间,到达时间,出发日期,单程票价,订购时间)
2.主程序的流程及函数的调用关系图。
机票预定管理系统是典型的信息管理系统,其主要开发包括后台数据库的建立和维护,以及前端应用程序的开发两个方面。对于前者要求建立起数据库一致性和完整性强,数据安全性好的库。而后者则要求应用程序功能完备,易使用等特点。
3.1问题分析
新用户可以注册,注册时输入用户名可以查询用户可不可用,可用就可以注册,注册时可以判断用户输入的密码和验证密码是否相同,相同才给以注册,如果满意可以点注册,注册成功后用户可以选择不用在回到登陆界面,可以直接陆到用户主界面,以后就可以用这个用户登录了。
因此,开发一套具有完整的存储,查询,核对,打印机票功能的实时机票预定系统更显紧迫。机票预定系统应克服存储乘客信息少,查询效率低下等问题外,更重要的是其安全性,可靠性,这关系到航班的乘客的安全及准确,本系统因面向广大机票预定网点,因此要能在售票网点中普及,则需要开发一个功能全,价格能被顾客所接受的系统。
验证登陆名密码,正确进入主菜单,如果输入相应用户密码正确,跳转;不正确则清空登录框,最多可以输入三次,三次不正确系统会自动关闭。
主窗体的用户信息界面,用户点击个人查询按钮,可以把自己的个人信息显示到界面上,还可以对自己的信息进行相应的修改,还可以点击我的机票查询,查询该用户的订票记录;选择订购往返票可以继续预订该架航班的往返票,否则只能订购单程票;