Chúng ta hãy tận dụng nó như 1công cụ hữu ích cho chính chúng ta và cả khách hàng.Chính vì vậy, chúng tôi đã lên kế hoạch xây dựng 1 website booking hotelmang lại nhiều lợi ích thiết thự
Trang 1TRƯỜNG CAO ĐẲNG FPT POLYTECHNIC - -
DỰ ÁN 1 Website đặt lịch & booking hotel Giảng viên hướng dẫn : Thầy Lê Trọng Đạt Chuyên ngành : Thiết kế Website
Nhóm thực hiện : 3
Sinh viên thực hiện : Trần Mạnh Cường
Giáp Thị Hiền Phạm Thị Uyên Nguyễn Ngọc An
Hà Nội - 2023
NHẬN XÉT CỦA GIẢNG VIÊN
………
Trang 3PHẦN 1: GIỚI THIỆU CHUNG 8
1.1Giới thiệu đề tài
1.1.1 Lý do chọn đề tài 8
Trang 42.1: Danh sách tác nhân (actor)
2.2 : Danh sách các use case
PHẦN 4 THIẾT KẾ GIAO DIỆN 47
4.1 Xây dựng giao diện
4.2.4 Trang danh sách banner 68
4.2.5 Trang danh sách liên hệ 69
4.2.6 Trang danh sách dịch vụ 70
4.2.7 Trang danh sách bài viết 72
4.2.8 Trang danh sách voucher 73
4.2.9 Trang thêm mới nhân viên 75
4.2.10: Trang thêm mới booking 77
4.2.11 Trang thêm mới dịch vụ 79
4.2.12 Trang thêm mới banner 81
4.2.13 Trang thêm mới Bài viết 83
Too long to read onyour phone? Save
to read later onyour computer
Save to a Studylist
Trang 54.2.14 Trang thêm mới voucher 85
PHẦN 5 XÂY DỰNG CƠ SỞ DỮ LIỆU 88
5.1 Cơ sở dữ liệu (Cơ cở dữ liệu noSQL - MongoDB)
7.3: Những khó khăn rủi ro gặp phải và cách giải quyết:
7.4: Những bài học rút ra sau khi làm dự án:
7.5: Kế hoạch phát triển trong tương lai:
LỜI CẢM ƠN 99
TÀI LIỆU THAM KHẢO 100
Trang 6LỜI MỞ ĐẦU
Trong thời đại ngày nay, công nghệ thông tin ngày càng phát triển, đóng vaitrò cưc kỳ quan trọng trong nền kinh tế - văn hóa - xã hội của mỗi quốc gia.Công nghê thông tin và đặc biệt là Internet đã giúp cho con người thay đổi, cáchsống, làm việc, liên lạc, tiếp cận với thông tin theo hướng nhanh chóng và tiệnlợi nhất.
Bên cạnh đó, khi nhịp sống của con người ngày càng nâng cao thì nhu cầu thưgiãn, nghỉ dưỡng của mỗi người cũng từ đó mà thay đổi Họ có thể chi 1 số tiềnkhông nhỏ để đi du lịch, nghỉ mát Với những người bận bịu với công việc, liệu họcó thể dành ra hàng giờ đồng hồ chỉ để chờ đến lượt mình xếp hàng đặt phònghotel không? Hay họ sẽ muốn có 1 lịch hẹn chính xác và không mất nhiều thờigian? Đó chính là vấn đề mà những người làm dịch vụ quan tâm tới Internet hiệnnay rất phổ biến, chỉ với 1 chiếc smartphone, máy tính bảng hay laptop có kết nốiinternet là ta đã có cả 1 thế giới thu nhỏ trong tay Chúng ta hãy tận dụng nó như 1công cụ hữu ích cho chính chúng ta và cả khách hàng.
Chính vì vậy, chúng tôi đã lên kế hoạch xây dựng 1 website booking hotelmang lại nhiều lợi ích thiết thực cho khách hàng và khách sạn.
Lợi ích với khách hàng:
- Có thể dễ dàng tìm hiểu về khách sạn cũng như dịch vụ.- Khàng có thể đặt lịch dễ dàng, tiết kiệm thời gian và công sức.- Nắm rõ thông tin về chi phí dịch vụ muốn thực hiện
- Tạo ra 1 nguồn thông tin tham khảo đáng tin cậy Lợi ích với khách sạn.- Có thể quản lý công việc 1 cách tốt nhất.
- Là nơi để quảng bá, giới thiệu, cung cấp thông tin chi tiết về các dịch vụ, sản phẩmcũng như về quy trình thực hiện, đội ngũ nhân viên … đến với khách hàng.- Tăng độ uy tín, giúp khách sạn trở nên chuyên nghiệp, hiện đại, bắt kịp xu thế.-
Trang 7GIẢI THÍCH THUẬT NGỮTên thuật ngữGiải thích thuật ngữ
Tester Người kiểm tra sản phẩm mà lập trình viên làm ra
Backend Developer Người xử lý mọi logic nghiệp vụ phức tạp ở ẩn phíasau, giúp hệ thống hoạt động trơn tru.
Frontend Developer Người xử lý phía giao diện người dùng, giúp ngườidùng có trải nghiệm tốt nhất trên website
Thành viên Người dùng trở thành thành viên thông qua đăngnhập thành công, thành viên có thể bao gồm các đốitượng member, member thuộc nhóm dịch, Mod,Quản trị viên.
Quản trị viên Thành viên quản trị cấp cao, có thể truy cập vàotrang quản trị của website để điều chỉnh trang web
Internet Hệ thống thông tin toàn cầu có thể truy nhập cộngđồng gồm các mạng máy tính được liên kết với nhau
Request Thông tin gửi từ client lên server.
Reporter Người sẽ báo cáo, thống kê cho thành viên trongnhóm về quá trình làm việc.
PHẦN 1: GIỚI THIỆU CHUNG
1.1 Giới thiệu đề tài
Trang 8- Sona.com là trang web cung cấp chỗ ở trực tuyến hàng đầu Chúng tôi đam mê du lịch mỗi ngày Chúng tôi truyền cảm hứng và tiếp cận hàng triệu khách du lịch trên 90 trang web địa phương bằng 41 ngôn ngữ.
- Vì vậy, khi cần đặt phòng khách sạn, nhà nghỉ cho thuê, khu nghỉ dưỡng, căn hộ, nhà khách hoặc nhà trên cây hoàn hảo, chúng tôi sẽ hỗ trợ bạn
Trang 91.1.3 Mục tiêu của đề tài
Tạo ra được một hệ thống booking hotel một cách tối ưu, đơn giản và dễ dàng để các khách sạn có thể đưa vào sử dụng cho chuỗi hệ thống kinh doanh của mình và đặc biệtlà phù hợp với thị trường
1.1.4 Đối tượng sử dụng hệ thống Các đối tượng sử dụng hệ thống:
- Du khách cá nhân: Những người muốn đặt phòng trực tuyến cho chuyến du lịch cá nhân hoặc kỳ nghỉ gia đình.
- Doanh nhân: Các doanh nhân thường sử dụng trang web đặt phòng để dự định và đặt chỗ cho các chuyến công tác hoặc cuộc họp.
- Nhóm du lịch: Các nhóm bạn bè hoặc gia đình có thể sử dụng trang web đặt phòng để đảm bảo có đủ phòng ở cùng một khách sạn.
- Người đi công tác: Các nhân viên kinh doanh thường sử dụng dịch vụ đặt phòng trực tuyến để tiện lợi trong việc quản lý lịch trình di chuyển công tác của họ.- Người muốn so sánh giá: Những người tìm kiếm giá tốt nhất và muốn so sánh giá
phòng từ nhiều khách sạn khác nhau.
- Người sử dụng ứng dụng di động: Những người muốn đặt phòng qua điện thoại di động hoặc máy tính bảng thông qua ứng dụng di động của các trang web đặt phòng.
Trang 101.2 Thành viên tham gia dự án
Hình 1.2.4: Sơ đồ làm việc nhóm
1.3 Các công cụ và công nghệ sử dụng- Các công cụ
Dự án website booking hotel
Giảng viên hướng dẫn : Lê Trọng Đạt
Thành viên: NguyễnNgọc AnThành viên:
Trần MạnhCường
Tester Báo cáo &slideCode Back-
end Thành viên:
Phạm ThịUyênThành viên:
Giáp ThịHiền
Code end
Trang 11Front-Google DriveGoogle DocsJira
Hình 1.3.1: Các công cụ sử dụng trong dự án
Trang 13PHẦN 2: PHÂN TÍCH – THIẾT KẾ HỆ THỐNG
2.1: Danh sách tác nhân (actor) Quản lý(Chủ Hotel) Nhân viên trực Khách hàng2.2 : Danh sách các use case
Front-End:
• UC Đăng nhập • UC Đăng ký• UC Liên hệ• UC Xem trang chủ• UC Chi tiết dịch vụ• UC Đặt lịch• UC Đánh giá dịch vụ • UC xem thông báo • UC Lịch sử đặt lịch• UC chat messenger• UC Xem tin tức • UC Xem chi tiết phòng• UC Tài khoản• UC Đổi mật khẩu• UC Quên mật khẩu Back-End:
• UC Quản lý khách hàng• UC Quản lý bài viết
Trang 14• UC Quản lý Đặt lịch• UC Quản lý Banner• UC Quản lý Liên hệ• UC Quản lý Nhân viên• UC Quản lý thống kê• UC Quản lý dịch vụ
Trang 152.3: Workflow:
Hình 2.3.1: Sơ đồ Workflow
15
Trang 162.4: Sơ đồ Usecase:
Hình 2.3.2: Sơ đồ Usecase
16
Trang 17Tên usecase Đăng nhập
Mô tả Cho phép người dung đăng nhập vào hệ thống đăt lịch,xem các thông tin của khách sạn
17
Trang 18Điều kiện kích hoạt Khách hàng chọn chức năng đăng nhâp Tiền điều kiện Khách hàng đã có tài khoản trong hệ thốngHậu điều kiện Đăng nhập thành công hoặc thất bạiLuồng sự kiện chính 1 Hiển thị màn hình đăng nhập
2 Nhập email, sđt, password
3 Hệ thống kiểm tra thông tin đăng nhập4 Đăng nhập thành công và sử dụng các chức
năng quản trị 5 Kết thúc usecase2 Đăng xuất:
Tên usecase Đăng xuất
Mô tả Hỗ trợ người dung trong việc đăng xuất tài khoản khỏihệ thống
Điều kiện kích hoạt Khách hàng chọn chức năng đăng xuấtTiền điều kiện Khách hàng đã đăng nhập vào hệ thốngHậu điều kiên Đăng xuất thành công hoặc thất bạiLuồng sự kiện chính 1 Đăng nhập vào hệ thống thành công
2 Chọn chức năng đăng xuất
3 Đăng xuất thành công, trở về giao diện trang chủ
4 Kết thúc usecase3 Đổi mật khẩu:
Tên usecase Đổi mật khẩu
Trang 19Luồng sự kiện chính 1 Đăng nhập thành công2 Chọn chức năng đổi mật khẩu3 Nhập mật khẩu mới
4 Thông báo đổi mật khẩu thành công5 Kết thúc usecase
4.Xem trang chủ:
Tên usecase Xem trang chủ
Luồng sự kiện chính Bước 1: Nhấn vào Form đặt lịch hẹn tại trang chủ Bước 2: Người dùng nhập các thông tin như thông tin cá nhân (tên khách hàng), chọn ngày, chọn khung giờ, chọn dịch vụ, chọn phòng và có thể điền nội dung ghi chú để Hotel có thể đáp ứng những yêu cầu bổ xung của khách hàng
Bước 3: Kiểm tra hợp lệ:
Nếu để trống các trường thì báo điền đủ thông tin 19
Trang 20Bước 4 : Kiểm tra sđt
Mã otp sẽ gửi đến sđt mà khách hàng đã đăng ký để xác nhận sđt và chuyển trạng thái đặt lịch thành côngNếu nhập sai định dạng các trường như số điện thoại, chọn ngày sẽ thông báo nhập đúng định dạng.Nếu dữ liệu nhập hợp lệ sẽ chuyển sang trang thông báo đặt lịch thành công kèm theo những thông tin khách hàng đã đăng ký
* Trong trường hợp người dùng điền thông tin nhưng đến bước đặt lịch hủy không đặt thì dữ liệu thông tin người dùng vẫn được lưu lại trong database để phục vụcho việc chăm sóc khách hàng và marketing saunày.
6 Liên hệ:
Tên usecase Liên hệ
Tên usecase Xem tin tức
Trang 21Tiền điều kiện Khách hàng truy cập và websiteHậu điều kiện Không
Luồng sự kiện chính 1 Truy cập vào website2 Chọn chức năng xem tin tức3 Kết thúc usecase
8 Xem hồ sơ:
Tên usecase Xem hồ sơ
Luồng sự kiện chính 1 Đăng nhập thành công2 Chọn chức năng hồ sơ của tôi3 Kết thúc usecase
9 Xem lịch sử đặt lịch:
Tên usecase Xem lịch sử đặt lịch
Luồng sự kiện chính 1 Đăng nhập thành công2 Chọn chức năng lịch sử đặt lịch3 Kết thúc usecase
10 Danh mục dịch vụ:
Tên usecase Danh mục dịch vụ
21
Trang 22Luồng sự kiện chính 1 Truy cập vào website2 Chọn chức năng dịch vụ3 Hiển thị danh sách dịch vụ4 Kết thúc usecase
11 Chi tiết dịch vụ phòng:
Tên usecase Chi tiết dịch vụ
4 Chọn một dịch vụ và xem chi tiết dịch vụ đó5 Kết thúc usecase
12 Feedback dịch vụ:
Tên usecase Feedback dịch vụ
Mô tả Hỗ trợ khách hàng để lại bình luận cho dịch vụ mình đã sử dụng
Điều kiện kích hoạt Khách hàng truy cập vào website
Tiền điều kiện Đăng nhập hệ thống và sử dụng dịch vụHậu điều kiện Không
Luồng sự kiện chính 1 Truy cập vào website
22
Trang 232 Chọn chức năng dịch vụ3 Điền form feedback4 Kết thúc usecase13 Đăng kí:
Tên usecase Đăng kí
Mô tả Cho phép khách hàng đăng kí tài khoản để sử dụng cácdịch vụ của website
Điều kiện kích hoạt Khách hàng chọn chức năng đăng kíTiền điều kiện Khách hàng truy cập vào hệ thống webisteHậu điều kiện Đăng kí thành công hoặc thất bạiLuồng sự kiện chính 1 Hiển thị màn hình đăng kí
2 Nhập đầy đủ thông tin
3 Đăng kí thành công và quay về trang đăng nhập4 Kết thúc usecase
14 Quản lí khách hàng:
Tên usecase Quản lí khách hàng
Mô tả Cho phép khách hàng đăng kí tài khoản để sử dụng cácdịch vụ của website
Điều kiện kích hoạt Khách hàng chọn chức năng đăng kíTiền điều kiện Khách hàng truy cập vào hệ thống webisteHậu điều kiện Đăng kí thành công hoặc thất bạiLuồng sự kiện chính 1 Hiển thị màn hình đăng kí
2 Nhập đầy đủ thông tin
3 Đăng kí thành công và quay về trang đăng nhập4 Kết thúc usecase
15.Quản lí đặt lịch:
Tên usecase Quản lí đặt lịch của khách hàng
23
Trang 24Mô tả Dùng để admin quản lí các lịch đặt của khách hàng (thay đổi trạng thái)
admin thực hiện chức năng
Luồng sự kiện chính 1 Đăng nhập hệ thống thành công
2 Admin thực hiện chức năng thay đổi trạng thái cho khách hàng
3 Cập nhật trạng thái thành công4 Kết thúc usecase
16.Quản lí phòng:
Tên usecase Quản lí dịch vụ phòng
Mô tả Dùng để admin thực hiện các chức năng thêm sửa xóa dịch vụ phòng của website
Luồng sự kiện chính 1 Đăng nhập thành công
2 Admin thực hiện các chức năng thêm, sửa, xóa dịch vụ phòng
3 Cập nhật sau khi admin sử dụng các chức năng4 Kết thúc usecase
17.Quản lí liên hệ:
Tên usecase Quản lí liên hệ
Mô tả Dùng để admin thực hiện các chức năng thêm sửa xóa dịch vụ của website
24
Trang 25Điều kiện kích hoạt Admin chọn chức năng quản lí dịch vụ websiteTiền điều kiện Admin đăng nhập thành công vào hệ thống
Hậu điều kiện Dữ liệu của hệ thống sẽ được cập nhật sau khi admin thực hiện các chức năng
Luồng sự kiện chính 1 Đăng nhập thành công
2 Admin thực hiện các chức năng thêm, sửa, xóa dịch vụ
3 Cập nhật sau khi admin sử dụng các chức năng4 Kết thúc usecase
18 Thêm dịch vụ phòng:
Tên usecase Thêm dịch vụ phòng
Mô tả Cho phép admin đăng nhập vào hệ thống để thực hiện chức năng thêm dịch vụ phòng
Điều kiện kích hoạt Admin chọn chức năng thêm dịch vụ phòngTiền điều kiện Admin đăng nhập thành công vào hệ thốngHậu điều kiện Khách hàng xem được các dịch vụ khi admin thêm
thành công
Luồng sự kiện chính 1 Đăng nhập thành công
2 Admin thực hiện các chức năng thêm phòng3 Thông báo thêm thành công
4 Kết thúc usecase19.Xem thông báo
Tên usecase Xem thông báo
Mô tả chung Khách hàng xem được những thông báo của mình từ hệ thống
Tác nhân chính Khách hàng, Admin, Nhân viên
Tiền điều kiện Khách hàng đã truy cập vào hệ thống website của khách sạn và đăng nhập tài
Luồng sự kiện Bước 1: Chọn icon thông báo trên menu
25
Trang 26Bước 2: Xem các thông báo đang cóHậu điều kiện Xem được thông báo gần nhất từ hệ thống
Mô tả chung Khách hàng xem được những thông báo của mình từ hệ thống
20 Sửa dịch vụ:
Tên usecase Sửa dịch vụ
Mô tả Cho phép admin đăng nhập vào hệ thống để thực hiện chức năng sửa dịch vụ
Điều kiện kích hoạt Admin chọn chức năng sửa dịch vụTiền điều kiện Admin đăng nhập thành công vào hệ thốngHậu điều kiện Khách hàng xem được các dịch vụ khi admin sửa
thành công
Luồng sự kiện chính 1 Đăng nhập thành công
2 Admin thực hiện các chức năng sửa dịch vụ3 Thông báo sửa dịch vụ thành công4 Kết thúc usecase
21 Xóa phòng:
Tên usecase Xóa phòng
Mô tả Cho phép admin đăng nhập vào hệ thống để thực hiện chức năng xóa phòng
Luồng sự kiện chính 1 Đăng nhập thành công
2 Admin thực hiện các chức năng xóa phòng3 Thông báo xóa phòng thành công4 Kết thúc usecase
26
Trang 27PHẦN 3 PHÂN TÍCH HỆ THỐNG
3.1 Mô tả các luồng chức năng
3.1.1: UC đăng nhập Đăng nhập
Hình 3.1.1: Biểu đồ Activity diagram đăng nhập
3.1.2 : UC đăng ký Đăng ký
27
Trang 28Hình 3.1.2: Biểu đồ Activity diagram đăng kí
3.13 UC đăng xuấtĐăng xuất:
Hình 3.1.3: Biểu đồ Activity diagram đăng xuất
28
Trang 293.1.4 UC Đặt phòng Đat:
Hình 3.1.4: Biểu đồ Activity diagram thêm dịch vụ
29
Trang 303.1.5 UC Cập nhật dịch vụ- Update
Hình 3.1.5: Biểu đồ Activity diagram sửa dịch vụ
3.1.6 UC Xóa dịch vụ Xóa
30
Trang 31Hình 3.1.6: Biểu đồ Activity diagram xóa dịch vụ
3.1.7 UC Đánh giá- Đánh giá
31
Trang 32Hình 3.1.7: Biểu đồ Activity diagram đánh giá
3.1.8 UC Liên hệ
32
Trang 33 Liên hệ:
Hình 3.1.8: Biểu đồ Activity diagram liên hệ
3.1.9 UC Đặt lịch phòng Đặt lịch:
33
Trang 34Hình 3.1.9: Biểu đồ Activity diagram đặt lịch
34
Trang 353.5: Thiết kế tổng quan hệ thống:
Hình 3.5: Mô hình thiết kế tổng quan hệ thống
35