首页 > 编程 > C# > 正文

C#实现航班查询及预订功能

2019-10-29 21:02:47
字体:
来源:转载
供稿:网友

具体代码如下所示:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Data.SqlClient;namespace FrmHangBanUser{public partial class FrmUser : Form{//1.连接字符串string connString = "Data Source = .;Initial Catalog=Ticket;User ID = sa; Pwd = sa";//3.创建DataSet对象DataSet set = new DataSet();public FrmUser(){InitializeComponent();}#region 窗体加载事件/// <summary>/// 窗体加载事件!!/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void FrmUser_Load(object sender, EventArgs e){//FlightInfo();AirwaysInfo();CityInfo();}#endregion#region 出发地/// <summary>/// 出发地/// </summary>public void AirwaysInfo(){try{//2.创建Connection对象SqlConnection conn = new SqlConnection(connString);//4.创建DataAdapter对象StringBuilder _sb = new StringBuilder();_sb.AppendLine(@"SELECT Id,CityName FROM CityInfo");SqlDataAdapter adapter = new SqlDataAdapter(_sb.ToString(), conn);//5.填充数据集adapter.Fill(set, "CityUser");//6.绑定数据源到ComboBox控件中this.cboAirways.DataSource = set.Tables["CityUser"];this.cboAirways.ValueMember = "Id";this.cboAirways.DisplayMember = "CityName";//7.添加行对象DataRow row = set.Tables["CityUser"].NewRow();row["Id"] = -1;row["CityName"] = "请选择";set.Tables["CityUser"].Rows.InsertAt(row, 0);//8.默认选中一行this.cboAirways.SelectedIndex = 0;}catch (Exception ex){MessageBox.Show(ex.Message);}}#endregion#region 非空验证/// <summary>/// 非空验证/// </summary>public void Check(){if(this.cboAirways.SelectedIndex == 0){MessageBox.Show("请输入你要出发的城市啊!!","操作提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question);}else if (this.cboMudidi.SelectedIndex == 0){MessageBox.Show("请输入你的目的地啊啊啊!!", "操作提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);}}#endregion#region 目的地/// <summary>/// 目的地/// </summary>public void CityInfo(){try{//2.创建Connection对象SqlConnection conn = new SqlConnection(connString);//4.创建DataAdapter对象StringBuilder _sb = new StringBuilder();_sb.AppendLine(@"SELECT Id,CityName FROM CityInfo");SqlDataAdapter adapter = new SqlDataAdapter(_sb.ToString(), conn);//5.填充数据集adapter.Fill(set, "City");//6.绑定数据源到ComboBox控件中this.cboMudidi.DataSource = set.Tables["City"];this.cboMudidi.ValueMember = "Id";this.cboMudidi.DisplayMember = "CityName";//7.添加行对象DataRow row = set.Tables["City"].NewRow();row["Id"] = -1;row["CityName"] = "请选择";set.Tables["City"].Rows.InsertAt(row, 0);//8.默认选中一行this.cboMudidi.SelectedIndex = 0;}catch (Exception ex){MessageBox.Show(ex.Message);}}#endregion#region 航班信息/// <summary>/// 航班信息/// </summary>public void FlightInfo(){try{//2.创建Connection对象SqlConnection conn = new SqlConnection(connString);//4.创建DataAdapter对象StringBuilder _sb = new StringBuilder();_sb.AppendLine(@"SELECT F.FlightNO,A.Airways,F.LeaveTime,F.LandTime,F.PriceFROM FlightInfo AS F INNER JOIN AirwaysInfo AS A ON F.AirwaysId = A.Id");SqlDataAdapter adapter = new SqlDataAdapter(_sb.ToString(), conn);//5.填充数据集if (set.Tables["Airways"]!=null){set.Tables["Airways"].Clear();}adapter.Fill(set, "Airways");//6.绑定数据源this.dvgUserInfo.DataSource = set.Tables["Airways"];}catch (Exception ex){MessageBox.Show(ex.Message);}}#endregion#region 查询按钮功能/// <summary>/// 查询按钮功能/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnChaXun_Click(object sender, EventArgs e){Check();Filter();}#endregion#region 按选择的条件筛选/// <summary>/// 按选择的条件筛选/// </summary>public void Filter(){try{SqlConnection conn=new SqlConnection(connString);//筛选条件DataSet ds = new DataSet();int city = Convert.ToInt32(cboAirways.SelectedValue);int Destination = Convert.ToInt32(cboMudidi.SelectedValue);StringBuilder sb = new StringBuilder();if(city!=-1 && Destination!=-1){sb.AppendLine(@"SELECT F.FlightNO,A.Airways,F.LandTime,F.LeaveTime,F.PriceFROM FlightInfo AS F INNER JOIN AirwaysInfo AS A ON F.AirwaysId = A.Id");sb.AppendFormat(@"WHERE LeaveCity = {0} AND Destination = {1}", city, Destination);}SqlDataAdapter adapter = new SqlDataAdapter(sb.ToString(),conn);adapter.Fill(ds,"User");this.dvgUserInfo.DataSource = ds.Tables["User"];}catch (Exception ex){MessageBox.Show(ex.Message);}}#endregion#region 关闭按钮功能/// <summary>/// 关闭按钮功能/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnGuanbi_Click(object sender, EventArgs e){DialogResult result = MessageBox.Show("你确定要退出程序嘛~","退出提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Stop);if(result == DialogResult.OK){Application.Exit(); //退出程序了。。 - - |||}}#endregion#region 实现航班选择功能/// <summary>/// 实现航班选择功能/// </summary>private void dvgUserInfo_MouseClick(object sender, MouseEventArgs e){txtHNo.Text = dvgUserInfo.SelectedRows[0].Cells["FlightNO"].Value.ToString();txtGongSi.Text = dvgUserInfo.SelectedRows[0].Cells["Airways"].Value.ToString();this.txtChuFa.Text = this.cboAirways.Text;this.txtMuDi.Text = this.cboMudidi.Text;txtShijian.Text = dvgUserInfo.SelectedRows[0].Cells["LeaveTime"].Value.ToString();txtDaoDa.Text = dvgUserInfo.SelectedRows[0].Cells["LandTime"].Value.ToString();txtPiaoJia.Text = dvgUserInfo.SelectedRows[0].Cells["Price"].Value.ToString();}#endregion#region 航班预定功能/// <summary>/// 航班预定功能/// </summary>/// <returns></returns>public bool Insert(){Random _dom = new Random();int no = _dom.Next(100000, 1000000);SqlConnection conn = null;string No = this.txtHNo.Text;DateTime LeaveDate = this.dateTimePicker1.Value;string Number = this.nuShang.Value.ToString();try{conn = new SqlConnection(connString);//构建插入学生记录的SQL的语句StringBuilder _sbu = new StringBuilder();_sbu.AppendLine("INSERT INTO OrderInfo(OrderId,FlightNo,LeaveDate,Number)");_sbu.AppendFormat("VALUES('{0}','{1}','{2}','{3}')", no, No, LeaveDate, Number);_sbu.AppendFormat("SELECT @@IDENTITY");//创建Command对象SqlCommand command = new SqlCommand(_sbu.ToString(), conn);//打开连接conn.Open();//调用方法int result = command.ExecuteNonQuery();//对返回值进行处理if (result > 0){MessageBox.Show("恭喜你!预定成功!订单编号为"+no);return true;}else{MessageBox.Show("预定失败!请重试!");return false;}}catch (Exception ex){MessageBox.Show(ex.Message);return false;}finally{//关闭连接conn.Close();}}#endregion#region 预定按钮/// <summary>/// 预定按钮!/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnYuDing_Click(object sender, EventArgs e){Insert();}#endregion}}

总结

以上所述是小编给大家介绍的C#实现航班查询及预订功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对VEVB武林网网站的支持!


注:相关教程知识阅读请移步到c#教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表