Sess_Kakashi
21-05-2011, 10:43
Mình thiết kế 1 form như trong hình
http://upnhanh.sieuthinhanh.com/tmpimages/images/sieuthiNHANH2011052114020ogrmm2yyzj61891.jpeg
khi chạy thì kô báo lỗi nhưng chỉ có combo Tuyến & combo Loại xe là load lên, còn biển số thì lại không thể load lên được.
Đây là code của form đó
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace VeXe
{
public partial class XepLichKhoiHanh : Form
{
public XepLichKhoiHanh()
{
InitializeComponent();
}
private void XeDangKy_Load(object sender, EventArgs e)
{
HienThiLich();
bus_LoaiXe bus_lx = new bus_LoaiXe();
DataTable tbl1 = bus_lx.GetAll();
cbLoaiXe.DataSource = tbl1;
cbLoaiXe.DisplayMember = "TenLoai";
cbLoaiXe.ValueMember = "MaLoai";
bus_LichKhoiHanh bus_xdk=new bus_LichKhoiHanh();
DataTable tbl2 = bus_xdk.LayTuyen();
cbTuyen.DataSource = tbl2;
cbTuyen.DisplayMember = "TenTuyen";
cbTuyen.ValueMember = "MaTuyen";
}
private void cbLoaiXe_SelectedIndexChanged(object sender, EventArgs e)
{
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
string st_MaLoai = cbLoaiXe.SelectedValue.ToString();
DateTime dt_NgayDi = dtNgayDi.Value.Date;
DataTable tbl = new DataTable();
tbl = bus_xdk.LayBienSo(st_MaLoai,dt_NgayDi);
cbBienSo.DataSource = tbl;
cbBienSo.DisplayMember = "BienSoXe";
cbBienSo.ValueMember = "BienSoXe";
DataTable tbl3 = bus_xdk.LayLaiXe(dt_NgayDi);
cbLaiXe.DataSource = tbl3;
cbLaiXe.DisplayMember = "TenNV";
cbLaiXe.ValueMember = "MaNV";
DataTable tbl4 = bus_xdk.LayTiepVien(dt_NgayDi);
cbTiepVien.DataSource = tbl4;
cbTiepVien.DisplayMember = "TenNV";
cbTiepVien.ValueMember = "MaNV";
}
private void cbBienSo_SelectedIndexChanged(object sender, EventArgs e)
{
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
string st_BienSoXe = cbBienSo.SelectedValue.ToString();
DataTable tbl = new DataTable();
tbl = bus_xdk.LaySoCho(st_BienSoXe);
txtSoCho.Text = tbl.Rows[0]["SoChoNgoi"].ToString();
}
private void btnLuu_Click(object sender, EventArgs e)
{
string st_MaTuyen=cbTuyen.SelectedValue.ToString();
DateTime dt_NgayDi = dtNgayDi.Value.Date;
if (DateTime.Compare(dt_NgayDi, DateTime.Today) < 1)
{
MessageBox.Show("Ngày Đi phải sau ít nhất 1 ngày so với hiện tại.");
return;
}
string st_BienSoXe = cbBienSo.SelectedValue.ToString();
int in_SoLuongVe = int.Parse(txtSoCho.Text);
string st_GioDi = txtGioDi.Text.Trim();
int in_GiaVe = int.Parse(txtGiaVe.Text);
string st_MaLaiXe = cbLaiXe.SelectedValue.ToString();
string st_MaTiepVien = cbTiepVien.SelectedValue.ToString();
int Check = 0;
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
Check = bus_xdk.Insert(st_GioDi,dt_NgayDi,in_GiaVe,in_SoLu ongVe,in_SoLuongVe,st_BienSoXe,st_MaTuyen,st_MaLai Xe,st_MaTiepVien);
if (Check < 1)
{
MessageBox.Show("Lưu thất bại.");
return;
}
MessageBox.Show("Thành Công.");
HienThiLich();
}
void HienThiLich()
{
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
DataTable tbl = new DataTable();
tbl = bus_xdk.HienThiLich();
dgvHienThiLich.Rows.Clear();
for (int i = 0; i < tbl.Rows.Count; i++)
{
dgvHienThiLich.Rows.Add();
dgvHienThiLich["cllTuyen",i].Value=tbl.Rows[i]["TenTuyen"];
dgvHienThiLich["cllBienSo", i].Value = tbl.Rows[i]["BienSoXe"];
dgvHienThiLich["cllNgayDi", i].Value = tbl.Rows[i]["NgayDi"];
dgvHienThiLich["cllGioDi", i].Value = tbl.Rows[i]["GioDi"];
dgvHienThiLich["cllLoaiXe", i].Value = tbl.Rows[i]["TenLoai"];
dgvHienThiLich["cllSoCho", i].Value = tbl.Rows[i]["SoChoNgoi"];
dgvHienThiLich["cllGiaVe",i].Value=tbl.Rows[i]["GiaVe"];
dgvHienThiLich["cllLaiXe", i].Value = tbl.Rows[i]["LaiXe"];
dgvHienThiLich["cllTiepVien", i].Value = tbl.Rows[i]["TiepVien"];
dgvHienThiLich["cllMaDangKy", i].Value = tbl.Rows[i]["MaDangKy"];
}
tbl.Dispose();
}
private void dgvHienThiLich_RowEnter(object sender, DataGridViewCellEventArgs e)
{
int row_Index = e.RowIndex;
txtMa.Text = dgvHienThiLich.Rows[row_Index].Cells["cllMaDangKy"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllMaDangKy"].Value.ToString();
cbTuyen.Text = dgvHienThiLich.Rows[row_Index].Cells["cllTuyen"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllTuyen"].Value.ToString();
dtNgayDi.Text = dgvHienThiLich.Rows[row_Index].Cells["cllNgayDi"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllNgayDi"].Value.ToString();
cbLoaiXe.Text = dgvHienThiLich.Rows[row_Index].Cells["cllLoaiXe"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllLoaiXe"].Value.ToString();
cbBienSo.Text = dgvHienThiLich.Rows[row_Index].Cells["cllBienSo"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllBienSo"].Value.ToString();
txtSoCho.Text = dgvHienThiLich.Rows[row_Index].Cells["cllSoCho"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllSoCho"].Value.ToString();
txtGioDi.Text = dgvHienThiLich.Rows[row_Index].Cells["cllGioDi"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllGioDi"].Value.ToString();
txtGiaVe.Text = dgvHienThiLich.Rows[row_Index].Cells["cllGiaVe"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllGiaVe"].Value.ToString();
cbLaiXe.Text = dgvHienThiLich.Rows[row_Index].Cells["cllLaiXe"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllLaiXe"].Value.ToString();
cbTiepVien.Text = dgvHienThiLich.Rows[row_Index].Cells["cllTiepVien"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllTiepVien"].Value.ToString();
if (txtMa.Text != "")
{
btnLuu.Enabled = false;
}
else
{
txtGiaVe.Text = "0";
}
}
private void btnThayDoi_Click(object sender, EventArgs e)
{
string st_MaTuyen = cbTuyen.SelectedValue.ToString();
DateTime dt_NgayDi = dtNgayDi.Value.Date;
if (DateTime.Compare(dt_NgayDi, DateTime.Today) < 1)
{
MessageBox.Show("Ngày Đi phải sau ít nhất 1 ngày so với hiện tại.");
return;
}
string st_BienSoXe = cbBienSo.Text.Trim();
int in_SoLuongVe = int.Parse(txtSoCho.Text);
string st_GioDi = txtGioDi.Text.Trim();
int in_GiaVe = int.Parse(txtGiaVe.Text);
string st_MaLaiXe = cbLaiXe.SelectedValue.ToString();
string st_MaTiepVien = cbTiepVien.SelectedValue.ToString();
int in_MaDangKy = int.Parse(txtMa.Text);
int Check = 0;
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
Check = bus_xdk.Update(in_MaDangKy, st_GioDi, dt_NgayDi, in_GiaVe, in_SoLuongVe, in_SoLuongVe, st_BienSoXe, st_MaTuyen, st_MaLaiXe, st_MaTiepVien);
if (Check < 1)
{
MessageBox.Show("Không thay đổi được.\nHãy chọn Xe có số chổ lớn hơn.");
return;
}
MessageBox.Show("Thành Công.");
btnLuu.Enabled = true;
HienThiLich();
}
private void btnXoa_Click(object sender, EventArgs e)
{
bus_LichKhoiHanh bus_lkh = new bus_LichKhoiHanh();
if (txtMa.Text == "")
{
MessageBox.Show("Hãy chọn một giá trị muốn xóa bên dưới.");
return;
}
int in_MaDangKy = int.Parse(txtMa.Text);
int Check= 0;
Check = bus_lkh.Delete(in_MaDangKy);
if (Check < 1)
{
MessageBox.Show("Không thể hủy chuyến này được.\nVì nó đã có khách hàng rồi.");
return;
}
else
{
MessageBox.Show("Đã Xóa thành công.");
}
HienThiLich();
}
private void dtNgayDi_Leave(object sender, EventArgs e)
{
DateTime dt_NgayDi = dtNgayDi.Value.Date;
if (dt_NgayDi <= DateTime.Today)
{
MessageBox.Show("Lịch khởi hành gần nhất có thể là ngày mai.\nHãy lên lịch khởi hành vào ngày khác hôm nay. ");
cbLoaiXe.Enabled = false;
return;
}
else
{
cbLoaiXe.Enabled = true;
}
}
private void btnReset_Click(object sender, EventArgs e)
{
btnLuu.Enabled = true;
cbBienSo.Text = "";
dtNgayDi.Value = DateTime.Today;
cbLoaiXe.Text = "";
cbTuyen.Text = "";
cbTiepVien.Text = "";
cbLaiXe.Text = "";
txtGiaVe.Text = "";
txtGioDi.Text = "";
txtMa.Text = "";
txtSoCho.Text = "";
}
}
}
code của lớp bus_LichKhoiHanh
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
namespace VeXe
{
class bus_LichKhoiHanh
{
public DataTable LayTuyen()
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayTuyen();
}
catch
{
throw;
}
}
public DataTable LayBienSo(string st_MaLoai,DateTime dt_NgayDi)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayBienSo(st_MaLoai,dt_NgayDi);
}
catch
{
throw;
}
}
public DataTable LaySoCho(string st_BienSoXe)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LaySoCho(st_BienSoXe);
}
catch
{
throw;
}
}
public DataTable LayLaiXe(DateTime dt_NgayDi)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayLaiXe(dt_NgayDi);
}
catch
{
throw;
}
}
public DataTable LayTiepVien(DateTime dt_NgayDi)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayTiepVien(dt_NgayDi);
}
catch
{
throw;
}
}
public int Insert(string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.Insert(st_GioDi, dt_NgayDi, in_GiaVe, in_SoLuongVe, in_VeConLai, st_BienSoXe, st_MaTuyen, st_MaLaiXe, st_MaTiepVien);
}
catch
{
throw;
}
}
public int Update(int in_MaDangKy, string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.Update(in_MaDangKy, st_GioDi, dt_NgayDi, in_GiaVe, in_SoLuongVe, in_VeConLai, st_BienSoXe, st_MaTuyen, st_MaLaiXe, st_MaTiepVien);
}
catch
{
throw;
}
}
public int Delete(int in_MaDangKy)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.Delete(in_MaDangKy);
}
catch
{
return 0;
}
}
public DataTable HienThiLich()
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.HienThiLich();
}
catch
{
throw;
}
}
}
}
code của data_LichKhoiHanh
using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
namespace VeXe
{
class data_LichKhoiHanh
{
string st_conn = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
public DataTable LayTuyen()
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("Tuyen_GetAll", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LayBienSo(string st_MaLoai,DateTime dt_NgayDi)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LayBienSo", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@MaLoai",st_MaLoai);
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LaySoCho(string st_BienSoXe)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LaySoCho", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@BienSoXe", st_BienSoXe);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LayLaiXe(DateTime dt_NgayDi)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LayLaiXe", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@NgayDi",dt_NgayDi);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LayTiepVien(DateTime dt_NgayDi)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LayTiepVien", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public int Insert(string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Insert", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@GioDi", st_GioDi);
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.Parameters.AddWithValue("@GiaVe", in_GiaVe);
cmd.Parameters.AddWithValue("@SoLuongVe", in_SoLuongVe);
cmd.Parameters.AddWithValue("@VeConLai", in_VeConLai);
cmd.Parameters.AddWithValue("@BienSoXe", st_BienSoXe);
cmd.Parameters.AddWithValue("@MaTuyen", st_MaTuyen);
cmd.Parameters.AddWithValue("@MaLaiXe", st_MaLaiXe);
cmd.Parameters.AddWithValue("@MaTiepVien", st_MaTiepVien);
return cmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally
{
cmd.Dispose();
conn.Close();
}
}
public int Update(int in_MaDangKy, string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Update", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@MaDangKy", in_MaDangKy);
cmd.Parameters.AddWithValue("@GioDi", st_GioDi);
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.Parameters.AddWithValue("@GiaVe", in_GiaVe);
cmd.Parameters.AddWithValue("@SoLuongVe", in_SoLuongVe);
cmd.Parameters.AddWithValue("@VeConLai", in_VeConLai);
cmd.Parameters.AddWithValue("@BienSoXe", st_BienSoXe);
cmd.Parameters.AddWithValue("@MaTuyen", st_MaTuyen);
cmd.Parameters.AddWithValue("@MaLaiXe", st_MaLaiXe);
cmd.Parameters.AddWithValue("@MaTiepVien", st_MaTiepVien);
return cmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally
{
cmd.Dispose();
conn.Close();
}
}
public DataTable HienThiLich()
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Info",conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public int Delete(int in_MaDangKy)
{
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Delete", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@MaDangKy", in_MaDangKy);
return cmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally
{
cmd.Dispose();
conn.Close();
}
}
}
}
Bạn nào biết sai chỗ nào thì chỉ dùm mình.
Thanks
http://upnhanh.sieuthinhanh.com/tmpimages/images/sieuthiNHANH2011052114020ogrmm2yyzj61891.jpeg
khi chạy thì kô báo lỗi nhưng chỉ có combo Tuyến & combo Loại xe là load lên, còn biển số thì lại không thể load lên được.
Đây là code của form đó
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace VeXe
{
public partial class XepLichKhoiHanh : Form
{
public XepLichKhoiHanh()
{
InitializeComponent();
}
private void XeDangKy_Load(object sender, EventArgs e)
{
HienThiLich();
bus_LoaiXe bus_lx = new bus_LoaiXe();
DataTable tbl1 = bus_lx.GetAll();
cbLoaiXe.DataSource = tbl1;
cbLoaiXe.DisplayMember = "TenLoai";
cbLoaiXe.ValueMember = "MaLoai";
bus_LichKhoiHanh bus_xdk=new bus_LichKhoiHanh();
DataTable tbl2 = bus_xdk.LayTuyen();
cbTuyen.DataSource = tbl2;
cbTuyen.DisplayMember = "TenTuyen";
cbTuyen.ValueMember = "MaTuyen";
}
private void cbLoaiXe_SelectedIndexChanged(object sender, EventArgs e)
{
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
string st_MaLoai = cbLoaiXe.SelectedValue.ToString();
DateTime dt_NgayDi = dtNgayDi.Value.Date;
DataTable tbl = new DataTable();
tbl = bus_xdk.LayBienSo(st_MaLoai,dt_NgayDi);
cbBienSo.DataSource = tbl;
cbBienSo.DisplayMember = "BienSoXe";
cbBienSo.ValueMember = "BienSoXe";
DataTable tbl3 = bus_xdk.LayLaiXe(dt_NgayDi);
cbLaiXe.DataSource = tbl3;
cbLaiXe.DisplayMember = "TenNV";
cbLaiXe.ValueMember = "MaNV";
DataTable tbl4 = bus_xdk.LayTiepVien(dt_NgayDi);
cbTiepVien.DataSource = tbl4;
cbTiepVien.DisplayMember = "TenNV";
cbTiepVien.ValueMember = "MaNV";
}
private void cbBienSo_SelectedIndexChanged(object sender, EventArgs e)
{
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
string st_BienSoXe = cbBienSo.SelectedValue.ToString();
DataTable tbl = new DataTable();
tbl = bus_xdk.LaySoCho(st_BienSoXe);
txtSoCho.Text = tbl.Rows[0]["SoChoNgoi"].ToString();
}
private void btnLuu_Click(object sender, EventArgs e)
{
string st_MaTuyen=cbTuyen.SelectedValue.ToString();
DateTime dt_NgayDi = dtNgayDi.Value.Date;
if (DateTime.Compare(dt_NgayDi, DateTime.Today) < 1)
{
MessageBox.Show("Ngày Đi phải sau ít nhất 1 ngày so với hiện tại.");
return;
}
string st_BienSoXe = cbBienSo.SelectedValue.ToString();
int in_SoLuongVe = int.Parse(txtSoCho.Text);
string st_GioDi = txtGioDi.Text.Trim();
int in_GiaVe = int.Parse(txtGiaVe.Text);
string st_MaLaiXe = cbLaiXe.SelectedValue.ToString();
string st_MaTiepVien = cbTiepVien.SelectedValue.ToString();
int Check = 0;
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
Check = bus_xdk.Insert(st_GioDi,dt_NgayDi,in_GiaVe,in_SoLu ongVe,in_SoLuongVe,st_BienSoXe,st_MaTuyen,st_MaLai Xe,st_MaTiepVien);
if (Check < 1)
{
MessageBox.Show("Lưu thất bại.");
return;
}
MessageBox.Show("Thành Công.");
HienThiLich();
}
void HienThiLich()
{
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
DataTable tbl = new DataTable();
tbl = bus_xdk.HienThiLich();
dgvHienThiLich.Rows.Clear();
for (int i = 0; i < tbl.Rows.Count; i++)
{
dgvHienThiLich.Rows.Add();
dgvHienThiLich["cllTuyen",i].Value=tbl.Rows[i]["TenTuyen"];
dgvHienThiLich["cllBienSo", i].Value = tbl.Rows[i]["BienSoXe"];
dgvHienThiLich["cllNgayDi", i].Value = tbl.Rows[i]["NgayDi"];
dgvHienThiLich["cllGioDi", i].Value = tbl.Rows[i]["GioDi"];
dgvHienThiLich["cllLoaiXe", i].Value = tbl.Rows[i]["TenLoai"];
dgvHienThiLich["cllSoCho", i].Value = tbl.Rows[i]["SoChoNgoi"];
dgvHienThiLich["cllGiaVe",i].Value=tbl.Rows[i]["GiaVe"];
dgvHienThiLich["cllLaiXe", i].Value = tbl.Rows[i]["LaiXe"];
dgvHienThiLich["cllTiepVien", i].Value = tbl.Rows[i]["TiepVien"];
dgvHienThiLich["cllMaDangKy", i].Value = tbl.Rows[i]["MaDangKy"];
}
tbl.Dispose();
}
private void dgvHienThiLich_RowEnter(object sender, DataGridViewCellEventArgs e)
{
int row_Index = e.RowIndex;
txtMa.Text = dgvHienThiLich.Rows[row_Index].Cells["cllMaDangKy"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllMaDangKy"].Value.ToString();
cbTuyen.Text = dgvHienThiLich.Rows[row_Index].Cells["cllTuyen"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllTuyen"].Value.ToString();
dtNgayDi.Text = dgvHienThiLich.Rows[row_Index].Cells["cllNgayDi"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllNgayDi"].Value.ToString();
cbLoaiXe.Text = dgvHienThiLich.Rows[row_Index].Cells["cllLoaiXe"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllLoaiXe"].Value.ToString();
cbBienSo.Text = dgvHienThiLich.Rows[row_Index].Cells["cllBienSo"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllBienSo"].Value.ToString();
txtSoCho.Text = dgvHienThiLich.Rows[row_Index].Cells["cllSoCho"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllSoCho"].Value.ToString();
txtGioDi.Text = dgvHienThiLich.Rows[row_Index].Cells["cllGioDi"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllGioDi"].Value.ToString();
txtGiaVe.Text = dgvHienThiLich.Rows[row_Index].Cells["cllGiaVe"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllGiaVe"].Value.ToString();
cbLaiXe.Text = dgvHienThiLich.Rows[row_Index].Cells["cllLaiXe"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllLaiXe"].Value.ToString();
cbTiepVien.Text = dgvHienThiLich.Rows[row_Index].Cells["cllTiepVien"].Value == null ? "" : dgvHienThiLich.Rows[row_Index].Cells["cllTiepVien"].Value.ToString();
if (txtMa.Text != "")
{
btnLuu.Enabled = false;
}
else
{
txtGiaVe.Text = "0";
}
}
private void btnThayDoi_Click(object sender, EventArgs e)
{
string st_MaTuyen = cbTuyen.SelectedValue.ToString();
DateTime dt_NgayDi = dtNgayDi.Value.Date;
if (DateTime.Compare(dt_NgayDi, DateTime.Today) < 1)
{
MessageBox.Show("Ngày Đi phải sau ít nhất 1 ngày so với hiện tại.");
return;
}
string st_BienSoXe = cbBienSo.Text.Trim();
int in_SoLuongVe = int.Parse(txtSoCho.Text);
string st_GioDi = txtGioDi.Text.Trim();
int in_GiaVe = int.Parse(txtGiaVe.Text);
string st_MaLaiXe = cbLaiXe.SelectedValue.ToString();
string st_MaTiepVien = cbTiepVien.SelectedValue.ToString();
int in_MaDangKy = int.Parse(txtMa.Text);
int Check = 0;
bus_LichKhoiHanh bus_xdk = new bus_LichKhoiHanh();
Check = bus_xdk.Update(in_MaDangKy, st_GioDi, dt_NgayDi, in_GiaVe, in_SoLuongVe, in_SoLuongVe, st_BienSoXe, st_MaTuyen, st_MaLaiXe, st_MaTiepVien);
if (Check < 1)
{
MessageBox.Show("Không thay đổi được.\nHãy chọn Xe có số chổ lớn hơn.");
return;
}
MessageBox.Show("Thành Công.");
btnLuu.Enabled = true;
HienThiLich();
}
private void btnXoa_Click(object sender, EventArgs e)
{
bus_LichKhoiHanh bus_lkh = new bus_LichKhoiHanh();
if (txtMa.Text == "")
{
MessageBox.Show("Hãy chọn một giá trị muốn xóa bên dưới.");
return;
}
int in_MaDangKy = int.Parse(txtMa.Text);
int Check= 0;
Check = bus_lkh.Delete(in_MaDangKy);
if (Check < 1)
{
MessageBox.Show("Không thể hủy chuyến này được.\nVì nó đã có khách hàng rồi.");
return;
}
else
{
MessageBox.Show("Đã Xóa thành công.");
}
HienThiLich();
}
private void dtNgayDi_Leave(object sender, EventArgs e)
{
DateTime dt_NgayDi = dtNgayDi.Value.Date;
if (dt_NgayDi <= DateTime.Today)
{
MessageBox.Show("Lịch khởi hành gần nhất có thể là ngày mai.\nHãy lên lịch khởi hành vào ngày khác hôm nay. ");
cbLoaiXe.Enabled = false;
return;
}
else
{
cbLoaiXe.Enabled = true;
}
}
private void btnReset_Click(object sender, EventArgs e)
{
btnLuu.Enabled = true;
cbBienSo.Text = "";
dtNgayDi.Value = DateTime.Today;
cbLoaiXe.Text = "";
cbTuyen.Text = "";
cbTiepVien.Text = "";
cbLaiXe.Text = "";
txtGiaVe.Text = "";
txtGioDi.Text = "";
txtMa.Text = "";
txtSoCho.Text = "";
}
}
}
code của lớp bus_LichKhoiHanh
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
namespace VeXe
{
class bus_LichKhoiHanh
{
public DataTable LayTuyen()
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayTuyen();
}
catch
{
throw;
}
}
public DataTable LayBienSo(string st_MaLoai,DateTime dt_NgayDi)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayBienSo(st_MaLoai,dt_NgayDi);
}
catch
{
throw;
}
}
public DataTable LaySoCho(string st_BienSoXe)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LaySoCho(st_BienSoXe);
}
catch
{
throw;
}
}
public DataTable LayLaiXe(DateTime dt_NgayDi)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayLaiXe(dt_NgayDi);
}
catch
{
throw;
}
}
public DataTable LayTiepVien(DateTime dt_NgayDi)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.LayTiepVien(dt_NgayDi);
}
catch
{
throw;
}
}
public int Insert(string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.Insert(st_GioDi, dt_NgayDi, in_GiaVe, in_SoLuongVe, in_VeConLai, st_BienSoXe, st_MaTuyen, st_MaLaiXe, st_MaTiepVien);
}
catch
{
throw;
}
}
public int Update(int in_MaDangKy, string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.Update(in_MaDangKy, st_GioDi, dt_NgayDi, in_GiaVe, in_SoLuongVe, in_VeConLai, st_BienSoXe, st_MaTuyen, st_MaLaiXe, st_MaTiepVien);
}
catch
{
throw;
}
}
public int Delete(int in_MaDangKy)
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.Delete(in_MaDangKy);
}
catch
{
return 0;
}
}
public DataTable HienThiLich()
{
data_LichKhoiHanh data_xdk = new data_LichKhoiHanh();
try
{
return data_xdk.HienThiLich();
}
catch
{
throw;
}
}
}
}
code của data_LichKhoiHanh
using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
namespace VeXe
{
class data_LichKhoiHanh
{
string st_conn = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
public DataTable LayTuyen()
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("Tuyen_GetAll", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LayBienSo(string st_MaLoai,DateTime dt_NgayDi)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LayBienSo", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@MaLoai",st_MaLoai);
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LaySoCho(string st_BienSoXe)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LaySoCho", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@BienSoXe", st_BienSoXe);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LayLaiXe(DateTime dt_NgayDi)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LayLaiXe", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@NgayDi",dt_NgayDi);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public DataTable LayTiepVien(DateTime dt_NgayDi)
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_LayTiepVien", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public int Insert(string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Insert", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@GioDi", st_GioDi);
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.Parameters.AddWithValue("@GiaVe", in_GiaVe);
cmd.Parameters.AddWithValue("@SoLuongVe", in_SoLuongVe);
cmd.Parameters.AddWithValue("@VeConLai", in_VeConLai);
cmd.Parameters.AddWithValue("@BienSoXe", st_BienSoXe);
cmd.Parameters.AddWithValue("@MaTuyen", st_MaTuyen);
cmd.Parameters.AddWithValue("@MaLaiXe", st_MaLaiXe);
cmd.Parameters.AddWithValue("@MaTiepVien", st_MaTiepVien);
return cmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally
{
cmd.Dispose();
conn.Close();
}
}
public int Update(int in_MaDangKy, string st_GioDi, DateTime dt_NgayDi, int in_GiaVe, int in_SoLuongVe, int in_VeConLai, string st_BienSoXe, string st_MaTuyen, string st_MaLaiXe, string st_MaTiepVien)
{
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Update", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@MaDangKy", in_MaDangKy);
cmd.Parameters.AddWithValue("@GioDi", st_GioDi);
cmd.Parameters.AddWithValue("@NgayDi", dt_NgayDi);
cmd.Parameters.AddWithValue("@GiaVe", in_GiaVe);
cmd.Parameters.AddWithValue("@SoLuongVe", in_SoLuongVe);
cmd.Parameters.AddWithValue("@VeConLai", in_VeConLai);
cmd.Parameters.AddWithValue("@BienSoXe", st_BienSoXe);
cmd.Parameters.AddWithValue("@MaTuyen", st_MaTuyen);
cmd.Parameters.AddWithValue("@MaLaiXe", st_MaLaiXe);
cmd.Parameters.AddWithValue("@MaTiepVien", st_MaTiepVien);
return cmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally
{
cmd.Dispose();
conn.Close();
}
}
public DataTable HienThiLich()
{
DataTable tbl = new DataTable();
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Info",conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.ExecuteNonQuery();
}
catch
{
throw;
}
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
try
{
adapt.Fill(tbl);
}
catch
{
throw;
}
finally
{
adapt.Dispose();
tbl.Dispose();
cmd.Dispose();
conn.Close();
}
return tbl;
}
public int Delete(int in_MaDangKy)
{
SqlConnection conn = new SqlConnection(st_conn);
conn.Open();
SqlCommand cmd = new SqlCommand("XepLichKhoiHanh_Delete", conn);
cmd.CommandType = CommandType.StoredProcedure;
try
{
cmd.Parameters.AddWithValue("@MaDangKy", in_MaDangKy);
return cmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally
{
cmd.Dispose();
conn.Close();
}
}
}
}
Bạn nào biết sai chỗ nào thì chỉ dùm mình.
Thanks