Tầm quantrọng của việc quản lý doanh nghiệp Minilab của nhóm chúng em có rất nhiều cácchức năng như: quản lý doanh mục, đặt hàng, bán hàng, các dịch vụ tiện ích khácnữa tại quán Minilab,
KHẢO SÁT HIỆN TRẠNG VÀ XÁC LẬP DỰ ÁN
Mô tả bài toán
1.1.1 Nhiệm vụ cơ bản của hệ thống
Hệ thống quản lý bán hàng của Minilab cho phép người quản lý dễ dàng kiểm soát lượng lớn dữ liệu khách hàng, sản phẩm ảnh, vật liệu và các hạng mục khác mà không tốn nhiều công sức tìm kiếm.
Cửa hàng có khả năng tra cứu số lượng hàng hóa nhập và bán ra, từ đó hỗ trợ việc tính toán và lập hóa đơn cho khách hàng, cũng như thống kê và báo cáo doanh thu hiệu quả.
- Lấy hàng từ nhà cung cấp bán cho khách hàng
- Nhận tiền thanh toán từ khách hàng
- Thanh toán tiền hàng cho nhà cung cấp Chương trình có thể thống kê lượng khách hàng đến, đi và sử dụng những loại dịch vụ nào.
1.1.2 Quy trình xử lý và quy tắc quản lý
Quầy hàng của cửa hàng sẽ quảng bá sản phẩm, máy ảnh và dịch vụ tráng phim, in ảnh chất lượng để tiếp cận khách hàng Qua đó, khách hàng sẽ nhận biết sản phẩm và khi đến mua hàng, quầy hàng sẽ trao đổi thông tin, từ đó phát sinh đơn hàng được gửi đến bộ phận kế toán tổng hợp.
- Bộ phận kế toán tổng hợp sẽ lập hóa đơn, sau khi thanh toán, bộ phận sẽ chuyển phiếu xuất kho xuống cho bộ phận cung ứng vật tư
Bộ phận cung ứng vật tư sẽ tiến hành kiểm tra tình trạng hàng hóa Nếu còn vật tư, họ sẽ gửi ngay cho khách hàng; nếu không còn, họ sẽ lập kế hoạch nhập hàng từ nhà cung cấp.
Nhà cung cấp tiếp nhận đơn đặt hàng và chuyển vật tư đến cửa hàng Tại đây, quầy hàng sẽ kiểm tra chất lượng vật tư; nếu đạt yêu cầu theo hợp đồng, phiếu nhập kho sẽ được lập Sau đó, phiếu này được chuyển cho bộ phận cung ứng vật tư để tiến hành thanh toán cho nhà cung cấp, với hợp đồng đã được ký kết bởi bộ phận quản lý.
Bộ phận kế toán tổng hợp có nhiệm vụ báo cáo và thống kê doanh thu hàng ngày, đồng thời gửi thông tin về việc nhập hàng lên ban quản lý để đảm bảo việc kiểm soát và quản lý cửa hàng hiệu quả.
Công cụ thực hiện
SQL Server là hệ quản trị cơ sở dữ liệu (DBMS) do Microsoft phát triển, đóng vai trò quan trọng trong nền tảng Microsoft SQL Server, cung cấp dịch vụ quản lý cơ sở dữ liệu cho các ứng dụng và hệ thống thông tin.
Dưới đây là một số điểm quan trọng về SQL Server:
SQL Server utilizes Structured Query Language (SQL) for database interaction, offering commands such as SELECT, INSERT, UPDATE, and DELETE to manipulate data effectively.
SQL Server cung cấp khả năng lưu trữ và quản lý dữ liệu hiệu quả thông qua các bảng, cho phép các bảng này tương tác với nhau thông qua các quan hệ khóa ngoại.
SQL Server đảm bảo an toàn cho dữ liệu thông qua các cơ chế bảo mật hiệu quả, bao gồm quản lý người dùng và vai trò, giúp kiểm soát quyền truy cập vào cơ sở dữ liệu một cách chặt chẽ.
Quản lý hiệu suất trong SQL Server cung cấp các công cụ cần thiết để theo dõi và tối ưu hóa hiệu suất cơ sở dữ liệu Những công cụ này bao gồm lập chỉ mục, tối ưu hóa truy vấn và quản lý tài nguyên, giúp cải thiện hiệu quả hoạt động của hệ thống.
SQL Server cung cấp các phương pháp sao lưu và phục hồi dữ liệu hiệu quả, giúp đảm bảo an toàn và khả năng truy cập thông tin quan trọng.
SQL Server không chỉ là một hệ quản trị cơ sở dữ liệu mà còn cung cấp nhiều dịch vụ tích hợp quan trọng Nó hỗ trợ tích hợp với các ngôn ngữ lập trình khác nhau, cho phép người dùng dễ dàng phát triển ứng dụng Bên cạnh đó, SQL Server cũng tích hợp chặt chẽ với hệ thống Windows, mang lại sự thuận tiện cho người dùng Hơn nữa, nó còn hỗ trợ các dịch vụ web, giúp mở rộng khả năng truy cập và quản lý dữ liệu một cách hiệu quả.
SQL Server có khả năng mở rộng linh hoạt, cho phép đáp ứng nhu cầu ngày càng tăng về lưu trữ và xử lý dữ liệu Các tính năng như cụm dữ liệu và dịch vụ đám mây giúp tối ưu hóa hiệu suất và khả năng mở rộng của hệ thống.
SQL Server là hệ quản trị cơ sở dữ liệu phổ biến, được nhiều doanh nghiệp và tổ chức sử dụng để quản lý và tối ưu hóa cơ sở dữ liệu hiệu quả.
C# (hay C Sharp) là một ngôn ngữ lập trình đa mục đích được phát triển bởi Microsoft. Dưới đây là một giới thiệu ngắn gọn về C#:
C# là một ngôn ngữ lập trình hướng đối tượng (OOP) mạnh mẽ, cho phép lập trình viên phát triển ứng dụng theo mô hình đối tượng, tạo ra và quản lý các đối tượng chứa dữ liệu và phương thức một cách hiệu quả.
- Tính chất an toàn: C# được thiết kế với mục tiêu an toàn, giúp tránh được một số lỗi phổ biến như truy cập không an toàn vào bộ nhớ.
C# tích hợp chặt chẽ với NET Framework, nền tảng phần mềm chủ chốt của Microsoft, cho phép ngôn ngữ này khai thác tối đa các thư viện, công cụ phát triển và khung làm việc mạnh mẽ mà NET cung cấp.
C# đã trở nên đa nền tảng nhờ sự phát triển của NET Core, NET 5 và NET 6, cho phép ngôn ngữ này hoạt động trên nhiều hệ điều hành khác nhau như Windows, Linux và macOS.
- Hiệu suất cao: C# được tối ưu hóa để cung cấp hiệu suất tốt, đặc biệt là trong việc phát triển ứng dụng đòi hỏi tốc độ xử lý cao.
Microsoft thường xuyên cập nhật C# với các phiên bản mới, mang đến tính năng và cải tiến nhằm giữ cho ngôn ngữ luôn hiện đại và đáp ứng nhu cầu phát triển.
C# là một ngôn ngữ lập trình mạnh mẽ và linh hoạt, được ưa chuộng trong cộng đồng phát triển phần mềm, đặc biệt nổi bật trong việc phát triển ứng dụng trên nền tảng Microsoft.
PHÂN TÍCH HỆ THỐNG
Phân tích chức năng của hệ thống
Các bảng dữ liệu quan hệ Từ mô hình quan hệ của hệ thống chuyển thành các bảng dữ liệu quan hệ như sau:
- LOẠI DỊCH VỤ (#Mã Loại, Tên loại)
- DỊCH VỤ (#Mã dịch vụ, Mã loại, Giá dịch vụ)
- HÓA ĐƠN (#Mã hóa đơn, Mã khách hàng, Ngày bán, Tổng tiền)
- CHI TIẾT HÓA ĐƠN (#Mã hóa đơn, Mã vật tư, Số lượng, Mã dịch vụ)
- VẬT TƯ (#Mã vật tư, Tên vật tư, Mã loại, Gía nhập, Gía bán, Số lượng tồn kho)
- LOẠI VẬT TƯ (#Mã loại, Tên loại)
- KHÁCH HÀNG (#Mã khách hàng, Tên khách hàng, Địa chỉ, Số điện thoại)
- ĐƠN ĐẶT HÀNG (#Mã đơn đặt hàng, Nhà cung cấp, Ngày đặt)
- CHI TIẾT ĐƠN ĐẶT HÀNG (#Mã đơn đặt hàng, Mã vật tư, Số lượng)
- NHÀ CUNG CẤP (#Mã nhà cung cấp, Tên nhà cung cấp, Địa chỉ, Số điện thoại)
- PHIẾU CHI (#Mã phiếu chi, Mã đơn đặt hàng, Tổng tiền, Ngày nhập)
Bộ phận cung ứng vật tư sẽ kiểm tra tình trạng hàng tồn kho để quyết định nhập thêm vật tư Nếu loại vật tư nào còn nhiều, sẽ không nhập thêm, trong khi những loại bán nhanh hoặc tồn kho ít sẽ được bổ sung Khi nhà cung cấp đến, nhân viên kho sẽ tiếp nhận và kiểm tra hàng hóa, trong khi nhân viên kế toán thực hiện thanh toán và lưu giữ đơn đặt hàng cùng phiếu chi.
2 Tiếp nhận đơn đặt hang và yêu cầu từ khách hàng và bán vật tư và cung cấp dịch vụ Khi khách hàng trực tiếp đến mua vật tư đặt hàng yêu cầu dịch vụ qua số điện thoại, quầy hàng sẽ lưu thông tin khách hàng, sản phẩm đặt hàng và dịch vụ khách hang yêu cầu vào phiếu mua hàng rồi chuyển cho bộ phận kế toán lập hóa đơn, tiến hành thanh toán đơn hàng cho khách hàng Sau đó nhân viên sẽ chuyển phiếu xuất kho xuống kho hàng cho bộ phận cung ứng vật tư
3 Lưu đơn đặt hàng, phiếu chi và hóa đơn bán hàng
Bộ phận kế toán tổng hợp lưu đơn đặt hàng, phiếu chi và hóa đơn khách hàng trong quá trình mua bán vật tư và cung cấp dịch vụ
4 Tính toán tiền nhập hàng, tiền bán hàng
Cuối mỗi ngày, bộ phận kế toán tổng hợp sẽ tổng hợp hóa đơn bán hàng trong ngày để tính toán tiền bán hàng trong ngày
Cuối mỗi tháng, bộ phận kế toán tổng hợp sẽ tổng hợp hóa đơn bán hàng trong tháng để tính toán tiền bán hàng trong tháng
5 Theo dõi tình trạng của vật tư trong kho
Vào cuối tháng, nhân viên kho sẽ kiểm kê các mặt hàng còn tồn đọng lại trong kho
6 In báo cáo hàng ngày
Cuối ngày, bộ phận kế toán tổng hợp thực hiện báo cáo tình hình bán hàng, bao gồm thông tin về các mặt hàng bán chạy và tổng doanh thu trong ngày, sau đó gửi báo cáo này đến ban giám đốc.
2.1.2 Các chức năng chính của hệ thống
1 Nhập hàng Kiểm tra hàng nhập, nếu hàng đủ tiêu chuẩn sẽ lập phiếu nhập và yêu cầu nhập hàng vào kho sau đó lập hóa đơn nhập hàng, thanh toán tiền hàng
2 Tiếp nhận đơn đặt hàng từ khách hàng và bán hàng
3 Lưu hoá đơn nhập hàng, hoá đơn bán hàng bộ phận kế toán tổng hợp lưu hóa đơn nhập vật tư, bán vật tư trong quá trình mua bán hàng hóa
4 Tính toán tiền bán hàng và cung cấp dịch vụ cho khách hàng Cuối mỗi ngày, bộ phận kế toán sẽ tổng hợp hóa đơn bán hàng trong ngày để tính toán tiền bán hàng trong ngày.
5 Khi khách hàng trực tiếp đến mua hàng hoặc đặt hàng qua số điện thoại, quầy hàng sẽ lưu thông tin khách hàng, sản phẩm đặt hàng và dịch vụ khách hàng yêu cầu vào phiếu mua hàng rồi chuyển cho bộ phận kế toán tổng hợp lập hóa đơn, tiến hành thanh toán đơn hàng cho khách hàng Sau đó quầy hàng sẽ chuyển phiếu xuất kho xuống kho hàng cho bộ phận cung ứng vật tư
Biểu đồ phân cấp chức năng
Hình 2.1 Sơ đồ phân cấp chức năng
2.2.1 Sơ đồ luồng dữ liệu mức ngữ cảnh
Hình2.2 Sơ đồ luồng dữ liệu mức ngữ cảnh
2.2.2 Sơ đồ luồng dữ liệu mức đỉnh
Hình 2.3 Sơ đồ luồng dữ liệu mức đỉnh
2.2.3 Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình”1.0 Quản lý doanh mục” hình 2.4 Sơ đồ luồng dữ liệu mức dưới đỉnh 1.0 Quản lý doanh mục
2.2.4 Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình”2.0 Đặt hàng” hình 2.5 Sơ đồ luồng dữ liệu mức dưới đỉnh 2.0 đặt hàng
2.2.5 Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình”3.0 Bán hàng” hình 2.6 Sơ đồ luồng dữ liệu mức dưới đỉnh 3.0 Bán hàng
2.2.6 Sơ đồ luồng dữ liệu mức dưới đỉnh của tiến trình”4.0 Báo cáo thống kê” hình 2.3 Sơ đồ luồng dữ liệu mức dưới đỉnh 4.0 báo cáo thống kê
2.2.7 Mô hình quan hệ của hệ thống
Hình 2.4 Sơ đồ Mô hình quan hệ của hệ thống
THIẾT KẾ HỆ THỐNG
Thiết kế cơ sở dữ liệu
Từ mô hình quan hệ của hệ thống chuyển thành các bảng dữ liệu quan hệ như sau:
3.1.1 Khởi tạo bảng Vật Tư
Câu truy vấn để tạo bảng
FOREIGN KEY (MaLoaiVatTu ) REFERENCES LoaiVatTu( MaLoaiVatTu )
3.1.2 .Khởi tạo bảng Phiếu Chi
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaPhieuChi Varchar(50) Mã Phiếu Chi
2 MaDonDatHang Varchar(50) Mã Đơn Đặt Hàng
STT Khóa Chính Tên Trường Kiểu Dữ Liệu Diễn Giải
1 X MaVatTu Varchar(50) Mã Vật Tư
2 TenVatTu Varchar(50) Tên Vật Tư
3 MaLoaiVatTu Varchar(50) Mã Loại Vật Tư
6 SoLuongTonKho int Số Lượng Tồn Kho
Số Tên Cột khóa ngoài Quan hệ với bảng
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
FOREIGN KEY (MaDonDatHang) REFERENCES DonDatHang MaDonDatHang( )
3.1.3 Khởi tạo bảng Nhà Cung Cấp
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaNCC Varchar(50) Mã Nhà Cung Cấp
2 TenNCC Varchar(50) Tên Nhà Cung Cấp
4 SoDienThoai Varchar(20) Số Điện Thoại
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
3.1.4 Khởi tạo bảng Loại Vật Tư
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaLoaiVatTu Varchar(50) Mã loại vật tư
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
3.1.5 Khởi tạo bảng Dịch Vụ
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaDichVu Varchar(50) Mã Dịch Vụ
2 TenDichVu Varchar(50) Tên Dịch Vụ
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
FOREIGN KEY (MaLoai REFERENCES) LoaiDichVu(MaLoai)
3.1.6 Khởi tạo bảng Khách Hàng
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
3.1.7 Khởi tạo bảng Hóa Đơn
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaHoaDon Varchar(50) Mã Hóa Đơn
2 MaKhachHang Varchar(50) Mã Khách Hàng
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
FOREIGN KEY (MaKhachHang ) REFERENCES KhachHang( MaKhachHang )
3.1.8 Khởi tạo bảng Đơn Đặt Hàng
Câu truy vấn để tạo bảng
FOREIGN KEY ( MaNCC ) REFERENCES NhaCungCap( MaNCC )
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaDonDatHang Varchar(50) Mã Đơn Hàng
2 MaNCC Varchar(50) Mã Nhà Cung Cấp
Số Tên Cột khóa ngoài Quan hệ với bảng
3.1.9 Khởi tạo bảng Dịch Vụ
Câu truy vấn để tạo bảng
FOREIGN KEY ( MaLoai ) REFERENCES LoaiDichVu( MaLoai )
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaDichVu Varchar(50) Mã Dịch Vụ
2 TenDichVu Varchar(50) Tên Dịch Vụ
4 GiaDichVu float Giá Dịch Vụ
Số Tên Cột khóa ngoài Quan hệ với bảng
3.1.10.Khởi tạo bảng Phiếu Chi
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaPhieuChi Varchar(50) Mã Phiếu Chi
2 MaDonDatHang Varchar(50) Mã Đơn Đặt Hàng
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
FOREIGN KEY (MaDonDatHang ) REFERENCES DonDatHang( MaDonDatHang )
3.1.11.Khởi tạo bảng Chi Tiết Hóa Đơn
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaHoaDon Varchar(50) Mã Hóa Đơn
2 X MaVatTu Varchar(50) Mã Vật Tư
3 X MaDichVu Varchar(50) Mã Dịch Vụ
Số Tên Cột khóa ngoài Quan hệ với bảng
Câu truy vấn để tạo bảng
PRIMARY KEY (MaHoaDon, MaVatTu MaDichVu, ),
FOREIGN KEY (MaHoaDon)REFERENCES HoaDon(MaHoaDon), FOREIGN KEY (MaVatTu)REFERENCES VatTu(MaVatTu),
FOREIGN KEY (MaDichVu)REFERENCES DichVu(MaDichVu)
3.1.12.Khởi tạo bảng Chi Tiết Đơn Đặt Hàng
Câu truy vấn để tạo bảng
STT Khóa chính Tên trường Kiểu dữ liệu Diễn giải
1 X MaDonDatHang Varchar(50) Mã Đơn Đặt Hàng
2 X MaVatTu Varchar(50) Mã Vật Tư
FOREIGN KEY (MaDonDatHang) REFERENCES DonDatHang MaDonDatHang( ),
FOREIGN KEY (MaVatTu)REFERENCES VatTu(MaVatTu)
3.2.1 Một số câu lệnh truy vấn
Hinh 3.1 Bảng dữ liệu NhaCungCap
3.2.2 Cập Nhập – Thêm Thông Tin Khách Hàng Để cập nhập thông tin giữa SQL và C# ta sử dụng Stored Procedure:
Stored procedures là các chương trình hoặc tập hợp các câu lệnh SQL được lưu trữ trong cơ sở dữ liệu.
Các dữ liệu được lưu trữ an toàn và có thể được truy xuất và thực thi từ xa thông qua các lệnh gọi phù hợp từ các ứng dụng hoặc truy vấn SQL khác.
Stored procedures là các đoạn mã chứa logic xử lý phức tạp, thực hiện nhiệm vụ như thêm, sửa đổi hoặc xóa dữ liệu trong cơ sở dữ liệu Chúng giúp tối ưu hóa hiệu suất và nâng cao bảo mật cho hệ thống cơ sở dữ liệu.
Khởi tạo một Stored procedures cho “Thêm Nhà Cung Cấp”
Khởi tạo một Stored procedures cho “Sửa Nhà Cung Cấp”
Khởi tạo một Stored procedures cho “Xóa Nhà Cung Cấp”
Khởi tạo một Stored procedures cho “Tìm Kiếm Nhà Cung Cấp”
Khởi tạo một Stored procedures cho “ Thêm Thông Tin Khách Hàng”
Khởi tạo một Stored procedures cho “Sửa Khách Hàng”
Khởi tạo một Stored procedures cho “Xóa Thông Tin Khách Hàng”
Khởi tạo một Stored procedures cho “Tìm Kiếm Khách Hàng"
3.2.3 Sự kiện và cấu trúc của các nút chức năng (thêm, sửa, xóa, tìm kiếm)
Những procedures trên có nhiệm vụ kết nối và lưu trữ cập nhập liên tục khi ta thao tác, làm việc trên chương trình C#
3.2.3.1 Tạo kết nối từ C# sang SQL
SqlCommand cmd; //thực hiện câu lệnh
DataTable dt; //đổ dữ liệu vào Để Load dữ liệu giữa SQL và WinForm C# ta cần khởi tạo hàm private LoadData private void LoadData()
// Tạo câu lệnh SQL để lấy dữ liệu từ bảng NCC string query = "SELECT * FROM NhaCungCap";
// Tạo đối tượng SqlCommand cmd = new SqlCommand(query, con);
// Tạo đối tượng SqlDataAdapter để đổ dữ liệu vào DataTable adt = new SqlDataAdapter(cmd); dt = new DataTable();
// Đổ dữ liệu vào DataTable adt.Fill(dt);
// Đặt DataTable làm nguồn dữ liệu cho DataGridView dataGridViewNCC.DataSource = dt; con.Close();
3.2.3.2 Cập Nhập Nhà Cung Cấp hình 3.2 Bảng Cập Nhập Nhà Cung Cấp
A Sự kiện nút Button “Thêm” private void ThemNCC_Click(object sender, EventArgs e)
// Tạo kết nối và command using (SqlConnection conn = new
// Giả sử tên stored procedure là SP_ThemNhaCungCap
// Thêm tham số cmd.Parameters.Add("@MaNCC", SqlDbType.NVarChar).Value = txtMaNCC.Text; cmd.Parameters.Add("@TenNCC", SqlDbType.NVarChar).Value = txtTenNCC.Text; cmd.Parameters.Add("@DiaChi", SqlDbType.NVarChar).Value
= txtDiaChiNCC.Text; cmd.Parameters.Add("@SoDienThoai", SqlDbType.NVarChar).Value = txtSdtNCC.Text;
// Mở kết nối và thực hiện stored procedure conn.Open(); cmd.ExecuteNonQuery();
Ta kích hoạt được nút “Thêm”
B Sự kiện kích hoạt nút sửa của bảng Cập Nhập Nhà Cung Cấp private void SuaNCC_Click( object sender, EventArgs e)
( if string IsNullOrEmpty(txtMaNCC.Text) || txtMaNCC.Text == "Thêm mới không cần ID" ) {
MessageBox.Show( "Vui lòng điền ID nhà cung cấp." "Thông báo"); , txtMaNCC.Focus(); txtMaNCC.SelectAll();
{ using (SqlConnection conn = new SqlConnection(connectString)) using (SqlCommand cmd = new SqlCommand())
To update supplier information in a SQL database, establish a connection and create a command with the stored procedure "SP_SuaNhaCungCap" Add parameters for the supplier ID, name, address, and phone number using the respective text fields This ensures that the supplier's details are accurately modified in the system.
// Thực hiện kiểm tra thông tin trước khi mở kết nối
// Mở kết nối và thực hiện stored procedure conn.Open(); cmd.ExecuteNonQuery(); conn.Close();
MessageBox.Show( "Sửa nhà cung cấp thành công." "Thông báo" , , MessageBoxButtons.OK, MessageBoxIcon.Information);
Ta kích hoạt được nút Sửa:
MessageBox.Show( "Vui lòng điền mã nhà cung cấp cần xóa." , "Thông báo" , MessageBoxButtons.OK, MessageBoxIcon.Information); txtMaNCC.Focus();
{ using (SqlConnection conn = new SqlConnection(connectString)) using (SqlCommand cmd = new SqlCommand())
{ cmd.Connection = conn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "SP_XoaNhaCungCap";
// Thêm tham số cho stored procedure cmd.Parameters.Add( "@MaNCC" , SqlDbType.NVarChar).Value = txtMaNCC.Text; conn.Open(); cmd.ExecuteNonQuery(); conn.Close();
MessageBox.Show( "Xóa nhà cung cấp thành công." , "Thông báo" , MessageBoxButtons.OK, MessageBoxIcon.Information);
Khi ta nhập tên Mã Nhà Cung Cấp và click vào nút “Xóa”
D Sự kiện kích hoạt nút Tìm Kiếm của bảng private void TimKiemNCC_Click( object sender, EventArgs e)
{ using (SqlConnection conn = new SqlConnection(connectString)) using (SqlCommand cmd = new SqlCommand())
{ cmd.Connection = conn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "SP_TimKiemMaNCC";
// Truyền giá trị tìm kiếm tổng quát từ người dùng cmd.Parameters.Add( "@MaNCC" , SqlDbType.NVarChar).Value = txtMaNCC.Text; conn.Open();
SqlDataAdapter adt = new SqlDataAdapter(cmd);
DataTable dt = new DataTable(); adt.Fill(dt); dataGridViewNCC.DataSource = dt;
THIẾT KẾ GIAO DIỆN
Đăng nhập chương trình
Hình 4.1 Giao diện from Đăng Nhập
Mục tiêu: Đăng nhập thành công vào hệ thống với các nhóm quyền hạn khác nhau
- Người sử dụng: Quản lý và Nhân viên.
- Các bảng dữ liệu sử dụng: Dangnhap.
Hướng dẫn sử dụng: Để đăng nhập, người dùng cần nhập tên tài khoản và mật khẩu, sau đó nhấn "Đăng nhập" Hệ thống sẽ khởi tạo quyền hạn và thực hiện truy vấn đến bảng Dangnhap để kiểm tra thông tin đăng nhập và xác định nhóm quyền Tài khoản sẽ được phân loại vào hai nhóm quyền chính.
Quản trị viên có toàn quyền điều hành, bao gồm quản lý nhân viên, hàng hóa và danh mục hàng hóa Họ cũng có khả năng thực hiện báo cáo thống kê, quản lý hóa đơn, xem thông tin tài khoản và thay đổi mật khẩu.
- Kết quả: Đăng nhập thành công và có thể sử dụng hệ thống.
4.1.1 Sự kiện và chức năng nút Botton Đăng Nhập
4.1.2 Sự kiện chức năng nút thoát
4.1.3 Sự kiện đăng nhập thành công
4.1.4 Sự kiện đăng nhập thất bại khi sai tài khoản hoặc mật khẩu
Quản lý Nhà cung cấp
Mục tiêu: Hiển thị dữ liệu từ cơ sở dữ liệu lên lưới DataGridView và các thao tác cơ bản.
- Người sử dụng: Người quản lý và Nhân viên
- Các bảng dữ liệu sử dụng: Nhacungcap
- Hướng dẫn sử dụng: Người dùng click vào từng Button thực hiện các thao tác cơ bản như: thêm, xóa, sửa, lưu dữ liệu
- Kết quả: Các thao tác người dùng thực hiện được cập nhật vào cơ sở dữ liệu
Quản lý Khách hàng
Mục tiêu: Hiển thị dữ liệu từ cơ sở dữ liệu lên lưới DataGridView và các thao tác cơ bản.
- Người sử dụng: Người quản lý và Nhân viên
- Các bảng dữ liệu sử dụng: Khachhang
- Hướng dẫn sử dụng: Người dùng click vào từng Button thực hiện các thao tác cơ bản như: thêm, xóa, sửa, lưu dữ liệu.
- Kết quả: Các thao tác người dùng thực hiện được cập nhật vào cơ sở dữ liệu.
Sau khoảng thời gian thực hiện đồ án, với sự nỗ lực của bản thân và sự hướng dẫn của cô
Trần Thị Lan Anh , đồ án đã hoàn thành và đáp ứng được các yêu cầu đặt ra.
Dựa trên nghiên cứu lý thuyết về lập trình giao diện với ngôn ngữ C# và hệ quản trị cơ sở dữ liệu SQL Server, tôi đã phát triển thành công Ứng dụng Quản lý bán hàng cho cửa hàng Minilab Ứng dụng này được thiết kế với giao diện thân thiện, dễ sử dụng, cung cấp các chức năng hữu ích cho cả Người quản lý và Nhân viên, bao gồm quản lý tài khoản, khách hàng, nhà cung cấp, hàng hoá, danh mục hàng hoá, hoá đơn và báo cáo thống kê.
- Kiến thức, kinh nghiệm lập trình còn nhiều hạn chế, nên các phần chức năng chưa được tối ưu
- Chưa nghiên cứu về thiết kế giao diện báo cáo thống kê bằng dạng biểu đồ Định hướng phát triển
Chúng tôi sẽ tiếp tục nghiên cứu thiết kế giao diện báo cáo thống kê dưới dạng biểu đồ, nhằm nâng cao tính trực quan và dễ hiểu cho người dùng Đồng thời, chúng tôi cũng chú trọng cải thiện giao diện của ứng dụng để trở nên thân thiện và dễ sử dụng hơn.
- Xây dựng thêm các chức năng: đăng ký tài khoản, tương tác giữa khách hàng và cửa hàng, Tích hợp thiết bị đọc mã vạch cho chương trình.