Sinh viên thực hiện: Nguyễn Ngọc Duy Liêm Mã SV: 2180609407 Lớp:21DTHF1Tp.HCM, ngày … tháng … năm … LỜI MỞ ĐẦU Trong thời đại công nghệ phát triển như hiện nay, việc sử dụng các phần mềm
MÔ TẢ YÊU CẦU
Giới thiệu
Quán nước giải khát của chú Triệu có bán nhiều loại đồ uống như : cafe, nước ngọt, trà sữa và nhiều loại đồ uống khác Trước đây khi quán còn chưa phát triển và đông khách chú Triệu bán hàng và quản lý bằng sổ sách, khi khách tới quán gọi nước các nhân viên phải tự ghi nhớ món đồ uống và thứ tự của khách.Nay quán của chú Triệu buông bán được khách hơn nhưng khi chú kiểm tra thì doanh thu có sai số rất lớn so với số tiền thực nhận Nguyên do khi quán đã đông khách hơn những biện pháp kinh doanh thủ công không còn hiệu quả, điều đó dẫn đến việc ghi chép bằng sổ sách không còn chính xác nữa Qua đó chúTriệu có nhu cầu cần phải tin học hóa công việc kinh doanh của mình, đưa những thông tin bán hàng lên một hệ thống phần mềm bán hàng giúp cho công việc kinh doanh và quản lý cửa hàng của chú Triệu được thuận lợi hơn
Những vấn đề đặc ra và giải pháp
Do quản lý chủ yếu bằng sổ sách đôi lúc số liệu sẽ không chính xác
Đưa tất cả lên database để qua đó có một thông số chính xác hơn
Nhân viên khi trước nhận order bằng giấy viết tay nên dễ nhầm
Thứ tự phục vụ khách được các bạn
Nhận order bằng phần mềm đảm bảo độ chính xác
Khi sử dụng phần mềm mỗi khách sẽ
nhân viên tự ghi nhớ, khi khách đông các bạn dễ bị rối điều đó dẫn đến phục vụ không nhầm hoặc chậm trễ
có một số bàn riêng và số bàn sẽ được sắp theo thứ tự giúp các bạn nhân viên dễ dàng thực hiện giảm rủi ro sai sót
Bill của khách hàng được viết bằng tay đôi lúc sảy ra sai sót và không nhất quán với thực tế dẫn đến việc thâm hụt
Bill được lưu vào cơ sở dữ liệu và xuất ra mỗi khi khách hàng thanh toán xong giúp cho việc thống kê doanh thu 6 nguyên vật liệu đơn giản hơn
Trước đây chỉ có một phương thức thanh toán là tiền mặt Ngoài thanh toàn bằng tiền mặc phần mềm còn hổ trợ thêm các phương thức khác như: momo, vnpay, chuyển khoảng
Yều cầu chức năng của phần mềm
Phần mềm cần có những chất năng phục vụ cho việc kinh doanh, giúp mọi công tác từ khâu bán hàng đến khâu quản lý được thuận lợi hơn.
Phần mềm cần có giao diện đơn giản dễ sử dụng để chú Triệu và các bạn nhân viên tiện thao tác một cách trơn tru.
Phần mềm có khả năng lưu thông tin của khách như: tên khách hàng, số bàn, loại đồ uống, đơn giá
Phần mềm giúp sắp xêp thứ tự theo quy tắc FCFS (First Come First Served) đơn nào tới trước thì thực hiện trước, đơn được đánh số thứ tự cho các nhân viên dễ theo dõi
Phần mềm có phân chia tài khoản cho nhân viên và quản lý
Phần có thể đảm bảo quản lý két tiền của quán và có thể đưa ra nhiều lựa chọn thanh toán khác như momo, vnpay và chuyển khoản ngân hàng
Đối tượng và phạm vi của ứng dụng
Phần mềm quản lý bán kinh doanh quán nước Triệu được áp dụng hỗ trợ cho ông Triệu (chủ quán) và quản lý của quán thực hiện việc buôn bán và quản lý kinh doanh của quán
Phần mềm được thực hiện và áp dụng tại các quán nước ông Triệu Người dùng thực hiện các công tác nhập xuất trong hệ thống và dựa trên dữ liệu và thuật toán trong ứng dụng đưa ra những dữ liệu chính xác phục vụ cho việc kinh doanh và quản lý
CƠ SỞ LÝ THUYẾT
Khái niệm của ứng dụng
Ứng dụng quản lý là công cụ hỗ trợ đắc lực cho nhân viên và khách hàng trong các thao tác nghiệp vụ Dù hoạt động trên nền tảng nào, ứng dụng quản lý đều cần truy xuất và cập nhật dữ liệu lên cơ sở dữ liệu Điều này cũng đúng với ứng dụng quản lý trên nền tảng hệ điều hành Windows. Ứng dụng là một thực thể hai mặt, với mặt nhìn ra người dùng là front-end, và mặt nhìn vào dữ liệu là back-end.
Front-end là giao diện người dùng, chịu trách nhiệm hiển thị thông tin và tương tác với người dùng Nó là những gì người dùng nhìn thấy và tương tác với.
Back-end là thành phần xử lý dữ liệu, chịu trách nhiệm lưu trữ và xử lý dữ liệu của ứng dụng Nó là những gì xảy ra phía sau hậu trường để cung cấp thông tin và phản hồi cho front-end.
C# là ngôn ngữ lập trình được sử dụng để viết các ứng dụng Windows C# giúp người lập trình hiện thực hóa ý tưởng của mình theo yêu cầu của khách hàng Sau khi biên dịch, mã nguồn chương trình có thể chạy trên các máy tính khác nhau miễn là chúng sử dụng hệ điều hành Windows.
Về C#
C# Ngôn ngữ lập trình hiện đại, đa năng, hướng đối tượng
C# là một ngôn ngữ lập trình hiện đại, đa năng, hướng đối tượng được phát triển bởi Microsoft.
C# được thiết kế cho Common Language Infrastructure (CLI), một nền tảng lập trình cho phép sử dụng các ngôn ngữ lập trình high-level trên các nền tảng và cấu trúc máy tính khác nhau C# là một ngôn ngữ lập trình hướng đối tượng, có nhiều điểm tương đồng với Java.
C# có cú pháp giống với C và C++, nhưng loại bỏ các tính năng phức tạp và nguy hiểm như con trỏ.
- Gần gũi với các ngôn ngữ lập trình thông dụng: C# có cú pháp giống với C và C++, dễ học và dễ tiếp cận cho các lập trình viên đã biết các ngôn ngữ này.
- Cải tiến các khuyết điểm của C/C++: C# loại bỏ các tính năng phức tạp và nguy hiểm như con trỏ, hiệu ứng phụ, giúp mã nguồn an toàn và dễ bảo trì hơn.
- Dễ dàng tiếp cận và phát triển: C# có hệ sinh thái phát triển phong phú, với nhiều công cụ và thư viện hỗ trợ.
- Được sự chống lưng của NET Framework: NET Framework cung cấp cho C# một nền tảng vững chắc để phát triển ứng dụng, bao gồm các thư viện và API được sử dụng rộng rãi.
- Chỉ chạy trên nền Windows: C# phụ thuộc vào NET Framework, hiện chỉ khả dụng trên nền Windows.
- Thao tác đối với phần cứng yếu hơn so với ngôn ngữ khác: C# được thiết kế cho mục đích tổng quát, không tập trung vào hiệu năng đối với phần cứng.
- C# là một ngôn ngữ lập trình hiện đại, đa năng, có nhiều ưu điểm về tính dễ học, dễ tiếp cận, hiệu quả và an toàn C# là một lựa chọn tốt cho các lập trình viên muốn phát triển ứng dụng trên nền Windows hoặc các nền tảng hỗ trợ.NET Framework.
về JavaScript
JavaScript - Ngôn ngữ lập trình kịch bản "bất tử" trong thế giới
JavaScript là một ngôn ngữ lập trình kịch bản dựa trên đối tượng, được sử dụng rộng rãi trong các ứng dụng web
JavaScript được hỗ trợ hầu hết trên tất cả các trình duyệt, bao gồm Firefox, Chrome, Opera, và cả các trình duyệt trên thiết bị di động.
JavaScript đóng vai trò quan trọng trong việc tạo ra các trang web tương tác và hấp dẫn người dùng Nó có thể được sử dụng để thực hiện các tác vụ như:
Thêm hiệu ứng động cho trang web
Kiểm tra đầu vào của người dùng
Giao tiếp với cơ sở dữ liệu
Xây dựng các ứng dụng web phức tạp Ưu điểm của JavaScript
JavaScript có nhiều ưu điểm nổi bật, bao gồm:
Dễ học:•JavaScript có cú pháp đơn giản và dễ hiểu, khiến nó trở thành một ngôn ngữ lập trình lý tưởng cho người mới bắt đầu.
Dễ phát hiện lỗi:•Các lỗi trong JavaScript thường dễ phát hiện và sửa chữa hơn các lỗi trong các ngôn ngữ lập trình khác.
Tương thích với nhiều trình duyệt:•JavaScript hoạt động trên hầu hết các trình duyệt phổ biến, bao gồm cả các trình duyệt trên thiết bị di động.
Nhanh và nhẹ:•JavaScript là một ngôn ngữ lập trình nhẹ, có thể giúp cải thiện hiệu suất của trang web.
JavaScript cũng có một số nhược điểm, bao gồm:
Dễ bị khai thác:•JavaScript có thể bị hacker lợi dụng để thực thi mã độc hoặc xâm nhập vào máy tính của người dùng.
Không được hỗ trợ đầy đủ trên tất cả các trình duyệt:•Một số tính năng của JavaScript có thể không được hỗ trợ đầy đủ trên tất cả các trình duyệt.
Kích thước mã lớn:•JavaScript có thể dẫn đến kích thước mã lớn, khiến trang web tải chậm hơn.
Có thể được triển khai khác nhau tùy từng thiết bị:•JavaScript có thể được triển khai khác nhau tùy từng thiết bị, dẫn đến việc không đồng nhất giữa các thiết bị.
JavaScript là một ngôn ngữ lập trình quan trọng trong thế giới web Nó có nhiều ưu điểm nổi bật, giúp tạo ra các trang web tương tác và hấp dẫn người dùng Tuy nhiên, JavaScript cũng có một số nhược điểm, cần được lưu ý khi sử dụng.
về Visual Studio
Microsoft Visual Studio là một môi trường phát triển tích hợp (IDE) toàn diện, được sử dụng để phát triển các ứng dụng máy tính, trang web và dịch vụ web cho nền tảng Windows. Ưu điểm:
Hỗ trợ nhiều ngôn ngữ lập trình:•Visual Studio hỗ trợ nhiều ngôn ngữ lập trình phổ biến, bao gồm C/C++, C#, F#, Visual Basic, HTML, CSS, JavaScript và Python Điều này cho phép các lập trình viên lựa chọn ngôn ngữ phù hợp nhất với nhu cầu của họ.
Công cụ gỡ lỗi mạnh mẽ:•Visual Studio cung cấp một bộ công cụ gỡ lỗi mạnh mẽ, giúp các lập trình viên tìm và khắc phục lỗi trong mã của họ Các công cụ gỡ lỗi này bao gồm điểm ngắt, xem biến và hỗ trợ gỡ lỗi từng câu lệnh.Giao diện người dùng thân thiện:•Visual Studio có giao diện đầu và chuyên gia Các thành phần của IDE được sắp xếp hợp lý và các lệnh được đặt tên rõ ràng.
Hỗ trợ kéo thả:•Visual Studio hỗ trợ kéo thả để xây dựng ứng dụng một cách nhanh chóng và hiệu quả Điều này giúp các lập trình viên tạo các ứng dụng phức tạp mà không cần viết mã.
Được sử dụng rộng rãi:•Visual Studio là IDE phổ biến nhất trên thế giới Điều này có nghĩa là có nhiều tài nguyên và hỗ trợ có sẵn cho người dùng Visual Studio.
Dung lượng cài đặt lớn:•Visual Studio có dung lượng cài đặt lớn, khoảng 10 GB Điều này có thể là một hạn chế đối với các máy tính có dung lượng lưu trữ hạn chế.
Yêu cầu máy tính cấu hình cao:•Visual Studio yêu cầu máy tính cấu hình cao để chạy mượt mà Điều này có thể là một hạn chế đối với các máy tính cũ hoặc có cấu hình thấp.
Ngốn nhiều RAM khi chạy:•Visual Studio có thể ngốn nhiều RAM khi chạy, đặc biệt là đối với các dự án lớn Điều này có thể ảnh hưởng đến hiệu suất của máy tính.
Gỡ lỗi lỗi phức tạp:•Gỡ lỗi lỗi trong Visual Studio có thể phức tạp, đặc biệt là đối với các lỗi khó phát hiện.
Microsoft Visual Studio là một IDE mạnh mẽ và linh hoạt, phù hợp cho các lập trình viên ở mọi cấp độ kỹ năng Nó cung cấp một loạt các tính năng và công cụ giúp các lập trình viên phát triển các ứng dụng máy tính, trang web và dịch vụ web chất lượng cao.
Mô hình “Class diagram”
Biểu đồ “Flow chart” khi hệ thống nhận order
Hnh 2 Biểu đồ “Flow chart” khi hệ thống nhận order.
Sơ đồ “Use case” khi hệ thống nhận order
Hnh 3 Sơ đồ “Use case” khi hệ thống nhận order
CƠ SỞ DỮ LIỆU SQL SERVER VÀ PHẦN MỀM
Mô hình Class diagram SQL Server
Hnh 4 Mô hnh Class diagram SQL Server
3.1.1 Table thông tin tài khoản
- Table dùng để lưu thông tin tài khoản của người dùng hệ thống bao gồm quản lý và nhân viên
Hnh 5 Table thông tin tài khoản
Hnh 6 Table thông tin tài khoản
3.1.2 Table phân quyền truy cập của tài khoản
- Table phân quyền: Phân quyền truy cập cho người dùng phân chia giữa quản lý (admin) và nhân viên
Hnh 7 Table phân quyền tài khoản
3.1.3 Table phân loại đồ uống và đồ ăn
- Table phân loại đồ uống: phân loại các loại đồ uống và đồ ăn của quán ra nhiều loại khác nhau
Hnh 8 Table phân loại đồ uống và đồ ăn
3.1.4 Table từng loại đồ ăn đồ uống cụ thể
- Table cho biết đồ ăn và đồ uống cụ thể tên giá và thuộc loại nào
Hnh 9 Table loại đồ ăn đồ uống cụ thể 3.1.5 Table thông tin bàn
- Table thông tin bàn : số bàn, các loại đồ ăn đồ uống và tình trạng đã thanh toán hoặc chưa
3.1.6 Table thông tin đơn hàng
Hnh 11 Table thông tin đơn hàng
3.1.7 Table chi tiết đơn hàng
- Table chi tiết đơn hàng: cho biết chi tiết các thông tin của đơn hàng
Hnh 12 Table chi tiết đơn hàng
Các thành phần hệ thống của phần mềm
Thành phần giao diện: giao diện được hệ thống chia ra hai loại cho hai đối tượng sử dụng lần lượt là quản lý (admin) và nhân viên, giao diện bán hàng của nhân viên sẽ tương tự như giao diện của quản lý nhưng sẽ bị hạn chế một số chứng năng
Thành phần chức năng: đăng nhập, đăng xuất, thay đổi mật khấu,thêm xóa sửa đơn hàng, nhập đơn hàng, thanh toán (thuộc quyền truy cập của nhân viên) Quyền truy cập chức năng của quản lý sẽ tương tự như các quyền của nhân viên nhưng sẽ có thêm một số chức năng khác như, xem và chỉnh sửa được mục doanh thu, thêm xóa sửa được các món có trong quán, thêm xóa sửa và quản lý các tài khoản truy cập phần mềm
Thành phần xử lý: xử lý kết nối với CSDL, các thao tác thêm/xoá/sửa.
Các giao diện
3.3.2 Giao diện quên thông tin tài khoản
Hnh 14 Giao diện quên thông tin tài khoản
3.3.3 Giao diện cập nhật lại mật khẩu
Hnh 15 Giao diện chập nhật lại mất khẩu
3.3.4 Giao diện chính của quản lý bán hàng
Hnh 16 Giao diện chính của quản lý bán hàng
3.3.5 Giao diện danh mục doanh thu
3.3.6 Giao diện chi tiết hóa đơn
Hnh 18 Giao diện chi tiết hóa đơn
3.3.7 Giao diện danh mục tài khoản
Hnh 19 Giao diện danh mục tài khoản
Mô tả chi tiết các chức năng phần mềm
+ Đăng nhập(Tài khoản chính là admin từ đó có thể tạo thêm vô số tài khoản nhân viên):
Hnh 20 Mô tả chi tiết
Luôn hiện thông báo khi muốn đóng cửa số trong tất cả các trường hợp(VD: ấn “x”, bấm “thoát”, ấn tổ hợp “alt+f4”,v.v).
- Quản lý (Sau khi đăng nhập thành công sẽ hiện ra cửa sổ QuanLy)
Hnh 21 Mô tả chi tiết gồm các chức năng thành phần như:
+Hiện thị danh sách các bàn hiện tại (Trống hoặc đã có khách).
Hnh 22 Mô tả chi tiết
+ Chọn món: Có thể thêm các loại đồ ăn hoặc thức uống có trong danh sách menu của quán theo yêu cầu của khách.
+ Chỉnh số lượng món: Có thể thay đổi số lượng tùy vào nhu cầu của khách mong muốn.
+ Thêm món : Sau khi chọn món nhân viên sẽ ấn nút thêm món để phần mềm sẽ lưu dữ liệu vào bàn đó
+ Thanh toán: Khi khách hàng đã ăn uống xong và có nhu cầu thanh toán thì nhân viên sẽ chọn bàn đó và bấm nút thanh toán Nếu có giảm giá thì có thể chỉnh sửa được tùy theo quán.
+ Xem menu: Nhân viên có thể xem qua menu nếu cần thiết bằng cách nhấn vào chữ “Menu” ở thanh trên cùng cửa sổ.
- Chức năng Admin ( Dành cho admin nằm phía trên cùng cửa số QuanLy cạnh chữ “Menu” ) gồm:
+ Thống kê doanh thu: sau khi kết ca vào cuối ngày hoặc cuối
Hnh 23 Mô tả chi tiết
+ Nếu như “double click” hoặc bấm vào nút “Xem” vào một hàng thì sẽ xuất ra bảng “chi tiết hóa đơn”.
Hnh 24 Mô tả chi tiết
_Thêm món: Khi quán có món mới thì có thể vào mục “Thức ăn” để thêm vào bằng cách bấm nút “Thêm” ngay cạnh bên phải sau đó phần mềm sẽ hiện lên một cửa sổ để quán có thể nhập các thông tin như tên món, giá và danh mục cho món ăn như “Đồ ăn” hoặc “Nước” và sau khi điền đẩy đủ thì bấm nút “Thêm” ngay phía dưới ”, khi ấn thêm món thành công sẽ có một cửa sổ thông báo hiện lên báo rằng bạn đã thành công hoặc nếu đổi ý thì có thể bấm nút “Thoát” để xóa cửa sổ “ Thêm món ăn”
Hnh 25 Mô tả chi tiết
_Xóa món: Còn nếu quán có món ăn không kinh doanh nữa thì
_Sửa món: Nếu trong quá trình kinh doanh có món ăn cần sửa đổi về giá hay tên thì có thể ấn vào nút sửa Ngay sau khi bấm giao diện sẽ hiện thêm một nút nữa tên là “Cập nhật” Việc của bạn sau đó là điền thông tin cần sửa ( Lưu ý điền đúng ID của món bạn cần sửa) và rồi bấm nút “Cập nhật” và phần mềm sẽ hiện lên cửa sổ thông báo “Sửa món thành công” Vậy là hoàn tất việc sửa món.
_Xem món: Nút này sẽ giúp bạn cập nhật lại danh sách sau khi thêm món.
_Tìm món: Nếu có nhu cầu tìm món ăn xem có trong menu hay không thì có thể nhập tên món ăn vào ô “Tìm tên món ăn” và rồi ấn nút “ Tìm” Ngay lập tức phần mềm sẽ hiện lên thông tin món ăn cần tìm.
+ Loại đồ ăn ( Ngoài nước và đồ ăn trong quá trình kinh doanh nếu quán có mở rộng thêm một số loại danh mục đồ ăn khác như tráng miệng, đồ uống có cồn,v.v thì có thể vào mục “Loại đồ ăn” để thao tác):
_Thêm loại món: Nếu muốn thêm loại thì chúng ta hãy bấm vào nút “Thêm” và phần mềm sẽ hiện thêm chỗ để chúng ta nhập tên loại đồ ăn cần thiết.
Sau khi điền xong thì bấm “Lưu” thì một cửa sổ thông báo “Thêm loại đồ ăn thành công” là hoàn tất việc thêm loại.
_Xóa loại món: Nếu muốn xóa thì chúng ta bấm vào tên loại cần xóa trong danh sách tên loại ngay bên dưới sau đó bấm “Xóa” thì ngay lập tức sẽ có cửa sổ thông báo “Xóa loại đồ ăn thành công” là hoàn tất việc xóa loại.
_Sửa loại món: Nếu trong quá trình kinh doanh có sai sót về tên loại đồ ăn thì chúng ta có thể sửa bằng cách bấm vào “Sửa” thì sau đó giao diện sẽ có thêm nút cập nhật ngay bên cạnh phải, việc của chúng ta là chỉ cần điền tên chính xác vào ô tên loại ( Lưu ý điền đúng ID của tên loại cần sửa trong danh sách) và rồi bấm nút “Cập nhật” thì sẽ có cửa sổ thông báo hiện lên “Sửa loại đồ ăn thành công” là hoàn tất việc sửa loại.
_Thêm bàn: Nếu muốn thêm bàn thì chúng ta bấm vào nút
“Thêm” là phần mềm sẽ tự động hiện “Thêm bàn ăn” nhập số bàn và nhấn “Đồng ý” thì bàn sẽ được thêm vào danh sách
_Xóa bàn: Nếu muốn xóa bớt bàn hiện tại thì chỉ cần bấm mã bàn bạn cần xóa trong danh sách bàn ngay phía dưới và bấm vào nút
“Xóa” thì cửa sổ thông báo sẽ hiện lên “ Xóa bàn thành công” là hoàn tất xóa bàn.
+ Tài khoản(quản lý tài khoản nv):
_Thêm tài khoản: Chúng ta có thể tạo thêm các tài khoản danh cho các nhân viên hoặc người liên quan của quán bằng cách bấm nút “Thêm” sẽ xuất hiện form “AddAccount”
Hnh 26 Mô tả chi tiết
Sau khi điền đầy đủ chúng ta bấm nút “Xác nhận” Sẽ có cửa sổ thông báo “Thêm tài khoản thành công” là hoàn tất thêm tài khoản.
Nếu bấm nút “Làm lại” sẽ làm trống lại thông tin.
Nếu bấm nút “Hủy” sẽ thoát khỏi form “AddAccount”.
_Xóa tài khoản: Nếu muốn xóa tài khoản khi không cần nữa thì chúng ta bấm vào tên tài khoản cần xóa trong danh sách tài khoản ngay phía dưới tiếp đến là bấm nút “Xóa” , sau khi bấm sẽ có cửa số thông báo hiện lên “Bạn có chắc muốn xóa?”
Nếu ấn “Yes” sẽ hiện thông báo “Xóa tài khoản thành công” hoặc nếu sai thao tác sẽ có cửa sổ thông báo hiện lên “Có lỗi khi sửa tài khoản”, chúng ta cần kiểm tra làm lại.
_Sửa tài khoản: Nếu muốn sửa thông tin tài khoản thì chúng ta bấm vào nút “Sửa” sẽ hiện ra form “UpdateAccount”.
Hnh 27 Mô tả chi tiết
Trong form “UpdataAccount” có nút “Đồng ý” và nút “Hủy”
Việc của chúng ta là điền đầy đủ tên tài khoản hiện tại muốn sửa, sau đó điền thông tin cần sửa như tên hiển thị hoặc mật khẩu Điền xong chúng ta bấm nút “Đồng ý” sẽ có cửa sổ thông báo “Cập nhật tài
36 khoản thành công” là hoàn tất sửa tài khoản Nếu như nhập thiếu thông tin thì sẽ xuất ra thông báo “Vui lòng không để trống thông tin !!”
Nếu bấm nút “Hủy” sẽ thoát khỏi form “UpdateAccount”.