Tải bản đầy đủ (.pdf) (44 trang)

Bài tập lớn học phần - Công nghệ thông tin

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.05 MB, 44 trang )

-1-

BÀI TẬP LỚN HỌC PHẦN
Họ và tên sinh viên:
Lớp:
Ngành đào tạo: Công nghệ thông tin
Hệ đào tạo: Đại học
Tên chủ đề báo cáo: CHỦ ĐỀ 2: Thiết kế cơ sở dữ liệu cho hệ thống Quản lý
thuê phòng khách sạn .


-2-

LỜI MỞ ĐẦU
Trong hoạt động môi giới kinh doanh. Giờ đây, đặt phòng trực tuyến đã
khẳng định được vai trò xúc tiến và thúc đẩy sự phát triển của doanh nghiệp.
Đối với một khách sạn hay homestay, việc quảng bá và giới thiệu phòng đến
khách hàng các dịch vụ mới sẽ đáp ứng được nhu cầu của khách hàng. Bắt kịp
xu thế công nghệ thông tin đang tăng cao, cùng với sự bùng nổ về công nghệ 4.0
đã thay đổi hành vi của khách hàng dần dịch chuyển sang các trang đặt phịng
trực tuyến tại nhà. Vì vậy, một trang đặt phòng điện tử cho khách sạn hoặc
homestay là điều mà các người chủ nào cũng muốn sở hữu.
Đó là lý do em đã thực hiện đồ án “ Thiết kế cơ sở dữ liệu cho hệ thống
Quản lý thuê phòng khách sạn”. Trên trang đặt phòng trực tuyến này, quản trị
viên có thể đưa lên các phịng và quản lý, theo dõi các đơn đặt phòng, lợi nhuận,
phản hồi của khách hàng. Đồng thời, khách hàng cũng có thể trở thành thành
viên của khách sạn, có thể tự do đặt phòng, theo dõi đơn đặt phòng và tham
khảo các phịng cũng như dịch vụ của khách sạn mà khơng cần phải đến trực
tiếp. Ngồi ra, trang web cịn mang lại cho người dùng một trải nghiệm đặt
phòng mới mẻ, hiện đại nhờ vào thiết kế hiện đại cùng với sự tối giản của
website.


Tuy đã cố gắng hết sức tìm hiểu, phân tích thiết kế và cài đặt hệ thống
nhưng chắc rằng khơng tránh khỏi những thiếu sót. Em rất mong nhận được sự
thơng cảm và góp ý của các quý thầy, cô.
Em xin chân thành cảm ơn,


-3-

MỤC LỤC
LỜI MỞ ĐẦU ....................................................................................................... i
MỤC LỤC ............................................................................................................ ii
DANH MỤC BẢNG BIỂU ................................................................................ iii
DANH MỤC HÌNH ẢNH .................................................................................. iv
CHƢƠNG 1: PHÂN TÍCH THIẾT KẾ HỆ THỐNG ..................................... 9
1.1. PHÂN TÍCH BÀI TỐN ......................................................................... 9
1.1.1. Phát biểu bài tốn ................................................................................. 9
1.1.2. u cầu của bài tốn ............................................................................ 9
1.2. PHÂN TÍCH THIẾT .............................................................................. 10
1.2.1. Tác nhân và vai trị ............................................................................. 10
1.3. Mơ hình thực thể liên kết ....................................................................... 15
CHƢƠNG 2: PHÂN TÍCH LUÔNG DỮ LIỆU QUAN HỆ ......................... 17
2.1. Biểu đồ tuần tự (Sequence Diagram) .................................................... 17
2.1.1.Biểu đồ tuần tự thêm phòng vào đơn đặt phòng ................................. 17
2.1.2. Biểu đồ tuần tự xem đơn đặt phòng ................................................... 18
2.1.3. Biểu đồ tuần tự cập nhật đơn đặt phòng............................................. 19
2.1.4. Biểu đồ tuần tự thanh toán ................................................................. 19
2.2. Biểu đồ lớp ràng buộc dữ liệu (Class Diagram) ................................... 20
2.3. Mơ hình cơ sở dữ liệu quan hệ (Database Diagram) ........................... 24
2.4. Các bảng cơ sở dữ liệu ............................................................................ 25
2.4.1. Bảng quản trị viên (admins) ............................................................... 25

2.4..2. Bảng nhật ký công việc (audits) ........................................................ 25
2.4.3. Bảng đơn đặt phòng (bookings) ......................................................... 26


-4-

2.4.4. Bảng chi tiết đơn đặt phòng (booking_detail).................................... 27
2.4.5. Bảng quan hệ nhiều - nhiều giữa đơn đặt phòng và dịch vụ phát sinh
(cost_booking) .............................................................................................. 28
2.4.6. Bảng dịch vụ phát sinh (cost_overrun) .............................................. 28
2.4.7. Bảng phản hồi (feedbacks) ................................................................. 29
2.4.8. Bảng tin tức (news) ............................................................................ 30
2.4.9. Bảng quyền (permissions) .................................................................. 30
2.4.10. Bảng quan hệ nhiều - nhiều giữa quyền và nhóm quyền
(role_has_permissions)................................................................................. 31
2.4.11. Bảng Giá ngày đặc biệt (ngày lễ) (price_manager) ......................... 31
2.4.12. Bảng nhóm quyền (roles) ................................................................. 32
2.4.13. Bảng quan hệ nhiều – nhiều giữa tài khoản với nhóm quyền
(model_has_roles) ........................................................................................ 32
2.4.14. Bảng phòng (rooms) ......................................................................... 32
2.4.15. Bảng ảnh phòng (room_images) ...................................................... 33
2.4.16. Bảng quan hệ nhiều – nhiều giữa phòng và dịch vụ (room_service)
...................................................................................................................... 34
2.4.17. Bảng thể loại (room_types) .............................................................. 34
2.4.18. Bảng dịch vụ (services) .................................................................... 35
2.4.19. Bảng nhãn (tags)............................................................................... 36
2.4.20. Bảng tài khoản khách hàng (users) .................................................. 36
2.4.21. Bảng (vote_booking) ........................................................................ 37
2.4.22. Bảng quan hệ nhiều - nhiều giữa nhãn và phòng (room_tag) .......... 38
2.4.23. Bảng đăng ký nhận quảng cáo (member) ......................................... 38



-5-

2.4.24. Bảng quan hệ nhiều – nhiều giữa đơn đặt phịng và giá ngày đặc biệt
(specialday_booking) ................................................................................... 39
2.4.25. Bảng thơng báo (notifications) ......................................................... 39
2.5. CẤU HÌNH HỆ THỐNG DỮ LIỆU ..................................................... 40
2.5.1. Môi trường phát triển ......................................................................... 40
2.5.2. Khởi chạy ứng dụng dữ liệu ............................................................... 40
2.6. Khai thác dữ liệu ..................................................................................... 41
CHƢƠNG 3: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ............................... 42
3.1. KẾT LUẬN .............................................................................................. 42
3.1.1. Những kết quả đạt được ..................................................................... 42
3.1.2. Chưa đạt được .................................................................................... 42
3.2. HƢỚNG PHÁT TRIỂN ......................................................................... 42
HỌC LIỆU THAM KHẢO .............................................................................. 44


-6-

DANH MỤC BẢNG BIỂU
BẢNG 2.1. Xác định các tác nhân ...................................................................... 10
BẢNG 2.2. Xác định các Use-case ..................................................................... 14
BẢNG 2.2. Quản trị viên .................................................................................... 25
BẢNG 2.3. Nhật ký công việc ............................................................................ 26
BẢNG 2.4. Đơn đặt phòng.................................................................................. 27
BẢNG 2.5. Chi tiết đơn đặt phòng...................................................................... 28
BẢNG 2.6. Quan hệ nhiều – nhiều giữi đơn đặt phòng và dịch vụ .................... 28
BẢNG 2.7. Dịch vụ phát sinh ............................................................................. 29

BẢNG 2.8. Phản hồi ........................................................................................... 30
BẢNG 2.9. Tin tức .............................................................................................. 30
BẢNG 2.10. Quyền ............................................................................................. 31
BẢNG 2.11. Quan hệ nhiều nhiều giữi quyền và nhóm quyền .......................... 31
BẢNG 2.12. Giá ngày đặc biệt ........................................................................... 32
BẢNG 2.13. Nhóm quyền ................................................................................... 32
BẢNG 2.14. Quan hệ nhiều nhiều giữi tài khoản với nhóm quyền .................... 32
BẢNG 2.15. Phịng ............................................................................................. 33
BẢNG 2.16. Ảnh phòng...................................................................................... 34
BẢNG 2.17. Quan hệ nhiều nhiều giữi phòng và dịch vụ phòng ....................... 34
BẢNG 2.18. Loại phòng ..................................................................................... 35
BẢNG 2.19. Dịch vụ ........................................................................................... 36
BẢNG 2.20. Nhãn ............................................................................................... 36
BẢNG 2.21. Tài khoản khách hàng .................................................................... 37
BẢNG 2.22. Đánh giá đơn đặt phòng ................................................................. 38


-7-

BẢNG 2.23. Quan hệ nhiều nhiều giữa nhãn và phòng ..................................... 38
BẢNG 2.24. Đăng ký nhận thông tin khách sạn ................................................. 39
BẢNG 2.25. Quan hệ nhiều nhiều giữi đơn đặt phịng và giá ngày đặc biệt ..... 39
BẢNG 2.26. Thơng báo ...................................................................................... 40


-8-

DANH MỤC HÌNH ẢNH
HÌNH 1.1. Biểu đồ Use-case tổng quát khách hàng ........................................... 15
HÌNH 1.2. Biểu đồ Use-case quản trị viên ......................................................... 16

HÌNH 2.3. Biểu đồ tuần tự thêm phịng và đơn đặt phịng ................................. 17
HÌNH 2.4. Biểu đồ tuần tự xem đơn đặt phịng .................................................. 18
HÌNH 2.5. Biểu đồ tuần tự cập nhật đơn đặt phịng ........................................... 19
HÌNH 2.6. Biểu đồ tuần tự thanh tốn ................................................................ 20
HÌNH 2.7. Biểu đồ lớp ........................................................................................ 20
HÌNH 2.8. Biểu đồ lớp ........................................................................................ 21
HÌNH 2.9. Biểu đồ lớp ........................................................................................ 22
HÌNH 2.10. Biểu đồ lớp ...................................................................................... 23
HÌNH 2.11. Biểu đồ cơ sở dữ liệu ...................................................................... 24
Hình 2.1. Phân quyền User.................................................................................. 41
Hình 2.2. Tạo dữ liệu phòng cho thuê ................................................................. 41


-9-

CHƢƠNG 1: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
1.1. PHÂN TÍCH BÀI TỐN
1.1.1. Phát biểu bài tốn
Website Booking Hotel là một website đặt phòng trực tuyến cung cấp cho
doanh nghiệp và cá nhân nền tảng kinh doanh phù hợp với xu hướng của ngành
cơng nghiệp 4.0. Ngồi ra, website cịn cung cấp và phục vụ khách hàng các
chức năng đặt phòng tiện lợi, hiện đại cùng với trải nghiệm đặt phòng tốt nhất.
1.1.2. Yêu cầu của bài toán
Website cần đáp ứng những chức năng sau:
 Giao diện hiện đại, thân thiện, đơn giản, khơng lịe loẹt, dễ nhìn, sáng
sủa.
 Bảo mật thơng tin người dùng, có quy định về chính sách riêng tư.
 Hỗ trợ người dùng đăng ký, đăng nhập, quên mật khẩu ( truyền thống
hoặc đăng nhập thông qua tài khoản Gmail - Google ).
 Xác nhận email sau khi đăng ký tài khoản nhằm tránh các tài khoản ảo.

 Phòng được sắp xếp hiển thị hợp lý theo danh mục, bố cục rõ ràng.
 Người dùng có thể xem, tìm kiếm, đặt phịng, theo dõi trạng thái đơn
đặt phòng, hủy đơn khi đơn chưa được xác nhận hoặc đơn chưa vượt
quá số ngày quy định.
 Người dùng có thể đánh giá đơn đặt phòng khi trả phòng.
 Người dùng có thể quản lý thơng tin cá nhân, đổi mật khẩu.
 Người dùng sẽ nhận hóa đơn điện tử qua email sau khi đặt phịng,
thanh tốn, phản hồi.
 Người dùng có thể tùy chỉnh ngơn ngữ (VI, EN).
 Người dùng có thể phản hồi ý kiến của mình cho trang quản trị.


- 10 -

 Người dùng có thể nhận thơng báo (tin tức mới, Chương trình khuyến
mãi mới) qua email.
 Người dùng có thế lựa chọn hình thức thanh tốn ( tại khách sạn,
VNPay).
 Trang quản trị bao gồm đầy đủ các chức năng quản lý từng thành
phần.
 Trang quản trị hiển thị đầy đủ các số liệu thống kê.
 Trang quản trị hỗ trợ checkin, checkout thông qua QR Code.
 Theo dõi cập nhật nhật ký làm việc của quản trị viên.
 Trang quản trị hỗ trợ tạo, phân quyền theo chức năng cho quản trị
viên.
 Trang quản trị phản hồi lại góp ý của khách hàng thơng qua email.
1.2. PHÂN TÍCH THIẾT KẾ
1.2.1. Tác nhân và vai trị
1.2.1.1. Xác định các tác nhân
STT


1

2
3

Tên tác nhân

Khách hàng (User)

Vai trị
Người có nhu cầu đặt phòng tương tác trực tiếp với
trang website

Quản trị viên

Người quản lý trang website về phòng, đơn đặt

(Admin)

phòng, phản hồi, checkin, checkout, người dùng,...

Hệ thống (System)

Xử lý các chức năng của trang web

BẢNG 2.1. Xác định các tác nhân
1.2.1.2 Xác định các Use-case
STT


Tác nhân

1

Khách hàng

Use-case

Ý nghĩa

Đăng ký và Đăng nhập Tạo 1 tài khoản để hưởng quyền


- 11 -

lợi của khách hàng, đăng nhập
để sử dụng đầy đủ các chức
năng của trang web và sau đó
đăng xuất khỏi tài khoản để bảo
mật tài khoản.
Đăng nhập bằng tài

Thực hiện đăng nhập với tài

khoản Google

khoản Google của khách hàng.

Qn mật khẩu


Xem thơng tin phịng

Giúp khách hàng lấy lại mật
khẩu.
Giới thiệu và trưng bày các
thông tin liên quan về phòng.

Xem phòng theo thể

Hiển thị các phòng theo thể loại

loại phịng

phịng đã chọn.

Xem bài viết

Giúp khách hàng cập nhật thơng
tin mới nhất về khách sạn…
Giúp khách hàng tìm kiếm

Tìm kiếm phịng

phịng dựa trên những từ khóa
ngày đến ngày đi … để tiết kiệm
thời gian.

Thêm phòng vào đơn

Giúp khách hàng thêm phịng đã


đặt phịng

chọn vào đơn đặt phịng.

Đặt phịng

Thanh tốn online

Giúp khách hàng thực hiện đặt
phòng đã chọn.
Giúp khách hàng thực hiện
thanh tốn đơn đặt phịng thơng


- 12 -

qua VNPay.
Tiếp nhận phản hồi của khách
Phản hồi

hàng và trả lời lại cho khách
hành thông qua email.

Đánh giá đơn đặt
phịng

Sau khi trả phịng, thì cho khách
hành đánh giá chất lượng dịch
vụ của khách sạn.


Theo dõi đơn đặt

Giúp khách hàng cập nhập thơng

phịng

tin chi tiết về đơn hàng đã đặt.
Hỗ trợ khách hàng dễ dàng lựa

Sắp xếp phòng

chọn phòng theo loại phịng, giá,
số lượng người…

Đa ngơn ngữ

Nhận email quảng cáo

Hỗ trợ khách hàng với nhiều
ngôn ngữ khác nhau.
Hỗ trợ khách hàng đăng ký nhận
quảng cáo từ khách sạn.
Giúp khách hàng cập nhật tin

Xem tin tức

tức, xem tin tức mới do khách
sạn đăng.
Giúp khách hàng cập nhập bổ


Quản lý đơn đặt phịng sung thơng tin đơn đặt phịng,
hỗ trợ cho việc thanh toán.


- 13 -

Giúp khách hàng xem thông tin
Quản lý thông tin cá

cá nhân, cập nhập bổ sung thông

nhân

tin cá nhân, hỗ trợ cho việc
thanh toán.
Đăng nhập để sử dụng đầy đủ

Đăng nhập, đăng xuất

các chức năng của trang website
và sau đó đăng xuất khỏi tài
khoản để bảo mật tài khoản.

Quản lý loại phịng

Giúp tạo, sửa, xóa loại phịng.

Quản lý nhãn


Giúp tạo, sửa, xóa nhãn.

Quản lý dịch vụ phịng Giúp tạo, sửa, xóa dịch vụ.
Quản lý giá ngày đặc

Giúp tạo, sửa, xóa giá ngày đặc

biệt(ngày lễ)

biệt.
Giúp hiển thị, cập nhật trạng

2

Quản trị viên

Quản lý người dùng

thái, xóa người dùng, xuất dữ
liệu người dùng ra file exce.

Quản lý phản hồi

Giúp hiển thị, phản hồi.

Quản lý dịch vụ phát

Giúp tạo, sửa, xóa dịch vụ phát

sinh


sinh.

Quản lý bài viết

Giúp tạo, sửa, xóa bài viết.

Quản lý phịng

Giúp tạo, sửa, xóa phịng, xuất
dữ liệu ra file exce.

Quản lý checkin,

Giúp tìm kiếm thơng tin đơn đặt

checkout

phịng thơng qua mã QR Code,


- 14 -

cập nhật trạng thái đơn đặt
phòng.
Quản lý nhật ký công

Giúp hiển thị nhật ký công việc

việc


trên hệ thống.

Quản lý quản trị viên

Giúp tạo, sửa, xóa, phân quyền
quản trị viên.
Giúp hiển thị, cập nhập trạng

Quản lý đơn đặt phòng

thái đơn hàng, xóa đơn đặt
phịng, xuất dữ liệu đơn đặt
phịng ra file exce.

Đa ngôn ngữ

Xem thống kê

Hệ thống

ngôn ngữ khác nhau.
Hiển thị các bảng số liệu thống
kê của trang web.

Gửi thơng tin đơn đặt

Gửi thơng tin đơn đặt phịng qua

phịng


email của khách hàng.

Gửi nội dung phản hồi

3

Hỗ trợ người dùng với nhiều

Gửi thông báo

Hiển thị thông báo

Gửi nội dung phản hồi cho
khách hàng.
Gửi thơng báo đến khách hàng
(phịng mới, tin tức, event…).
Hiển thị thơng báo khi có khách
hàng đặt phịng, góp ý…

Gửi email xác nhận

Gửi email xác nhận đăng ký tài

đăng ký

khoản, tránh các email ảo.

BẢNG 2.2. Xác định các Use-case



- 15 -

1.3. Mơ hình thực thể liên kết
1.3.1. Biểu đồ Use-case tổng quát khách hàng

HÌNH 1.1. Biểu đồ Use-case tổng quát khách hàng


- 16 -

1.3.2. Biểu đồ Use-case quản trị viên

HÌNH 1.2. Biểu đồ Use-case quản trị viên


- 17 -

CHƢƠNG 2: PHÂN TÍCH LNG DỮ LIỆU QUAN HỆ
2.1. Biểu đồ tuần tự (Sequence Diagram)
2.1.1.Biểu đồ tuần tự thêm phịng vào đơn đặt phịng

HÌNH 2.3. Biểu đồ tuần tự thêm phòng và đơn đặt phòng


- 18 -

2.1.2. Biểu đồ tuần tự xem đơn đặt phịng

HÌNH 2.4. Biểu đồ tuần tự xem đơn đặt phịng



- 19 -

2.1.3. Biểu đồ tuần tự cập nhật đơn đặt phịng

HÌNH 2.5. Biểu đồ tuần tự cập nhật đơn đặt phịng
2.1.4. Biểu đồ tuần tự thanh tốn


- 20 -

HÌNH 2.6. Biểu đồ tuần tự thanh tốn
2.2. Biểu đồ lớp ràng buộc dữ liệu (Class Diagram)

HÌNH 2.7. Biểu đồ lớp


- 21 -

HÌNH 2.8. Biểu đồ lớp


- 22 -

HÌNH 2.9. Biểu đồ lớp


- 23 -


HÌNH 2.10. Biểu đồ lớp


- 24 -

2.3. Mơ hình cơ sở dữ liệu quan hệ (Database Diagram)

HÌNH 2.11. Biểu đồ cơ sở dữ liệu


- 25 -

2.4. Các bảng cơ sở dữ liệu
2.4.1. Bảng quản trị viên (admins)
Tên

Kiểu dữ liệu

Mơ tả

id

int(10) unsigned

Mã id (khóa chính)

name

varchar(255)


Tên quản trị viên

email

varchar(255)

Địa chỉ email quản trị
viên

password

varchar(255)

Mật khẩu

remember_token

varchar(100)

Mã ghi nhớ đăng nhập

isdeleted

tinyint(1)

Phân biệt xóa và chưa
xóa

created_at


timestamp

Thời gian tạo

updated_at

timestamp

Thời gian cập nhật

BẢNG 2.2. Quản trị viên
2.4..2. Bảng nhật ký công việc (audits)
Tên

Kiểu dữ liệu

Mơ tả

id

int(10) unsigned

Mã id (khóa chính)

user_type

varchar(191)

Tên model user thực hiện
thay đổi


user_id

bigint(20)

Id user thực hiện thay đổi

event

varchar(191)

Hành động

auditable_type

varchar(191)

Tên model bị thay đổi


×