1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo phân tích và thiết kế website giới thiệu du lịch việt lào và đặt tour du lịch 2022

85 5 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Báo Cáo Phân Tích Và Thiết Kế Website Giới Thiệu Du Lịch Việt Lào Và Đặt Tour Du Lịch 2022
Năm xuất bản 2022
Định dạng
Số trang 85
Dung lượng 6,95 MB
File đính kèm phan-tich-website-gioi-thieu-du-lich.zip (7 MB)

Cấu trúc

  • Chương 1...............................................................................................................3 (10)
    • 1.1 Giới thiệu về hệ thống (10)
    • 1.2 Cơ sở lý thuyết về cơ sở dữ liệu (10)
    • 1.3 Ngôn ngữ lập trình (12)
      • 1.3.1 Ngôn ngữ HTML (12)
      • 1.3.2. Ngôn ngữ CSS (14)
      • 1.3.3. Ngôn ngữ PHP (15)
    • 1.4. Laravel framework (16)
    • 1.5 Kết chương 2 (17)
  • Chương 2.............................................................................................................13 (19)
    • 2.1 Khảo sát hệ thống (19)
      • 2.1.1 Mục đích (19)
      • 2.1.2 Mô tả hệ thống (19)
      • 2.1.3 Nhóm chức năng chính (20)
    • 2.2 Phân tích hệ thống (22)
      • 2.2.1 Mô hình hóa chức năng nghiệp vụ (22)
      • 2.2.2 Xây dựng biểu đồ Use Case (28)
      • 2.2.3 Xây dựng biểu đồ lớp (42)
      • 2.2.4 Xây dựng biểu đồ tuần tự (55)
    • 2.3 Thiết kế cơ sở dữ liệu (64)
      • 2.3.1 Mô hình quan hệ (64)
      • 2.3.2 Danh sách các bảng trong mô hình quan hệ (64)
    • 2.4 Thiết kế giao diện tổng quan (73)
    • 2.5 Kết chương (78)
    • 1. Tổng kết (83)
    • 2. Hướng phát triển (83)
  • TÀI LIỆU THAM KHẢO (84)

Nội dung

Lào là một vùng đất thanh bình và đạm nét cổ kính tôn nghiêm của những ngôi chùa tháp, đất nước “Triệu Voi” đã và đang làm say lòng nhiều du khách quốc tế. Những năm qua, ngành du lịch của Lào phát triển mạnh mẽ mang lại nhiều kết quả tích cực và trở thành một trong những ngành mũi nhọn của nền kinh tế Lào Trên thực tế có những website (travel.com.vn, skydoor.net,…) đã giải quyết vấn đề về tra cứu thông tin du lịch nhưng vẫn chưa thực sự đầy đủ. Đi kèm với đó còn tồn tại các mặt hạn chế: Nguồn thông tin chưa xác thực, còn mang tính quảng cáo nhiều khiến người dùng bị loãng thông tin. Thiếu một vài chức năng mà theo phần lớn người dùng thì những điều này là cần thiết như xác định địa điểm hiện tại, xem thời tiết tại vị trí du lịch. Từ yêu cầu thực tế đó và cũng như phân tích từ những sản phẩm đi trước, nhóm đã tìm hiểu cũng như đánh giá để đi đến giải pháp xây dựng Hệ thống hỗ trợ thông tin du lịch để khắc phục những hạn chế còn tồn động trên. Cùng với đó, nhóm còn xây dựng cả website và ứng dụng trên điện thoại di động chạy hệ điều hành android như một thể thống nhất, để du khách có thể tiện truy cập theo hai hình thức như trên. Trang web mà đề tài hướng đến sẽ cung cấp đầy đủ thông tin cho những ai muốn đi du lịch Lào. Người dùng có thể đặt những câu hỏi về điểm đến, khách sạn, nhà hàng, thời tiết hay bất cứ câu hỏi gì khác, hệ thống sẽ cung cấp cho bạn đầy đủ thông tin hoặc có rất nhiều người từ có kinh nghiệm hoặc hiểu biết sẽ trả lời cho bạn. Những chuyến đi và kinh nghiệm thực tế được người dùng chia sẻ cho những người khác, từ đó bạn có thể dễ dàng thiết kế lịch trình cho chuyến đi của mình.

Giới thiệu về hệ thống

Lào, vùng đất thanh bình với vẻ đẹp cổ kính và những ngôi chùa tháp trang nghiêm, đã thu hút sự chú ý của nhiều du khách quốc tế Trong những năm gần đây, ngành du lịch Lào đã phát triển mạnh mẽ, mang lại nhiều kết quả tích cực và trở thành một trong những ngành kinh tế mũi nhọn của đất nước "Triệu Voi".

Mặc dù một số website như travel.com.vn và skydoor.net đã cung cấp thông tin du lịch, nhưng vẫn còn nhiều thiếu sót và hạn chế trong việc tra cứu thông tin một cách đầy đủ và hiệu quả.

- Nguồn thông tin chưa xác thực, còn mang tính quảng cáo nhiều khiến người dùng bị loãng thông tin.

Nhiều người dùng cho rằng ứng dụng còn thiếu một số chức năng quan trọng, như khả năng xác định địa điểm hiện tại và cung cấp thông tin về thời tiết tại vị trí du lịch Những tính năng này được xem là cần thiết để nâng cao trải nghiệm người dùng.

Nhằm khắc phục những hạn chế trong thông tin du lịch, nhóm đã nghiên cứu và phân tích các sản phẩm trước đó để phát triển Hệ thống hỗ trợ thông tin du lịch Đồng thời, nhóm cũng xây dựng website và ứng dụng di động trên hệ điều hành Android, tạo sự thuận tiện cho du khách khi truy cập thông tin qua hai hình thức này.

Trang web này cung cấp thông tin chi tiết cho những ai có ý định du lịch Lào Người dùng có thể đặt câu hỏi về các điểm đến, khách sạn, nhà hàng, thời tiết và nhiều vấn đề khác, với hệ thống hỗ trợ cung cấp thông tin đầy đủ hoặc nhận được phản hồi từ những người có kinh nghiệm Ngoài ra, những chuyến đi và kinh nghiệm thực tế được chia sẻ từ người dùng giúp bạn dễ dàng thiết kế lịch trình cho chuyến đi của mình.

Cơ sở lý thuyết về cơ sở dữ liệu

Hệ thống sử dụng hệ cơ sở dữ liệu MySQL.

MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ hiệu quả và dễ sử dụng, phù hợp cho nhiều loại hình doanh nghiệp từ nhỏ đến lớn Được phát triển và hỗ trợ bởi công ty Thụy Điển MySQL AB, MySQL đã trở thành lựa chọn phổ biến trong việc quản lý dữ liệu.

Hệ cơ sở dữ liệu này đã trở thành khá phổ biến vì nhiều lý do:

 MySQL là mã nguồn mở

 MySQL là một chương trình rất mạnh mẽ.

 MySQL sử dụng một Form chuẩn của ngôn ngữ dữ liệu nổi tiếng là SQL.

 MySQL làm việc trên nhiều Hệ điều hành và với nhiều ngôn ngữ như PHP, PERL, C, C++, Java, …

 MySQL làm việc nhanh và khỏe ngay cả với các tập dữ liệu lớn.

 MySQL rất thân thiện với PHP, một ngôn ngữ rất đáng giá để tìm hiểu để phát triển Web.

MySQL có khả năng hỗ trợ các cơ sở dữ liệu lớn, với dung lượng lên tới 50 triệu hàng hoặc nhiều hơn trong một bảng Mặc dù kích thước file mặc định cho mỗi bảng bị giới hạn ở mức 4 GB, nhưng chúng ta có thể mở rộng kích thước này (nếu hệ điều hành cho phép) để đạt tới giới hạn lý thuyết lên đến 8 TB.

MySQL là một hệ quản trị cơ sở dữ liệu có khả năng tùy chỉnh cao Với giấy phép GPL mã nguồn mở, lập trình viên có thể dễ dàng sửa đổi phần mềm MySQL để phù hợp với nhu cầu và môi trường cụ thể của họ.

MySQL sử dụng nhiều kiểu dữ liệu, được chia thành 3 loại: kiểu số, kiểu date và time, và kiểu chuỗi.

Kiểu dữ liệu số trong MySQL

MySQL sử dụng tất cả các kiểu dữ liệu số theo chuẩn ANSI SQL Các kiểu dữ liệu số phổ biến gồm:

 INT : Một số nguyên với kích cỡ thông thường, có thể là signed hoặc unsigned.

Dãy giá trị số nguyên có dấu nằm trong khoảng từ -2147483648 đến 2147483647, trong khi dãy giá trị không có dấu từ 0 đến 4294967295 Độ rộng của các giá trị này có thể lên tới 11 chữ số.

 TINYINT : Một số nguyên với kích cỡ rất nhỏ, có thể là signed hoặc unsigned.

Dãy giá trị có thể dao động từ -128 đến 127 nếu có dấu, trong khi nếu không có dấu, giá trị sẽ nằm trong khoảng từ 0 đến 255 Chúng ta có thể xác định độ rộng lên tới 4 chữ số.

SMALLINT là kiểu dữ liệu số nguyên nhỏ, có thể là signed hoặc unsigned Giá trị của SMALLINT có thể dao động từ -32768 đến 32767 nếu có dấu, và từ 0 đến 65535 nếu không có dấu Độ rộng của SMALLINT có thể được xác định lên tới 5 chữ số.

MEDIUMINT là kiểu dữ liệu số với kích thước trung bình, có thể là signed hoặc unsigned Đối với kiểu signed, giá trị nằm trong khoảng từ -8388608 đến 8388607, trong khi kiểu unsigned có giá trị từ 0 đến 16777215 Độ rộng tối đa có thể xác định lên tới 9 chữ số.

 BIGINT : Một số nguyên với kích cỡ lớn, có thể là signed hoặc unsigned Nếu có dấu,thì dãy giá trị có thể là từ -9223372036854775808 tới

9223372036854775807, nếu không dấu thì dãy giá trị là từ 0 tới

18446744073709551615 Chúng ta có thể xác định một độ rộng lên tới 20 chữ số.

FLOAT(M,D) là kiểu dữ liệu số thực dấu chấm động không dấu, cho phép định nghĩa độ dài hiển thị (M) và số vị trí thập phân (D) Mặc dù việc định nghĩa này không bắt buộc, giá trị mặc định sẽ là 10,2, trong đó 10 là tổng số chữ số (bao gồm cả phần thập phân) và 2 là số vị trí sau dấu phẩy Đặc biệt, phần thập phân có thể đạt tới 24 vị trí cho một số FLOAT.

DOUBLE(M,D) là kiểu dữ liệu số thực dấu chấm động không dấu, cho phép định nghĩa độ dài hiển thị (M) và số vị trí sau dấu phẩy (D) Mặc định, kiểu này có độ dài 16 chữ số, trong đó 4 là số vị trí thập phân và 16 là tổng số chữ số, bao gồm cả phần thập phân Đặc biệt, phần thập phân có thể lên tới 53 vị trí REAL được coi là đồng nghĩa với DOUBLE.

DECIMAL(M,D) là một kiểu dữ liệu dấu chấm động không dấu, trong đó mỗi chữ số thập phân chiếm 1 byte Việc xác định độ dài hiển thị (M) và số vị trí sau dấu phẩy (D) là bắt buộc Từ NUMERIC có thể được sử dụng như một từ đồng nghĩa với DECIMAL.

Ngôn ngữ lập trình

HTML (Ngôn ngữ siêu văn bản) là một ngôn ngữ lập trình quan trọng trong phát triển web Khi người dùng nhấp vào các liên kết trên một trang web, họ sẽ được chuyển đến nhiều trang khác nhau, tất cả đều được định dạng dưới dạng tài liệu HTML.

Một trang HTML được tạo thành từ nhiều phần tử nhỏ và được xác định bằng các thẻ tag Để phân biệt giữa trang web sử dụng ngôn ngữ HTML và PHP, chúng ta có thể xem xét phần đuôi của đường link Thông thường, các trang HTML sẽ có đuôi là HTML hoặc HTM.

HTML là ngôn ngữ lập trình web đơn giản, được hỗ trợ bởi tất cả các trang web và trình duyệt Phiên bản mới nhất, HTML 5, mang đến nhiều tính năng ưu việt và chất lượng vượt trội so với các phiên bản trước.

Vai trò của HTML trong lập trình web:

HTML là ngôn ngữ đánh dấu siêu văn bản, đóng vai trò quan trọng trong việc cấu trúc và bố cục các thành phần của website Nó hỗ trợ khai báo các tập tin kỹ thuật số như video, nhạc và hình ảnh Ưu điểm nổi bật của HTML là khả năng xây dựng cấu trúc hoàn chỉnh cho trang web, giúp hiển thị nội dung một cách hiệu quả Dù website thuộc thể loại nào hay sử dụng ngôn ngữ lập trình nào, HTML vẫn là yếu tố cần thiết để người truy cập có thể xem nội dung Do đó, việc học HTML là bước đầu tiên quan trọng cho các lập trình viên và nhà phát triển web khi thiết kế trang web.

Các trang HTML được cấu trúc bằng các thẻ tag, được biểu diễn trong dấu ngoặc đơn như: Hầu hết các thẻ cơ bản đều có thẻ đóng tương ứng, ngoại trừ một số thẻ đặc biệt Chẳng hạn, thẻ có thẻ đóng là , và thẻ có thẻ đóng là Bảng 1.1 liệt kê các mẫu thẻ tag thường gặp trong HTML.

Bảng 1.1 Các mẫu thẻ thường gặp trong HTML

Còn gọi là thẻ khai báo một tài liệu HTML Thẻ này xác định loại tài liệu và phiên bản HTML.

Thẻ này chứa đựng các tài liệu HTML đầy đủ Ở đầu trang sẽ xuất hiện các thẻ , và thân tài liệu là các thẻ ,

Thẻ này đại diện cho đầu trang tài liệu mà có thể giữ các thẻ

Thẻ được sử dụng trong thẻ chỉ tiêu đề tài liệu.

Thẻ này đại diện cho thân tài liệu và giữ các thẻ như , ,

Thẻ tag này đại diện cho các tiêu đề trang.

Thẻ tag này đại diện cho định dạng các đoạn văn trong trang web.

1.3.2 Ngôn ngữ CSS Định nghĩa

CSS, viết tắt của Cascading Style Sheets, là ngôn ngữ dùng để mô tả giao diện và định dạng của tài liệu được viết bằng ngôn ngữ đánh dấu Nó cung cấp tính năng bổ sung cho HTML, giúp thay đổi phong cách và giao diện người dùng của trang web Ngoài HTML, CSS còn có thể được áp dụng cho bất kỳ loại tài liệu XML nào, bao gồm XML đơn giản, SVG và XUL.

CSS là một phần quan trọng trong việc phát triển web, thường được sử dụng kết hợp với HTML và JavaScript để thiết kế giao diện người dùng cho các ứng dụng web và ứng dụng di động.

Ba lợi ích chính của CSS

 Giải quyết một vấn đề lớn:

Trước khi CSS ra đời, việc thiết lập phông chữ, màu sắc, kiểu nền, sắp xếp phần tử, đường viền và kích thước trên mỗi trang web là một công việc tốn thời gian và công sức, vì phải lặp lại những thuộc tính này cho từng trang.

Tiết kiệm thời gian đáng kể là một lợi ích lớn của việc sử dụng CSS bên ngoài, vì định nghĩa kiểu được lưu trữ trong các tệp riêng biệt Điều này cho phép bạn thay đổi toàn bộ giao diện của trang web chỉ bằng cách chỉnh sửa một tệp duy nhất.

 Cung cấp thêm các thuộc tính:

CSS cung cấp các thuộc tính chi tiết hơn HTML để định nghĩa giao diện của trang web.

PHP bắt đầu như một dự án mã nguồn mở nhỏ, nhưng đã nhanh chóng trở nên hữu ích và phổ biến Được phát triển từ sản phẩm PHP/FI do Rasmus Lerdorf tạo ra vào năm 1994, PHP/FI ban đầu chỉ là một tập con đơn giản của mã kịch bản Perl để theo dõi lượt truy cập vào trang cá nhân của ông Rasmus đã đặt tên cho bộ mã này là "Personal Home Page Tools" Khi nhu cầu về các chức năng phức tạp hơn tăng lên, ông đã phát triển một bộ thực thi lớn hơn bằng C để hỗ trợ truy vấn cơ sở dữ liệu và phát triển ứng dụng web đơn giản Cuối cùng, Rasmus quyết định công bố mã nguồn của PHP/FI để mọi người có thể xem, sử dụng và cải tiến.

PHP viết hồi qui của "PHP: Hypertext Preprocessor".

PHP là ngôn ngữ lập trình kịch bản phía máy chủ, thường được nhúng trong HTML Ngôn ngữ này chủ yếu được sử dụng để quản lý nội dung động, cơ sở dữ liệu và theo dõi phiên làm việc.

PHP được tích hợp với một số Database thông dụng như MySQL, PostgreSQL, Oracle, Sybase, Informix, và Microsoft SQL Server.

PHP hoạt động hiệu quả, đặc biệt khi được biên dịch dưới dạng mô-đun Apache trên hệ điều hành Unix MySQL Server có khả năng thực hiện các truy vấn phức tạp với khối lượng dữ liệu lớn, đạt hiệu suất ấn tượng trong thời gian ngắn.

PHP hỗ trợ nhiều giao thức quan trọng như POP3, IMAP và LDAP Phiên bản PHP4 đã mở rộng khả năng bằng cách bổ sung hỗ trợ cho Java cùng với các cấu trúc đối tượng phân phối như COM và CORBA.

Cú pháp PHP là giống C.

Các đặc trưng quan trọng làm PHP trở thành ngôn ngữ khá tiện lợi:

Laravel framework

Framework là thư viện hàm lập trình sẵn, hỗ trợ lập trình PHP hiệu quả hơn Sử dụng framework giúp tiết kiệm thời gian, tăng tốc độ phát triển và nâng cao bảo mật cho hệ thống Thông thường, một PHP Framework được xây dựng dựa trên mô hình MVC.

Tính đến năm 2015, Framework Laravel đã trở thành công cụ phát triển web phổ biến nhất thế giới, nhờ vào sự hỗ trợ mạnh mẽ từ cộng đồng.

Từ năm 2014, Laravel Framework đã trở thành một trong những dự án PHP nổi bật nhất trên Github Nhờ sự hỗ trợ liên tục từ cộng đồng Laravel toàn cầu, phiên bản mới nhất hiện tại là Laravel 5.2, và phiên bản 5.3 đang trong quá trình phát triển.

Các tính năng cơ bản của Laravel Framework

 Bundles: Ở laravel phiên bản 3.x, cung cấp một hệ thống đóng gói các module, với rất nhiều tính năng đi kèm.

Composer trong Laravel phiên bản 4.x là công cụ quản lý giúp thêm các gói cài đặt và các chức năng PHP phụ trợ từ kho Packagist.

Eloquent ORM (Object Relation Mapping) là một công cụ mạnh mẽ giúp ánh xạ các đối tượng và quan hệ trong cơ sở dữ liệu, cung cấp các phương thức nội bộ để thực thi hiệu quả Nó bổ sung các tính năng hạn chế về mối quan hệ giữa các đối tượng trong cơ sở dữ liệu, giúp người dùng dễ dàng quản lý và tương tác với dữ liệu Eloquent ORM trình bày các bảng trong cơ sở dữ liệu dưới dạng các lớp, mang đến một cách tiếp cận truy cập cơ sở dữ liệu mới mẻ và chuyên nghiệp hơn.

 Application logic: Là một phần của phát triển ứng dụng, được sử dụng bởi bộ điều khiển controllers.

 Routes: Định nghĩa mối quan hệ giữa các đường dẫn (url), các liên kết (link)

Khi một liên kết được tạo ra bằng cách sử dụng tên của routes, thì một định danh liên kết thống nhất sẽ được tạo ra bởi laravel.

 Restful Controller: cung cấp các tùy chọn để tách các logic phía sau các request

Tải tự động class trong PHP giúp nạp các class cần thiết mà không cần phải sử dụng câu lệnh include, từ đó tối ưu hóa hiệu suất và giảm thiểu việc tải các class không cần thiết.

 View: chứa các mã html, hiển thị dữ liệu được chỉ định bởi controller

Migrations cung cấp một hệ thống kiểm soát phiên bản cho lược đồ cơ sở dữ liệu, giúp ứng dụng web tương thích với các thay đổi logic, mã code và cấu trúc cơ sở dữ liệu Điều này cho phép triển khai linh hoạt và cập nhật ứng dụng một cách hiệu quả.

Unit Testing đóng vai trò quan trọng trong Laravel, cung cấp nhiều hệ thống kiểm thử đơn vị để phát hiện và ngăn chặn lỗi hiệu quả Việc thực hiện Unit Testing có thể được thực hiện dễ dàng thông qua tiện ích dòng lệnh.

Tính năng phân trang tự động trong Laravel giúp đơn giản hóa quy trình phân trang, mang lại sự tiện lợi hơn so với các phương pháp truyền thống.

Kết chương 2

Dựa trên các phân tích lý thuyết về công nghệ, tôi đã chọn sử dụng framework Laravel để phát triển các chức năng cho website quản lý và giới thiệu tour du lịch Lào, kết hợp với hệ cơ sở dữ liệu MySQL để lưu trữ và quản lý dữ liệu hiệu quả Mặc dù các công nghệ này có một số nhược điểm, nhưng tôi sẽ khai thác tối đa các ưu điểm của chúng nhằm xây dựng một website tour du lịch Lào với các chức năng hoạt động tốt nhất có thể.

Khảo sát hệ thống

Hiện nay, có rất nhiều website cung cấp thông tin du lịch, nhưng chủ yếu chỉ mang tính chất quảng cáo cho các dịch vụ mà không cung cấp thông tin chính xác về địa điểm và cảnh quan Để khắc phục những nhược điểm này, hệ thống hỗ trợ thông tin du lịch đã được xây dựng trên nền tảng web và ứng dụng di động, nhằm cung cấp thông tin đáng tin cậy và những đánh giá khách quan từ người dùng, đồng thời mang đến nhiều tiện ích bổ sung khác.

Người dùng có thể nhanh chóng tra cứu thời tiết tại địa điểm cụ thể, tìm đường, thêm các địa điểm du lịch mới và chia sẻ hình ảnh về những địa điểm này ngay trên điện thoại di động Hơn nữa, họ còn có khả năng cảnh báo sự cố tại các điểm du lịch cho những người dùng khác trong hệ thống.

Các nhóm cung cấp dịch vụ như chủ nhà hàng và khách sạn tham gia vào hệ thống, giới thiệu các loại hình dịch vụ mà họ cung cấp cho khách du lịch Người dùng hệ thống có thể tham khảo và lựa chọn dịch vụ phù hợp với nhu cầu của mình.

- Hệ thống được xây dựng với nhiệm vụ đầu tiên là cung cấp thông tin về các địa điểm du lịch Lào.

Sau khi đăng nhập vào hệ thống, người dùng có thể xem thông tin về địa điểm, tình hình thời tiết, cũng như các bình luận và hình ảnh từ những người dùng khác, giúp họ chia sẻ kinh nghiệm du lịch Hệ thống cho phép người dùng bình luận, đăng tải hình ảnh trải nghiệm, lưu lại các địa điểm và dịch vụ để tham khảo sau này, cũng như chia sẻ lên mạng xã hội Người dùng còn có thể thêm địa điểm du lịch mới bằng cách đăng tải hình ảnh và vị trí, có thể được định vị tự động hoặc do chính người dùng cung cấp.

Nhóm chủ nhà hàng và khách sạn có quyền truy cập vào hệ thống như một khách du lịch, cho phép họ cung cấp các dịch vụ du lịch Đồng thời, nhóm này có thể cập nhật thông tin về giá cả và các dịch vụ mà họ cung cấp, giúp khách du lịch dễ dàng nắm bắt thông tin cần thiết.

Nhóm quản trị sẽ đảm nhận việc quản lý tài khoản người dùng, bao gồm cấp quyền, sửa đổi và vô hiệu hóa tài khoản Họ cũng sẽ quản lý thông tin về địa điểm du lịch, dữ liệu tỉnh thành, và các bài viết của các nhóm người dùng khác Ngoài ra, nhóm còn phụ trách quản lý tin tức du lịch và các loại hình dịch vụ liên quan.

2.1.3.1 Chức năng dành cho “Khách du lịch”

- Đăng nhập hệ thống với quyền của mình.

- Thay đổi thông tin cá nhân và mật khẩu cá nhân.

- Xem thông tin địa điểm du lịch, xem tin tức du lịch và dịch vụ.

- Bật chỉ đường tới địa điểm du lịch

- Chia sẻ thông tin địa điểm du lịch.

- Bình luận và đăng tải hình ảnh về địa điểm du lịch.

- Thêm địa điểm du lịch mới

- Tìm kiếm địa điểm du lịch

2.1.3.2 Chức năng dành cho “Nhóm dịch vụ”

- Có các chức năng như nhóm “Khách du lịch”

- Quản lý thông tin dịch vụ của mình, bao gồm:

+ Tạo mới thông tin về dịch vụ mà mình cung cấp.

+ Sửa thông tin dịch vụ mà mình cung cấp.

+ Vô hiệu hóa thông tin dịch vụ mà mình cung cấp.

2.1.3.3 Chức năng dành cho “Quản trị viên”

- Đăng nhập hệ thống toàn quyền.

- Thay đổi thông tin cá nhân và mật khẩu cá nhân.

- Quản lý danh sách người dùng (Nhóm dịch vụ, Khách du lịch, Thành viên ban quản trị) gồm các hoạt động:

+ Cấp quyền truy cập hệ thống cho người dùng.

+ Cấp lại mật khẩu cho người dùng.

+ Vô hiệu hóa tài khoản người dùng.

- Quản trị địa điểm du lịch gồm hoạt động:

+ Sửa thông tin địa điểm.

+ Vô hiệu hóa địa điểm.

Quản trị bình luận và hình ảnh liên quan đến địa điểm du lịch, dịch vụ và tin tức là rất quan trọng Người dùng có thể thêm bình luận và hình ảnh để chia sẻ trải nghiệm của mình Bên cạnh đó, việc sửa đổi bình luận và hình ảnh cũng giúp cải thiện thông tin và tính chính xác Cuối cùng, chức năng xóa bình luận và hình ảnh không phù hợp giúp duy trì chất lượng nội dung trên nền tảng.

- Quản trị thông tin dịch vụ gồm họat động:

+ Thêm thông tin dịch vụ.

+ Sửa thông tin dịch vụ.

+ Xóa thông tin dịch vụ.

- Quản trị danh mục địa phương (xã-huyện-tỉnh), gồm hoạt động: + Thêm địa phương vào danh mục.

+ Sửa địa phương trong danh mục.

+ Xóa địa phương khỏi danh mục.

- Quản trị tin tức du lịch gồm hoạt động:

Phân tích hệ thống

2.2.1 Mô hình hóa chức năng nghiệp vụ

2.2.1.1 Sơ đồ phân rã chức năng

Hình 2.2.1 1 Sơ đồ phân rã chức năng

2.2.1.2 Sơ đồ tổng quan hệ thống

Hình 2.2.1 2Sơ đồ tổng quan hệ thống

2.2.1.3 Biểu đồ hoạt động a Biểu đồ hoạt động quy trình đăng kí tài khoản người dùng

Hình 2.2.1 3 Biểu đồ hoạt động đăng ký b Biểu đồ hoạt động quy trình đăng nhập hệ thống

Hình 2.2.1 4 Biểu đồ hoạt động đăng nhập c Biểu đồ hoạt động quy trình tìm kiếm địa điểm

Hình 2.2.1 5 Biểu đồ hoạt động tìm kiếm địa điểm d Biểu đồ hoạt động quy trình xem thông tin địa điểm

Hình 2.2.1 6 Biểu đồ hoạt động xem địa điểm e Biểu đồ hoạt động quy trình xem các dịch vụ du lịch

Hình 2.2.1 7 Biểu đồ hoạt động xem dịch vụ du lịch f Biểu đồ hoạt động quy trình thêm địa điểm du lịch

Hình 2 2.1.8 Biểu đồ hoạt động thêm địa điểm du lịch g Biểu đồ hoạt động quy trình thêm dịch vụ du lịch

Hình 2.2.1 9 Biểu đồ hoạt động thêm dịch vụ du lịch h Biểu đồ hoạt động quy trình thay đổi thông tin tài khoản cá nhân

Hình 2.2.1 10 Biểu đồ hoạt động thay đổi thông tin tài khoản cá nhân

2.2.2 Xây dựng biểu đồ Use Case

2.2.2.1 Xác định các tác nhân

Các tác nhân tham gia hệ thống:

- Nhóm dịch vụ: Người chủ nhà hàng, khách sạn.

- Khách du lịch: Người muốn tìm hiểu thông tin du lịch qua website và sử dụng ứng dụng trên điện thoại.

- Quản trị viên: Người quản trị hệ thống.

2.2.2.2 Xác định các Use Case

- Các Use Case của hệ thống

+ Đăng nhập hệ thống (Toàn bộ người dùng được thực hiện đăng nhập vào hệ thống).

+ Thay đổi hồ sơ cá nhân (Toàn bộ người dùng được thay đổi thông tin cá nhân và mật khẩu của mình).

+ Thích, lưu, bình luận, đăng tải hình ảnh về địa điểm

+ Thêm địa điểm du lịch mới

+ Đưa ra cảnh báo tại địa điểm du lịch.

+ Tìm kiếm địa điểm du lịch

+ Quản lý thông tin dịch vụ của mình (Nhóm dịch vụ được quyền quản lý thông tin dịch vụ của mình đăng tải)

Quản trị viên có quyền quản lý bài viết liên quan đến các địa điểm du lịch, giúp đảm bảo nội dung chính xác và hấp dẫn Bên cạnh đó, họ cũng có khả năng quản lý thông tin về các địa điểm du lịch, đảm bảo người dùng nhận được thông tin đầy đủ và cập nhật nhất.

+ Quản lý danh mục địa phương (Quản trị viên có quyền quản lý danh mục địa phương gồm xã-huyện-tỉnh)

Quản lý người dùng trong hệ thống cho phép quản trị viên kiểm soát danh sách người dùng, phê duyệt tài khoản mới, cấp lại mật khẩu khi cần thiết và vô hiệu hóa tài khoản không hoạt động.

+ Quản lý thông tin dịch vụ du lịch (Quản trị viên có quyền quản lý thông tin dịch vụ)

+ Quản lý loại hình dịch vụ du lịch (Quản trị viên có quyền quản lý loại hình dịch vụ)

+ Quản lý tin tức về tình hình du lịch (Quản trị viên có quyền quản lý tin tức du lịch)

- Biểu đồ Use Case tổng quát

Hình 2 2.2.2 Biểu đồ use case tổng quát

- Biểu đồ use case quản lý người dùng của quản trị

Hình 2 2.2.3Biểu đồ use case quản lý người dùng a Tóm tắt

Quản lý người dùng là Use Case quản trị viên sử dụng để quản lý các thông tin về người dùng b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý người dùng 2 Hệ thống hiển thị giao diện danh sách người dùng

3 Lựa chọn người dùng và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không

5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý địa điểm của quản trị

Hình 2 2.2.4 Biểu đồ use case quản lý địa điểm a Tóm tắt

Quản lý địa điểm là Use Case quản trị viên sử dụng để quản lý các thông tin các địa điểm b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý địa điểm 2 Hệ thống hiển thị giao diện danh sách các địa điểm

3 Lựa chọn địa điểm và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý loại địa điểm của quản trị

Hình 2 2.2.5 Biểu đồ use case quản lý loại địa điểm a Tóm tắt

Quản lý loại địa điểm là Use Case quản trị viên sử dụng để quản lý các thông tin về loại địa điểm b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý loại địa điểm 2 Hệ thống hiển thị giao diện danh sách các loại địa điểm

3 Lựa chọn loại địa điểm và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý dịch vụ của quản trị

Hình 2 2.2.6 Biểu đồ use case quản lý dịch vụ a Tóm tắt

Quản lý dịch vụ là Use Case quản trị viên sử dụng để quản lý các thông tin về dịch vụ b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý dịch vụ 2 Hệ thống hiển thị giao diện danh sách các dịch vụ

3 Lựa chọn dịch vụ và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý loại dịch vụ của quản trị

Hình 2 2.2.7 Biểu đồ use case quản lý loại dịch vụ a Tóm tắt

Quản lý loại dịch vụ là Use Case quản trị viên sử dụng để quản lý các thông tin về loại dịch vụ b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý loại dịch vụ 2 Hệ thống hiển thị giao diện danh sách các loại dịch vụ

3 Lựa chọn loại dịch vụ và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý nhận xét của quản trị

Hình 2 2.2.8 Biểu đồ use case quản lý nhận xét, hình ảnh a Tóm tắt

Quản lý nhận xét và hình ảnh là một Use Case quan trọng dành cho quản trị viên, giúp họ kiểm soát và điều chỉnh thông tin mà người dùng đăng tải Tác nhân trong quá trình này đóng vai trò thiết yếu trong việc đảm bảo nội dung được quản lý hiệu quả và phù hợp với tiêu chuẩn của nền tảng.

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý nhận xét 2 Hệ thống hiển thị giao diện danh sách nhận xét

3 Lựa chọn nhận xét, hình ảnh và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không

5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý tin tức của quản trị

Hình 2 2.2.9 Biểu đồ use case quản lý tin tức a Tóm tắt

Quản lý tin tức là Use Case quản trị viên sử dụng để quản lý các thông tin về tin tức b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý tin tức 2 Hệ thống hiển thị giao diện danh sách các tin tức

3 Lựa chọn tin tức và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không

5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý loại tin tức của quản trị

Hình 2 2.2.10 Biểu đồ use case quản lý loại tin tức a Tóm tắt

Quản lý loại tin tức là Use Case quản trị viên sử dụng để quản lý các thông tin về loại tin tức b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý loại tin tức 2 Hệ thống hiển thị giao diện danh sách các loại tin tức

3 Lựa chọn loại tin tức và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý dịch vụ cá nhân của chủ dịch vụ

Hình 2 2.2.11Biểu đồ use case quản lý dịch vụ của chủ dịch vụ a Tóm tắt

Quản lý dịch vụ là Use Case chủ dịch vụ sử dụng để quản lý các thông tin về dịch vụ nhà hàng, khách sạn b Tác nhân

Tác nhân: Chủ dịch vụ c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý dịch vụ 2 Hệ thống hiển thị giao diện danh sách các dịch vụ

3 Lựa chọn dịch vụ và chức năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không

5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý thông tin cá nhân của người dùng thông thường

Hình 2 2.2.12 Biểu đồ use case quản lý thông tin cá nhân của người dùng a Tóm tắt

Quản lý thông tin cá nhân là Use Case người dùng thông thường sử dụng để chỉnh sửa và đăng kí tài khoản b Tác nhân

Tác nhân: Người dùng thông thường c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn đăng ký tài khoản 2 Hệ thống hiển thị giao diện đăng ký tài khoản mới

3 Nhập thông tin 4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không

6 Chọn chỉnh sửa thông tin 5.Thông báo cập nhật thành công

8 Nhập thông tin 7 Hiển thị giao diện sửa thông tin

9 Kiểm tra tính hợp lệ của thông tin

- Biểu đồ use case quản lý địa điểm của người dùng thông thường

Hình 2 11.13 Biểu đồ use case quản lý địa điểm của người dùng a Tóm tắt

Quản lý địa điểm là Use Case người dùng thông thường sử dụng để đăng tải thông tin về địa điểm du lịch b Tác nhân

Tác nhân: Người dùng thông thường c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn thêm địa điểm du lịch 2 Hệ thống hiển thị giao diện thêm địa điểm

3 Nhập thông tin về địa điểm 4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không5.Thông báo cập nhật thành công

- Biểu đồ use case quản lý nhận xét của người dùng

Hình 2 2.2.14Biểu đồ use case quản lý nhận xét của người dùng a Tóm tắt

Quản lý nhận xét là một Use Case quan trọng dành cho quản trị viên, cho phép họ theo dõi và kiểm soát các bình luận, nhận xét cũng như hình ảnh mà người dùng đã đăng tải.

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý các nhận xét và hình ảnh

2 Hệ thống hiển thị giao diện danh sách quản lý

2 Lựa chọn chức năng thêm, sửa, hoặc xóa nhận xét, hình ảnh

3 Tiếp nhận thông tin, hiển thị giao diện tương ứng

4 Nhập thông tin 5 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không 6.Thông báo cập nhật thành công

- Biểu đồ use case quản lý địa phương của quản trị

Hình 2 2.2.15 Biểu đồ use case quản lý địa phương của quản trị a Tóm tắt

Quản lý địa phương là Use Case quản trị viên sử dụng để quản lý thông tin tỉnh, thành phố b Tác nhân

Tác nhân: Quản trị viên c Use case liên quan

Use case đăng nhập d Các luồng sự kiện

Hành động tác nhân Phản ứng hệ thống

1 Chọn danh sách quản lý các danh mục địa phương

2 Hệ thống hiển thị giao diện danh sách quản lý

2 Lựa chọn chức năng thêm, sửa, hoặc xóa danh mục địa phương

3 Tiếp nhận thông tin, hiển thị giao diện tương ứng

4 Nhập thông tin 5 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không 6.Thông báo cập nhật thành công

2.2.3 Xây dựng biểu đồ lớp

2.2.3.1 Biểu đồ lớp tổng quát

Hình 2 2.3.1 Biểu đồ lớp tổng quát

2.2.3.2 Mô tả chi tiết từng lớp đối tượng

Bảng lưu trữ thông tin về tất cả các địa điểm du lịch.

STT Tên trường Giải thích

1 id Mã địa điểm Khóa chính của bảng, tự tăng

2 id_type_travel Xác định loại địa điểm Khóa ngoại, là id liên kết từ bảng tbl_type_travel

Tình trạng của địa điểm, có 2 trạng thái:

0: Địa điểm không tồn tại, bị vô hiệu hóa hiển thị 1: Địa điểm vẫn tồn tại và cho phép hiển thị

5 content Nội dung mô tả về địa điểm.

6 time_open Giờ mở cửa địa điểm

7 time_close Giờ đóng cửa địa điểm

8 date_add Ngày đăng địa điểm

9 date_upd Ngày chỉnh sửa địa điểm lần cuối cùng

10 id_user Xác định người dùng đăng địa điểm Khóa ngoại, là id liên kết từ bảng tbl_user

11 id_ward Mã xã/phường của địa điểm Khóa ngoại, là id liên kết từ bảng tbl_ward

12 image Đường dẫn ảnh hiển thị mô tả địa điểm

13 address Địa chỉ chi tiết dưới cấp xã (id_village) của địa điểm.

14 lat Kinh độ tại địa điểm Hệ đơn vị đo theo độ

15 lng Vĩ độ tại địa điểm Hệ đơn vị đo theo độ

16 hotline Số điện thoại đường dây nóng tới ban quản lý địa điểm

17 views Số lượt xem địa điểm

STT Phương thức Giải thích

Bảng lưu trữ thông tin về các tin tức, sự kiện du lịch trong nước.

STT Tên trường Giải thích

1 id Mã tin tức Khóa chính của bảng, tự tăng

2 views Số lượt xem địa điểm

3 name Tiêu đề của bài viết tin tức

Trạng thái của bài viết tin tức, có 2 trạng thái:

0: Bài viết đã bị xóa, không hiển thị 1: Bài viết vẫn tồn tại và cho phép hiển thị

5 content Nội dung bài viết tin tức du lịch

6 date_add Ngày đăng bài viết

7 date_upd Ngày chỉnh sửa bài viết lần cuối cùng

8 id_user Xác người dùng đăng bài viết Khóa ngoại, liên kết là id của tbl_user

9 image Đường dẫn hình ảnh mô tả bài viết

STT Phương thức Giải thích

Bảng lưu trữ thông tin về tất cả các dịch vụ như nhà hàng, nhà nghỉ, khách sạn… xung quanh các địa điểm du lịch.

STT Tên trường Giải thích

1 id Mã dịch vụ Khóa chính của bảng, tự tăng

2 id_type_service Xác định loại dịch vụ Khóa ngoại, liên kết là id từ bảng tbl_type_service

Tình trạng của địa điểm, có 2 trạng thái:

0: Địa điểm không tồn tại, bị vô hiệu hóa hiển thị 1: Địa điểm vẫn tồn tại và cho phép hiển thị

5 hotline Số điện thoại đường dây nóng tới nhà hàng khách sạn

6 content Nội dung mô tả thông tin về nhà cung cấp dịch vụ

7 date_add Ngày đăng bài viết về dịch vụ

8 date_upd Ngày chỉnh sửa bài viết về dịch vụ lần cuối cùng

9 id_user Mã nhà cung cấp dịch vụ đăng bài viết

10 time_open Giờ mở cửa

11 time_close Giờ đóng cửa

12 id_ward Mã xã/phường vị trí của đơn vị dịch vụ Khóa ngoại, là id liên kết từ bảng tbl_ward

13 image Đường dẫn ảnh hiển thị mô tả địa điểm

14 address Địa chỉ chi tiết dưới mức xã (id_ward) vị trí của đơn vị dịch vụ

15 lat Kinh độ vị trí của đơn vị dịch vụ Hệ đơn vị đo theo độ

16 lng Vĩ độ vị trí của đơn vị dịch vụ Hệ đơn vị đo theo độ

17 views Số lượt xem thông tin bài viết về đơn vị dịch vụ

18 price_min Giá tiền thấp nhất trong số các dịch vụ của đơn vị dịch vụ

19 price_max Giá tiền cao nhất trong số các dịch vụ của đơn vị dịch vụ

STT Phương thức Giải thích

Lưu trữ toàn bộ thông tin người dùng

STT Tên trường Giải thích

1 id Mã người dùng Khóa chính của bảng, tự tăng

2 email Tài khoản email của người dùng Được sử dụng làm trường đăng nhập và đăng kí tài khoản

3 status Tình trạng của người dùng, có 2 trạng thái:

4 password 0: Tài khoản người dùng bị xóa, không thể đăng nhập

5 lastname 1: Tài khoản người dùng vẫn tồn tại và cho phép đăng nhập

6 fristname Mật khẩu đăng nhập

7 role Họ và tên đệm người dùng

9 background Quyền đăng nhập của người dùng khi truy cập hệ thống Với giá trị bằng:

10 lat 1: Quyền quản trị admin.

11 lng 2: Quyền của chủ dịch vụ.

STT Phương thức Giải thích

Tên bảng: tbl_type_service

Lưu trữ tất cả thông tin về loại hình dịch vụ.

STT Tên trường Giải thích

1 id Mã loại dịch vụ Khóa chính của bảng, tự tăng

2 name Tên chi tiết loại dịch vụ

Thể loại dịch vụ mức tổng quát Có giá trị: 1: Các dịch vụ liên quan đến ăn uống.

2: Các dịch vụ liên quan đến ngủ nghỉ

STT Phương thức Giải thích

Tên bảng: tbl_ type_travel

Lưu toàn bộ thông tin về loại địa điểm du lịch.

STT Tên trường Giải thích

1 id Mã loại địa điểm Khóa chính của bảng, tự tăng

2 name Tên loại địa điểm

STT Phương thức Giải thích

Lưu trữ danh sách toàn bộ thông tin về các tỉnh/thành phố thuộc quốc gia Việt Nam.

STT Tên trường Giải thích

1 id Mã tỉnh/thành phố Khóa chính của bảng

2 name Tên tỉnh/thành phố

3 type Giá trị là “Tỉnh” hoặc “Thành phố” trực thuộc trung ương cho vị trí này

STT Phương thức Giải thích

Lưu trữ danh sách toàn bộ thông tin về các quận/huyện/thị xã thuộc quốc gia Việt Nam.

STT Tên trường Giải thích

1 id Mã quận/huyện Khóa chính của bảng

3 type Giá trị lựa chọn là “Quận”, “Huyện” hoặc “Thị Xã”,

“Thành phố” thuộc tỉnh cho vị trí này.

Giá trị vị trí được lưu trữ là vĩ độ Bắc và Kinh độ Đông dưới dạng “độ-phút-giây”, được ngăn cách nhau bằng dấu phẩy

5 id_provincial Mã tỉnh/thành phố Khóa ngoại, liên kết là id của bảng tbl_provincial

STT Phương thức Giải thích

Lưu trữ danh sách toàn bộ thông tin về các xã/phường/thị trấn thuộc quốc gia Việt Nam.

STT Tên trường Giải thích

1 id Mã xã/phường/thị trấn Khóa chính của bảng

2 name Tên xã/phường/thịt rấn

3 type Giá trị lựa chọn là “Xã”, “Phường” hoặc “Thị trấn”

Giá trị vị trí được lưu trữ là vĩ độ Bắc và Kinh độ Đông dưới dạng “độ-phút-giây”, được ngăn cách nhau bằng dấu phẩy

5 id_district Mã quận/huyện/thị xã Khóa ngoại, liên kết là id của bảng tbl_district

STT Phương thức Giải thích

Tên bảng: tbl_ images_service

Bảng lưu trữ toàn bộ đường dẫn đến thư mục ảnh của dịch vụ

STT Tên trường Giải thích

1 id Mã của hình ảnh, tự tăng, khóa chính của bảng

2 images Đường dẫn của ảnh

Mã người dùng đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_user

Mã dịch vụ được đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_service

5 date_add Ngày đăng ảnh

6 date_upd Ngày thay đổi ảnh lần cuối cùng

STT Phương thức Giải thích

Tên bảng: tbl_ images_travel

Bảng lưu trữ toàn bộ đường dẫn đến thư mục ảnh của địa điểm du lịch

STT Tên trường Giải thích

1 id Mã của hình ảnh, tự tăng, khóa chính của bảng

2 images Đường dẫn của ảnh

3 id_user Mã người dùng đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_user

4 id_travel Mã dịch vụ được đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_travel

5 date_add Ngày đăng ảnh

6 date_upd Ngày thay đổi ảnh lần cuối cùng

STT Phương thức Giải thích

Tên bảng: tbl_review_travel

Lưu trữ những nhận xét của người dùng về địa điểm du lịch

STT Tên trường Giải thích

1 id Mã nhận xét, tự tăng, khóa chính của bảng

2 content Nội dung nhận xét

3 id_user Mã người dùng đăng nhận xét Khóa ngoại, liên kết là id từ bảng tbl_user

4 id_travel Mã địa điểm Khóa ngoại, liên kết là id từ bảng tbl_travel

5 date_add Ngày đăng nhận xét

6 date_upd Ngày thay đổi nhận xét cuối cùng

STT Phương thức Giải thích

Tên bảng: tbl_review_service

Bảng lưu trữ những nhận xét của người dùng về dịch vụ

STT Tên trường Giải thích

1 id Mã nhận xét, tự tăng, khóa chính của bảng

2 content Nội dung nhận xét

3 id_user Mã người dùng đăng nhận xét Khóa ngoại, liên kết là id từ bảng tbl_user

4 id_service Mã đơn vị dịch vụ Khóa ngoại, liên kết là id từ bảng tbl_service

5 date_add Ngày đăng nhận xét

6 date_upd Ngày thay đổi nhận xét cuối cùng

STT Phương thức Giải thích

Bảng lưu trữ nhận xét của người dùng về tin tức

STT Tên trường Giải thích

1 id Mã bình luận, tự tăng, khóa chính của bảng

2 content Nội dung bình luận

3 id_user Mã người dùng đăng bình luận Khóa ngoại, liên kết là id từ bảng tbl_user

4 id_ news Mã của tin tức Khóa ngoại, liên kết là id từ bảng tbl_news

5 date_add Ngày đăng bình luận

6 date_upd Ngày chỉnh sửa bình luận cuối cùng

STT Phương thức Giải thích

Lưu trữ những bài viết về địa điểm, dịch vụ được người dùng ghim lại

STT Tên trường Giải thích

1 id Mã lượt lưu, tự tăng, khóa chính của bảng

2 id_obj Mã đối tượng có thể là địa điểm hoặc dịch vụ, tùy theo trường type trong bảng.

3 id_user Mã người dùng lưu lại bài viết Khóa ngoại, liên kết là id từ bảng tbl_user

4 type Loại lựa chọn đối tượng lưu Nếu có giá trị là

“travel” thì id_obj là id_travel của bảng tbl_travel Nếu có giá trị là “service” thì id_obj là id_service của bảng tbl_service

5 date_add Ngày lưu lại bookmark

STT Phương thức Giải thích

Lưu trữ lượt thích của người dùng về địa điểm, dịch vụ và tin tức

STT Tên trường Giải thích

1 id Mã like, tự tăng, khóa chính của bảng.

2 id_obj Mã đối tượng có thể là bài viết về địa điểm, dịch vụ hoặc tin tức tùy theo trường type trong bảng.

3 id_user Mã người dùng đã like Khóa ngoại, liên kết là id từ bảng tbl_user

Loại lựa chọn đối tượng like Nếu có giá trị là

In the database, if the value is "travel," the id_obj corresponds to the id_travel from the tbl_travel table When the value is "service," the id_obj refers to the id_service from the tbl_service table Lastly, if the value is "news," the id_obj is linked to the id_news from the tbl_news table.

STT Phương thức Giải thích

2.2.4 Xây dựng biểu đồ tuần tự

- Dưới đây là các biểu đồ tuần tự của các chức năng chính trong hệ thống

Hình 2 2.4.1 Biểu đồ tuần tự cho chức năng đăng nhập

Hình 2 2.4.2 Biểu đồ tuần tự cho chức năng đăng ký

Hình 2 2.4.3Biểu đồ tuần tự cho chức năng thêm địa điểm của quản trị

Hình 2 2.4.3Biểu đồ tuần tự cho chức năng sửa địa điểm của quản trị

Hình 2 2.4.4Biểu đồ tuần tự cho chức năng thêm địa điểm của người dùng

Hình 2 2.4.5 Biểu đồ tuần tự cho chức năng thêm người dùng

Hình 2 12.4.6 Biểu đồ tuần tự cho chức năng sửa thông tin cá nhân

Hình 2 2.4.7Biểu đồ tuần tự cho chức năng thêm dịch vụ

Hình 2 2.4.8 Biểu đồ tuần tự cho chức năng sửa dịch vụ

Hình 2 2.4.9Biểu đồ tuần tự cho chức năng thêm tin tức

Hình 2 2.4.10Biểu đồ tuần tự cho chức năng sửa tin tức

Hình 2 2.4.11Biểu đồ tuần tự cho chức năng tìm kiếm

Hình 2 2.4.12Biểu đồ tuần tự cho chức năng thêm loại dịch vụ

Hình 2 2.4.13Biểu đồ tuần tự cho chức năng sửa loại dịch vụ

Thiết kế cơ sở dữ liệu

Hình 2.3 1 Mô hình quan hệ

2.3.2 Danh sách các bảng trong mô hình quan hệ

Bảng tbl_travel lưu trữ thông tin về tất cả các địa điểm du lịch

STT Tên trường Kiểu Mô tả

Int(10) Mã địa điểm Khóa chính của bảng, tự tăng

2 id_type_travel Int(10) Xác định loại địa điểm Khóa ngoại, là id liên kết từ bảng tbl_type_travel

3 name Varchar(200) Tên địa điểm.

Tình trạng của địa điểm, có 2 trạng thái: 0: Địa điểm không tồn tại, bị vô hiệu hóa hiển thị

1: Địa điểm vẫn tồn tại và cho phép hiển thị

5 content Text Nội dung mô tả về địa điểm.

6 time_open Varchar(10) Giờ mở cửa địa điểm

7 time_close Varchar(10) Giờ đóng cửa địa điểm

8 date_add Datetime Ngày đăng địa điểm

9 date_upd Datetime Ngày chỉnh sửa địa điểm lần cuối cùng

Xác định người dùng đăng địa điểm Khóa ngoại, là id liên kết từ bảng tbl_user

11 id_ward Int(10) Mã xã/phường của địa điểm Khóa ngoại, là id liên kết từ bảng tbl_ward

12 image Text Đường dẫn ảnh hiển thị mô tả địa điểm

13 address Varchar(200) Địa chỉ chi tiết dưới cấp xã (id_village) của địa điểm.

Varchar(20) Kinh độ tại địa điểm Hệ đơn vị đo theo độ

15 lng Varchar(20) Vĩ độ tại địa điểm Hệ đơn vị đo theo độ

16 hotline Varchar(13) Số điện thoại đường dây nóng tới ban quản lý địa điểm

17 views Int(12) Số lượt xem địa điểm

Bảng tbl_news lưu trữ thông tin về các tin tức, sự kiện du lịch trong nước.

STT Tên trường Kiểu Mô tả

1 id Int(10) Mã tin tức Khóa chính của bảng, tự tăng

2 views Int(12) Số lượt xem địa điểm

3 name Varchar(200) Tiêu đề của bài viết tin tức

Trạng thái của bài viết tin tức, có 2 trạng thái:

0: Bài viết đã bị xóa, không hiển thị 1: Bài viết vẫn tồn tại và cho phép hiển thị

5 content Text Nội dung bài viết tin tức du lịch

6 date_add Datetime Ngày đăng bài viết

7 date_upd Datetime Ngày chỉnh sửa bài viết lần cuối cùng

8 id_user Int(10) Xác người dùng đăng bài viết Khóa ngoại, liên kết là id của tbl_user

9 image Text Đường dẫn hình ảnh mô tả bài viết

- Bảng tbl_service lưu trữ thông tin về tất cả các dịch vụ như nhà hàng, nhà nghỉ, khách sạn… xung quanh các địa điểm du lịch.

STT Tên trường Kiểu Mô tả

1 id Int(10) Mã dịch vụ Khóa chính của bảng, tự tăng

2 id_type_service Int(10) Xác định loại dịch vụ Khóa ngoại, liên kết là id từ bảng tbl_type_service

3 name Varchar(200) Tên dịch vụ

Tình trạng của địa điểm, có 2 trạng thái: 0: Địa điểm không tồn tại, bị vô hiệu hóa hiển thị

1: Địa điểm vẫn tồn tại và cho phép hiển thị

5 hotline Varchar(13) Số điện thoại đường dây nóng tới nhà hàng khách sạn

6 content Text Nội dung mô tả thông tin về nhà cung cấp dịch vụ

7 date_add Datetime Ngày đăng bài viết về dịch vụ

8 date_upd Datetime Ngày chỉnh sửa bài viết về dịch vụ lần cuối cùng

9 id_user Int(10) Mã nhà cung cấp dịch vụ đăng bài viết

10 time_open Varchar(10) Giờ mở cửa

11 time_close Varchar(10) Giờ đóng cửa

12 id_ward Int(10) Mã xã/phường vị trí của đơn vị dịch vụ

Khóa ngoại, là id liên kết từ bảng tbl_ward

13 image Text Đường dẫn ảnh hiển thị mô tả địa điểm

14 address Varchar(200) Địa chỉ chi tiết dưới mức xã (id_ward) vị trí của đơn vị dịch vụ

15 lat Varchar(20) Kinh độ vị trí của đơn vị dịch vụ Hệ đơn vị đo theo độ

16 lng Varchar(20) Vĩ độ vị trí của đơn vị dịch vụ Hệ đơn vị đo theo độ

17 views Int(12) Số lượt xem thông tin bài viết về đơn vị dịch vụ

18 price_min Int(12) Giá tiền thấp nhất trong số các dịch vụ của đơn vị dịch vụ

19 price_max Int(12) Giá tiền cao nhất trong số các dịch vụ của đơn vị dịch vụ

Bảng tbl_user lưu trữ thông tin về tất cả người dùng trong hệ thống

STT Tên trường Kiểu Mô tả

1 id Int(10) Mã người dùng Khóa chính của bảng, tự tăng

Tài khoản email của người dùng Được sử dụng làm trường đăng nhập và đăng kí tài khoản

Tình trạng của người dùng, có 2 trạng thái:

0: Tài khoản người dùng bị xóa, không thể đăng nhập

1: Tài khoản người dùng vẫn tồn tại và cho phép đăng nhập

5 password Varchar(50) Mật khẩu đăng nhập

7 lastname Varchar(200) Họ và tên đệm người dùng

8 fristname Varchar(200) Tên người dùng

Quyền đăng nhập của người dùng khi truy cập hệ thống Với giá trị bằng: 1: Quyền quản trị admin.

2: Quyền của chủ dịch vụ.

3: Quyền của người dùng thông thường.

10 avartar Text Đường dẫn ảnh đại diện người dùng

11 background Text Đường dẫn ảnh nền hiển thị trên giao diện điện thoại người dùng

12 lat Varchar(20) Kinh độ vị trí của người dùng Hệ đơn vị đo theo độ

13 lng Varchar(20) Vĩ độ vị trí của người dùng Hệ đơn vị đo theo độ

- Bảng 05: Bảng tbl_type_service

Bảng tbl_type_service hiển thị tất cả thông tin về loại hình dịch vụ.

STT Tên trường Kiểu Mô tả

1 id Int(10) Mã loại dịch vụ Khóa chính của bảng, tự tăng

2 name Varchar(200) Tên chi tiết loại dịch vụ

Thể loại dịch vụ mức tổng quát Có giá trị:

1: Các dịch vụ liên quan đến ăn uống. 2: Các dịch vụ liên quan đến ngủ nghỉ

- Bảng 06: Bảng tbl_type_travel

Bảng tbl_type_travel lưu toàn bộ thông tin về loại địa điểm du lịch.

STT Tên trường Kiểu Giải thích

1 id Int(10) Mã loại địa điểm Khóa chính của bảng, tự tăng

2 name Varchar(200) Tên loại địa điểm

Bảng tbl_provincial lưu trữ danh sách toàn bộ thông tin về các tỉnh/thành phố thuộc quốc gia Việt Nam.

STT Tên trường Kiểu Giải thích

1 id Int(10) Mã tỉnh/thành phố Khóa chính của bảng

2 name Varchar(200) Tên tỉnh/thành phố

3 type Varchar(10) Giá trị là “Tỉnh” hoặc “Thành phố” trực thuộc trung ương cho vị trí này

Bảng tbl_district lưu trữ danh sách toàn bộ thông tin về các tỉnh/thành phố thuộc quốc gia Việt Nam.

STT Tên trường Kiểu Giải thích

1 id Int(10) Mã quận/huyện Khóa chính của bảng

2 name Varchar(200) Tên quận/huyện

Varchar(10) Giá trị lựa chọn là “Quận”, “Huyện” hoặc

“Thị Xã”, “Thành phố” thuộc tỉnh cho vị trí này.

Giá trị vị trí được lưu trữ là vĩ độ Bắc và Kinh độ Đông dưới dạng “độ-phút-giây”, được ngăn cách nhau bằng dấu phẩy

5 id_provincial Int(10) Mã tỉnh/thành phố Khóa ngoại, liên kết là id của bảng tbl_provincial

Bảng tbl_ward lưu trữ danh sách toàn bộ thông tin về các xã/phường/thị trấn thuộc quốc gia Việt Nam.

STT Tên trường Kiểu Giải thích

1 id Int(10) Mã xã/phường/thị trấn Khóa chính của bảng

2 name Varchar(200) Tên xã/phường/thịt rấn

Varchar(10) Giá trị lựa chọn là “Xã”, “Phường” hoặc

Giá trị vị trí được lưu trữ là vĩ độ Bắc và Kinh độ Đông dưới dạng “độ-phút-giây”, được ngăn cách nhau bằng dấu phẩy

5 id_district Int(10) Mã quận/huyện/thị xã Khóa ngoại, liên kết là id của bảng tbl_district

- Bảng 10: Bảng tbl_images_service

Bảng tbl_images_service chứa các đường dẫn hình ảnh mà người dùng đã tải lên, phục vụ cho việc lưu trữ cộng đồng liên quan đến các bài viết về dịch vụ.

STT Tên trường Kiểu Giải thích

Int(10) Mã của hình ảnh, tự tăng, khóa chính của bảng

2 images Text Đường dẫn của ảnh

Int(10) Mã người dùng đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_user

Int(10) Mã dịch vụ được đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_service

5 date_add Datetime Ngày đăng ảnh

6 date_upd Datetime Ngày thay đổi ảnh lần cuối cùng

- Bảng 11: Bảng tbl_images_travel

Bảng tbl_images_travel lưu trữ các đường dẫn hình ảnh mà người dùng đã tải lên, phục vụ cho việc chia sẻ thông tin về các địa điểm du lịch trong cộng đồng.

STT Tên trường Kiểu Giải thích

Int(10) Mã của hình ảnh, tự tăng, khóa chính của bảng

2 images Text Đường dẫn của ảnh

Int(10) Mã người dùng đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_user

Int(10) Mã dịch vụ được đăng ảnh Khóa ngoại, liên kết là id của bảng tbl_travel

5 date_add Datetime Ngày đăng ảnh

6 date_upd Datetime Ngày thay đổi ảnh lần cuối cùng

- Bảng 12: Bảng tbl_review_travel

Bảng tbl_review_travel lưu trữ toàn bộ nhận xét của người dùng về địa điểm du lịch.

STT Tên trường Kiểu Giải thích

Int(10) Mã nhận xét, tự tăng, khóa chính của bảng

2 content Text Nội dung nhận xét

3 id_user Int(10) Mã người dùng đăng nhận xét Khóa ngoại, liên kết là id từ bảng tbl_user

4 id_travel Int(10) Mã địa điểm Khóa ngoại, liên kết là id từ bảng tbl_travel

5 date_add Datetime Ngày đăng nhận xét

6 date_upd Datetime Ngày thay đổi nhận xét cuối cùng

- Bảng 13: Bảng tbl_review_service

Bảng tbl_review_travel lưu trữ toàn bộ nhận xét của người dùng về đơn vị dịch vụ.

STT Tên trường Kiểu Giải thích

1 id Int(10) Mã nhận xét, tự tăng, khóa chính của bảng

2 content Text Nội dung nhận xét

3 id_user Int(10) Mã người dùng đăng nhận xét Khóa ngoại, liên kết là id từ bảng tbl_user

4 id_service Int(10) Mã đơn vị dịch vụ Khóa ngoại, liên kết là id từ bảng tbl_service

5 date_add Datetime Ngày đăng nhận xét

6 date_upd Datetime Ngày thay đổi nhận xét cuối cùng

Bảng tbl_comment lưu trữ toàn bộ bình luận của người dùng về tin tức

STT Tên trường Kiểu Giải thích

1 id varchar(10) Mã bình luận, tự tăng, khóa chính của bảng

2 content Text Nội dung bình luận

3 id_user Int(10) Mã người dùng đăng bình luận Khóa ngoại, liên kết là id từ bảng tbl_user

4 id_ news Int(10) Mã của tin tức Khóa ngoại, liên kết là id từ bảng tbl_news

5 date_add Datetime Ngày đăng bình luận

6 date_update Datetime Ngày chỉnh sửa bình luận cuối cùng

Bảng tbl_bookmark lưu trữ những bài viết được người dùng ghim để xem lại về thông tin địa điểm, dịch vụ.

STT Tên trường Kiểu Giải thích

1 id Int(10) Mã lượt lưu, tự tăng, khóa chính của bảng

Int(10) Mã đối tượng có thể là địa điểm hoặc dịch vụ, tùy theo trường type trong bảng.

Int(10) Mã người dùng lưu lại bài viết Khóa ngoại, liên kết là id từ bảng tbl_user

Varchar(20) Loại lựa chọn đối tượng lưu Nếu có giá trị là “travel” thì id_obj là id_travel của bảng tbl_travel Nếu có giá trị là

“service” thì id_obj là id_service của bảng tbl_service

5 date_add Datetime Ngày lưu lại bookmark

Bảng tbl_like lưu trữ lượt like của người dùng về các bài viết thông tin địa điểm, dịch vụ, tin tức, bình

STT Tên trường Kiểu Giải thích

1 id Int(10) Mã like, tự tăng, khóa chính của bảng.

Int(10) Mã đối tượng có thể là bài viết về địa điểm, dịch vụ hoặc tin tức tùy theo trường type trong bảng.

Int(10) Mã người dùng đã like Khóa ngoại, liên kết là id từ bảng tbl_user

Varchar(20) Loại lựa chọn đối tượng like Nếu có giá trị là “travel” thì id_obj là id_travel của bảng tbl_travel Nếu có giá trị là

“service” thì id_obj là id_service của bảng tbl_service Nếu có giá trị là “news” thì id_obj là id_ news của bảng tbl_ news

Thiết kế giao diện tổng quan

Giao diện hệ thống trên web a Giao diện chính

- Giao diện hiển thị đầu tiên khi truy cập vào trang web

Hình 2.4.1 Giao diện menu chính b Giao diện đăng nhập quản trị

Mô tả trường nhập liệu

+ Nhập email( textbox): Nhập email đã đăng ký

+ Nhập mật khẩu( textbox): Nhập mật khẩu đã đăng ký

Hình 2.4.2Giao diện đăng nhập hệ thống c Giao diện của trang quản trị

Hình 2.4.3Giao diện của trang quản trị d Giao diện của trang quản trị danh mục

Hình 2.4.4 Giao diện của trang quản trị danh mục e Giao diện của trang quản trị bài viết

Hình 2.4.5 Giao diện của trang quản trị bài viết f Giao diện của trang quản trị địa điểm

Hình 2.4.6 Giao diện của trang quản trị địa điểm g Giao diện của trang quản trị tour

Hình 2.4.7 Giao diện của trang quản trị tour h Giao diện của trang quản trị khách sạn

Hình 2.4.8 Giao diện của trang quản trị khách sạn i Giao diện của trang quản trị danh sách đặt tour

Hình 2.4.9 Giao diện của trang quản trị danh sách đặt tour k Giao diện trang khách sạn của trang người dùng

Hình 3 10 Giao diện trang khách sạn của người dùng l Giao diện trang tour của trang người dùng

Hình 3 11 Giao diện trang tour của người dùng

Kết chương

Kết thúc chương này, ta đã cơ bản đã khảo sát và phân tích hoàn chỉnh hệ thống đang xây dựng cho đề tài, bao gồm:

- Khảo sát hệ thống, mô tả hệ thống và các nhóm chức năng chính.

- Phân tích hệ thống gồm các công việc:

+ Mô hình hóa chức năng nghiệp vụ.

+ Xây dựng biểu đồ Use case và đặc tả các Use case.

+ Xây dựng biểu đồ lớp và biểu đồ tuần tự hóa các Use case.

Đã hoàn tất các bước cơ bản cuối cùng để xây dựng hệ thống trong đề tài, hiện thực hóa những phân tích đã trình bày ở chương 2.

Chương3 : CÀI ĐẶT ỨNG DỤNG

3.1 Cài đặt ứng dụng Xampp

3.1.1 Tải XAMPP về máy tính

Hình 3 1.1 Màn hình download Xampp

3.1.2 Hiện lên cửa sổ thiết lập > Next > Chọn các phần mềm mà bạn muốn cài đặt > Chọn thư mục cài đặt > Next để hoàn tất quá trình cài đặt

3.2 Cài đặt dự án website quản lý du lịch

3.2.1 Copy thư mục chứa souce code vào thư mục xampp\htdocs

Hình 3 2.1Thư mục chứa sourceCode

3.2.2 Tạo database với tên db_quan_ly_du_lich

3.2.3 Chạy project với đường dẫn http://localhost/quan_ly_du_lich/public

Hình 3 2.3Giao diện sau khi chạy chương trình

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Tổng kết

Sau một thời gian thực hiện, đồ án đã đạt được một số kết quả chính như sau:

- Hiểu được quy trình nghiệp vụ trong hệ thống hỗ trợ thông tin du lịch

- Phân tích và xác định chức năng của hệ thống.

- Phân tích và thiết kế cơ sở dữ liệu lưu trữ thông tin của hệ thống.

- Xây dựng được các chức năng quản trị thông tin

- Quản lý việc đăng tải thông tin của khách du lịch

Những hạn chế còn tồn tại:

- Vẫn còn tồn tại một số thiếu xót trong việc quản trị thông tin

- Vẫn chưa nắm bắt được hết công nghệ

Hướng phát triển

- Xây dựng ứng dụng đa nền tảng trên điện thoại di động

- Tiếp tục nâng cấp, cập nhật thông tin cũng như các tính năng người dùng yêu cầu.

- Cải thiện tiếp tốc độ thực thi của ứng dụng

Ngày đăng: 19/08/2022, 14:49

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w