Tải bản đầy đủ
Chương 3. PHÂN TÍCH THIẾT KẾ HỆ THỐNG CỔNG THÔNG TIN DU LỊCH

Chương 3. PHÂN TÍCH THIẾT KẾ HỆ THỐNG CỔNG THÔNG TIN DU LỊCH

Tải bản đầy đủ

60

Bảng 2. Bảng dữ liệu thắng cảnh
Tên trường
ID

Kiểu dữ liệu
int

Name

Ràng buộc
Khóa chính

Increment
Tên điểm du

varchar

Address
ID_City
Name_City
ID_Des
Price
Desc
Phone
Images
Characteristics
Checked
ID_Supplier

varchar
int
varchar
int
int
text
varchar
varchar
varchar
tinyint
int

Diễn giải
Auto

Khóa ngoại
Khóa ngoại

lịch
Địa chỉ
Thành phố
Điểm đến
Giá vé (nếu có)
Mô tả
Điện thoại
Ảnh
Đặc điểm

Bảng fithou_characteristics: Đặc điểm, loại hình du lịch…
Bảng 3. Bảng dữ liệu đặc điểm, loại hình du lịch
Tên trường
ID
Name

Kiểu dữ liệu
int

Ràng buộc
Khóa chính

Diễn giải
Auto
Increment
Tên đặc điểm

varchar

Bảng fithou_city: Danh mục các thành phố
Bảng 4. Bảng dữ liệu các thành phố
Tên trường
ID
Name
Desc
ID_Region
Name_Region

Kiểu dữ liệu
int
varchar
text
int
varchar

Ràng buộc
Khóa chính

Diễn giải
Auto

Khóa ngoại

Increment
Tên đặc điểm
Mô tả
Khu vực

61

Bảng fithou_destination
Bảng 5. Bảng dữ liệu các điểm đến
Tên trường
ID

Kiểu dữ liệu
int

Ràng buộc
Khóa chính

Diễn giải
Auto Increment

Name

varchar

ID_City

int

Name_City

varchar

Images

varchar

Ảnh

Desc

text

Mô tả

Characteristics

varchar

Loại hình du lịch

Checked

tinyint

Tên điểm đế
Khóa ngoại

Thành phố

Bảng fithou_event: Các sự kiện, lễ hội
Bảng 6. Bảng dữ liệu sự kiện, lễ hội
Tên trường
ID
Name
ID_City
Name_City
Address
Price
Phone
Desc
Images

Kiểu dữ liệu
int
varchar
int
varchar
varchar
float
varchar
text
varchar

ID_Supplier

int

Name_Supplier

varchar

Ràng buộc
Khóa chính
Khóa ngoại

Diễn giải
Auto Increment
Tên sự kiện
Thành phố
Địa chỉ
Giá vé
Điện thoại
Mô tả
Ảnh

62

Checked

tinyint

Bảng fithou_facilities: Cơ sở vật chất của một khách sạn
Bảng 7. Bảng dữ liệu cơ sở vật chất
Tên trường

Kiểu dữ liệu

Ràng buộc

Diễn giải

ID

int

Khóa chính

Auto Increment

Name

varchar

Tên tiện nghi

Bảng fithou_price_acc: Giá của mỗi loại phòng trong khách sạn
Bảng 8. Bảng dữ liệu giá phòng các khách sạn
Tên trường

Kiểu dữ liệu

Ràng buộc

Diễn giải

ID_Acc

int

Khóa chính

Khách sạn

ID_Type

int

Khóa chính

Loại phòng

Price

int

Giá

Bảng fithou_product_type: Các loại sản phẩm của một cửa hàng
Bảng 9. Bảng dữ liệu các loại sản phẩm
Tên trường
ID

Kiểu dữ liệu
int

Name

varchar

Ràng buộc
Khóa chính

Diễn giải
Auto Increment
Tên
phẩm

Bảng fithou_region

loại

sản

63

Bảng 10. Bảng dữ liệu các khu vực
Tên trường
ID

Kiểu dữ liệu
int

Ràng buộc
Khóa chính

Diễn giải
Auto Increment

Name

varchar

Tên khu vực

Desc

text

Mô tả

Bảng fithou_room_type: Các loại phòng trong một khách sạn
Bảng 11. Bảng dữ liệu các loại phòng
Tên trường
ID

Kiểu dữ liệu
int

Ràng buộc
Khóa chính

Diễn giải
Auto Increment

Name

varchar

Tên loại phòng

Images

varchar

Image

Desc

text

Mô tả

Capacity

tinyint

Sức chứa

Bảng fithou_services: Các loại dịch vụ của một khách sạn
Bảng 12. Bảng dữ liệu các dịch vụ của khách sạn
Tên trường
ID

Kiểu dữ liệu
int

Name

varchar

Ràng buộc
Khóa chính

Diễn giải
Auto Increment
Tên dịch vụ

Bảng fithou_rec_case: Case base
Bảng 13 Bảng dữ liệu case base
Tên trường
ID

Kiểu dữ liệu
int

Ràng buộc
Khóa chính

Diễn giải
Auto Increment

ID_TravelWish

int

Khóa ngoại

Travel wish

64

ID_TravelBag

int

Khóa ngoại

Travel bag

ID_UserProfile

int

Khóa ngoại

Profile

ID_Reward

int

Khóa ngoại

Reward

Bảng fithou_rec_reward: Điểm số của các thành phần trong case
Bảng 14. Bảng dữ liệu điểm số các thành phần của case
Tên trường
ID

Kiểu dữ liệu
int

Base_Contraint

tinyint

Điểm đánh giá

Location

tinyint

Điểm đánh giá

Accommodation

tinyint

Điểm đánh giá

Attraction

tinyint

Điểm đánh giá

3.1.2. Sơ đồ liên kết thực thể

Ràng buộc
Khóa chính

Diễn giải
Auto Increment

65

3.2. Thiết kế chương trình
3.2.1. Thiết kế các lớp dữ liệu
SimilityObject: Lớp cơ sở các đối tượng khác
Bảng 15. Lớp SimilityObject
Thuộc tính

Mô tả

simility

Độ tương tự

Phương thức

Mô tả

__construct()

Hàm khởi tạo

66

BaseConstraint: Các yêu cầu về chuyến đi của người dùng
Bảng 16. Lớp BaseConstraint
Thuộc tính

Mô tả

duration

Thời gian kéo dài chuyến đi

month

Đi vào tháng nào

year

Đi vào năm nào

party

Đi như thế nào (một mình, cặp đôi, gia đình…)

min_budget

Chi phí thấp nhất

max_budget

Chi phí tối đa

Phương thức

Mô tả

__construct()

Hàm khởi tạo

Location: Mô tả một điểm đến
Bảng 17. Lớp Location
Thuộc tính

Mô tả

city

Mã thành phố

destination

Điểm đến

chars

Đặc điểm

des_name

Tên điểm đến

Phương thức

Mô tả

__construct()

Hàm khởi tạo

67

Accommodation: Mô tả một khách sạn
Bảng 18. Lớp Accommodation
Thuộc tính

Mô tả

accommondation

Mã khách sạn

room_type

Loại phòng

capacity

Sức chứa

min_price

Giá tối thiểu

max_price

Giá tối đã

star

Loại mấy sao

is_hotel

Có là khách sạn

services

Các dịch vụ

facilities

Cơ sở vật chất

acc_name

Tên khách sạn

Phương thức

Mô tả

__construct()

Hàm khởi tạo

TravelInformation: Mô tả travel bag và travel wish
Bảng 19. Lớp TravelInformation
Thuộc tính
base_constraint
location
accommodation
attraction

Mô tả
Đối tượng BaseConstraint
Đối tượng Location
Đối tượng Accommodation
Đối tượng _Attraction

68

Phương thức

Mô tả

__construct()

Hàm khởi tạo

_Case: Cấu trúc case mô tả chuyến đi của khách du lịch
Bảng 20. Lớp Case
Thuộc tính

Mô tả

travel_wish

Đối tượng TravelInformation

travel_bag

Đối tượng TravelInformation

user_profile

Đối tượng UserProfile

reward

Đối tượng Reward

Phương thức

Mô tả

__construct()

Hàm khởi tạo

CBRConfig: Chứa các thông số thiết lập
Bảng 21. Lớp CBRConfig
Thuộc tính

Mô tả

no_of_sim_case
max_recommendation_item
max_search_item
duration_range
month_range
year_range
budget_range
capacity_range
acc_price_range

Số lượng case tương tự lấy ra
Số lượng tối đa các item gơi ý
Số lượng tìm kiếm tối đa
Duration Range
Month Range
Year Range
Budget Range
Capacity Range
Accommodation Price Range

69

att_price_range
star_range
year_of_birth_range
no_of_characteristic

Attraction Price Range
Star Range
Year Of Birth Range

no_of_facility

Số lượng cơ sở vật chất của một khách sạn
Số lượng dịch vụ của một khách sạn
Alpha
Trọng số Travel Wish

Số lượng đặc tính của một item

no_of_service
alpha
tw_weight
tb_weight
twb_weight

Trong số Travel Bag

u_weight

Trong số User Profile

r_weight

Trọng số Reward

Trọng số Travel Wish Bag

DBAdapter: Các thao tác tìm kiếm trên cơ sở dữ liệu
Bảng 22. Lớp DBAdapter
Thuộc tính

Mô tả

CI

Đối

tượng

CI_Controler
framework
Phương thức

Mô tả

_construct ()

Hàm khởi tạo

fetch_all_case ()

Lấy toàn bộ case

search_accommodation

(accommodation,

location)
search_attraction (attraction, location)
search_location (location)

CBR: Lớp đối tượng chứa các hàm giải thuật

Tìm khách sạn
Tìm điểm vui chơi
Tìm điểm đến

của

70

Bảng 23. Lớp CBR
Thuộc tính

Mô tả

dba

Đối tượng DBAdapter

all_case

Mảng đối tượng _Case

current_case

Đối tượng _Case

Phương thức

Mô tả

__construct()

Hàm khởi tạo

location_simility(loc1, loc2)

Độ tượng tự giữa 2 điểm đến

location_scoring(location,
similar_cases)
recommend_location(user_profile,

Cho điểm điểm đến

base_constraint, location)

Gợi ý điểm đến

attraction_simility(att1, att2)

Độ tượng tự giữa 2 điểm du lịch

attraction_scoring(att, similar_cases)

Cho điểm điểm du lịch

recommend_attraction(attraction)

Gợi ý điểm du lịch

accommodation_simility(acc1, acc2)

Độ tượng tự giữa 2 khách sạn

accommodation_scoring(acc,
similar_cases)

Cho điểm khách sạn

recommend_accommodation(accommo
dation)

Gợi ý khách sạn

case_simility(case1, case2)

Độ tương tự giữa 2 case

find_similar_case()

Tìm case tương tự

base_constraint_simility(base1, base2)

Độ

tượng

tự

giữa

2

Base

Constraint
travel_infomation_simility(t1, t2)

Độ tượng tự TravelInformation