飞机航班订票系统.docx
《飞机航班订票系统.docx》由会员分享,可在线阅读,更多相关《飞机航班订票系统.docx(39页珍藏版)》请在冰豆网上搜索。
飞机航班订票系统
飞机航班订票系统
分类号编号
NorthChinaInstituteofWaterConservancyandHydroelectricPower
课程软件工程
题目飞机航班订票系统
院系
专业
小组长
小组成员1
小组成员2
指导教师
2014年6月15日
华北水利水电学院软件工程实验报告
2013,2014学年第二学期2011级计算机科学与技术专业小组长:
分工:
小组成员1:
分工:
小组成员2:
)分工:
一、实验内容:
1、题目:
飞机航班订票系统
2、问题定义:
飞机航班订票系统
任务:
通过此系统可以实现如下功能:
(1)录入:
录入航班信息(数据可以存储在一个数据文件中)
(2)查询:
可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;
3)订票:
(订票情况可以存在一个数据文件中)(
可以订票,如果该航班已经无票,可以提供相关可选择航班;(4)退票:
可退票,退票后修改相关数据文件;
订票的客户信息有姓名,证件号,订票数量及航班,订单要有编号。
(5)修改航班信息:
当航班信息改变可以修改航班数据文件。
3、需求规格说明
(1)、关系模式如下:
用户登录(用户名,密码,类别)
用户信息(身份证号,姓名,性别,用户名,联系电话)
航班信息(航班号,航班名,飞机型号,起始地,起飞时间,目的地,
到达时间,里程,票价,额定乘员,余票量,类别)
订单(订单号,航班号,身份证号,日期,订票数量)
退单(退单号,订单号,日期)
1
(2)数据库设计
本系统的数据库是SQLServe数据库,在SQL数据库环境下创建数据库学生成绩管
理系统的文件,该数据库包括四个表记录存储内容;
各表的物理结构如下:
用户登录表:
用户信息表:
退单表:
2
航班信息表:
订单表:
各表之间的关系如下:
3
二、设计说明:
程序流程图如下:
4
按航班
航班信息号查询
所有航用户信息班信息查询
订单信息
退单信息
航班信息录入
单一信
息修改
航班信息
多项信修改息修改
飞信息修改机用户信息管理员登录
航
班密码修改删除航班信息订票会员登录安系
全统查询退出
订票
退票
改签
5
各界面设计如下:
6
三、程序源:
usingSystem;
usingSystem.Collections.Generic;usingSystem.ComponentModel;
7
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
usingSystem.Windows.Forms;
usingSystem.Data.SqlClient;
namespace飞机航班订票系统
{
publicpartialclassForm1:
Form
{
publicForm1()
{
InitializeComponent();
}
staticpublicstringsn,sub;
Form2fr2=newForm2();
Form3fr3=newForm3();
privatevoidbutton1_Click(objectsender,EventArgse)
{
stringstr="server=APRRZQZGRFJAP3I;Database=飞机航班订票系
统;Trusted_Connection=yes;";
SqlConnectionconn=newSqlConnection(str);
conn.Open();
if(textBox1.Text==""||textBox2.Text=="")
{
MessageBox.Show("用户名或密码为空~");
}
if(radioButton1.Checked)
{
stringcstr="select*from用户登录where类别='管理员'and用户名='"+textBox1.Text.Trim()+"'and密码='"+textBox2.Text.Trim()+"'";
SqlCommandconm=newSqlCommand(cstr,conn);
SqlDataReaderdr=conm.ExecuteReader();
if(dr.Read())
{
sn=textBox1.Text.Trim();
fr2.Show();
fr2.Text="亲爱的"+sn+",欢迎进入飞机航班订票系统~";
this.Visible=false;
}
else
{
MessageBox.Show("用户名或密码错误,请从新输入~");
textBox1.Text="";textBox2.Text="";
}
}
if(radioButton2.Checked)
{
stringcstr="select*from用户登录where类别='会员'and用户名='"+textBox1.Text.Trim()+"'and密码='"+textBox2.Text.Trim()+"'";
SqlCommandconm=newSqlCommand(cstr,conn);
SqlDataReaderdr=conm.ExecuteReader();
if(dr.Read())
{
sn=textBox1.Text.Trim();
8
fr2.Show();
fr2.Text="亲爱的"+sn+",欢迎进入飞机航班订票系统~";
this.Visible=false;
}
}
conn.Close();conn.Dispose();
}
}
}
2、系统界面如下:
代码如下:
namespace飞机航班订票系统
{
publicpartialclassForm2:
Form
{
publicForm2()
{
InitializeComponent();
}
Form3fr3=newForm3();
Form4fr4=newForm4();
Form5fr5=newForm5();
Form6fr6=newForm6();
staticpublicintxb,xa;
staticpublicstringstr="server=APRRZQZGRFJAP3I;Database=飞机航班订票系统;Trusted_Connection=yes;";
privatevoidtoolStripTextBox1_Click(objectsender,EventArgse)
{
Application.Exit();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
if(radioButton1.Checked)
{
stringcstr="select*from航班信息where起始地='"+textBox1.Text.Trim()+
"'and目的地='"+textBox2.Text.Trim()+"'";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败~");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
}
}
privatevoid用户信息ToolStripMenuItem_Click(objectsender,EventArgse)
9
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
stringcstr="select*from用户信息";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
conn.Close();conn.Dispose();
}
privatevoid订票信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
stringcstr="select*from订单";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
conn.Close();conn.Dispose();
}
privatevoid退票信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
stringcstr="select*from退单";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
10
conn.Close();conn.Dispose();
}
privatevoid所有航班信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
stringcstr="select*from航班信息";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
conn.Close();conn.Dispose();
}
privatevoidbutton1_Click_1(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
if(radioButton1.Checked)
{
stringcstr="select*from航班信息where起始地='"+textBox1.Text.Trim()+"'and目的地='"+textBox2.Text.Trim()+"'and类别='单程'";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
}
if(radioButton2.Checked)
{
stringcstr="select*from航班信息where起始地='"+textBox1.Text.Trim()+"'and目的地='"+textBox2.Text.Trim()+"'and类别='往返'";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
11
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
}
if(radioButton3.Checked)
{
stringcstr="select*from航班信息where起始地='"+textBox1.Text.Trim()+"'and目的地='"+textBox2.Text.Trim()+"'and类别='联程'";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("查找失败");
}
else
{
SqlDataAdapterda=newSqlDataAdapter(cstr,conn);
DataSetds=newDataSet();
da.Fill(ds,"table");
dataGridView1.DataSource=ds.Tables["table"].DefaultView;
}
}
conn.Close();conn.Dispose();
}
privatevoid确定_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
label10.Text=dateTimePicker2.Value.ToString();
stringcstr="select*from航班信息where航班号='"+textBox3.Text.Trim()+"'";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("没有此航班~");
textBox3.Text="";
}
else
{
label7.Text=textBox4.Text.Trim().Substring(4,5)+dateTimePicker2.Value.ToString().Substring(11,8)+textBox3.Text.Trim();
stringcstr2="insertinto订单values('"+label7.Text.Trim()+"','"+textBox3.Text.Trim()+"','"+textBox4.Text.Trim()+"','"+label10.Text.Trim()+"',1)";
SqlCommandcm2=newSqlCommand(cstr2,conn);
stringcstr3="update航班信息set余票量张=余票量张-1where航班号="+
textBox3.Text.Trim()+"";
SqlCommandcm3=newSqlCommand(cstr3,conn);
if(cm2.ExecuteNonQuery()==1&&cm3.ExecuteNonQuery()==1)
MessageBox.Show("恭喜你,订票成功~");
elseMessageBox.Show("操作失败~~~");
}
conn.Close();conn.Dispose();
}
12
privatevoidbutton2_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
label11.Text=textBox5.Text.Trim()+"1";
label12.Text=dateTimePicker2.Value.ToString();
stringcstr1="insertinto退单values('"+label11.Text.Trim()+"','"+textBox5.Text.Trim()
+"','"+label12.Text.Trim()+"')";
SqlCommandcm1=newSqlCommand(cstr1,conn);
if(cm1.ExecuteNonQuery()==1)
{
MessageBox.Show("退票成功~");
}
else
{
MessageBox.Show("操作失败~请查看是否有此订单号或者是否已经退订~");
}
conn.Close();conn.Dispose();
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
SqlConnectionconn=newSqlConnection(str);
conn.Open();
stringcstr="select*from订单where订单号="+textBox7.Text.Trim()+"";
SqlCommandcm=newSqlCommand(cstr,conn);
if(cm.ExecuteScalar()==null)
{
MessageBox.Show("没有此订单~");
textBox7.Text="";
}
else
{
stringcstr1="update订单set航班号="+textBox8.Text.Trim()+"where订单号
="+textBox7.Text.Trim()+"";
SqlCommandcm1=newSqlCommand(cstr1,conn);
stringcstr2="update航班信息set余票量张=余票量张-1where航班号="+
textBox8.Text.Trim()+"";
SqlCommandcm2=newSqlCommand(cstr2,conn);
stringcstr3="update航班信息set余票量张=余票量张+1where航班号=
(select航班号from订单where订单号="+textBox7.Text.Trim()+"";
SqlCommandcm3=newSqlCommand(cstr3,conn);
if(cm1.ExecuteNonQuery()==1&&cm2.