1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài tập lớn học phần lập trình trên WINDOWS quản lý bán hàng

39 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

lOMoARcPSD|15978022 TRƯỜNG ĐẠI HỌC QUY NHƠN KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP LỚN HỌC PHẦN LẬP TRÌNH TRÊN WINDOWS QUẢN LÝ BÁN HÀNG Sinh Viên : Rmah H’ Ngok Lớp : K43C – CNTT Giảng Viên : Đinh Thị Mỹ Cảnh BÌNH ĐỊNH, 07/2022 lOMoARcPSD|15978022 Mục Lục Chương I Giới Thiệu .3 Chương II Thiết kế Chương trình Cơ sở liệu a Bảng admin b Bảng nhanvien c Bảng khachhang d Bảng sanpham e Bảng hoadon f Bảng LoaiVer .8 Thiết kế giao diện a Giao diện đầu Magic Shop .9 b Giao diện Sign In 10 c Giao Diện Sign Up .13 d Giao Diện HOME 15 e Giao Diện Nhân Viên 19 f Giao Diện Khách Hàng 24 g Giao Diện Album 29 h Giao Diện Hóa Đơn 34 i Câu lệnh mặc định 39 Chương III.Kết Luận 41 lOMoARcPSD|15978022 Chương I Giới Thiệu Hiện , phát triển xã hội lĩnh vực công nghệ thơng tin tồn giới phát triển nhanh Công nghệ thông tin ngày phát triển nhu cầu sống ứng dụng công nghệ vào công việc , học tập , sống người phát triển mạnh mẽ đa dạng Nhu cầu quản lý bán hàng người quan tâm nhiều , nhiều công nghệ đưa vào sử dụng hàng ngày hiệu nhờ phần mềm ngày tốt , đại sinh động Để giúp cho người dùng quản lý thông tin nhân viên , khách hàng , sản phẩm dễ dàng lưu trữ thông tin cập nhập thông tin nhân viên , khách hàng , sản phẩm cần phải có hệ thống quản lý bán hàng tối ưu để phục vụ cho người dùng quản lý , kiểm sốt cập nhật thơng tin đầy đủ xác Một số chức quản lý đề tài : - Quản lý nhân viên Quản lý khách hàng Quản lý sản phẩm Quản lý hóa đơn Ứng dụng phát triển môi trường phần mềm sau :      Môi trường phát triển : Visual Studio.NET Giao diện người dùng : Windows Forms App(.NET Framework) Ngơn ngữ lập trình : C# Truy cập liệu : ADO.NET Cơ sở liêu : SQL Server lOMoARcPSD|15978022 Chương II Thiết kế Chương trình Cơ sở liệu a Bảng admin Tên thuộc tính Kiểu nvarchar(50 ) nvarchar(50 ) int nvarchar(50 ) nvarchar(50 ) Username Password Numberphone Email Repassword Ràng buộc Primary Key Mô tả Tên Đăng Nhập Null Mật Khẩu Null Số Điện Thoại Null Email Null Nhập lại mật b Bảng nhanvien Tên thuộc tính MaNV Kiểu nvarchar(50) Ràng buộc Primary Key Mô tả Mã Nhân Viên lOMoARcPSD|15978022 TenNV GTinh NSinh DChi SDT Picture nvarchar(50) bit datetimeb nvarchar(50) nvarchar(50) nvarchar(50) Null Null Null Null Null Null Tên Nhân Viên Giới Tính Ngày Sinh Địa Chỉ Số Điện Thoại Ảnh c Bảng khachhang Tên thuộc tính MaKH TenKH GTinh Dchi SDT Kiểu nvarchar(50) nvarchar(50) bit nvarchar(50) int Ràng buộc Primary Key Null Null Null Null Mô tả Mã Khách Hàng Tên Khách Hàng Giới Tính Địa Chỉ Số Điện Thoại d Bảng sanpham lOMoARcPSD|15978022 Tên thuộc tính MaAlbum TenAlbum MaVer SLuong GiaVao GiaRa Picture Kiểu nvarchar(50) nvarchar(50) nchar(10) int int int nvarchar(50) Ràng buộc Primary Key Null Primary Key Null Null Null Null Mô tả Mã Album Tên Album Mã Ver Số Lượng Giá Nhập Hàng Giá Bán Hàng Hình ảnh album Mơ tả Mã Hóa Đơn Tên Hóa Đơn Mã Nhân Viên Tên Nhân Viên Mã Khách Hàng Tên Khách Hàng Mã Album Tên Album Mã Ver e Bảng hoadon Tên thuộc tính MaHD TenHD MaNV TenNV Kiểu nvarchar(50) nvarchar(50) nvarchar(50) nvarchar(50) Ràng buộc Primary Key Null Primary Key Null MaKH nvarchar(50) Primary Key TenKH MaAlbum TenAlbum MaVer nvarchar(50) nvarchar(50) nvarchar(50) nchar(10) Null Primary Key Null Primary Key lOMoARcPSD|15978022 SLuong ThanhTien NgayDatHang int int datetime Null Null Null NgayNhanHang datetime Null DiaChiNhan GhiChu nvarchar(50) nvarchar(50) Null Null Số Lượng Thành Tiền Ngày Đặt Hàng Ngày Nhận Hàng Địa Chỉ Nhận Ghi Chú Ràng buộc Primary Key Null Mô tả Mã Ver Tên Ver f Bảng LoaiVer Tên thuộc tính MaVer TenVer Kiểu nchar(10) nchar(10) lOMoARcPSD|15978022 Thiết kế giao diện a Giao diện đầu Magic Shop  Các thành phần hình Tên Sign In Sign Up Kiểu Button Button Mô Tả Mở hình đăng nhập Mở hình đăng ký  Câu lệnh cho nút mở Sign In private void btndangnhap_Click(object sender, EventArgs e) { Form1 f1 = new Form1(); this.Hide(); f1.ShowDialog(); } lOMoARcPSD|15978022  Câu lệnh cho nút mở Sign Up private void btndangky_Click(object sender, EventArgs e) { Form2 f2 = new Form2(); this.Hide(); f2.ShowDialog(); } b Giao diện Sign In  Các thành phần hình Tên Kiểu txtuser TextBox txtpass TextBox chkShow CheckBox btnblog Button Mô tả Người dùng nhập tên đăng nhập Người dùng nhập mật đăng nhập Hiển thị mật Đăng nhập điền đủ thông tin lOMoARcPSD|15978022 btnexit Button lbregister LinkLabel Thốt khỏi hình đăng nhập Link mở hình đăng ký  Câu lệnh hiển thị mật private void chkShow_CheckedChanged(object sender, EventArgs e) { if (chkShow.Checked) { txtpass.PasswordChar = (char)0; } else { txtpass.PasswordChar = '*'; } }  Câu lệnh kiểm tra đăng nhập KetNoi.cs public static bool dangNhap(string user, string pw) { SqlDataReader reader = null; bool OK = false; string sql = "select * from admin"; SqlCommand cmd = new SqlCommand(sql, conn); reader = cmd.ExecuteReader(); while (reader.Read()) { if ((user.Trim() == reader["Username"] ToString().Trim()) && pw.Trim() == reader["Password"].ToString().Trim()) OK = true; } return OK; } }  Câu lệnh cho nút Sign In private void btblog_Click(object sender, EventArgs e) 10 lOMoARcPSD|15978022 { int i = data.CurrentCell.RowIndex; if (i >= 0) { DialogResult dr = MessageBox.Show("Bạn có muốn xóa khơng?", "Thơng báo", MessageBoxButtons.OKCancel); if (dr == DialogResult.OK) { string ma = data.Rows[i].Cells[0].Value.ToString(); string sql = string.Format("delete from khachhang where maKH ='{0}'", ma); object[] value = { }; string[] name = { }; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 0); loadData(); KetNoi.dongKetNoi(); } } }   Câu lệnh cho nút Sửa private void btnSua_Click(object sender, EventArgs e) { string sql = string.Format("Update khachhang set MaKH = @MaKH,TenKH =@TenKH , GTinh=@GTinh, DChi =@DChi ,SDT =@SDT where MaKH ='{0}'", txtKH.Text); string[] name = { "@MaKH", "@TenKH", "@GTinh", "@DChi", "@SDT" }; bool gt = rdNam.Checked == true ? true : false; object[] value = { txtKH.Text, txttenKH.Text, gt , txtDChi.Text, txtSDT.Text }; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 5); loadData(); KetNoi.dongKetNoi(); } 25 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022  Câu lệnh cho nút Làm private void btnlmoi_Click(object sender, EventArgs e) { txttenKH.Clear(); txtKH.Clear(); txtDChi.Clear(); txtSDT.Clear(); txttenKH.Focus(); KetNoi.moKetNoi(); loadData(); KetNoi.dongKetNoi(); }  Câu lệnh cho nút Home private void btntrangchu_Click(object sender, EventArgs e) { FrmMain fmain = new FrmMain(); this.Hide(); fmain.ShowDialog(); }  Câu lệnh cho nút Tìm kiếm private void btnTim_Click(object sender, EventArgs e) { string sql = string.Format("select * from khachhangwhere MaKH like N'%{0}%'", txtTim.Text); data.DataSource = KetNoi.getData(sql); }  Câu lệnh hiển thị thông tin nhân viên lên ô textbox private void data_CellClick_1(object sender, DataGridViewCellEventArgs e) { int i = data.CurrentCell.RowIndex; txtKH.Text = data.Rows[i].Cells[0].Value.ToString(); txttenKH.Text = data.Rows[i].Cells[1].Value.ToString(); string gt = data.Rows[i].Cells[2].Value.ToString(); if (gt == "True") { rdNam.Checked = true; 26 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 } else rdNu.Checked = true; txtDChi.Text = data.Rows[i].Cells[3].Value.ToString(); txtSDT.Text = data.Rows[i].Cells[4].Value.ToString(); } g Giao Diện Album  Các thành phần hình Tên txtalb txttenalb cbover txtsoluong txtgiavao txtgiara txtTim btnTim btnmo Kiểu TextBox TextBox ComboBox TextBox TextBox TextBox TextBox Button Button Mô tả Nhập mã album Nhập tên album Chọn ver album Nhập số lượng album Nhập giá mua album Nhập giá bán album Nhập mã album cần tìm Tìm album cần tìm theo mã Chọn ảnh hiển thị 27 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 btnthem btnxoa Button Button btnsua Button btnlmoi btntrangchu Button Button data DataGridView PictureBox1 PictureBox album Thêm album vào csdl Xóa album khỏi csdl Sửa thông tin album csdl Làm ô textbox Quay trang HOME Hiển thị thông tin album Hiển thị ảnh album  Câu lệnh load thông tin lên DataGridView private void Form5_Load(object sender, EventArgs e) { KetNoi.moKetNoi(); loadData(); loadVer(); KetNoi.dongKetNoi(); } public void loadData() { string sql = "select * from sanpham"; data.DataSource = KetNoi.getData(sql); }  Câu lệnh cho nút mở ảnh private void btnmo_Click(object sender, EventArgs e) { OpenFileDialog oFile = new OpenFileDialog(); if (oFile.ShowDialog() == DialogResult.OK) { pictureBox1.Image = Image.FromFile(oFile.FileName); lbanh.Text = Path.GetFileName(oFile.FileName); } }  Câu lệnh cho nút Thêm 28 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 private void btnthem_Click(object sender, EventArgs e) { string sql = "Insert into sanpham values(@MaAlbum,@TenAlbum ,@MaVer,@SLuong,@GiaVao,@GiaRa,@Picture)"; string[] name = { "@MaAlbum", "@TenAlbum", "@MaVer", "@SLuong", "@GiaVao", "@GiaRa", "@Picture" }; object[] value = { txtalb.Text, txttenalb.Text, cbover.SelectedValue,txtsoluong.Text,txtgiavao.Text,txtgiara.Text, lbanh.Text }; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 7); loadData(); KetNoi.dongKetNoi(); }  Câu lệnh cho nút Xóa private void btnxoa_Click(object sender, EventArgs e) { int i = data.CurrentCell.RowIndex; if (i >= 0) { DialogResult dr = MessageBox.Show("Bạn có muốn xóa khơng?", "Thơng báo", MessageBoxButtons.OKCancel); if (dr == DialogResult.OK) { string ma = data.Rows[i].Cells[0].Value.ToString(); string sql = string.Format("delete from sanpham where MaAlbum ='{0}'", ma); object[] value = { }; string[] name = { }; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 0); loadData(); KetNoi.dongKetNoi(); } } } 29 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022  Câu lệnh cho nút Sửa private void btnsua_Click(object sender, EventArgs e) { string sql = string.Format("Update sanpham set MaAlbum = @MaAlbum,tenAlbum =@TenAlbum ,MaVer =@MaVer,SLuong =@SLuong ,GiaVao =@GiaVao, GiaRa = @GiaRa,Picture = @Picture where MaAlbum ='{0}'", txtalb.Text); string[] name = { "@MaAlbum", "@TenAlbum", "@MaVer", "@SLuong", "@GiaVao", "@GiaRa", "@Picture" }; object[] value = { txtalb.Text, txttenalb.Text, cbover.SelectedValue, txtsoluong.Text, txtgiavao.Text, txtgiara.Text, lbanh.Text }; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 7); loadData(); KetNoi.dongKetNoi(); }  Câu lệnh cho nút Làm private void btnlmoi_Click(object sender, EventArgs e) { txttenalb.Clear(); txtalb.Clear(); txtsoluong.Clear(); txtgiavao.Clear(); txtgiara.Clear(); txttenalb.Focus(); KetNoi.moKetNoi(); loadData(); KetNoi.dongKetNoi(); }  Câu lệnh cho nút Home private void btntrangchu_Click(object sender, EventArgs e) { FrmMain main = new FrmMain(); this.Hide(); main.ShowDialog(); 30 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 }  Câu lệnh cho nút Tìm kiếm private void btnTim_Click(object sender, EventArgs e) { string sql = string.Format("select * from sanpham where MaAlbum like N'%{0}%'", txtTim.Text); data.DataSource = KetNoi.getData(sql); }  Câu lệnh hiển thị thông tin nhân viên lên ô textbox private void data_CellClick(object sender, DataGridViewCellEventArgs e) { int i = data.CurrentCell.RowIndex; txtalb.Text = data.Rows[i].Cells[0].Value.ToString(); txttenalb.Text = data.Rows[i].Cells[1].Value.ToString(); cbover.SelectedValue = data.Rows[i].Cells[2].Value.ToString(); txtsoluong.Text = data.Rows[i].Cells[3].Value.ToString(); txtgiavao.Text = data.Rows[i].Cells[4].Value.ToString(); txtgiara.Text = data.Rows[i].Cells[5].Value.ToString(); lbanh.Text = data.Rows[i].Cells[6].Value.ToString(); string pathAnh = ConfigurationManager.AppSettings.Get("duongdananh") + "\\" + lbanh.Text; if (File.Exists(pathAnh)) { pictureBox1.Image = Image.FromFile(pathAnh); } else pictureBox1.Image = null; } 31 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 h Giao Diện Hóa Đơn  Các thành phần hình Tên txtmahd txttenhd txtmanv txttennv txtmakh txttenkh txtmalb Txttenalbum cboVer Kiểu TextBox TextBox TextBox TextBox TextBox TextBox TextBox TextBox ComboBox Txtsoluong TextBox Txttien TextBox Mơ tả Nhập mã hóa đơn Nhập tên hóa đơn Nhập mã nhân viên Nhập tên nhân viên Nhập mã khách hàng Nhập tên khách hàng Nhập mã Album Nhập tên Album Chọn ver album Nhập số lượng album khách hàng mua Nhập số tiền khách hàng phải trả 32 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 dtime1 dtime2 txtdchi Datime Datetime TextBox txtGhiChu TextBox txtTim TextBox btnTim Button data DataGridView btnthem Button btnxoa Button btnsua Button btntrangchu Button Chọn ngày đặt hàng Chọn ngày giao hàng Nhập địa giao hàng Nhập yêu cầu khách hàng Nhập mã hóa đơn cần tìm Tìm hóa đơn theo mã nhập Hiển thị thơng tin hóa đơn Thêm hóa đơn vào csdl Xóa hóa đơn khỏi csld Sửa thơng tin hóa đơn csdl Quay trở hình HOME  Câu lệnh load thơng tin lên DataGridView private void Form6_Load(object sender, EventArgs e) { KetNoi.moKetNoi(); loadData(); loadVer(); KetNoi.dongKetNoi(); } public void loadVer() { string sql = "select * from LoaiVer"; cboVer.DataSource = KetNoi.getData(sql); cboVer.DisplayMember = "TenVer"; cboVer.ValueMember = "MaVer"; } public void loadData() { string sql = "select * from hoadon"; data.DataSource = KetNoi.getData(sql); 33 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 }  Câu lệnh cho nút Thêm private void btnthem_Click(object sender, EventArgs e) { string sql = "Insert into hoadon values(@MaHD, @TenHD, @MaNV, @TenNV, @MaKH ,@TenKH , @MaAlbum, @TenAlbum, @MaVer, @SLuong, @ThanhTien, @NgayDatHang, @NgayNhanHang, @DiaChiNhan, @GhiChu)"; string[] name = { "@MaHD", "@TenHD", "@MaNV", "@TenNV", "@MaKH", "@TenKH", "@MaAlbum", "@TenAlbum" , "@MaVer", "@SLuong", "@ThanhTien", "@NgayDatHang", "@NgayNhanHang", "@DiaChiNhan", "@GhiChu" }; object[] value = {txtmahd.Text, txttenhd.Text, txtmanv.Text, txttennv.Text , txtmakh.Text, txttenkh.Text, txtmalb.Text, txttenalbum.Text, cboVer.SelectedValue, txtsluong.Text, txttien.Text, dtime1.Value,dtime2.Value,txtdchi.Text, txtGhiChu.Text}; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 15); loadData(); KetNoi.dongKetNoi(); }  Câu lệnh cho nút Xóa private void btnxoa_Click(object sender, EventArgs e) { int i = data.CurrentCell.RowIndex; if (i >= 0) { DialogResult dr = MessageBox.Show("Bạn có muốn xóa khơng?", "Thơng báo", MessageBoxButtons.OKCancel); if (dr == DialogResult.OK) { string ma = data.Rows[i].Cells[0].Value.ToString(); string sql = string.Format("delete from hoadon where MaHD ='{0}'", ma); object[] value = { }; 34 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 string[] name = { }; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 0); loadData(); KetNoi.dongKetNoi(); } } }  Câu lệnh cho nút Sửa private void btnsua_Click(object sender, EventArgs e) { string sql = string.Format("Update hoadon set MaHD = @MaHD, TenHD = @TenHD, MaNV = @MaNV, TenNV = @TenNV, MaKH = @MaKH , TenKH = @TenKH, MaAlbum = @MaAlbum, TenAlbum = @TenAlbum, MaVer = @MaVer, SLuong = @SLuong, ThanhTien = @ThanhTien, NgayDatHang = @NgayDatHang, NgayNhanHang = @NgayNhanHang, DiaChiNhan = @DiaChiNhan, GhiChu = @GhiChu where MaHD ='{0}'", txtmahd.Text); string[] name = { "@MaHD", "@TenHD", "@MaNV", "@TenNV", "@MaKH", "@TenKH", "@MaAlbum", "@TenAlbum", "@MaVer", "@SLuong", "@ThanhTien", "@NgayDatHang", "@NgayNhanHang", "@DiaChiNhan", "@GhiChu" }; object[] value = { txtmahd.Text, txttenhd.Text, txtmanv.Text, txttennv.Text, txtmakh.Text, txttenkh.Text, txtmalb.Text, txttenalbum.Text, cboVer.SelectedValue, txtsluong.Text, txttien.Text, dtime1.Value, dtime2.Value, txtdchi.Text, txtGhiChu.Text }; KetNoi.moKetNoi(); KetNoi.updateData(sql, value, name, 15); loadData(); KetNoi.dongKetNoi(); }  Câu lệnh cho nút Làm private void btnlammoi_Click(object sender, EventArgs e) { 35 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 txtmahd.Clear(); txttenhd.Clear(); txtmanv.Clear(); txttennv.Clear(); txtmakh.Clear(); txttenkh.Clear(); txtmalb.Clear(); txttenalbum.Clear(); txtsluong.Clear(); txttien.Clear(); txtdchi.Clear(); txtGhiChu.Clear(); txttenhd.Focus(); KetNoi.moKetNoi(); loadData(); KetNoi.dongKetNoi(); }  Câu lệnh cho nút Home private void btntrangchu_Click(object sender, EventArgs e) { FrmMain fmain = new FrmMain(); this.Hide(); fmain.ShowDialog(); }  Câu lệnh cho nút Tìm kiếm private void btnTim_Click(object sender, EventArgs e) { string sql = string.Format("select * from hoadon where MaHD like N'%{0}%'", txtTim.Text); data.DataSource = KetNoi.getData(sql); }  Câu lệnh hiển thị thông tin nhân viên lên ô textbox private void data_CellClick(object sender, DataGridViewCellEventArgs e) { int i = data.CurrentCell.RowIndex; txtmahd.Text = data.Rows[i].Cells[0].Value.ToString(); 36 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 txttenhd.Text = data.Rows[i].Cells[1].Value.ToString(); txtmanv.Text = data.Rows[i].Cells[2].Value.ToString(); txttennv.Text = data.Rows[i].Cells[3].Value.ToString(); txtmakh.Text = data.Rows[i].Cells[4].Value.ToString(); txttenkh.Text = data.Rows[i].Cells[5].Value.ToString(); txtmalb.Text = data.Rows[i].Cells[6].Value.ToString(); txttenalbum.Text = data.Rows[i].Cells[7].Value.ToString(); cboVer.SelectedValue= data.Rows[i].Cells[8].Value.ToString(); txtsluong.Text = data.Rows[i].Cells[9].Value.ToString(); txttien.Text = data.Rows[i].Cells[10].Value.ToString(); dtime1.Text = data.Rows[i].Cells[11].Value.ToString(); dtime2.Text = data.Rows[i].Cells[12].Value.ToString(); txtdchi.Text = data.Rows[i].Cells[13].Value.ToString(); txtGhiChu.Text = data.Rows[i].Cells[14].Value.ToString(); } i Câu lệnh mặc định o KetNoi.cs static class KetNoi { static SqlConnection conn; static SqlDataAdapter da; static SqlCommand cmd; static SqlDataReader reader; static public void moKetNoi() { conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["ketnoi"].ConnectionStrin g.ToString(); try { conn.Open(); } catch { } 37 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 } static public void dongKetNoi() { conn.Close(); } static public DataTable getData(string sql) { DataTable dt = new DataTable(); da = new SqlDataAdapter(sql, conn); da.Fill(dt); return dt; } static public void updateData(string sql, object[] value, string[] name, int slthamso) { cmd = new SqlCommand(sql, conn); cmd.Parameters.Clear(); for (int i = 0; i < slthamso; i++) cmd.Parameters.AddWithValue(name[i], value[i]); cmd.ExecuteNonQuery(); } public static bool dangNhap(string user, string pw) { SqlDataReader reader = null; bool OK = false; string sql = "select * from admin"; SqlCommand cmd = new SqlCommand(sql, conn); reader = cmd.ExecuteReader(); while (reader.Read()) { if ((user.Trim() == reader["Username"] ToString().Trim()) && pw.Trim() == reader["Password"].ToString().Trim()) OK = true; } return OK; } 38 Downloaded by Quang Quang (khoa31141020806@gmail.com) lOMoARcPSD|15978022 } } o App.config Chương III.Kết Luận Trong khoảng thời gian khơng nhiều, vừa phân tích thiết kế, nghiên cứu tìm hiểu C# , Windows Forms ADO.NET, thực thi chương trình đem cho em nhiều khó khăn Quản lý bán hàng đề tài rộng , am hiểu hệ thống em cịn nhiều hạn chế Trong q trình làm cịn nhiều sai sót hạn chế nên em mong nhận ý kiến đóng góp để tập em hoàn thiện Qua trình làm ứng dụng quản lý bán hàng giúp em hiểu rõ ADO.NET , cách dùng để kết nối ,lấy liệu hiển thị thông tin từ sở liệu Khi hiểu rõ kết nối sở liệu thành cơng , em dễ dàng thực câu truy vấn thêm , xóa , sửa liệu cách hiệu Trong suốt trình học thực hành học phần mơn Lập trình Desktop đem lại cho em nhiều kiến thức vô mẻ kỹ lập trình ngơn ngữ C#, Windows Forms , ADO.NET Em xin chân thành cảm ơn giảng viên môn giúp đỡ giải đáp thắc mắc em suốt trình học thực hành 39 Downloaded by Quang Quang (khoa31141020806@gmail.com)

Ngày đăng: 27/04/2023, 11:22

w