1、网上机票预订管理系统的产生和发展正好满足人们的这种需求。现在将详细介绍我的课程设计网上机票预订管理系统。2.2软件主要组成及功能要完成功能主要有: 新用户注册,新用户可以注册,注册时输入用户名可以查询用户可不可用,可用就可以注册,注册时可以判断用户输入的密码和验证密码是否相同,相同才给以注册,如果满意可以点注册,注册成功后用户可以选择不用在回到登陆界面,可以直接 陆到用户主界面,以后就可以用这个用户登录了,如果不满意,点取消,所有信息清空,重新输入。 验证登陆名密码,正确进入主菜单,根据登录时所选的登录方式(客户、管理员)的不同分别对用户设定不同的访问权限(如果是输入的客户用户名和密码正确,选
2、择以客户方式登陆则主界面里面的管理员界面不能用,如果输入的是管理员的相应用户密码正确,以管理员的方式登陆则管理员界面可用)不正确则清空登录框,最多可以输入三次,三次不正确系统会自动关闭。 主窗体的用户信息界面,用户点击个人查询按钮,可以把自己的个人信息显示到界面上,还可以对自己的信息进行相应的修改(用户编号和用户名不能修改),还可以点击我的机票查询,查询该用户的订票记录。 主窗体的订票界面,你可以点击你想查询的有关机票的信息的按钮(舱位信息查询,客机信息查询,航线查询,客户类型信息查询)获得相关信息的表,根据表的内容,你可以在下面的下拉框中选择你要定的票信息,点确定后在下面会显示你的机票的相关
3、内容,如果满意可以点击订票,把相关信息添加到机票数据库表中,如果不满意,可以点重置,所有信息清空,再重新选择。 退票窗口,用户可以根据用户信息表中的我的机票信息查询,找出机票号,在输入到机票号查询里,点击查询获得你的机票信息以及价格显示,点击退票则在数据库机票信息表中删除本条信息。 管理员界面的管理员添加界面能对管理员信息进行查询、添加、删除和修改,包括用户名、登陆密码和联系方式。 管理员界面的舱位信息的查询、添加、删除和修改,包括舱位等级编号、舱位等级名称、提供的各种服务类别,以及备注信息等。 管理员界面的客机信息界面对客机信息的添加、修改、删除和查询,包括客机编号、客机型号、购买时间、服役
4、时间、经济舱座位数量、公务舱座位数量、头等舱座位数量以及备注信息等。 管理员界面的航线信息界面对航线信息的添加、修改、删除和查询,包括航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格和备注信息等。 客户等级信息的的添加、修改、删除和查询,包括客户等级编号、客户等级名称、折扣比例和备注信息等。 管理员界面的用户信息查询,能查询所有的已注册的用户信息。 管理员界面订票信息界面,可以查询所有的已订的机票的信息。2.3用户特点及一般约束2.3.1.管理员和用户的登陆 要求合法的管理员以及用户才能登陆体统,防止系统被无关人员动用,使用字符串匹配对用
5、户名和密码进行判断。管理员和用户的登录对相应的操作权限也不一样,如果是用户登录,管理员的窗口属性为不可用,管理员有舱位信息管理,客机信息管理,航线信息管理,客户类型信息管理,客户信息和订票信息管理,用户主要有舱位查询,客机信息查询,航线信息查询,客户类型信息查询,自己的信息管理,和自己订票和退票。2.3.2.管理员的日常操作管理员可以对舱位信息,客机信息,航线信息,客户类型信息,进行查询、修改和删除操作,可以对客户信息和订票信息只有查询操作。2.3.3.用户的的日常操作用户可以进行注册然后登陆系统,可以查询舱位信息,客机信息查询,航线信息查询,客户类型信息,可以对自己的信息进行修改,可以定票(
6、按照航班号进行预订机票,显示所订机票的信息和价格,进入支付系统付账,并再次要求客户确认,确认无误后订票成功),可以退票(在特殊情况下(如天气不适合飞机起降,飞机延误超过30分钟)等给予全额退票,如果是个人原因只能退50%),对退票后的机票要在未售出机票中重新体现。2.3.4功能需求(用DFD图表示)2.3.4.1用户注册的DFD图顶层图: 填写信息 获得确认1. 层图填写信息 获得确认数据流图2.3.4.2用户订票的DFD图1层图:2层图:2.3.4.3机票信息查询的DFD图2.4外部接口需求在用户界面方面要求错误信息格式均以弹出提示框的形式出现,硬软件接口方面没有特别的需求,一般用户都可以直
7、接使用。2.5性能需求 因为系统本身较小,并不投入实际应用,因此响应时间、结果精度方面可能会比较差,数据量大小方面能够处理较大的数据量。2.6软件属性需求 在数据检索、数据增删改方面必须做到丝毫不差,满足软件开发的正确性要求。必须考虑充足的异常处理机制以及软件的复用性,以便增强软件的健壮性。在安全保密性方面做到不同身份所能处理的事务不同,避免保密数据泄漏;设置足够的触发器对不安全的数据修改进行回滚操作,进而保证了安全性要求。所开发出来的软件必须是可维护的,不能把一些东西做的太死。2.7数据需求(ER图表示)管理员信息实体E-R图如图2-1所示。舱位等级信息实体E-R图如图2-2所示。图2-2舱
8、位等级信息实体E-R图客机信息实体E-R图如图2-3所示。图2-3 客机信息实体E-R图航线信息实体E-R图如图2-4所示。图2-4航线信息实体E-R图订票信息实体E-R图如图2-5所示。图2-5 订票信息实体E-R图实体之间关系的E-R图如图2-6所示。图2-6实体之间关系的E-R图三、概要设计总体设计 用户订票界面 增加航班界面 管理员界面的客机信息界面对客机信息的添加、删除和查询,包括客机编号、客机型号、购买时间、服役时间以及备注信息等。 航班删除界面 客户查询及预订界面四、详细设计4.1 窗体代码设计(1) 订票代码private void Pice() if (txtId.Text.
9、Trim() = ) MessageBox.Show(请填写航班号, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); txtId.Focus(); else if (txtPice.Text.Trim() = 请填写您要预订的票数 txtPice.Focus(); else if (cboType.Text.Trim() = 请选择类型 cboType.Focus(); else if (txtFromTime.Text.Trim() = 请填写日期 txtFromTime.Focus(); else Priced(); priva
10、te void Priced() string message = ; int Num = 0; int bookSeatNum = 0; int Pice = Convert.ToInt32(txtPice.Text); try string Dayth = txtFromTime.Text; string Type = cboType.Text; string sql = string.Format(select sum(Number) from OrderInfo where FlightNo=0 and LeaveDate=1 and SeatType = 2 , txtId.Text
11、, Dayth, Type); SqlCommand command = new SqlCommand(sql, DBHepler.connection); DBHepler.connection.Open(); if (!(command.ExecuteScalar() is DBNull) bookSeatNum = Convert.ToInt32(command.ExecuteScalar(); MessageBox.Show(bookSeatNum.ToString(); catch (Exception ex) MessageBox.Show(ex.Message); finally
12、 DBHepler.connection.Close(); switch (cboType.Text) case 头等舱: Num = 8 - bookSeatNum; /MessageBox.Show(Num.ToString(); break;经济舱 Num = 160 - bookSeatNum; if (Pice = Num) message = string.Format(剩余客票只有0请选择其他航班!, Num); MessageBox.Show(message, 温馨提示 Rearch(); (2)实时更新预定信息private void Rearch() int rs = 0;
13、insert into OrderInfo(FlightNo,LeaveDate,SeatType,Number) values (,3), txtId.Text, txtFromTime.Text, cboType.Text, txtPice.Text); SqlCommand command = new SqlCommand(sql,DBHepler.connection); rs = command.ExecuteNonQuery(); if (rs = 1)预定成功 string SQL = string.Format(select id from OrderInfo where Or
14、derInfo.FlightNo=+txtId.Text.ToString()+txtFromTime.Text.ToString()+ and SeatType=+cboType.Text.ToString()+ and Number=+txtPice.Text+); SqlCommand comm = new SqlCommand(SQL, DBHepler.connection); SqlDataReader dataRead = comm.ExecuteReader(); if (dataRead.Read() string s = s = Convert.ToInt32(dataRe
15、adid).ToString();符合你的打印ID号有: +Environment.NewLine+ s, 打印ID号 dataRead.Close();预定失败(3)删除航班 private void btndelete_Click(object sender, EventArgs e) if (ticketInfoDataGridView.CurrentCell.RowIndex -1) return; else ticketInfoDataGridView.Rows.RemoveAt(ticketInfoDataGridView.CurrentCell.RowIndex); ticket
16、InfoTableAdapter.Update(ticketDataSet);删除成功!,操作提示 4.2 数据库设计4.2.1 系统登陆设计4.2.2 航班信息设计4.2.3 航班查询设计五、课程设计总结 在这次课程设计中,我们完成的是一个网上机票预定系统。在做这个系统的过程中,我们通过上网及课本查找相关资料,后来发现网上的比较复杂,超出我们的能力范围,因此我们将按照自己所学得到的知识进行编写及设计这个程序,因此程序可能比较简易。在设计的过程中,我跟张绍华同学一起探讨,当然中间我们也出现过大大小小的问题,但是在我们的努力下很多问题都解决了。在这次的课程实验中我们再一次的体验到了团队合作的重要
17、性,在以后的学习中我们一定会灵活运用我们所学的知识。六、参考文献1 ,刘国燊编著.北京电子工业出版社.2003年9月.2 .杨学全主编,赵慧勤,李英杰,张永周编著北京:电子工业出版社.2004年7月3 .史济民,顾春华,李昌武,苑荣编著.北京:高等教育出版社.2004年1月.4 张海藩编著.论.北京:清华大学出版社.2005年10月.5 张奇,李律松,卫建伟等编著.北京:清华大学出版社.2005年6月.6 ,邹建峰编著,北京人民邮电出版社.2006年1月.7 KoureshArdestani著,张哲峰译.北京:清华大学出版社.2003年3月.8石志国编著.ASP.NET程序设计实用教程.北京:
18、电子工业出版社.2006年4月.9李万宝主编.ASP.NET技术详解与应用实例.北京:机械工业出版社.2005年9月10数据库系统概论萨师煊 王珊 高等教育出版社1999年第3版11完全掌握SQL Server 2000罗运模 人民邮电出版社,200112PowerDesigner软件工程技术白尚旺等 电子工业出版社,2004 13 数据库系统概论萨师煊 王珊 编著.高等教育出版社.2006年5月第4版14 完全掌握SQL Server 2000罗运模 编著. 人民邮电出版社.200115 个体软件工程Watts S.Humphrey 编著.人民邮电出版社16 实用软件工程郑人杰,殷人昆,陶永雷 编著清华大学出版社1997.417 数据库系统概论王珊,萨师煊 编著,高等教育出版社,2006.5第四版18 计算机软件产品开发文件编制指南19 管理信息系统薛成华 编著.清华大学出版社11软件工程-实践者的研究方法 Roger S.Pressman著 15软件工程面向对象和传统的方法 机械工业出版社16软件工程方法与实践新编计算机类本 电子工业出版社17 18 http:/ 19 20 21
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2