CAM DOAN Em là Phạm Đức Kiệt, sinh viên thực hiện đồ án tốt nghiệp về đề tài “Xây dựng website quản lý phòng cho khách sạn K Hotel”, xin cam đoan những điều sau đây: tất cả thông tin , đ
Trang 1Người hướng dẫn: TS LÝ QUỲNH TRẤN
Sinh viên thực hiện PHAM DUC KIET
Trang 2Người hướng dẫn: TS LÝ QUỲNH TRẤN
Sinh viên thực hiện PHAM DUC KIET
Trang 3TOM TAT NOI DUNG DO AN
Tên đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
Sinh viên thực hiện: Phạm Đức Kiệt
Mã số SV: 1951220097
Lớp 19CTI
Trong thời đại ngày nay, công nghệ thông tin không ngừng phát triển một cách mạnh mẽ và được ứng dụng vào nhiều lĩnh vực Các công nghệ mới cùng sự phát triển của internet, đã giúp con người nâng cao tri thức với nguồn đữ liệu mở, đa dạng và phong phú Với Internet, khoảng cách giữa con người với con người dường như bị xóa bỏ, ta có thể liên lạc với mọi nguoi, nam bat thông tin trên toàn
thế giới nhanh chóng ma chỉ cần ngồi một chỗ Chính nhờ những lợi ích thực tế
nay mà số lượng người dùng Internet trên toàn thế giới ngày càng tăng Cùng với
đó là sự phát triển mạnh mẽ của ngành nghề kinh doanh khách sạn Hệ thống khách sạn không ngừng được mở ra, đặc biệt là tại các thành phố lớn Sự mở rộng quy mô, số lượng khách sạn đòi hỏi các nhà quản lý phải thay đổi phương pháp, cách thức quản lý hoạt động của khách sạn sao cho hiệu quả nhất, cũng như tiết
kiệm chỉ phí và nhân công nhất Trước tình hình đó, sử dụng phần mềm quản lý
khách sạn là giải pháp được nhiều khách sạn áp dụng Sau khi nghiên cứu về những lợi ích của một phần mềm quản lý khách sạn, em đã quyết định lựa chọn
đề tài "Xây dựng website quản lý phòng cho khách sạn K Hotel" Việc xây dựng website sẽ giúp cho công việc kinh doanh của khách sạn trở nên thuận lợi vả dễ dàng hơn, đáp ứng nhu cầu đặt phòng online của khách hàng
Các công việc chính để xây dựng đỗ án này bao gồm: Khảo sát, tiến hành phân tích và xác định các yêu cầu nghiệp vụ, thiết kế hệ thống, thiết kế cơ sở dữ liệu, xây dựng hệ thống Kết quả thu được đã đáp ứng được các yêu cầu đề ra, với các tính năng nôi bật như xem danh sách phòng trong khách sạn, tìm kiếm phòng trồng, đặt phòng, thanh toán online, bình luận - đánh giá, quản lý phòng, quản lý đặt phòng
Trang 4để giúp em hoàn thiện các tài liệu Xin cảm ơn cô đã quan tâm, dan dat va tao moi điều kiện thuận lợi nhất để em có thể hoàn thành tốt đồ án tốt nghiệp Lời cuối cùng em xin được cảm ơn gia đình, người thân và bạn bè đã luôn động viên, ủng hộ em trong suốt thời gian vừa qua
Với điều kiện thời gian hữu hạn vả kinh nghiệm của bản thân còn nhiều hạn
chế, trong quá trình thực hiện đồ án dù em đã có nhiều có gắng nhưng rất khó tránh khỏi những thiếu sót Em rất mong nhận được sự chỉ bảo, đóng góp ý kiến
để sản phẩm của em có thê hoàn thiện hơn
Trang 5CAM DOAN
Em là Phạm Đức Kiệt, sinh viên thực hiện đồ án tốt nghiệp về đề tài “Xây
dựng website quản lý phòng cho khách sạn K Hotel”, xin cam đoan những điều sau đây: tất cả thông tin , đữ liệu và mã nguồn trong đồ án là kết quả của công sức và nỗ lực trong quá trình học tập trên nhà trường, tra cứu tìm kiếm thông tin trên mạng và sự hỗ trợ của giảng viên hướng dẫn, website được xây dựng theo yêu câu và tiêu chí đề ra trong đê tài
Sinh viên thực hiện
Trang 6CHƯƠNG 2 KHAO SAT VA PHAN TICH YEU CAU HE THONG 3
2.1 Khảo sát hiện trạng c2 020102011201 11211 1121111111 1111 1111110111111 1 1k Hay 3 2.2 Téng 100 T777 7 auaaiA 6 2.2.1 Biểu đồ use case tổng quát - -Ss s T111 1171121211111 811g re 6 2.2.2 Biểu đồ use case phân rã "Quản lý loại phòng”" - 7s+zzszzzcez 8 2.2.3 Biểu đồ use case phân rã "Quản lý phòng"" - scsEEsEerxrrreg 8 2.2.4 Biểu đồ use case phân rã "Quản lý danh sách đặt phòng" 9 2.2.5 Biểu đồ use case phân rã "Quản lý bình luận” - sccszzzszzzcez 9 2.2.6 Biểu đồ use case phân rã "Quản lý tài khoản người dùng” 10 2.2.7 Biểu đồ use case phân rã "Quản lý phân quyên hệ thống" 10 2.3 Đặc tả chức năng 0 02010201121 1121112211121 1 1181110111101 1 1011100110111 1k 10 2.3.1 Đặc tả use case "Tìm kiếm phòng” -s-sc t1 E121 E112111 1 c6 10 2.3.2 Dac ta use case "Xem thông tin phòng"” - 2 c2 22221222 xxsss 11 2.3.3 Dac ta use case "Dat phòng” - - 1 201112011121 11111521111 1551 11k r2 12 2.3.4 Dac ta use case "Thanh toán qua Paypal’ ccc cc cccccs s22 13 2.3.5 Dac ta use case "Binh luận, danh gia" ooo ccc cece cece eters 14 2.3.6 Dac ta use case "Thêm loại phòng” - - ¿+ 2: 2 222112221122 +22xx+s+2 15 2.3.7 Dac ta use case "Thêm phòng'” - c2: 2222122211123 11 1211155511112 16 2.3.8 Đặc tả use case "Xem danh sách đặt phòng"” .- + +55 5< s s25: 17
Trang 72.4 Yêu cầu phi chức năng - 5s 11111811 12112111121121111211111111 101111 tre, 18
2.4.1 Yêu cầu về bảo mật - 2: 2221122211122 1c 18
2.4.2 Yéu cau vé hi8u nang cece ccseseseseesceseseseesessesensesesesesessesesesesees 18 2.4.3 You cau vé giao diGt i cccceccccccccccesessescssessesessessessssesersesesesessesesesrees 18
2.4.4 Yéu cau vé kha nang mo réng, nang cap va bao tri cece 18
CHUONG 3 THIET KE HE THONG ooo cccccccccccccccccsessesecseseseceeseseseseees 19 3.1 Mô hình hóa cấu trúc hệ thông - 1 s1 SE 1EE121121111211111111 1111 1x xe 19
3.1.1 Biểu đồ lớp tham gia ca sử dụng "Tìm kiếm phòng" s- 19 3.1.2 Biểu đồ lớp tham gia ca sử dụng "Xem thông tin phòng" 20 3.1.3 Biểu đồ lớp tham gia ca sử dụng "Đặt phòng” ccccscnssree, 20 3.1.4 Biểu đồ lớp tham gia ca sử dụng "Thanh toán qua Paypal'" 21 3.1.5 Biéu dé lớp tham gia ca sử dụng "Bình luận, đánh giá” 21 3.1.6 Biểu đồ lớp tham gia ca sử dụng "Thêm loại phòng" -s-: 22 3.1.7 Biểu đồ lớp tham gia ca sử dụng "Thêm phòng" sec: 22 3.1.8 Biểu đồ lớp tham gia ca sử dụng "Xem danh sách đặt phòng" 23 3.2 Mô hình hóa sự tương tác - ác 2 2011112111 1211121 112211 1111821111121 111k 23 3.2.1 Biểu đồ trình tự cho ca sử dụng "Tìm kiếm phòng" s5: 23 3.2.2 Biểu đồ trình tự cho ca sử dụng "Xem thông tin phòng" 24 3.2.3 Biểu đồ trình tự cho ca sử dụng "Đặt phòng” s-sc cư 25 3.2.4 Biểu đồ trình tự cho ca sử dụng "Thanh toán qua Paypal" 26 3.2.5 Biéu dé trình tự cho ca sử dụng "Binh luận, đánh giá” 27 3.2.6 Biểu đồ trình tự cho ca sử dụng "Thêm loại phòng” 55s: 28 3.2.7 Biểu đồ trình tự cho ca sử dụng "Thêm phòng” - 5 ssccccsczcs 29 3.2.8 Biểu đồ trình tự cho ca sử dụng "Xem danh sách đơn hàng" 30 3.3 Kiến trúc tông thể của hệ thống ¿+ S1 1 1111871 11E7152E71111111 11 11g xe 31
3.3.1 Sơ đồ kiến trúc 1 St 110 11111111111111111111111111111111 1 151811122 se 31
Trang 83.3.2 Đặc tả thiết ké kién tele cecccccccccccccsecvscseecessesseseecsesvevssesecstecsesteseees 31
3.4 Thiết kế cơ sở đữ liệu - 2-2221 21122122122111121111121121111211212122221 2 e6 33 3.4.1 Lược đồ cơ sở dữ liệu ¿2-22 S221221121127122122112112112211 21221 xe 33 3.4.2 Thiết kế chỉ tiết các bảng đữ liệu 5c + n2 2 1222121121211 xe 33 CHƯƠNG 4 CÔNG NGHỆ SỬ DỤNG - 5 2S E222 22 re 37
4.1 PHP, phpMyAdmin va MySQL, - 020102011201 121 1121115111181 181k ra 37 4.2 Laravel - một famework được sử dụng để phát triển web với PHP 37 4.3 HTMLS va CSS3, JavascrIpt - 201020112011 11211 1115111111111 1 1 19g k2 38
CHƯƠNG 5 XÂY DỰNG HỆ THÓNG - 5 1 TEE1E11 2112112 errre 39
5.1 Thư viện và công cụ sử dụng + 5c 2 2 1221112111111 1221111221111 21111114 39 5.2 Minh họa các chức năng chính - - 2: 22 2221122311111 1221 311551111122 x32 39
5.3 Danh 0 1 8n adiñÄĂLALLL ŒcŒcŒ(-ZXKŒ 49 CHUONG 6 KET LUAN VA HƯỚNG PHÁT TRIỂN -5s sec 52 6.1 Ket Wate ccc ccc cccecs ess eessessessseseesretsresssietansierinssesantansiettiesiesstesiesesstees 52
VI no cố aadddaaaiiAAAIA` 33
TAT LIEU THAM KHẢO -2 5s 1 2112111122211 2121222121 cg te 54
Trang 9Hinh 2.1 Hinh 2.2 Hinh 2.3 Hinh 2.4 Hinh 2.5 Hinh 2.6 Hinh 2.7 Hinh 2.8 Hinh 2.9 Hinh 3.1 Hinh 3.2 Hinh 3.3 Hinh 3.4 Hinh 3.5 Hinh 3.6 Hinh 3.7 Hinh 3.8 Hinh 3.9 Hinh 3.10 Hinh 3.11 Hinh 3.12 Hinh 3.13 Hinh 3.14 Hinh 3.15 Hinh 3.16 Hinh 3.17 Hinh 3.18 Hinh 5.1 Hinh 5.2 Hinh 5.3 Hinh 5.4 Hinh 5.5 Hinh 5.6 Hinh 5.7
DANH MUC HINH VE
Giao dién phan mém ezCloudhotel Manager 0.0 ccccccceceeees 4 Quản lý khách sạn Skyhotel với øiao diện thân thiện 5 Biểu đồ use case tổng quan s- s11 E112171151 212111 1e 6 Biểu đồ use case phân rã "Quản lý loại phòng" cccccscs¿ 8 Biểu đồ use case phân rã "Quản lý phòng” -¿cc sec 8 Biểu đồ use case phân rã "Quản lý danh sách đặt phòng" 9 Biểu đồ use case phân rã "Quản lý bình luận” -scs2cs se: 9 Biểu đồ use case phân rã "Quản lý tài khoản người dùng" 10 Biểu đỗ use case phân rã "Quản lý phân quyền hệ thống" nhu 10 Biểu đồ lớp tham gia ca sử dụng "Tìm kiếm phòng" 19 Biểu đồ lớp tham gia ca sử dụng "Xem thông tin phòng" 20 Biểu đồ lớp tham gia ca sử dụng "Đặt phòng” ccccscsea 20 Biểu đồ lớp tham gia ca sử dụng "Thanh toán qua Paypal" 21 Biéu dé lớp tham gia ca su dung "Binh luan, danh g14a" 21 Biểu đồ lớp tham gia ca sử dụng "Thêm loại phòng” 22 Biểu đồ lớp tham gia ca sử dụng "Thêm phòng" -. cs5¿ 22 Biểu đồ lớp tham gia ca sử dụng "Xem danh sách đặt phòng" 23 Biểu đồ trình tự cho ca sử dụng "Tìm kiếm phòng" 23 Biểu đồ trình tự cho ca sử dụng "Xem thông tin phòng" 24 Biểu đồ trình tự cho ca sử dụng "Đặt phòng" - se 25 Biểu đồ trình tự cho ca sử dụng "Thanh toán qua Paypal" 26 Biểu đồ trình tự cho ca sử dụng "Binh luận, đánh giá" 27 Biểu đồ trình tự cho ca sử dụng "Thêm loại phòng" 28 Biểu đồ trình tự cho ca sử dụng "Thêm phòng" s5: 29 Biểu đồ trình tự cho ca sử dụng "Xem danh sách đặt pòng" 30
Sơ đồ kiến trúc tông thé của hệ thống - 5 2S xxx se: 31 Luroe dé co 80 dit GU .ecccccccccccccccccececssssececsveceecstvevetsevetteveseveces 33 Giao dién “Dang nha ccc cccccecceesseesseeeesteeeetetaeeens 39 Giao dién "Dang ky tat Khoa" ec cece cctttteeeceseeees 40 Giao diện "Tìm kiếm phong" 0 ccccccccscceeseescsessesseseseseeeseeeeen 4I Gñao diện "Xem thông tin phòng” 2 52: 22212221221 xsccs2 42 Giao diện "Đặt phòng"” - L0 0110201120 1111111121 1111111111211 e2 43 Gñao diện "Thanh toán qua Paypal”" 52c 22c 1s s++sscsss 44 Giao diện "Lịch sử đặt phòng'” - 2.5 - 22 22212221222 21222 12x cs2 45
Trang 10Hinh 5.8 Hinh 5.9 Hinh 5.10 Hinh 5.11 Hinh 5.12 Hinh 5.13 Hinh 5.14 Hinh 5.15
Giao diện "Thông tin chỉ tiết đặt phong" 0 cece eeeeeeeeeeeee 46 Gñao diện "Quản lý loại phòng” - 2 222 2221222212225 111 2+2 47 Giao diện "Thêm mới loại phòng'” - c5 25+ 225<xxcssss2 47 Giao diện "Quản lý phòng” - 22: 22221121 1121111152111 1 12x22 48 Giao diện "Quản lý đặt phòng” - 2 22 1222221112212 xss2 48 Giao diện "Danh sách val trÒ”” cc c nnnn ng S111 1111155155111 1 2552 se 48 Giao diện "Danh sách quyên trong hệ thống" -cccccscs 49 Kết quả đánh giá chất lượng website bằng công cụ Lighthouse 49 Hình 5.6 Kết quả đánh giá các tiêu chí về hiệu năng bằng công cụ
Liphthouse L0 20122011211 1121 11521112111 1811 1011110111221 11 11110111122 49
Trang 11Bang 2.1 Bang 2.2 Bang 2.3 Bang 2.4 Bang 2.5 Bang 2.6 Bang 2.7 Bang 2.8 Bang 5.1 Bang 5.2
cu Lighthouse
DANH MUC BANG BIEU
Bảng đặc tả use case "Tìm kiếm phòng"
Bang đặc tả use case "Xem thông tin phòng"
Bảng đặc tả use case "Đặt phòng”
Bảng đặc tả use case "Thanh toán qua Paypal"
Bảng đặc tả use case "Bình luận, đánh giá"
Bảng đặc tả use case "Thém loai phong"
Bảng đặc tả use case "Thêm phòng"
Bảng đặc tả use case "Xem danh sách đặt phòng"
Bảng tóm tắt kết quả đánh giá chất lượng website bằng công Danh sách thư viện và công cụ sử dụng
Trang 12DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT
Cascading Style Sheets
Bộ khung cung cấp các chức năng, giảipháp được cài đặt sẵn giúp tiết kiệm thời gian trong quá trình phát triển ứngdụng
Hypertext Markup Language M6 hinh MVC (Model - View -Controller)
Ca su dung
Trang 13
Đề tài: Xây dựng website quản lý phòng cho khách san K Hotel
và mở ra một kỷ nguyên mới cho tất cả các lĩnh vực Trong bối cảnh của cuộc Cách mạng 4.0, công nghệ cũng đang dần thay đôi thói quen mua sắm, du lịch của con người trên toàn thế giới
Hiện nay, với sự mở rộng quy mô cả về số lượng và chất lượng các dịch vụ khách sạn, đòi hỏi nhà quản lý cần thay đôi phương pháp, cách thức quản lý các hoạt động của khách sạn sao cho hiệu quả nhất, tiết kiệm chỉ phí nhất Đây là lúc các nha quan tri cần sự hỗ trợ đắc lực của phần mềm quản lý khách sạn Vậy những lợi ích mà phần mềm quản lý khách sạn mang đến là gì? Phần mềm quản
lý dành cho khách sạn là sự tích hợp của nhiều chức năng khác nhau để phục vụ cho các khía cạnh công việc khác nhau của nhà quản trị như việc quản lý nhân viên, đặt phòng khách sạn, kế toán, thu — chi trong khách sạn, giúp nha quan tri
có cái nhìn tông quan nhất về tình hình hoạt động kinh doanh của khách sạn Trước đây, khi công nghệ thông tin chưa phát triển, nhiều người lựa chọn quản
lý bằng cách ghi chép kết hợp với phần mềm Excel để tính toán Cách làm này đòi hỏi phải có nhiều nhân sự làm và tốn nhiều thời gian để tính toán, ghi chép Với phần mềm quản lý khách sạn, ta sẽ không cần phải vất vả như vậy, chỉ cần nhập dữ liệu đầu vào một lần duy nhất, hệ thống sẽ tự động lưu trữ và tính toán giá phòng theo đúng những dịch vụ mà khách du lịch lựa chọn Như vậy, hệ thống sẽ giúp tiết kiệm thời gian và công sức Không chỉ những khách sạn lớn, cao cấp mà ngay nay, cả những khách sạn vừa và nhỏ cũng có thể sử dụng những phần mềm quản lý khách sạn mini để quản lý hoạt động của khách sạn, vừa tiết kiệm lại nhanh chóng và chính xác Hơn nữa, khi số lượng du khách checkm, checkout quá lớn, áp lực công việc sẽ khiến cho lễ tân dễ mắc những sai lầm, sai sót trong khâu tính toán Như vậy, sẽ ảnh hưởng đến doanh thu, lợi nhuận của khách sạn, nhà quản lý không thể năm bắt được chính xác đã có bao nhiêu lượt
du khách cũng như hoạt động của nhân viên như thế nào Một phần mềm quản lý khách sạn giúp việc tính toán chính xác đến từng con số, cho phép bạn nắm bắt một cách rõ ràng và toàn diện nhất về tình hình hoạt động kinh doanh của khách sạn cũng như tiến độ thực hiện công việc của nhân viên
Nhận thấy những lợi ích của một phần mềm quản lý khách sạn, em đã quyết định
Sinh viên thực hiện: Phạm Đức Kiệt Hướng dẫn: TS.Lý Quỳnh Trân 1
Trang 14Đề tài: Xây dựng website quản lý phòng cho khách san K Hotel
mả không cần đến khách sạn trực tiếp, tiết kiệm được nhiều thời gian vả tiền bạc;
nhân viên khách sạn sẽ liên hệ với khách hàng để xác nhận đặt phòng và tiến
hành các thủ tục đặt phòng cần thiết cho khách hàng
1.3 Định hướng giải pháp
Để đáp ứng được mục tiêu và yêu câu bài toán đã nêu, em xin đề xuất phát triển ứng dụng theo mô hinh client - server, cy thé: (i) Vé phia backend, em dé xuất sử dụng Laravel - m6t framework PHP, (ii) về phia frontend, em để xuất sử dụng HTML, CSS, Bootstrap để xây dựng giao diện người dùng (ii) Database sử dụng MySQL - cở sở dữ liệu được ưa chuộng với các hệ thông có dữ liệu lớn Web sẽ được xây dựng theo mô hình MVC giúp quản lý luồng dự án một cách hệ thống, bài bản Chỉ tiết về ưu điểm và lý do sử dụng các công nghệ này trong đồ
án, em xm trình bày rõ hơn trong Chương 4
1.4 Bố cục đồ án
Phần còn lại của báo cáo đồ án tốt nghiệp này được tổ chức như
sau: Chương 2 thực hiện khảo sát và phân tích yêu cầu hệ thông
Chương 3 trình bày về việc thiết kế hệ thông, mô hình hóa cấu trúc, mô hình
hóa hành vi, thiết kế kiến trúc tông quan, thiết kế cơ sở đữ liệu
Chương 4 trình bày về các công nghệ sử dụng trong đồ án
Chương 5 tiến hành xây dựng hệ thống, mô tả các kết quả đạt được và thực
hiện kiểm thử, đánh giá hệ thông
Chương 6 trình bảy những điểm đã làm được và chưa làm được trong đồ án, tổng kết lại kết quả phát triển và phân tích các hướng đi mới cho phép cải thiện
và nâng cấp hệ thống
Sinh viên thực hiện: Phạm Đức Kiệt Hướng dẫn: TS.Lý Quỳnh Trân 2
Trang 15Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
CHUONG 2 KHAO SAT VA PHAN TICH YEU CAU HE THONG
2.1 Khảo sát hiện trạng
Đề đáp ứng mục tiêu đã nêu ra trong chương trước là thiết kế và xây dựng một
hệ thống quản lý phòng khách sạn, trước hết cần phải khảo sát các phần mềm
quản lý khách sạn phổ biến hiện nay nhằm tìm ra những đặc điểm và tính năng
quan trọng Trong khuôn khô đồ án, em xin được khảo sát hai hệ thống, trong đó
có ezCloudhotel và Skyhotel
ezCloudhotel là một trong những phần mềm quản lý khách sạn tốt nhất, hỗ trợ quản lý những khách sạn từ nhỏ đến lớn ezCloudhotel là phần mềm quản lý
khách sạn PMS linh hoạt, cho phép chủ khách sạn có thể kiểm soát khách sạn ở
bất kỳ nơi nào, bất cứ lúc nào mà không cần kết nỗi Internet
Một số tính năng nỗi bật:
» Sở hữu tính năng đặt phòng và quản lý việc đặt phòng một cách nhanh chóng và đơn giản
« Tính toán giá phòng cho khách theo phút, giờ, ngày — đêm, tuần, tháng
e Tính năng thống kê, tông hợp, phân tích, báo cáo Realtime mọi số liệu về số lượng khách cũng như lợi nhuận của khách sạn
« Hỗ trợ nhân viên lễ tân bàn giao ca làm việc và bản giao tiền mặt từ những giao dịch trong ca đó, nhanh chóng kiểm tra lại những giao dịch đã diễn ra bao gồm: chuyền khoản, thẻ tín dụng, tiền mặt hay công nợ
* Tinh nang quan lý từ xa cho chủ sở hữu khách sạn
« ezCloudhotel hỗ trợ trên nhiều nền tảng như Android, iOS, máy tính
« Gói dịch vụ của ezCloudhotel bán theo tháng hoặc năm, không bán vĩnh viễn Khách hàng có thé tải phần mềm và chọn khoảng thời gian mua gói để biết được chính xác mức giá là bao nhiêu
Ưu diem:
« Giao diện được thiết kế thông minh, thân thiện dễ sử dụng cho mọi bộ phận
từ lễ tân, buồng phòng, thu ngân
« Bố cục thiết kế hiên thị các tính năng theo chiều đọc, màu sắc dễ nhìn
« Phần mềm có khả năng kết nối với các bên booking thứ ba, hệ thống bán phòng đại lý cùng một số tính năng Marketing như Email Marketing không những giúp tăng doanh thu mà còn quảng cáo khách sạn đến nhiều khách hàng hơn
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân 3
Trang 16Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel nữa
Hình 2.1: Giao diện phần mềm ezCloudhotel Manager
Skyhotel là một trong các phần mềm quản lý khách sạn thông dụng, sở hữu nhiều tính năng hữu ích, giúp cho việc điều hành, quản lý khách sạn trở nên hiệu quả hơn Skyhotel là phần mềm quản lý khách sạn PMS phù hợp với cả những nhà nghỉ, khách sạn lớn nhỏ, resort cao cấp có
¢ Tinh nang hé tro đặt phòng theo khách đoàn hoặc khách lẻ
s Quản lý toàn bộ dịch vụ, tiện ích kèm theo phòng và khách sạn, quản lý sơ
đồ và tất cả kho
« Quản lý những loại chỉ phí, đồng thời truy xuất báo cáo với những nội dung
tong hop va phân tích chỉ tiết tình hình kinh doanh của khách sạn
Ưu điểm:
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân 4
Trang 17Đề tài: Xây dựng website quản lý phòng cho khách san K Hotel
« Giao diện sử dụng có thiết kế khoa học, tạo sự thuận tiện cho người dùng
« Danh mục và giá bán trong Skyhotel có thể được linh động thay đôi, chỉnh sửa cho phủ hợp với tình hình kinh doanh thực tế
« Sở hữu tính năng Nhật ký sử dụng, không thể sửa chữa lịch sử thao tác đã được thực hiện trên phần mềm Nhờ đó, chủ khách sạn có thể kiểm soát công việc của nhân viên một cách rõ ràng, minh bạch nhất
¢ Dac biệt, tính năng dọn phòng được kết nỗi online với điện thoại của khách giúp bộ phận đọn phòng có thê hoàn thành nhiệm vụ ngay khi được yêu cầu
¢ Tích hợp thanh chat online ngay trong hệ thống với đầy đủ những gợi ý sử dụng
Nhược điểm:
« Giao diện tuy khoa học nhưng màu sắc khó nhìn
e Phần mềm không hoạt động offline
s Hai tính năng quan trọng là quản lý thu chí và quản lý bán hàng vẫn chưa được sử dụng miễn phí
¢ Tính năng cho phép trùng mã phòng của Skyhotel khiến hệ thống không ghi
nhận thông tin chính xác của khách
Hình 2.2: Quản lý khách sạn Skyhotel với giao diện thân thiện
Sau khi tiễn hành khảo sát hai hệ thông trên, em rút ra được một số tính năng cần thiết và quan trọng phải có trong một hệ thống quản lý khách sạn:
« Quản lý đặt phòng: Đặt phòng là một trong những chức năng quan trọng nhất trong phần mềm quản lý khách sạn Thông thường, các khách sạn thường
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân 5
Trang 18Đề tài: Xây dựng website quản lý phòng cho khách san K Hotel nhận đặt phòng từ các nguồn truyền thống Điển hình như: đại lý du lịch hoặc đặt phòng trực tiếp Ngày nay, câu chuyện này đã trở nên khác biệt khi việc đặt phòng đến nhiều từ các nguồn khác nhau Như từ trang web của khách sạn, các trang web du lịch, các nguồn đối tác như khách hàng Hay một hãng hàng không, các đại lý du lịch
s Quản lý phòng: Tính năng này giúp chủ khách sạn quản lý danh sách các phòng có trong khách sạn của mình
« Hoạt động quản lý của lễ tân: Hoạt động quản lý của vị trí lễ tân là tính năng cơ bản và thiết yếu mà I phần mềm quản lý khách sạn cần phải có Phanmém quan ly khach san PMS tốt sẽ hỗ trợ bộ phận lễ tân tiến hành quá trình check- in và check—out cho khách một cách dễ dàng và nhanh chóng
« Hóa đơn và thanh toán: Song song với nhiều nguồn đặt phòng khác nhau thì khách hàng cũng ứng dụng nhiều phương thức thanh toán tiền phòng khác nhau, chăng hạn như: trả tiền mặt, thanh toán qua thẻ tín dụng, chuyển khoản, thanh toán qua các App chuyền tiền trực tuyến, Đó cũng chính là
lý do các phần mềm quản lý khách sạn cần tích hợp đa dạng những phương thức thanh toán khác nhau
2.2 Tong quan chức năng
2.2.1 Biểu đồ use case tông quát
Xem thông tin Đăng nhập
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân 6
Trang 19Đề tài: Xây dựng website quản lý phòng cho khách san K Hotel
Hệ thống bao gồm ba tác nhân là Khách hàng vãng lai, Khách hàng thành viên
và Nhân viên khách sạn Khách hàng vãng lai là những người dùng không có tài khoản, chỉ có thể xem thông tin các phòng trên hệ thông Khách hàng thành viên
là những khách hàng có tài khoản, đăng nhập thành công vào hệ thống, co thé đặt
phòng, bình luận, đánh giá Nhân viên khách sạn là những nhân lực trong khách sạn (chủ khách sạn, quản lý khách sạn, lễ tân, quản trị viên ) được gán quyền để thực hiện các chức năng quản lý: quản lý loại phòng, quản lý phòng, quản lý đặt phòng, quản lý khách hàng, quản lý bình luận, quản lý phân quyền
Tác nhân Khách hàng vãng lai có các chức năng:
* Dang ky tai khoản khách hàng
¢ Tim kiém phong trong: loc theo thời gian nhận phòng - trả phòng, số người lớn, số trẻ em, số lượng phòng
e Xem thông tin chi tiết phòng
Tác nhân Khách hàng thành viên có các chức năng của Khách hàng vãng lai và
có thêm các chức năng:
« Đăng nhập: Đăng nhập vào hệ thống bằng thông tin tài khoản đã đăng ký
* Cập nhật thông tin cá nhân
* Đặt phòng, thanh toán online
» Quản lý lịch sử đặt phòng: xem lịch sử các các phòng đã đặt, xem thông tin chỉ tiết đặt phòng, hủy đặt phòng
* Binh luận, đánh giá các phòng đã đặt
« Đăng xuất: Đăng xuất phiên đăng nhập khỏi hệ
thông Tác nhân Nhân viên khách sạn có các chức năng
sau:
« Đăng nhập: Đăng nhập vào hệ thống bằng thông tin tài khoản đã đăng ký
* Quản lý loại phòng: xem danh sách loại phòng, thêm loại phòng mới, chỉnh sửa loại phòng, xóa loại phòng
» Quản lý phòng: xem danh sách phòng, thêm phòng mới, chỉnh sửa thông tin phòng, xóa phòng
* Quan lý danh sách khách hàng
« Quản lý đặt phòng: thống kê danh sách đặt phòng, xem thông tin chỉ tiết đặt phòng, xác nhận đặt phòng, hủy đặt phòng
* Quan lý đánh giá - bình luận: xem danh sách bình luận, đánh giá của khách
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân 7
Trang 20Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
hang, an/hién bình luận
» Quản lý tài khoản người dùng: xem danh sách tài khoản người dùng, thêm tài khoản, chỉnh sửa thông tin tài khoản, xóa tài khoản
e Quản lý phân quyền hệ thống: Quản lý role (vai trò) va quan ly permission (quyên) của hệ thống
« Đăng xuất: Đăng xuất phiên đăng nhập khỏi hệ thống
2.2.2 Biểu đồ use case phân rã "Quản lý loại phòng"
Xem danh sách loại phòng
| Thém loai
a Nhân viên tier | Chinh stra loai
phong
Hình 2.4: Biêu đồ use case phân rã "Quản lý loại phòng"
2.2.3 Biểu đồ use case phân rã "Quản lý phòng”
ce
Xem danh sach phong
Hình 2.5: Biêu đồ use case phân rã "Quản lý phòng"
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân
Trang 21Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
2.2.4 Biểu đồ use case phân rã "Quản lý danh sách đặt phòng"
r
Xem danh sách đặt phòng Xem thông tin
Hinh 2.6: Biéu dé use case phan ra "Quan ly danh sách đặt phòng"
2.2.5 Biểu đồ use case phân rã "Quản lý bình luận"
Hình 2.7: Biêu đỗ use case phân rã "Quản lý bình luận"
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân
Trang 22Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
2.2.6 Biểu đồ use case phân rã "Quản lý tài khoản người dùng"
Hình 2.8: Biêu đồ use case phân rã “Quản lý tài khoản người dùng"
2.2.7 Biểu đồ use case phân rã "Quản lý phân quyền hệ thống"
` Xóa vai trò của
Nhân viên kháềh sạn người dùng
2.3.1 Đặc ta use case "Tim kiém phong"
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân
Trang 23Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
Tác nhân Khách vãng lai, khách hàng thành viên
Mô tả Ca sử dụng cho cho phép khách hàng tìm kiếm các phòng
trống trên hệ thống Tiền dieu Không
số lượng phòng để thực hiện tìm
kiếm
4 Hệ thống Truy vấn cơ sở dữ liệu theo yêu
cầu tìm kiếm của người dùng
5 Hệ thông Hiến thị danh sách phòng trống
tương ứng với yêu cầu tìm kiếm
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 4a Hệ thông Nếu không tìm thấy kết quả phù thế hợp với yêu cầu tìm kiếm, thông
báo “Không có kết quả phù hợp” Hậu điều | Không
2.3.2 Đặc ta use case "Xem thông tin phòng"
Bảng 2.2: Bảng đặc tả use case "Xem thông tin phòng”
Mã use | UC02 Tên use case Xem thông tin phòng
case
Tác nhân Khách vãng lai, khách hàng thành viên
Mô tả Ca sử dụng cho phép khách hàng xem thông tin chỉ tiết của
một phòng Tiền điều | Khách hàng đang xem danh sách các phòng theo yêu cầu tìm kiện kiếm của mình
Sinh viên thực hiện: Phạm Đức
STT Thực hiện bởi Hành dong
Hướng dẫn: TS.Lý Quỳnh Trân 11
Trang 24Đề tài: Xây dựng website quản lý phòng cho khách san K Hotel
3 Hệ thống Hiển thị giao diện thông tin chị
tiết của phòng: tên phòng, hình ảnh, giá cả, mô tả, đánh giá, bình
luận
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 2a Hệ thông Thông báo không tìm thấy phòng thế nếu phòng không tôn tại trong
cơ sở đữ liệu Hậu điều | Không
2.3.3 Đặc ta use case "Dat phong"
Bang 2.3: Bang dac ta use case "Đặt phòng”
STT Thực hiện bởi Hành dong
1 Khach hang thanh | Chon chire nang dat phong viên
2 Hệ thống Hiển thị form điển thông tin đặt
Trang 25Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
Hệ thống Hiến thị giao diện xác nhận đặt
phòng, bao gồm: thông tin khách hàng, tin đặt phòng, giá
Có thể chỉnh sửa lại thông tin khách hàng (họ tên, email, số
II Hệ thống Thông báo đặt phòng thành công
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 4a Hệ thông Thông báo phòng hết hàng khí
thế không còn đủ số lượng yêu cầu
của khách hàng
9a Hệ thống Thông báo lỗi: Thông tin nhập
chưa hợp lệ hoặc chưa nhập đủ các trường thông tin bắt buộc Hậu điều | Hệ thống cập nhật thông tin đặt phòng vào cơ sở dữ liệu
2.3.4 Dac ta use case "Thanh toan qua Paypal"
Bang 2.4: Bang dac ta use case "Thanh toan qua Paypal"
Ma use | UC04 Tén use case Thanh toán qua Paypal
case
Tác nhân Khách hàng thành viên
Mô tả Ca sử dụng cho phép khách hàng thanh toán đặt phòng với
tài khoản Paypal Tiền điều | Khách hàng đăng nhập thành công vào hệ thống, đặt phòng
kiện thành công trên hệ thống
STT Thực hiện bởi Hành dong
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân 13
Trang 26Đề tài: Xây dựng website quản lý phịng cho khách sạn K Hotel
1 Khách hang thành | Khách hàng đang xem thơng tin viên chỉ tiết đặt phịng, nhấn chọn
thanh tốn qua Paypal
2 Hệ thống Tính tốn số tiền cần thanh tốn,
gửi yêu cầu thanh tốn sang hệ thống Paypal và chuyên hướng người dùng đến trang thanh tốn Luồng sự của Paypal
kiện chính | 3 Khách hàng thành | Đăng nhập vào hệ thống Paypal,
viên xác nhận thanh tộn
4 Hệ thống Kiểm tra trạng thái thanh tốn
5 Hệ thống Luu lai giao dich trong co so dir
liệu, thơng báo thanh tốn thành cơng
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 3a Hệ thống Nếu người dùng chọn từ chối thế thanh tốn, thơng báo thanh tốn
thất bại 4a Hệ thống Nếu số dư tài khoản khơng đủ,
thơng báo khơng đủ số dư trong tài khoản
4a Hệ thơng Nếu số thống Paypal xảy ra lỗi,
thơng báo cĩ lỗi xảy ra trong quá trinh thanh tốn
Hậu điều | Lưu lại giao dịch thanh tốn vào cơ sở dữ liêu Mọi thao kiện tác đều phải được đặt trong transaction, nếu cĩ lỗi xảy ra
thi quay lại trạng thái trước khi thanh tốn
2.3.5 Đặc tá use case "Bình luận, đánh gia"
Bảng 2.5: Bảng đặc ta use case "Binh luận, đánh giá"
Trang 27
Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
STT Thực hiện bởi Hành dong
1 Khách hàng thành | Khách hàng chọn xem thông tin viên chỉ tiết đặt phòng của mình
2 Hệ thống Hiển thị giao diện thông tin chi
5 Hệ thống Ghi lại đánh giá, bình luận của
người dùng vào co sở dữ liệu
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 4a Hệ thông Thông báo lỗi: Thông tin nhập
các trường thông tin bắt buộc Hậu điều | Không
2.3.6 Dac ta use case "Thém loai phong"
Bang 2.6: Bang dac ta use case "Thém loai phong"
Ma use | UC06 Tén use case Thém loai phong
case
Tac nhan Nhân viên khách sạn
Tiền điều | Nhân viên khách sạn đăng nhập thành công vảo hệ thong, có kiện quyền quản lý loại phòng
STT Thực hiện bởi Hành dong
l Nhân viên khách | Chọn chức nang thêm loại phòng
Trang 28Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
7 Hệ thống Thông báo thêm mới thành công
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 5a Hệ thông Thông báo lỗi: Thông tin nhập thế chưa hợp lệ hoặc chưa nhập đủ
các trường thông tin bắt buộc Hậu điều | Hệ thống cập nhật thông tin loại phòng vào cơ sở đữ liệu
Ma use | UC07 Tén use case Thém phong
case
Tac nhan Nhân viên khách sạn
Tiền điều | Nhân viên khách sạn đăng nhập thành công vảo hệ thong, có kiện quyên quản lý phòng
STT Thực hiện bởi Hành dong
1 Nhân viên khách | Chọn chức năng thêm phòng
Trang 29Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
7 Hệ thống Thông báo thêm mới thành công
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 5a Hệ thông Thông báo lỗi: Thông tin nhập thế chưa hợp lệ hoặc chưa nhập đủ
các trường thông tin bắt buộc Hậu điều | Hệ thống cập nhật thông tin phòng vào cơ sở đữ liệu
kiện
2.3.8 Đặc tả use case "Xem danh sách đặt phòng"
Bảng 2.8: Bảng đặc tả use case "Xem danh sách đặt phòng”
Mã use | UC08 Tên use case Xem danh sách đặt phòng case
Tác nhân Nhân viên khách sạn
Mô tả Ca sử dụng cho phép Nhân viên khách sạn xem danh sách và
quản lý đặt phòng của khách hàng Tiền điều | Nhân viên khách sạn đăng nhập thành công vào hệ thống, có kiện quyên quản lý đặt phòng
STT Thực hiện bởi Hanh dong
1 Nhân viên khách sạn | Chọn chức năng quản ly dat
phòng
2 Hệ thống Truy vấn cơ sở đữ liệu đề lây ra
danh sách đặt phòng từ mới nhất đến cũ nhất
3 Hệ thống Hiển thị giao diện danh sách đặt
Trang 30Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
8 Nhân viên khách sạn | Chọn chức năng hủy đặt phòng
9 Hệ thống Goi use case Huy dat phòng
Luồng sự | STT Thực hiện bởi Hành động
kiện thay | 5a Hệ thông Thông báo không tìm thấy kết thế quả phù hợp với yêu cầu tìm
kiếm
Hậu điều | Không
2.4 Yêu cầu phi chức năng
2.4.1 Yêu cầu về bảo mật Server cần phải xác thực danh tính của người dùng trong mỗi request gửi lên Chỉ những người dùng có quyền mới được phép truy cập vào các chức năng và tài nguyên của hệ thông
2.4.2 Yêu cầu về hiệu năng
Thời gian phản hồi của hệ thống tối đa 5s
2.4.3 Yêu cầu về giao diện Giao diện web thân thiện với người dùng, có sự thống nhất về bố cục và màu sắc giữa các trang với nhau Ngoàải ra, giao điện có hỗ trợ responsive, phù hợp với nhiều loại kích thước màn hình trên các thiết bị khác nhau Bên cạnh đó, hệ thông cũng hỗ trợ đa ngôn ngữ (tiếng Anh và tiếng Việt)
2.4.4 Yêu cầu về khả năng mở rộng, nâng cấp và bảo trì
Hệ thống vẫn đang trong giai đoạn phát triên và mở rộng nên cần thiết kế để
dễ dàng sửa đôi và nâng cấp sao cho phù hợp mỗi khi có yêu cầu mới Các tính năng nếu cần sửa đôi hoặc thêm mới cũng sẽ không ảnh hưởng gì đến sự hoạt động của hệ thống
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh Trân 18
Trang 31Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
CHUONG 3 THIET KE HE THONG
3.1 Mô hình hóa cấu trúc hệ thống
Mục đích của mô hình hóa cấu trúc hệ thống để nhằm phát hiện các lớp tham gia vào ca sử dụng, đồng thời thêm mối liên hệ giữa các lớp để lập biểu đồ lớp cho mỗi ca sử dụng[I] Các lớp tham gia ca sử dụng được gọi là lớp phân tích,
gồm 3 loại:
¢ Boundary (Lớp biên): Tương ứng với thành phần View
« Entity (Lớp thực thể): Tương ứng với thành phần Model
Control (Lớp điều khiển): Tương ứng với thành phần Controller 3.1.1 Biểu đồ lop tham gia ca si dung "Tim kiém phong"
+ findByConditions() : Array Khach hang
Hình 3.1: Biểu đồ lớp tham gia ca sử dụng "Tìm kiếm phòng"
Sinh viên thực hiện: Phạm Đức Kiệt Hướng dẫn: TS.Ly Quynh Tran 19
Trang 32Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel 3.1.2 Biểu đồ lớp tham gia ca sử dụng "Xem thông tin phòng"
+ showRoominfo0 : void + searchRoomsQ : Array - TT RoomType + requestToViewRoom0 : void + getRoominfo() : Room - createdAt : datetime
~ avatarUrl : string + getAll() : Array + findByConditions() : Array
+ findByldQ : Room
Khach hang
Hình 3.2: Biêu đồ lớp tham gia ca sử dụng "Xem thông tin phòng”
3.1.3 Biêu đồ lớp tham gia ca sử dụng "Đặt phòng"
Hình 3.3: Biểu đồ lớp tham gia ca sử dụng "Đặt phòng"
Sinh viên thực hiện: Phạm Đức
Trang 33
Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel
3.1.4 Biểu đồ lop tham gia ca si dung "Thanh toan qua Paypal"
BookingDetailView <<control>> - childrenAges : Array
PaymentController = paymentid : String
+ requestToPayBooking() : void + check | : boolean - rooms : Array + notifyError() : void + confirmPayment() : void = createdAt : datetime + redirectToPaypalCheckoutPage() : void + payBooking() : void - : + requestToConfirmPayment0 : void + confirmPaymentToPaypal() : void Ị Tae ondhon 0 Array
+ displayPaymentSuccess() : void + getAll() : Array
Hình 3.4: Biểu đồ lớp tham gia ca sử dụng "Thanh toán qua Paypal"
3.1.5 Biểu đồ lớp tham gia ca sử dụng "Bình luận, đánh giá"
+ validateRatinginfo() : boolean - creator : User
<<boundary>> RatingForm + Rating() : Rating
+ showRatingForm() : void + submitRatinglnfo() : void + notifyError( : void + displaySuccess() : void
Hình 3.5: Biểu đồ lớp tham gia ca sử dụng "Bình luận, đánh giá"
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh
Trang 34Đề tài: Xây dựng website quản lý phòng cho khách sạn K Hotel 3.1.6 Biểu đồ lớp tham gia ca sử dụng "Thêm loại phòng"
<<boundary>> ; <<control>> ~ name : string R
+ requestToCreateRoomTyp e() : void : i = - Adults : int I rÍ + showCre ateRoomTypeView() : void i «uni + createRoomType() : void + validateRoomTypelnfo0 : boolean - maxChikiren Int price ; int
+ submitRoomTypelnfo0 : void ~ createdAt : datetime
+ RoomTypeQ : RoomType + getAll0 : Array
Nhân viên khách sạn
Hình 3.6: Biểu đồ lớp tham gia ca sử dụng "Thêm loại phòng"
3.17 Biểu đồ lớp tham gia ca sy dung "Thém phong"
- name: string
~ avatar : string
<<boundary>> R < <control> > - maxAdults : int l CreateRoomView RoomController - maxChildren : int ~ price : int + requestToCreateRoom( : void + getRoomByld0 : Room ~ createdAt : datetime
+ ¬ cvoid | — — »J + searchRooms0 : Array + RoomType() : RoomType : notifyError() — v + getRoomlnfo( : Room + getAll0 : Array
+ disp laySuccess0 : void + gerAllRoomTypes0 : Array + validate RoomInfo( : boolean
+ createRoom( : void
<<entity>> Room
Hình 3.7: Biêu đồ lớp tham gia ca sử dụng "Thêm phòng"
Sinh viên thực hiện: Phạm Đức Hướng dẫn: TS.Lý Quỳnh