Tin tức hóa trong quản lý đã giúp cho các nhà quản lý điều hành công việc một cách khoa học, chính xác và hiệu quả.Việc tìm kiếm phần mềm quản lý doanh nghiệp, cửa hàng,... Bởi hầu hết c
Khảo sát
Mô tả bài toán
1.1.1 Giới thiệu cửa hàng xe máy Vĩnh Phát
Cửa hàng Vĩnh Phát là địa chỉ kinh doanh, mua bán xe gắn máy uy tín lâu đời tại thủ đô Hà Nội bạn không nên bỏ qua Vĩnh Phát rất được lòng khách hàng nhờ chế độ bảo hành và chăm sóc sau mua cực kỳ chuyên nghiệp và tận tâm, đem đến trải nghiệm mua sắm hài lòng cho người dân thủ đô Địa chỉ: 69 Lĩnh Nam, Hoàng Mai, Hà Nội.
Là một cửa hàng buôn bán xe máy lâu đời, cho nên cửa hàng có cơ cấu tổ chức vô cùng chặt chẽ với các phòng bàn được phân chia nhiệm vụ rõ rệt, cùng với đó là đội ngũ nhân viên tư vấn chuyên nghiệp được đào tạo bài bản từ a-z mang đến trải nghiệm tích cực cho khách hàng khi mua sản phẩm của cửa hàng Vĩnh Phát.
1.1.2 Hoạt động kinh doanh của Vĩnh Phát Để hệ thống quản lý bán hàng cho cửa hàng bán xe máy Vĩnh Phát được vận hành trơn chu và hiệu quả thì chúng ta cần xác định các quy trình xử lý chính trong quá trình kinh doanh của cửa hàng Dưới đây là một phân tích cơ bản về các quy trình quan trọng:
+ Tiếp nhận và nhập hàng: Quá trình tiếp nhận xe máy từ các nhà sản xuất hoặc nhà cung cấp khác nhau và nhập chúng vào kho của cửa hàng.
+ Cập nhật thông tin sản phẩm: Bao gồm việc cập nhật thông tin về , màu sắc, giá cả, số lượng tồn kho và các thông tin khác liên quan đến sản phẩm.
+ Tạo đơn hàng: Nhân viên cửa hàng tạo đơn hàng cho khách hàng dựa trên yêu cầu của họ.
+ Thực hiện giao dịch bán hàng: Quá trình bán hàng, bao gồm việc xác nhận đơn hàng, tính toán giá cả và thanh toán từ phía khách hàng.
+ Thêm và cập nhật thông tin khách hàng: Bao gồm việc thêm mới khách hàng vào hệ thống và cập nhật thông tin cá nhân, lịch sử mua hàng và các thông tin khác
+ Xử lý đơn hàng từ khách hàng: Theo dõi và xử lý các đơn hàng từ khách hàng, bao gồm cả việc xác nhận đơn hàng
+ Bảo dưỡng và sửa chữa: Ghi chép và theo dõi thông tin về các dịch vụ bảo dưỡng và sửa chữa xe máy cho khách hàng.
- Báo cáo và thống kê :
+ Tạo báo cáo: Tạo các báo cáo về doanh số bán hàng, lợi nhuận, tồn kho và các chỉ số quan trọng khác để quản lý và phân tích hiệu suất kinh doanh của cửa hàng.
- Đơn đăng kí mua hàng :
Xác định yêu cầu
Cửa hàng buôn bán xe máy Vĩnh Phát có nhu cầu xây dựng một phần mềm quản lý bán hàng nhằm cải thiên quy trình quản lý và hiệu suất bán hàng
Hệ thống xây dựng cần đảm bảo các chức năng sau :
Quản lý sản phẩm: Cập nhật thông tin về các loại xe máy, bao gồm mô hình, giá bán và hãng sản xuất , …
Quản lý bán hàng: Cập nhật thông tin về các giao dịch bán hàng, bao gồm thông tin khách hàng, sản phẩm được mua, giá cả, và số lượng, …
Quản lý khách hàng: Cập nhật thông tin cá nhân của khách hàng…
Quản lý dịch vụ: Cập nhật thông tin về dịch vụ như bảo dưỡng, sửa chữa xe,
Báo cáo và thống kê: Tạo báo cáo doanh thu, tồn kho theo tháng.
Phân tích và thiết kế hệ thống
Phân tích hệ thống
2.1.1 Phân tích hệ thống về xử lý
- Sơ đồ phân rã chức năng:
- Sơ đồ mức ngữ cảnh :
- Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình “1.0 Quản lý đơn hàng”
- Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình “2.0 Quản lý sản phẩm”
- Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình “ 3.0 Quản lý khách hàng”
-Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình “ 4.0 Quản lý dịch vụ”
- Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình “ 5.0 Thống kê ” :
2.1.2 Phân tích hệ thống dữ liệu
- Thực thể : khách hàng, sản phẩm.
- Thực thể thông tin: dịch vụ, phiếu sử dụng dịch vụ, hóa đơn, chi tiết hóa đơn.
Sơ đồ liên kết thực thể :
Mô hình thực thể liên kết :
Thiết kế hệ thống
Tên trường Kiểu dữ liệu Khóa chính Diễn giải Ghi chú
MaKH NvarChar(50) X Mã khách hàng
TenKH Nvarchar(50) Tên khách hàng
SDT Nvarchar(50) Số điện thoại
Tên trường Kiểu dữ liệu Khóa chính Diễn giải Ghi chú
MaHD Nvarchar(50) X Mã hóa đơn
TenNV Nvarchar(50) Tên nhân viên
MaKH Nvarchar(50) Mã khách hàng Khóa Ngoại
TenKH Nvarchar(50) Tên khách hàng
SDT Nvarchar(50) Số điện thoại
MaSP Nvarchar(50) Mã sản phẩm Khóa Ngoại
TenSP Nvarchar(50) Tên sản phẩm
HangSX Nvarchar(50) Hãng sản xuất
Tên trường Kiểu dữ liệu Khóa chính Diễn giải Ghi chú
MaSP Nvarhar(8) X Mã sản phẩm
TenSP Nvarchar(50) Tên sản phẩm
HangSX Nvarchar(50) Hãng sản xuất
Tên trường Kiểu dữ liệu Khóa chính Diễn giải Ghi chú
MaDV Nvarchar(50) X Mã dịch vụ
TenDV Nvarchar(50) Tên dịch vụ
GiaDV Nvarchar(50) Giá dịch vụ
Tên trường Kiểu dữ liệu Khóa chính Diễn giải Ghi chú
MaKH Nvarchar(50) Mã khách hàng Khóa ngoại
TenDV Nvarchar(50) Tên dịch vụ
GiaDV Nvarchar(50) Giá dịch vụ
MaDV Nvarchar(50) Mã dịch vụ Khóa ngoại
- Form Cập nhật hóa đơn :
- Form Quản lý sản phẩm
- Form Tra cứu sản phẩm :
- Form Quản lý phiếu dịch vụ :
- Form Tra cứu dịch vụ :
- Form Quản lý dịch vụ :
Xây dựng chương trình
Tạo cơ sở dữ liệu
Cài đặt chương trình
- Hàm kết nối SQL : public void moKetNoi()
String sql = @"Data Source=Dynnis;Initial
Catalog=QuanLyBanXeMay;Integrated Security=True"; conn = new SqlConnection(sql); conn.Open();
Hàm đóng kết nối sql: public void dongKetNoi()
- Hàm lấy dữ liệu từ bảng khách hàng :
{ moKetNoi(); string sql = "select * from KhachHang";
SqlCommand cmd = new SqlCommand(sql, conn);
DataTable bang = new DataTable(); bang.Load(dr); dongKetNoi(); return bang;
- Hàm thêm khách hàng : public void themKhachHang(string ma, string ten, DateTime ngay, string gt, string dc, string dt)
{ moKetNoi(); string sql = "insert into KhachHang (MaKhachHang, TenKhachHang, NgaySinh, GioiTinh, DiaChi, DienThoai) VALUES (@MaKhachHang, @TenKhachHang,
SqlCommand cmd = new SqlCommand(sql,conn); cmd.Parameters.Add("@MaKhachHang", SqlDbType.VarChar).Value = ma; cmd.Parameters.Add("@TenKhachHang", SqlDbType.NVarChar).Value = ten; cmd.Parameters.Add("@NgaySinh", SqlDbType.DateTime).Value = ngay; cmd.Parameters.Add("@GioiTinh", SqlDbType.NVarChar).Value = gt; cmd.Parameters.Add("@DiaChi", SqlDbType.NVarChar).Value = dc; cmd.Parameters.Add("@DienThoai", SqlDbType.VarChar).Value = dt; cmd.ExecuteNonQuery(); dongKetNoi();
- Hàm xóa khách hàng : public void XoaKH(string makhachhang)
{ moKetNoi(); string sql = "delete KhachHang where MaKhachHang = @MaKhachHang"; SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.AddWithValue("MaKhachHang", makhachhang); cmd.ExecuteNonQuery(); dongKetNoi();
- Hàm sửa khách hàng : public void capNhatKH(string ma, string ten, DateTime ngay, string gt, string dc, string dt)
{ moKetNoi(); string sql = "update KhachHang set TenKhachHang = @TenKhachHang,
NgaySinh = @NgaySinh, GioiTinh = @GioiTinh, DiaChi = @DiaChi, DienThoai @DienThoai where MaKhachHang = @MaKhachHang";
SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add("@MaKhachHang", SqlDbType.VarChar).Value = ma; cmd.Parameters.Add("@TenKhachHang", SqlDbType.NVarChar).Value = ten; cmd.Parameters.Add("@NgaySinh", SqlDbType.DateTime).Value = ngay; cmd.Parameters.Add("@GioiTinh", SqlDbType.NVarChar).Value = gt; cmd.Parameters.Add("@DiaChi", SqlDbType.NVarChar).Value = dc; cmd.Parameters.Add("@DienThoai", SqlDbType.VarChar).Value = dt; cmd.ExecuteNonQuery();
- Hàm thêm sản phẩm : public void themSanPham(string ma, string ten, string hangsanxuat, string giaban, string soluong)
{ moKetNoi(); string sql = "insert into SanPham (MaSanPham, TenSanPham, HangSanXuat, GiaBan, SoLuong) VALUES (@MaSanPham, @TenSanPham, @HangSanXuat,
SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add("@MaSanPham", SqlDbType.VarChar).Value = ma; cmd.Parameters.Add("@TenSanPham", SqlDbType.NVarChar).Value = ten; cmd.Parameters.Add("@HangSanXuat", SqlDbType.NVarChar).Value hangsanxuat; cmd.Parameters.Add("@GiaBan", SqlDbType.NVarChar).Value = giaban; cmd.Parameters.Add("@SoLuong", SqlDbType.NVarChar).Value = soluong; cmd.ExecuteNonQuery(); dongKetNoi();
- Hàm xóa sản phẩm : public void XoaSP(string masanpham)
{ moKetNoi(); string sql = "delete SanPham where MaSanPham = @MaSanPham";
SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.AddWithValue("MaSanPham", masanpham); cmd.ExecuteNonQuery(); dongKetNoi();
- Hàm sửa sản phẩm : public void capNhatSP(string ma, string ten, string hangsanxuat, string giaban, string soluong)
{ moKetNoi(); string sql = "update SanPham set TenSanPham = @TenSanPham, HangSanXuat
= @HangSanXuat, GiaBan = @GiaBan, SoLuong = @SoLuong where MaSanPham
SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add("@MaSanPham", SqlDbType.VarChar).Value = ma; cmd.Parameters.Add("@TenSanPham", SqlDbType.NVarChar).Value = ten; cmd.Parameters.Add("@HangSanXuat", SqlDbType.NVarChar).Value hangsanxuat; cmd.Parameters.Add("@GiaBan", SqlDbType.NVarChar).Value = giaban; cmd.Parameters.Add("@SoLuong", SqlDbType.NVarChar).Value = soluong; cmd.ExecuteNonQuery(); dongKetNoi();
- Hàm đưa dữ liệu vào bảng khách hàng trong Form quản lý khách hàng: void duaDLVaoBang()
- Hàm click vào bảng khách hàng để lấy dữ liệu : private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
DataGridViewRow row = new DataGridViewRow(); row = dgvKhachHang.Rows[i]; txtMaKH.Text = row.Cells[0].Value.ToString(); txtHoTen.Text = row.Cells[1].Value.ToString(); dtpNgaySinh.Text = row.Cells[2].Value.ToString(); string gt = row.Cells[3].Value.ToString(); if (gt == "Nam") rdoNam.Checked = true; else rdoNu.Checked = false; txtDiaChi.Text = row.Cells[4].Value.ToString(); txtDienThoai.Text = row.Cells[5].Value.ToString();
- Hàm nút thêm khách hàng trong Form quản lý khách hàng : private void Them_Click(object sender, EventArgs e)
MessageBox.Show("Chưa nhập đủ thông tin!"); return ;
} string ma = txtMaKH.Text.Trim(); string ten = txtHoTen.Text;
DateTime ngay = DateTime.Parse(dtpNgaySinh.Text); string gt; if (rdoNam.Checked) gt = "Nam"; else gt = "Nữ"; string dc = txtDiaChi.Text; string dt = txtDienThoai.Text; if(ketNoi.tonTaiKH(ma))
MessageBox.Show("Mã khách hàng đã tồn tại!"); return;
} ketNoi.themKhachHang(ma, ten, ngay, gt, dc, dt); duaDLVaoBang(); clearTexts();
- Hàm nút sửa khách hàng trong Form quản lý khách hàng : private void btnSua_Click(object sender, EventArgs e)
MessageBox.Show("Chưa chọn Khách Hàng cần sửa thông tin"); return;
} if(!ketNoi.tonTaiKH(txtMaKH.Text.Trim()))
MessageBox.Show("Mã khách hàng không tồn tại"); return;
31 btnThem.Enabled = false; btnXoa.Enabled = false; btnSua.Enabled = false; txtMaKH.Enabled = false;
3.2.2 Các giao diện thực thi
- Thêm hóa đơn có mã 006 :
- Sửa hóa đơn khách hàng có mã 003 :
- Xóa hóa đơn có mã 006 :
- Tm kiếm theo tên khách hàng :
- Thêm sản phẩm có mã 009 :
- Sửa sản phẩm có mã 009 :
- Xóa sản phẩm có mã 009 :
- Tìm kiếm theo tên sản phẩm :
- Thêm khách hàng có mã 006 :
- Sửa khách hàng có mã 006 :
- Xóa khách hàng có mã 006 :
- Tìm kiếm theo tên khách hàng :
- Thêm phiếu dịch vụ có mã 006 :
- Sửa phiếu dịch vụ có mã 006 :
- Xóa phiếu dịch vụ có mã 007 :
- Sửa dịch vụ có mã 008 :
- Xóa dịch vụ có mã 008 :
- Tìm kiếm theo tên dịch vụ:
Trong đồ án này nhóm em đã nghiên cứu xây dựng hệ thống chương trình cho bài toán xây dựng chương trình quản lý bán hàng xe máy Vĩnh Phát này Đồ án đã thực hiện các nhiệm vụ sau: Mô tả bài toán và tiến hành mô hình hóa nhiệm vụ bài toán chuẩn bị cho các bước sau Phân tích bài toán theo hướng cấu trúc bao gồm phân tích dữ liệu và phân tích xử lý Thiết kế hệ thống chương trình trình bao gồm thiết kế kiến trúc, thiết kế dữ liệu, thiết kế giao diện và các mô đun xử lý Cài đặt hệ thống và thử nghiệm với một số dữ liệu
Trong thời gian nghiên cứu, xây dựng chương trình, nhóm em đã hết sức cố gắng làm việc cùng với sự giúp đỡ tận tình của cô Trần Thị Yến - giảng viên hướng dẫn Chương trình đã đạt được một số kết quả nhất định Tuy nhiên với thời gian có hạn, trình độ và kinh nghiệm còn hạn chế, chương trình vẫn còn rất nhiều thiếu sót Rất mong các thầy cô giáo và các bạn tận tình giúp đỡ để chương trình ngày càng được hoàn thiện hơn Nếu được phát triển tiếp đề tài này, nhóm em sẽ tiếp tục hoàn thiện các chức năng của chương trình để có thể đáp ứng được với nhu cầu của các doanh nghiệp, khách hàng.