TÓM TẮT Quán karaoke hiện nay đang là nơi thu hút được đông đảo khách hàng nên việcquản lý phải cần khá nhiều người, chia thành nhiều khâu mới có thể quản lý quánkaraoke như: Quản lý nhâ
Trang 1TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
VIỆN KỸ THUẬT CÔNG NGHỆ
BÁO CÁO MÔN HỌC
PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
XÂY DỰNG PHẦN MỀM QUẢN
LÝ QUÁN KARAOKE
SVTH: Nhóm 8:
Nguyễn Anh Vũ - 2124802010864 Nguyễn Hữu Hạnh - 2124802010695 Nguyễn Hồng Phong - 2124802010773 Nguyễn Minh Hiệu - 2124802010710 GVHD:
Trần Văn Hữu
Bình Dương, tháng 07 năm 2023
Trang 2NHẬN XÉT Nhận xét của giáo viên hướng dẫn
GIÁO VIÊN HƯỚNG DẪN
Trần Văn Hữu
Trang 3LỜI CẢM ƠN
Báo tiểu luận này được hoàn thành không những là nỗ lực của nhóm em màcòn nhờ sự giúp đỡ tận tình của các thầy cô, bạn bè trường Đại Học Thủ Dầu Mộttrong suốt thời gian qua Đặc biệt là thầy Trần Văn Hữu - người đã trực tiếp hướngdẫn, góp ý cho em rất nhiều trong đề tài này
Xin trân trọng cảm ơn: Các thầy cô của trường Đại Học Thủ Dầu Một ThầyTrần Văn Hữu, là giảng viên trường Đại Học Thủ Dàu Một đã hướng dẫn em xuyênsuốt quá trình thực hiện đề tài
Bài tiểu luận đề tài “Xây dựng phần mềm quản lý quán karaoke” tuy đã hoànthành nhưng chắc hQn còn có những thiếu sót, rất mong nhận được ý kiến đóng góp
và giúp đỡ của thầy cô và bạn bè để người thực hiện đề tài có thể hoàn thành tốt nhấtbài tiểu luận này
Rất mong nhận được những đóng góp từ quý thầy cô, bạn bè và những người quan tâm để tiểu luận có thể hoàn thiện hơn Xin chân thành cám ơn
Trang 4MỤC LỤC CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI
1.1 Lý do chọn đề tài 7
1.2 Mục tiêu của đề tài 7
1.2.1 Mục tiêu tổng quát 7
1.2.2 Mục tiêu cụ thể 7
1.3 Nội dung thực hiện 7
1.4 Phương pháp tiếp cận 8
CHƯƠNG 2.GIỚI THIỆU CÔNG NGHỆ 2.1 Giới thiệu Visual studio 9
2.1.1 Khái niệm 9
2.1.2 Ưu điểm 9
2.1.3 Nhược điểm 10
2.2 Giới thiệu SQL Server 10
2.3 Giới thiệu về ngôn ngữ 12
2.3.1 Giới thiệu về ngôn ngữ C# 12
2.3.2 Giới thiệu về ngôn ngữ SQL 15
CHƯƠNG 3.PHÂN TÍCH THIẾT KẾ HỆ THỐNG 3.1 Phát biểu yêu cầu 16
3.2 Yêu cầu chức năng 18
3.2.1 Danh sách các yêu cầu 18
3.2.2 Biểu đồ usecase 19
3.2.3 Đặc tả usecase sử dụng 21
3.4 Biểu đồ tuân tự 39
3.4.1 Biểu đồ tuần tự ca sử dụng Đăng nhập 39
3.4.2 Biểu đồ tuần tự ca sử dụng Quản lý hoá đơn nhập 40
3.4.3 Biểu đồ tuần tự ca sử dụng quản lý Nhân viên 41
3.4.4 Biểu đồ tuần tự ca sử dụng Quản lý khách hàng 46
3.4.5 Biểu đồ tuần tự ca sử dụng Quản lý phòng 49
3.4.6 Biểu đồ tuần tự ca sử dụng khuyến mãi 52
3.5 Thiết kế cơ sở dữ liệu 54
3.5.1 Lược đồ CSDL 54
3.5.2 Mô tả chi tiết từng bảng trong CSDL 55
3.5 Triển khai các chức năng nghiệp vụ 60
3.1.1 Giao diện đăng nhập 60
3.1.2 Giao diện trang chủ 61
3.1.3 Giao diện đặt phòng 62
3.1.4 Giao diện xuất hóa đơn 63
3.1.5 Giao diện món ăn 64
3.1.6 Giao diện phòng 65
3.1.7 Giao diện khách hàng 66
3.1.8 Giao diện khuyến mãi 67
3.1.9 Giao diện nhân viên 68
KẾT LUẬN
Trang 5MỤC LỤC BẢNG
Bảng 2.2 1 Danh sách yêu cầu 20
Bảng 2.2 2 Bảng danh sách Actor 22
Bảng 2.2 3 Bảng danh sách UseCase 22
Bảng 2.2 4 Bảng UseCase Đăng nhập 23
Bảng 2.2 5 Bảng UseCase Tìm kiếm 25
Bảng 2.2 6 Bảng UseCase Nhập kho 26
Bảng 2.2 7 Bảng UseCase Chọn phòng 27
Bảng 2.2 8 Bảng UseCase Chọn món 28
Bảng 2.2 9 Bảng UseCase Khuyến mãi 29
Bảng 2.2 10 Bảng UseCase Khách hàng 31
Bảng 2.2 11 Bảng UseCase Nhân viên 32
Bảng 2.3 1 Danh sách các thuộc tính lớp staff 34
Bảng 2.3 2 Danh sách các phương thức lớp staff 34
Bảng 2.3 3 Danh sách các thuộc tính lớp sales 34
Bảng 2.3 4 Danh sách các phương thức lớp sales 35
Bảng 2.3 5 Danh sách các thuộc tính lớp room 35
Bảng 2.3 6 Danh sách yêu cầu 35
Bảng 2.3 7 Danh sách các thuộc tính lớp receipt 36
Bảng 2.3 8 Danh sách các phương thức lớp receipt 36
Bảng 2.3 9 Danh sách các thuộc tính lớp order 37
Bảng 2.3 10 Danh sách các phương thức lớp order 37
Bảng 2.3 11 Danh sách các thuộc tính lớp items 37
Bảng 2.3 12 Danh sách các phương thức lớp items 38
Bảng 2.3 13 Danh sách các thuộc tính lớp importitems 38
Bảng 2.3 14 Danh sách các phương thức lớp importitems 39
Bảng 2.3 15 Danh sách các thuộc tính lớp customer 39
Bảng 2.3 16 Danh sách các phương thức lớp customer 39
Bảng 2.4 1 Bảng dữ liệu customer 55
Bảng 2.4 2 Bảng dữ liệu importitems 56
Bảng 2.4 3 Bảng dữ liệu items 56
Trang 6Bảng 2.4 4 Bảng dữ liệu order 56
Bảng 2.4 5 Bảng dữ liệu receipt 57
Bảng 2.4 6 Bảng dữ liệu room 58
Bảng 2.4 7 Bảng dữ liệu sales 58
Bảng 2.4 8 Bảng dữ liệu staff 58
Trang 7MỤC LỤC HÌNH ẢNH
Hình 1: Logo Visual Studio 13
Hình 2: Logo SQL 14
Hình 3: Logo C# 17
Hình 2.2 1 Sơ đồ UseCase chính 24
Hình 2.2 2 Hình sơ đồ UseCase Đăng nhập 25
Hình 2.2 3 Hình sơ đồ UseCase Tìm kiếm 27
Hình 2.2 4 Hình sơ đồ UseCase Nhập kho 28
Hình 2.2 5 Hình sơ đồ UseCase Chọn phòng 29
Hình 2.2 6 Hình sơ đồ UseCase Chọn món 30
Hình 2.2 7 Hình sơ đồ UseCase Khuyến mãi 31
Hình 2.2 8 Hình sơ đồ UseCase Khách hàng 33
Hình 2.2 9 Hình sơ đồ UseCase Nhân viên 34
Hình 2.3 1 Biểu đồ lớp thực thể 35
Hình 3 1 Biểu đồ tuần tự tác vụ Đăng nhập 42
Hình 3 2 Biểu đồ tuần tự thêm hoá đơn nhập 42
Hình 3 4 Biểu đồ tuần tự xoá hoá đơn nhập 44
Hình 3 5 Biểu đồ tuần tự thêm nhân viên 45
Hình 3 6 Biểu đồ tuần tự sửa nhân viên 46
Hình 3 7 Biểu đồ tuần tự xoá nhân viên 47
Hình 3 8 Biểu đồ tuần tự tìm kiếm nhân viên theo tên 48
Hình 3 9 Biểu đồ tuần tự thêm khách hàng 48
Hình 3 10 Biểu đồ tuần tự sửa khách hàng 49
Hình 3 11 Biểu đồ tuần tự xoá khách hàng 50
Hình 3 12 Biểu đồ tuần tự tìm khách hàng theo tên 50
Hình 3 13 Biểu đồ tuần tự thêm thông tin phòng 51
Hình 3 14 Biểu đồ tuần tự sửa thông tin phòng 52
Hình 3 15 Biểu đồ tuần tự xoá thông tin phòng 53
Hình 3 16 Biểu đồ tuần tự tìm phòng theo tên 53
Hình 3 17 Biểu đồ tuần tự thêm khuyến mãi 54
Hình 3 18 Biểu đồ tuần tự sửa khuyến mãi 55
Hình 3 19 Biểu đồ tuần tự xoá khuyến mãi 56
Trang 8Hình 3 20 Biểu đồ tuần tự tìm khuyến mãi theo 56
Hình 2.4 1 Sơ đồ database Karaoke 57
Hình 3 21 Giao diện đăng nhập 62
Hình 3 22 Giao diện trang chủ 63
Hình 3 23 Giao diện đặt phòng 64
Hình 3 24 Giao diện xuất hóa đơn 65
Hình 3 25 Giao diện món ăn 66
Hình 3 26 Giao diện phòng 67
Hình 3 27 Giao diện khách hàng 68
Hình 3 28 Giao diện khuyến mãi 69
Hình 3 29 Giao diện nhân viên 70
Trang 10TÓM TẮT
Quán karaoke hiện nay đang là nơi thu hút được đông đảo khách hàng nên việcquản lý phải cần khá nhiều người, chia thành nhiều khâu mới có thể quản lý quánkaraoke như: Quản lý nhân viên (nhân viên làm việc theo ca hay làm cả ngày), quản lýhóa đơn thanh toán, … Các công việc này đòi hỏi nhiều thời gian và công sức, mà sựchính xác và hiệu quả không cao, nếu làm bằng thủ công không mang tính tự động.Một số nghiệp vụ như tra cứu, thống kê và hiệu chỉnh thông tin khá vất vả Ngoài racòn có một số khó khăn về việc lưu trữ khá đồ sộ, dễ bị thất lạc, tốn kém,….Tại các quán karaoke hiện nay với lượng khách ngày càng tăng, để phục vụkhách được tốt hơn, chính xác hơn và nhanh chóng hơn thì cửa hàng đã tin học hóacác khâu quản lý
Vì vậy để giải quyết những vấn đề đó, chúng ta cần sử dụng một phần mềm quản
lý cho các quán karaoke Việc áp dụng công nghệ sẽ giúp việc quản lý trở nên tối ưu
và dễ dàng hơn, tiết kiệm được rất nhiều thời gian và chi phí Sử dụng ứng dụng cũng
tự động hoá những tác vụ đơn giản giúp nâng cao chất lượng dịch vụ từ đó có thểnhanh chóng cập nhật thông tin cũng như đáp ứng nhu cầu của khác hàng giúp tăngcường sự hài lòng và tín nhiệm của khách hàng
Trang 11CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI
1.1 Lý do chọn đề tài
Cuộc sống càng hiện đại thì nhu cầu vui chơi giải trí của con người cũng ngàycàng tăng cao Và Karaoke là một hình thức thư giản, xả stress được nhiều khách hànglựa chọn Từ sự gia tăng nhu cầu của khách hàng dẫn đến qui mô của các quán kinhdoanh Karaoke ngày càng mở rộng
Từ trước đến nay đa số các hộ kinh doanh dịch vụ Karaoke đều quản lý theo kiểu ghichép truyền thống, tuy nhiên khi mà mỗi quán hằng ngày phải vận hành hàng chụcphòng hát và tiếp nhận hàng trăm lượt khách hàng thì việc quản lý trở nên khó khănhơn nhiều
Chính vì lý do đó mà việc cần tin học hóa nghiệp vụ quản lý quán Karaoke là thực sựcần thiết Cụ thể là cần xây dựng một ứng dụng quản lý quán Karaoke để các hộ kinhdoanh dễ dàng quản lý hoạt động của quán Giúp cho các quy trình nhận phòng, hát
hò, thanh toán trở nên đơn giản và tiện lợi hơn
1.2.Mục tiêu của đề tài
+Hê thống phải quản lý được hóa đơn
+Hệ thống phải quản lý được thông tin các phòng (phòng nào trống, phòng nào cóngười)
+Hệ thống phải quản lý được số lượng khách hàng
+Ứng dụng phải đáp ứng yêu cầu cập nhập, sửa, xóa thông tin
1.3.Nội dung thực hiện
- Trình bày lý do lựa chọn đề tài và mục tiêu hướng đến và nội dung cơ bản của
đề tài
-Trình bày quy trình xây dựng phần mềm, một số cấu trúc dữ liệu được sửdụng, nguyên lý lập trình và phương thức xử lý dữ liệu
Trang 12-Mô tả các chức năng của chương trình, trình tự thiết kế và giao diện của chươngtrình.
-Xây dựng cơ sở dữ liệu, cài đặt các chức năng của ứng dụng
1.4.Phương pháp tiếp cận
-Khảo sát ứng dụng quản lý quán karaoke của một số quán đang sử dụng.-Khảo sát một số thông tin thực tế từ chủ quán, nhân viên , khách hàng của cácquán karaoke đang sử dụng ứng dụng quản lý cũng như các quán chưa sử dụng ứng dụngquản lý
-Từ đó, rút ra được thực trạng, nhu cầu chung của các quán karaoke
-Tổng hợp và phân tích những thông tin thu thập được sau đó hoàn thiện và cảithiện ứng dụng quản lý quán karaoke của mình
Trang 13CHƯƠNG 2.GIỚI THIỆU CÔNG NGHỆ
2.1 Giới thiệu Visual studio
2.1.1 Khái niệm
Hình 1: Logo Visual Studio.
Visual studio là một phần mềm hỗ trợ đắc lực hỗ trợ công việc lập trình website.Công cụ này được tạo lên và thuộc quyền sở hữu của ông lớn công nghệ Microsoft Năm
1997, phần mềm lập trình nay có tên mã Project Boston Nhưng sau đó, Microsoft đã kếthợp các công cụ phát triển, đóng gói thành sản phẩm duy nhất
Visual Studio là hệ thống tập hợp tất cả những gì liên quan tới phát triển ứngdụng, bao gồm trình chỉnh sửa mã, trình thiết kế, gỡ lỗi Tức là, bạn có thể viết code,sửa lỗi, chỉnh sửa thiết kế ứng dụng dễ dàng chỉ với 1 phần mềm Visual Studio mà thôi.Không dừng lại ở đó, người dùng còn có thể thiết kế giao diện, trải nghiệm trong VisualStudio như khi phát triển ứng dụng Xamarin, UWP bằng XAML hay Blend vậy Tính đến nay, Visual Studio vẫn được coi là phần mềm lập trình hệ thống hàngđầu, chưa có phần mềm nào có thể thay thế được nó Được đánh giá cao như vậy bởiVisual Studio sở hữu nhiều tính năng cực kỳ hấp dẫn
Trang 14SQL là ngôn ngữ chuẩn cho hệ cơ sở dữ liệu quan hệ Tất cả các hệ thống quản lý
cơ sở dữ liệu quan hệ (RDMS) như MySQL, MS Access, Oracle, Sybase, Informix,Postgres và SQL Server đều sử dụng SQL làm ngôn ngữ cơ sở dữ liệu chuẩn
Từ đó, người ta sẽ lưu trữ dữ liệu dựa vào tiêu chuẩn RDBMS và nó cũng là mộttrong những hệ quản trị cơ sở dữ liệu dạng quan hệ đối tượng
Trang 15SQL Server có khả năng cung cấp đầy đủ các công cụ cho việc quản lý từ giaodiện GUI đến sử dụng ngôn ngữ cho việc truy vấn SQL Điểm mạnh của SQL điểmmạnh của nó là có nhiều nền tảng được kết hợp cùng như: ASP.NET, C# để xây dựngWinform cũng chính nó có khả năng hoạt động độc lập
Tuy nhiên, SQL Server thường đi kèm với việc thực hiện riêng các ngôn ngữ SQL,T-SQL,
Cụ thể như sau:
T-SQL là một trong những loại ngôn ngữ thuộc quyền sở hữu của Microsoft vàđược gọi với cái tên Transact-SQL Nó thường cung cấp thêm rất nhiều cho các khảnăng khai báo biến, thủ tục lưu trữ và xử lý ngoại lệ,
SQL Server Management Studio là một loại công cụ giao diện chính cho máy chủ
cơ sở của chính dữ liệu SQL, thông thường thì nó hỗ trợ cho cả môi trường 64 bit và 32 bit
2.2.2 Ưu điểm
Không cần code
Rất dễ dàng để quản lý các hệ thống cơ sở dữ liệu bằng việc sử dụng SQL chuẩn
mà không cần phải viết bất cứ dòng code nào
– Tiêu chuẩn được quy định rõ ràng
SQL sử dụng hai tiêu chuẩn ISO và ANSI, trong khi với các non-SQL databasekhông có tiêu chuẩn nào được tuân thủ
– Tính di động SQL có thể được sử dụng trong chương trình trong PCs,servers, laptops, và thậm chí cả mobile phones
– Ngôn ngữ tương tác
Language này có thể được sử dụng để giao tiếp với cơ sở dữ liệu và nhận câu trảlời cho các câu hỏi phức tạp trong vài giây
– Multiple data views
Với sự trợ giúp của ngôn ngữ SQL, người dùng có thể tạo các hiển thị khác nhau
về cấu trúc cơ sở dữ liệu và cơ sở dữ liệu cho những người dùng khác nhau
2.2.3 Nhược điểm
Giao diện khó dùng
Trang 16SQL có giao diện phức tạp khiến một số người dùng khó truy cập
– Không được toàn quyền kiểm soát
Các lập trình viên sử dụng SQL không có toàn quyền kiểm soát cơ sở dữ liệu docác quy tắc nghiệp vụ ẩn
2.3 Giới thiệu về ngôn ngữ
2.3.1 Giới thiệu về ngôn ngữ C#
Là các ứng dụng windows chạy trên máy tính – mã lệnh thực thi ngay trên máy tính:
Microsoft, Word, Excel, Access, Calculator, yahoo, Mail… là các ứng dụng Windows
Forms
Trang 17Ưu điểm các phần mềm trên Winform
Đa phần lập trình viên C# NET nào cũng từng học/sử dụng Winform Bởi vì:Giao diện kéo thả dễ sử dụng; Gắn các event cho các button chỉ cần double click, lại hỗtrợ quá trời event như click, hover,…; Việc viết code cũng vô cùng trực quan: từ việclấy text từ TextBox cho tới show dữ liệu bằng MessageBox, hoặc dùng Grid để kết nốiSQL C# là gì ?
C# (hay C sharp) là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội ngũ
kỹ sư của Microsoft vào năm 2000, trong đó người dẫn đầu là Anders Hejlsberg vàScott Wiltamuth
C# là ngôn ngữ lập trình hiện đại, hướng đối tượng và nó được xây dựng trên nềntảng của hai ngôn ngữ mạnh nhất là C++ và Java
C# được thiết kế cho Common Language Infrastructure (CLI), mà gồmExecutable Code và Runtime Environment, cho phép chúng ta sử dụng các ngôn ngữhigh-level đa dạng trên các nền tảng và cấu trúc máy tính khác nhau
C# với sự hỗ trợ mạnh mẽ của NET Framework giúp cho việc tạo một ứng dụngWindows Forms hay WPF (Windows Presentation Foundation), trở nên rất dễ dàng
Đặc trưng của C#
Các đặc điểm để làm cho C# là ngôn ngữ lập trình chuyên nghiệp được sử dụngrộng rãi:
C# là ngôn ngữ đơn giản
Như ta đã biết thì ngôn ngữ C# dựng trên nền tảng C++ và Java nên ngôn ngữ C#khá đơn giản Nếu chúng ta thân thiện với C và C++ hoậc thậm chí là Java, chúng ta sẽthấy C# khá giống về diện mạo, cú pháp, biểu thức, toán tử và những chức năng khácđược lấy trực tiếp từ ngôn ngữ C và C++, nhưng nó đã được cải tiến để làm cho ngônngữ đơn giản hơn Một vài trong các sự cải tiến là loại bỏ các dư thừa, hay là thêm vàonhững cú pháp thay đổi
C# là ngôn ngữ hiện đại
Một vài khái niệm khá mới mẻ khá mơ hồ với các bạn vừa mới học lập trình, như
xử lý ngoại lệ, những kiểu dữ liệu mở rộng, bảo mật mã nguồn v v Đây là những đặc
Trang 18tính được cho là của một ngôn ngữ hiện đại cần có Và C# chứa tất cả các đặt tính ta vừanêu trên Các bạn sẽ dần tìm hiểu được các đặt tính trên qua các bài học trong series này.
C# là một ngôn ngữ lập trình thuần hướng đối tượng
Lập trình hướng đối tượng(tiếng Anh: Object-oriented programming, viết tắt: OOP)
là một phương pháp lập trình có 4 tính chất Đó là tính trừu tượng (abstraction), tínhđóng gói (encapsulation), tính đa hình (polymorphism) và tính kế thừa (inheritance) C#
hỗ trợ cho chúng ta tất cả những đặc tính trên Và để hiểu rõ hơn thì chúng ta sẽ có mộtchương trình bày về phần này
C# là một ngôn ngữ ít từ khóa
C# được mô tả là ngôn ngữ sử dụng giới hạn những từ khóa (gồm khoảng 80 từkhóa và mười mấy kiểu dữ liệu xây dựng sẵn) Nếu bạn nghĩ rằng ngôn ngữ có càngnhiều từ khóa thì sẽ càng mạnh mẽ hơn Điều này không phải sự thật, lấy ví dụ ngôn ngữC# làm điển hình nhé Nếu bạn học sâu về C# bạn sẽ thấy rằng ngôn ngữ này có thểđược sử dụng để làm bất cứ nhiệm vụ nào
Ngoài những đặc điểm trên thì còn một số ưu điểm nổi bật của C#:
•C# có cấu trúc khá gần gũi với các ngôn ngữ lập trình truyền thống, nên cũng khá
dể dàng tiếp cận và học nhanh với C#
•C# có thể biên dịch trên nhiều nền tảng máy tính khác nhau
•C# được xây dựng trên nền tảng của C++ và Java nên nó được thừa hưởng những
ưu điểm của ngôn ngữ đó
•C# là một phần của NET Framework nên được sự chống lưng khá lớn đến từ bộphận này
•C# có IDE Visual Studio cùng nhiều plug-in vô cùng mạnh mẽ
2.3.2 Giới thiệu về ngôn ngữ SQL
SQL, dịch là Ngôn ngữ truy vấn mang tính cấu trúc, là một loại ngôn ngữ máytính phổ biến để tạo, sửa, và lấy dữ liệu từ một hệ quản trị cơ sở dữ liệu quan hệ Ngônngữ này phát triển vượt xa so với mục đích ban đầu là để phục vụ các hệ quản trị cơ sở
dữ liệu đối tượng-quan hệ Nó là một tiêu chuẩn ANSI/ISO
Trang 19CHƯƠNG 3.PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.1 Phát biểu yêu cầu
Yêu cầu của người dùng:
Quản lý nhân viên:
- Để quản lý nhân viên cần thêm các thông tin nhân viên: mã nhân viên, tên tài
khoản, mật khẩu, email, số điện thoại, họ và tên, giới tính, phân loại, địa chỉ, thờigian bắt đầu làm việc, ảnh
- Nhân viên có thể cập nhật các thông tin cá nhân của nhân viên đó như mã nhân
viên, tên tài khoản, mật khẩu, email, số điện thoại, họ và tên, giới tính, phân loại,địa chỉ, thời gian bắt đầu làm việc, ảnh hoặc cũng có thể đổi mật khẩu
Trang 20- Người quản lý được phép tra cứu, xóa tất cả thông tin của các nhân viên.
- Nhân viên có thể tra cứu thông tin của cá nhân nhân viên đó.
- Nhân viên có thể xem chi tiết hóa đơn nhập, xuất kho.
- Nhân viên không thể tự ý thêm giảm giá cho khách hàng.
Quản lý khách hàng:
- Để quản lý khách hàng cần thêm các thông tin khách hàng: mã khách hàng, tên
khách hàng, số điện thoại, email khách hàng, địa chỉ khách hàng, ngày tạo thôngtin khách hàng, tỉ lệ giảm giá của khách hàng
- Nhân viên có thể cập nhật các thông tin của khách hàng như mã khách hàng, tên
khách hàng, số điện thoại, email khách hàng, địa chỉ khách hàng, ngày tạo thôngtin khách hàng, tỉ lệ giảm giá của khách hàng
- Người nhân viên được phép tra cứu, xóa thông tin của khách hàng.
- Quản lý cũng có thể quản lý thông tin về khách hàng như sửa, xóa, thêm hay
xem thông tin khách hàng
Quản lý phòng:
- Để quản lý phòng cần nhập thông tin các phòng: mã phòng,tên phòng, loại
phòng, trạng thái, giá phòng, sửa chữa, ngày bắt đầu, ngày kết thúc
- Về các loại phòng thì sẽ có các tình trạng: phòng trống, đã đặt trước, phòng sửa
chữa
- Nhân viên sẽ kiểm tra phòng tùy vào khách hàng, nếu đã đặt trước khách hàng
đến thì sẽ chuyển tình trạng đã đặt sang đã đầy Nếu khách hàng chưa đặt thì tìmphòng trống cho khách hàng;
- Nhân viên có thể thêm, sửa, xóa, cập nhật thông tin phòng;
- Nếu khách hàng đã thanh toán tiền xong thì phòng sẽ cập nhật thành phòng
trống
Quản lý mặt hàng
- Để quản lý mặt hàng cần nhập thông tin các mặt hàng: mã mặt hàng, tên mặt
hàng, số lượng, giá mặt hàng, loại mặt hàng, hình ảnh mặt hàng
Trang 21- Thêm, sửa, xoá thông tin mặt hàng của quán Khi một thông tin mặt hàng bị xoá
thì tất cả các thông tin về mặt hàng đó sẽ bị xoá
Quản lý hóa đơn
- Để quản lý hóa đơn cần nhập thông tin các hóa đơn: mã hóa đơn, mã phòng, tiền
phòng, mã mặt hàng, tên mặt hàng, số lượng hàng, tiền hàng, tổng tiền, tiền kháchphải trả, ngày xuất, thời gian sử dụng, tên phòng
- Nhân viên có thể thêm, sửa, xóa hóa đơn
- Nhân viên có thể áp dụng mã giảm giá cho khách hàng và trừ tiền đi cho kháchhàng
- Quản lý có thể xem hóa đơn của khách hàng
- Quản lý có thể xem thống kê hóa đơn
Quản lý nhập hàng
- Để quản lý mặt hàng cần nhập thông tin các mặt hàng: mã hóa đơn nhập, tên hóa
đơn nhập, mã mặt hàng nhập, tên mặt hàng nhập, số lượng nhập, giá nhập, ngàynhập, công ty, địa chỉ công ty
- Quản lý có thể thêm, sửa, xoá thông tin nhập hàng của quán
3.2 Yêu cầu chức năng
3.2.1 Danh sách các yêu cầu
Bảng 2.2 1 Danh sách yêu cầu
STT Tên yêu cầu
1 Thêm thông tin nhân viên, phòng hát, khách hàng, hóa đơn, chitiết hóa đơn, món ăn, đơn hàng nhập
2 Sửa thông tin nhân viên, phòng hát, khách hàng, hóa đơn, chi tiếthóa đơn, món ăn, đơn hàng nhập
3 Tìm kiếm thông tin nhân viên, phòng hát, khách hàng, hóa đơn,chi tiết hóa đơn, món ăn, đơn hàng nhập
4 Xóa các thông tin nhân viên, phòng hát, khách hàng, hóa đơn, chitiết hóa đơn, món ăn, đơn hàng nhập
5 Xuất dữ liệu thông tin nhân viên, phòng, hóa đơn, món ăn, đơn
Trang 22hàng nhập.
- Các chức năng chính của hệ thống:
o Đăng nhập: Sau khi đăng kí người dùng sẽ có một tài khoản cá nhân để có
thể sử dụng đầy đủ các tính năng của ứng dụng
o Xem thông tin nhập xuất kho: Người dùng, nhân viên có thể xem thông
tin sản phẩm có thể lọc theo (nước uống, thức ăn, …)
o Chọn phòng: Cho phép người dùng chọn phòng víp hay phòng thường.
o Món ăn: Người dùng có thể chọn món theo yêu cầu của khách hàng.
o Khách hàng: Người dùng sẽ lưu thông tin của khách hàng đã sử dụng dịch
vụ
o Khuyến mãi: Cho phép người dùng xem thông tin khuyễn mãi và tạo mới
mã khuyến mãi
o Thanh toán: Để thanh toán nhân viên cần phải đăng nhập để hệ thống lấy
thông tin tài khoản và mã khách hàng để xác nhận giao dịch
o Quản lý thông tin cá nhân: Người dùng có thể cập nhật lại thông tin khi
có nhu cầu thay đổi
o Quản lý hệ thống: Chức năng dành cho Admin có thể quản lý tất cả bao
- Danh sách nhập xuất kho
- Thông tin cá nhân
- Thanh toán
Trang 233.2.2 Biểu đồ usecase
Hình 2.2 1 Sơ đồ UseCase chính
Bảng 2.2 2 Bảng danh sách Actor ST
T Tên Actor
Ý nghĩa/Ghi chú
1 Nhân viên Là người đã đăng ký tài khoản với hệ thống có quyền sử dụng
hầu hết tất cả các chức năng của ứng dụng
2 Admin Người quản lý hệ thống Quản lý tất cả thông tin của quán, quảnlý thông tin tài khoản trong ứng dụng.
Bảng 2.2 3 Bảng danh sách UseCase ST
T
Tên Use-case Ý nghĩa/Ghi chú
1 Quản lý nhân viên Chức năng dành cho admin có thể thêm, sửa, xóa, tìm
kiếm, xuất danh sách nhân viên
2 Quản lý khuyến
mãi
Chức năng dành cho admin có thể thêm, sửa, xóa, xuấtdanh sách khuyến mãi
Trang 245 Quản lý nhập kho Chức năng dành cho cả nhân viên và admin có thể
thêm, sửa, xóa, tìm kiếm nhập kho
6 Tìm kiếm Tìm kiếm thông tin sản phẩm theo tên
7 Đăng nhập Chức năng dành cho cả nhân viên và admin có thể đăng
Định nghĩa Người dùng muốn đăng nhập vào ứng dụng
Trang 25Includes - Nhập tên đăng nhập.
- Nhập mật khẩu
Extends
Điều kiện tiên quyết Người dùng chưa đăng nhập vào hệ thống
Dòng sự kiện chính B1: Từ giao diện trang chủ, nhấp vào đăng nhập hoặc
những khu vực bắt buộc phải đăng nhập mới thựchiện được
B2: Hệ thống hiển thị giao diện đăng nhập, yêu cầungười dùng phải nhập tên đăng nhập đã đăng kýtrước đó và mật khẩu
B3: Hệ thống kiểm tra thông tin tài khoản và mậtkhẩu và cấp quyền truy cập vào hệ thống
B4: Hệ thống trả về kết quả hiển thị tên đăng nhập trênmenu
Dòng sự kiện thay thế Hiển thị thông báo đăng sai tài khoản hoặc mật khẩu.Điều kiện sau Người dùng đăng nhập thành công và có thể sử dụngcác chức năng mà hệ thống cung cấp.
Trang 263.2.3.2 UseCase Tìm kiếm
Hình 2.2 3 Hình sơ đồ UseCase Tìm kiếm
Bảng 2.2 5 Bảng UseCase Tìm kiếm UseCase – Tìm kiếm
Định nghĩa Người dùng muốn tìm kiếm sản phẩm dựa theo tên
Điều kiện tiên quyết Nhập tên sản phẩm
Dòng sự kiện chính B1: Từ trang chủ ứng dụng nhấp vào thanh tìm kiếm
hoặc nhấp vào tab tìm kiếm bên dưới của Menu.B2: Nhập tên sản phẩm cần tìm
B3: Xác nhận tìm kiếm
Dòng sự kiện thay thế Hiển thị danh sách tìm kiếm
Điều kiện sau
Trang 273.2.3.3 UseCase nhập kho
Hình 2.2 4 Hình sơ đồ UseCase Nhập kho
Bảng 2.2 6 Bảng UseCase Nhập kho UseCase – Nhập kho
Định nghĩa Người dùng muốn kiểm tra hàng trong kho
Includes Nhập đầy đủ thông tin cần thiết
Extends
Điều kiện tiên quyết Phải là Admin hoặc Nhân viên
Dòng sự kiện chính B1: Từ trang chủ nhấp vào mục nhập,xuất kho
B2: Nhập thông đầy đủ thông tin
Trang 28Định nghĩa Nhân viễn sẽ chọn phòng cho khách muốn đặt phòng.
Extends
Điều kiện tiên quyết Phải có phòng còn trống
Trang 29Dòng sự kiện chính B1: Từ trang chủ nhấp vào mục rút đặt phòng
B2: Kiểm tra còn phòng trống B3: Đặt phòng
Dòng sự kiện thay thế Hủy yêu cầu đặt phòng
Điều kiện sau Đặt phòng thành công, đưa khách tới phòng đó
3.2.3.3.5 UseCase Chọn món
Hình 2.2 6 Hình sơ đồ UseCase Chọn món
Bảng 2.2 8 Bảng UseCase Chọn món UseCase – Đặt món
Trang 30Extends
Điều kiện tiên quyết Phải là Admin hoặc nhân viên
Dòng sự kiện chính B1: Từ trang chủ bấm chọn món ăn
B2: Hệ thống hiển thị giao form chọn món B3: Nhấn chọn món
Dòng sự kiện thay thế Món ăn đã hết
Điều kiện sau Thông báo đặt món thành công, xuất hóa đơn
3.2.3.3.6 UseCase khuyến mãi
Hình 2.2 7 Hình sơ đồ UseCase Khuyến mãi
Bảng 2.2 9 Bảng UseCase Khuyến mãi UseCase – Khuyến mãi
Định nghĩa Dùng mã khuyễn mãi để giảm giá hóa đơn
Trang 31Actors Admin
Extends
Điều kiện tiên quyết
Dòng sự kiện chính B1: Chọn khuyễn mãi
B2: Chọn mãi khuyễn mãi
B3: Thanh toán
Dòng sự kiện thay thế Mã khuyễn mã đã hết hạn
Điều kiện sau Thanh toán thành công
3.2.3.3.7 UseCase Khách hàng
Hình 2.2 8 Hình sơ đồ UseCase Khách hàng
Bảng 2.2 10 Bảng UseCase Khách hàng UseCase – Khách hàng
Trang 32Tên Khách hàng.
Định nghĩa Nhân viên quản lý thông tin khách hàng đã thanh toán và
chưa thanh toán
B3: Chọn thêm,xóa hoặc lưu khách hàng
Dòng sự kiện thay thế Đã có khách hàng tồn tại
Điều kiện sau Thêm, xóa, sửa thành công
Trang 333.2.3.3.8 UseCase Nhân viên
Hình 2.2 9 Hình sơ đồ UseCase Nhân viên
Bảng 2.2 11 Bảng UseCase Nhân viên UseCase – Nhân viên
Định nghĩa Quản lý nhân viên còn làm việc hay đã nghỉ
Includes
Điều kiện tiên quyết
Dòng sự kiện chính B1: Chọn Nhân viên, Thông tin nhân viên
B2: Thêm, xóa hoặc sửa thông tin nhân viên
Dòng sự kiện thay thế
Trang 34Điều kiện sau Thêm, xóa, sửa thành công.
Bảng 2.3 1 Danh sách các thuộc tính lớp staff
STT Thuộc tính Kiểu dữ liệu Ràng buộc Ý nghĩa
1 Manhanvien Nvarchar(50) PRIMARYKEY Lưu trữ mã nhân viên
2 Tentaikhoan Nvarchar(50) NOT NULL Lưu trữ tên tài khoản của nhân viên
Trang 353 matkhau Nvarchar(50) NOT NULL Lưu trữ mật khẩu của nhân viên.
4 Email Nvarchar(50) NOT NULL Lưu trữ email của nhân viên
5 Sdt Nvarchar(50) NOT NULL Lưu trữ số điện thoại của nhânviên.
6 Hovaten Nvarchar(50) NOT NULL Lưu trữ họ và tên nhân viên
8 Phanloai Nvarchar(50) NOT NULL Lưu trữ phân loại của của nhânviên.(chức vụ)
9 Diachi Nvarchar(50) NOT NULL Lưu trữ địa chỉ của nhân viên
10 Timestart Date NOT NULL Lưu trữ thời gian bắt đầu làm việccủa nhân viên.
Bảng 2.3 2 Danh sách các phương thức lớp staff
ST
T Tên phương thức Ghi chú
3.3.2.2 Lớp sales
Bảng 2.3 3 Danh sách các thuộc tính lớp sales
STT Thuộc tính Kiểu dữ liệu Ràng buộc Ý nghĩa
1 iMakhuyenma Nvarchar(50) PRIMARYKEY Lưu trữ mã khuyễn mãi
2 Timestart Date NOT NULL Lưu trữ ngày bắt đầu của mãkhuyễn mãi.
3 Timeend Date NOT NULL Lưu trữ ngày kết thúc của mãkhuyễn mãi