1. Trang chủ
  2. » Công Nghệ Thông Tin

PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM

159 7 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 đề Phân Tích Thiết Kế Và Xây Dựng Website Quảng Cáo Và Booking Du Lịch Việt Nam
Tác giả Đào Thị Phương Thảo
Trường học Đại học Công nghệ Giao thông Vận tải
Chuyên ngành Hệ thống thông tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 159
Dung lượng 10,78 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN (11)
    • 1.1. Lý do chọn đề tài (11)
    • 1.2. Hiện trạng (12)
    • 1.3. Thương mại điện tử và ứng dụng với website du lịch (12)
    • 1.4. Mục tiêu của đề tài (13)
    • 1.5. Giới hạn và phạm vi của đề tài (14)
    • 1.6. Nội dung thực hiện (14)
    • 1.7. Phương pháp tiếp cận (14)
    • 1.6. Kết quả dự kiến đạt được (15)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (16)
    • 2.1. Lý thuyết chung (16)
      • 2.1.1. Booking Online (16)
      • 2.1.2. Tình trạng phát triển Booking Online ở Việt Nam (16)
      • 2.1.3. Tổng quan về phân tích và thiết kế hệ thống thông tin (17)
      • 2.1.4. Giới thiệu về ngôn ngữ mô hình hóa UML (19)
      • 2.1.5. Cơ sở lý thuyết về cơ sở dữ liệu (20)
    • 2.2. Công cụ sử dụng (22)
      • 2.2.1. Giới thiệu về ngôn ngữ lập trình PHP và Laravel (22)
      • 2.2.2. Laravel Framework (23)
      • 2.2.3. Cơ sở dữ liệu SQL (24)
  • CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ VÀ HỆ THỐNG (26)
    • 3.1. Phân tích bài toán (26)
      • 3.1.1. Phát biểu bài toán (26)
      • 3.1.2. Yêu cầu của bài toán (26)
    • 3.2. Phân tích thiết kế (27)
      • 3.2.1. Tác nhân và vai trò (27)
      • 3.2.2. Xây dựng biểu đồ Usecase (Usecase Diagram) (31)
      • 3.2.3. Biểu đồ trình tự (Sequence Diagram) (41)
      • 3.2.4. Biểu đồ hoạt động (51)
      • 3.2.5. Biểu đồ trạng thái (57)
      • 3.2.6. Biểu đồ lớp (Class Diagram) (58)
      • 3.2.5. Biểu đồ Diagram (62)
      • 3.2.6. Các bảng cơ sở dữ liệu (62)
    • 3.3. Cấu hình hệ thống (73)
      • 3.3.1. Môi trường phát triển (73)
      • 3.3.2. Khởi chạy ứng dụng (73)
  • CHƯƠNG 4: THIẾT KẾ HỆ THỐNG (75)
    • 4.1. Đăng nhập (75)
    • 4.2. Đăng ký (75)
    • 4.3. Trang chủ (76)
    • 4.4. Danh mục tour (76)
    • 4.5. Danh mục tour khuyến mãi (77)
    • 4.6. Xem chi tiết tour (77)
    • 4.7. Danh sách tin tức (78)
    • 4.8. Góp ý (78)
    • 4.9. Thông tin người dùng (79)
    • 4.10. Đổi mật khẩu (80)
    • 4.11. Đặt tour (80)
    • 4.12. Xác nhận đặt tour (81)
    • 4.13. Lịch sử đặt tour (81)
    • 4.14. Xem chi tiết lịch sử đơn đặt tour (82)
    • 4.15. Tìm kiếm (83)
  • CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (84)
    • 6.1. Kết luận (84)
      • 6.1.1. Những kết quả đạt được (84)
      • 6.1.2. Chưa đạt được (84)
    • 6.2. Hướng phát triển (85)
  • TÀI LIỆU THAM KHẢO (86)

Nội dung

Ngày nay, ứng dụng công nghệ thông tin và việc tin học hóa được xem là một trong những yếu tố mang tính quyết định trong hoạt động của các chính phủ, tổ chức, cũng như của các công ty; nó đóng vai trò hết sức quan trọng, có thể tạo ra những bước đột phá mạnh mẽ. Việc xây dựng các trang web để phục vụ cho các nhu cầu riêng của các tổ chức, công ty thậm chí các cá nhân, ngày nay, không lấy gì làm xa lạ. Với một vài thao tác đơn giản, một người bất kì có thể trở thành chủ của một website giới thiệu về bất cứ gì anh ta quan tâm: một website giới thiệu về bản thân và gia đình anh ta, hay là một website trình bày các bộ sưu tập hình ảnh các loại xe hơi mà anh ta thích chẳng hạn. Đối với các chính phủ và các công ty thì việc xây dựng các website riêng càng ngày càng trở nên cấp thiết. Thông qua những website này, thông tin về họ cũng như các công văn, thông báo, quyết định của chính phủ hay các tour, dịch vụ mới của công ty sẽ đến với những người quan tâm, đến với khách hàng của họ một cách nhanh chóng kịp thời, tránh những phiền hà mà phương thức giao tiếp truyền thống thường gặp phải.

TỔNG QUAN

Lý do chọn đề tài

Sự phát triển không ngừng của kỹ thuật máy tính và mạng điện tử đã thúc đẩy công nghệ thông tin đạt được nhiều thành tựu vượt bậc Internet, với giá trị to lớn, đã trở thành công cụ thiết yếu và nền tảng chính cho việc truyền tải và trao đổi thông tin toàn cầu.

Internet đã giúp chúng ta thực hiện công việc nhanh chóng và tiết kiệm chi phí, từ đó thúc đẩy sự phát triển mạnh mẽ của thương mại điện tử và chính phủ điện tử toàn cầu Sự chuyển mình này đã làm thay đổi đáng kể bộ mặt văn hóa và nâng cao chất lượng cuộc sống của con người.

Trong bối cảnh sản xuất và kinh doanh hiện đại, thương mại điện tử đã trở thành yếu tố quan trọng thúc đẩy sự phát triển của doanh nghiệp, đặc biệt là đối với các công ty du lịch Việc quảng bá hiệu quả các chương trình du lịch là quyết định sống còn cho sự tồn tại và phát triển của công ty Để đạt được điều này, việc quản lý và vận hành website một cách dễ dàng và hiệu quả là rất cần thiết, giúp tránh sự nhàm chán cho khách hàng thường xuyên và đạt được kết quả kinh doanh mong muốn Đây là một thách thức lớn đối với nhiều công ty du lịch và doanh nghiệp Việt Nam, nơi thương mại điện tử vẫn còn là một lĩnh vực mới mẻ.

Nhận thức được tầm quan trọng đó, em đã chọn đề tài “PHÂN TÍCH THIẾT KẾ

VÀ XÂY DỰNG WEBSITE QUẢNG CÁO VÀ BOOKING DU LỊCH VIỆT NAM” là đề tài cho khóa luận của mình.

Hiện trạng

Hiện nay, tại Việt Nam, hầu hết các website vẫn là các trang tĩnh với cấu trúc thông tin cố định, ít thay đổi, chủ yếu phục vụ mục đích giới thiệu công ty và dịch vụ tour của họ, khác với các quốc gia có nền công nghệ thông tin phát triển và phổ biến.

Hiện nay, nhiều trang web động (Dynamic Website) đã xuất hiện với đa dạng hình thức tổ chức về giao diện và bố cục Ví dụ tiêu biểu bao gồm website kinh doanh địa ốc của Công ty Hoàng Quân, dịch vụ đặt phòng khách sạn trực tuyến của Công ty Thương mại điện tử Việt, và trang web của Ngân hàng Cổ phần thương mại ABC Ngoài ra, trong lĩnh vực du lịch, các công ty như SaiGon Tourist và Sinh Café cũng sở hữu các trang web động nổi bật.

Sự hoạt động hiệu quả của các trang web doanh nghiệp chứng tỏ tầm quan trọng của người quản trị website Các công ty sở hữu những website này thường có bộ phận chuyên trách quản lý thông tin, nhằm đáp ứng nhanh chóng và hiệu quả yêu cầu của khách hàng trực tuyến Việc này không chỉ giúp khai thác tối đa giá trị của website mà còn mở rộng nguồn khách hàng tiềm năng trên mạng.

Các công ty đang xây dựng website cần nhận thức rõ vai trò quan trọng của công nghệ thông tin và khách hàng tiềm năng trên mạng Do đó, họ nên lập kế hoạch và bổ nhiệm người quản trị để duy trì sự mới mẻ cho website, từ đó thu hút khách hàng đến với công ty.

Thương mại điện tử và ứng dụng với website du lịch

Hiện nay, khi nói đến Internet, người ta thường nhắc đến chính phủ điện tử và thương mại điện tử, đây là hai ứng dụng nổi bật nhất của công nghệ thông tin trong việc tổ chức và giao dịch toàn cầu.

Chính phủ điện tử là một phương thức tổ chức và truyền thông dữ liệu của chính phủ, ứng dụng công nghệ hiện đại nhằm cung cấp cho công dân khả năng truy cập hiệu quả vào nguồn tài nguyên thông tin đáng tin cậy từ chính phủ.

Thương mại điện tử là hình thức mua bán và giao tiếp hoàn toàn khác biệt so với thương mại truyền thống, nơi mà người mua và người bán có thể không biết mặt nhau Tất cả các giao dịch và thỏa thuận diễn ra trực tuyến qua internet, sử dụng các hệ thống thanh toán đặc biệt như thẻ tín dụng ngân hàng.

Thương mại điện tử thúc đẩy mối quan hệ giữa cá nhân, công ty và các thành phần xã hội Việc xây dựng website du lịch không chỉ giúp phát triển thương mại điện tử mà còn nâng cao mối quan hệ giữa công ty và khách hàng, đồng thời tạo điều kiện cho khách hàng tương tác với công ty một cách hiệu quả hơn.

Để thu hút khách hàng, website cần có giao diện rõ ràng, bắt mắt và cấu trúc hợp lý nhằm tạo ấn tượng tốt ngay từ lần đầu truy cập Quan trọng không kém, dung lượng trang web cần phải tối ưu để tránh làm mất kiên nhẫn của người dùng Nội dung website cũng phải tiện dụng, phù hợp và đáp ứng nhu cầu thường gặp của khách hàng Cuối cùng, một tên miền ngắn gọn, dễ nhớ sẽ giúp khách hàng dễ dàng quay lại trong những lần ghé thăm sau.

Một website du lịch hiệu quả cần cung cấp thông tin chi tiết về các tour du lịch sắp tới, bao gồm giá cả, hình ảnh, lịch trình và các địa điểm tham quan Thông tin này phải được tổ chức hợp lý để khách hàng dễ dàng tìm kiếm Ngoài ra, website còn giới thiệu các địa danh du lịch với hình ảnh minh họa và hỗ trợ hai ngôn ngữ tiếng Việt và tiếng Anh, phục vụ cho cả khách hàng trong nước và quốc tế.

Mục tiêu của đề tài

Thiết kế website du lịch cần đảm bảo tính tiện dụng cho cả người dùng và quản trị viên, với nội dung rõ ràng, mạch lạc và dễ sử dụng.

Sử dụng kiến thức về HTML kết hợp với việc tìm hiểu ngôn ngữ lập trình PHP và cơ sở dữ liệu MySQL, chúng ta có thể thiết kế website hiệu quả Website được xây dựng dựa trên nền tảng HTML và lập trình bằng PHP, sử dụng MySQL để quản lý dữ liệu.

Giới hạn và phạm vi của đề tài

Để xây dựng một website quảng bá hoạt động du lịch, cần áp dụng các kiến thức về lập trình PHP và MySQL, cùng với việc sử dụng Javascript và Twitter Bootstrap để xử lý và thiết kế giao diện website hiệu quả.

Công cụ lập trình được sử dụng cho dự án bao gồm trình soạn thảo code Sublime Text, phần mềm tạo website và server XAMPP, tích hợp Apache, PHP và MySQL Hệ thống website sẽ được áp dụng vào thực tiễn.

Nội dung thực hiện

Nội dung thực hiện được như sau:

- Nghiên cứu các website trên ngôn ngữ PHP.

- Tìm hiểu một số website du lịch trên mạng.

- Thiết kế đặc tả hệ thống.

- Xây dựng cơ sở dữ liệu trên MySQL.

- Lập trình cho các chức năng của website.

Phương pháp tiếp cận

Cách tiếp cận: Nghiên cứu các web trên các nền tảng công nghệ từ trước Sử dụng các phương pháp nghiên cứu:

- Phương pháp đọc tài liệu.

- Phương pháp phân tích mẫu.

- Phương pháp thực nghiệm làm những module nhỏ.

Kết quả dự kiến đạt được

- Tìm hiểu nghiệp vụ, nhu cầu du lịch tham quan của người dùng.

- Hiểu về ngôn ngữ lập trình PHP và áp dụng cho xây dựng website

Hoàn thiện website quảng cáo và đặt chỗ du lịch Việt Nam với các tính năng nổi bật, bao gồm quản trị hệ thống, quản lý người dùng và xem thống kê, giúp nâng cao hiệu quả quản lý và trải nghiệm người dùng.

➢ Người dùng: có thể thực hiện các chức năng như cập nhật thông tin cá nhân, đăng ký, đăng nhập tài khoản trên hệ thống, booking tour du lịch.

CƠ SỞ LÝ THUYẾT

Lý thuyết chung

Đặt phòng trực tuyến, hay còn gọi là booking online, là quá trình đặt tour, khách sạn, nhà nghỉ và các dịch vụ du lịch như vé tàu thông qua các nền tảng trực tuyến như website, mạng xã hội, dịch vụ quảng cáo và email.

Trong thời đại công nghệ số 4.0 hiện nay, booking online đã trở nên phổ biến và tiện lợi, được nhiều công ty và tổ chức lựa chọn Phương thức này không chỉ giúp quản lý việc cài đặt và lưu trữ thông tin khách hàng hiệu quả mà còn hỗ trợ xây dựng các chương trình giảm giá một cách dễ dàng.

Trước đây, việc đặt tour khách sạn hay nhà nghỉ thường yêu cầu khách hàng phải liên hệ trực tiếp với quầy lễ tân để thực hiện các thủ tục phức tạp Tuy nhiên, hiện nay, nhiều công ty du lịch đã phát triển hệ thống đặt vé và tour trực tuyến, giúp tiết kiệm thời gian và mang lại sự thuận tiện cho cả khách hàng và nhà cung cấp dịch vụ.

2.1.2 Tình trạng phát triển Booking Online ở Việt Nam Ở Việt Nam hiện tại đã xuất hiện nhiều Sites Booking Online với các mô hình khác nhau Nhiều nhất vẫn là các Sites theo mô hình B2C Đó là các sites đặt tour trực tuyến của các khách sạn, homestay Số lượng các Sites thế này khá nhiều nhưng nhìn chung chưa có đơn vị nào thành công Đối với các khách sạn, các sites này tính năng chính của họ vẫn là quảng cáo tour, dịch vụ và các event còn tính năng đặt tour trực tuyến chỉ là phụ nên nó có rất nhiều hạn chế và cũng không được nhiều khách hàng quan tâm: họ thích đến tận nơi xem tour rồi đặt hơn là xem trên mạng xong đặt tour và chờ đợi Với các khách sạn, các homestay có các site đặt tour thì phạm vi hoạt động cũng rất hẹp: hẹp trong phạm vị hoạt động, hẹp trong số lượng chủng loại tour, hẹp trong các dịch vụ hỗ trợ thương mại điện tử.

2.1.3 Tổng quan về phân tích và thiết kế hệ thống thông tin a, Quy trình phát triển hệ thống thông tin

Vòng đời hệ thống bao gồm các giai đoạn từ khởi đầu, xây dựng, khai thác, bảo trì cho đến khi hệ thống không còn hoạt động Quy trình phát triển phần mềm (SEP) là phương pháp quan trọng trong việc sản xuất phần mềm, giúp tạo ra sản phẩm chất lượng cao với chi phí thấp và năng suất tối ưu.

Các mô hình phổ biến hiện nay: Mô hình thác nước, mô hình chữ V, mô hình

Hình 1: Chu trình thác nước.

Phân tích hệ thống là quá trình thu thập và đánh giá các yêu cầu, bao gồm yêu cầu nghiệp vụ (chức năng) và yêu cầu phi chức năng như bảo mật, ổn định và hiệu năng Kết quả của quá trình này là bản đặc tả yêu cầu hệ thống, đóng vai trò quan trọng trong việc phát triển và triển khai hệ thống hiệu quả.

- Thiết kế HT: Là hoạt động thiết kế hệ thống phục vụ việc thiết lập hệ thống (lập trình, cài đặt) Kết quả là bản thiết kế chi tiết.

- Lập trình (Mã hóa): Là hoạt động lập trình, cài đặt hệ thống.

- Kiểm thử: Là hoạt động kiểm tra, chỉnh sửa lỗi.

- Triển khai: Đưa hệ thống vào hoạt động Khai thác và bảo trì HT b, Cách tiếp cận phân tích và thiết kế hệ thống

Phân tích thiết kế hướng cấu trúc là phương pháp chia nhỏ chương trình phần mềm thành các chương trình con, mỗi chương trình con đảm nhiệm một nhiệm vụ cụ thể Phương pháp này giúp tổ chức mã nguồn một cách hiệu quả và dễ dàng bảo trì Thiết kế phần mềm theo hướng cấu trúc có thể được thực hiện dựa trên hai hướng tiếp cận chính.

- Tiếp cận hướng chức năng tập trung phân tích các chức năng của PM.

- Tiếp cận hướng dữ liệu xây dựng PM dựa trên việc phân rã PM theo các chức năng cần đáp ứng và dữ liệu cho các chức năng đó.

Cách thực hiện hướng cấu trúc là phân tích từ trên xuống (top-down), trong đó bài toán được phân rã thành các bài toán nhỏ hơn cho đến khi đạt được bài toán đơn giản nhất Phương pháp này giúp dễ dàng quản lý và giải quyết các vấn đề phức tạp một cách hiệu quả.

- Tư duy phân tích rõ ràng.

- Bản phân tích sáng sủa, dễ hiêu.

- Không hỗ trợ sử dụng lại

- Chỉ quan tâm đến việc quản lý dữ liệu mà hệ thống cần lưu trữ

- Gặp khó khăn khi hệ thống thường xuyên thay đổi về nghiệp vụ

 Phân tích thiết kế hướng đối tượng:

Tập trung vào hai khía cạnh quan trọng của hệ thống: dữ liệu và hành động Ánh xạ các thành phần của hệ thống với các đối tượng trong đời sống thực để tạo ra sự kết nối và hiểu biết sâu sắc hơn.

Hệ thống được cấu trúc thành các thành phần nhỏ gọi là đối tượng, mỗi đối tượng chứa dữ liệu và hành động liên quan Phần mềm được phát triển bằng cách kết hợp các đối tượng thông qua các mối quan hệ và tương tác giữa chúng.

- Hỗ trợ sử dụng lại mã nguồn trong các HT tương tự.

- Phù hợp với HT lớn khi các đối tượng chỉ hoạt động độc lập và chỉ thực hiện hành động khi có yêu cầu từ đối tượng khác

- Giảm lỗi, tăng tốc độ thiết kế và phát triển phần mềm.

2.1.4 Giới thiệu về ngôn ngữ mô hình hóa UML a, Khái niệm

UML (Unified Modeling Language) là ngôn ngữ chuẩn cho việc lập kế hoạch chi tiết phần mềm, sử dụng các ký hiệu đồ họa trong thiết kế hệ thống thông tin theo phương pháp hướng đối tượng UML không chỉ là ngôn ngữ biểu diễn mô hình mà còn giúp hiển thị, đặc tả và làm tài liệu, đóng vai trò quan trọng trong việc giao tiếp giữa người dùng, nhà phân tích, nhà thiết kế và lập trình viên Bằng cách kết hợp những điểm mạnh của các mô hình khác nhau, UML tạo ra một công cụ hiệu quả cho việc phát triển phần mềm.

- Mô hình dữ liệu (ERD)

- Mô hình dòng dữ liệu (DFD)

- Mô hình đối tượng & Mô hình thành phần b, Các loại biểu đồ UML trong các giai đoạn phát triển hệ thống

- Xây dựng biểu đồ UseCase

+ Xác định các tác nhân, use case và các quan hệ giữa các use case để mô tả lại các chức năng của hệ thống.

+ Xây dựng các kịch bản mô tả hoạt động của hệ thống trong mỗi use case cụ thể.

- Xây dựng biểu đồ lớp: xác định tên các lớp, các thuộc tính của lớp, một số phương thức và mối quan hệ cơ bản trong sơ đồ lớp.

- Xây dựng biểu đô trạng thái: Mô tả các trạng thái và chuyển tiếp trạng thái trong hoạt động của một đối tượng thuộc một lớp nào đó.

Xây dựng biểu đồ tương tác, bao gồm biểu đồ cộng tác và biểu đồ tuần tự, là một bước quan trọng trong việc mô tả chi tiết hoạt động của các use case Các biểu đồ này dựa trên những kịch bản đã xác định trong giai đoạn phân tích, giúp làm rõ các lớp và quy trình liên quan.

Để xây dựng biểu đồ lớp chi tiết, cần hoàn thiện biểu đồ lớp bằng cách bổ sung các lớp còn thiếu Việc này dựa vào biểu đồ trạng thái để thêm các thuộc tính cần thiết, đồng thời sử dụng biểu đồ tương tác để xác định các phương thức và mối quan hệ giữa các lớp.

- Xây dựng biểu đồ hoạt động

+ Mô tả hoạt động của các phương thức phức tạp trong mỗi lớp hoặc các hoạt động hệ thống có sự liên quan của nhiều lớp.

+ Biểu đồ hoạt động là cơ sở để cài đặt các phương thức trong các lớp.

Các lớp của giai đoạn thiết kế sẽ được biến thành các dòng code cụ thể trong một ngôn ngữ lập trình hướng đối tượng cụ thể.

Hệ thống phần mềm thường trải qua nhiều giai đoạn thử nghiệm với sự tham gia của các nhóm thử nghiệm khác nhau Trong quá trình này, nhiều loại biểu đồ UML được áp dụng để hỗ trợ công việc thử nghiệm hiệu quả.

- Thử nghiệm đơn vị sử dụng biểu đồ lớp.

- Thử nghiệm tích hợp sử dụng biểu đồ thành phần (component diagram) và biểu đồ cộng tác (collaboration diagram).

- Thử nghiệm hệ thống sử dụng biểu đồ use case (use case diagram).

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

Cơ sở dữ liệu (CSDL) là tập hợp có cấu trúc của các dữ liệu liên quan, như danh sách khách hàng và tour CSDL được thiết kế và lưu trữ với mục đích cụ thể, phục vụ cho các ứng dụng và người dùng nhất định.

Công cụ sử dụng

2.2.1 Giới thiệu về ngôn ngữ lập trình PHP và Laravel

2.2.1.1 Ngôn ngữ lập trình PHP

PHP, viết tắt của "Personal Home Page", là một ngôn ngữ lập trình máy chủ phổ biến trong phát triển web So với các ngôn ngữ khác như C#, Java, và Python, PHP nổi bật với cú pháp đơn giản, tốc độ nhanh và dễ học, giúp người dùng tiếp cận nhanh chóng Nhờ vào tính linh hoạt và khả năng đáp ứng đa dạng, PHP được sử dụng rộng rãi cho nhiều loại website, từ blog cá nhân đến trang giới thiệu công ty và thương mại điện tử.

MVC, viết tắt của "Model View Controller", là một kiến trúc phần mềm nhằm quản lý và phát triển dự án phần mềm một cách có hệ thống Mô hình này được ứng dụng rộng rãi, đặc biệt trong các ngôn ngữ lập trình Web, và được chia thành ba thành phần chính.

Model là thành phần cốt lõi chứa tất cả các nghiệp vụ Logic, phương thức xử lý, truy xuất Database và đối tượng mô tả dữ liệu như các Class, hàm xử lý Thành phần này đóng vai trò quan trọng trong việc xây dựng và quản lý dữ liệu, đồng thời cung cấp các phương thức xử lý cần thiết để thực hiện các nghiệp vụ Logic.

View là thành phần đảm nhận việc hiển thị thông tin và tương tác với người dùng, bao gồm tất cả các đối tượng giao diện người dùng như Textbox, Images, v.v Nói một cách đơn giản, View là tập hợp các Form hoặc các file HTML.

- Controller: Giữ nhiệm vụ tiếp nhận điều hướng các yêu cầu từ người dùng và gọi đúng những phương thức xử lý chúng Ưu điểm:

- Thể hiện tính chuyên nghiệp trong lập trình, phân tích thiết kế;

- Phát triển ứng dụng nhanh, đơn giản, dễ nâng cấp và bảo trì.

- Đối với dự án nhỏ thì việc sử dụng mô hình MVC gây cồng kềnh, tốn thời gian trong quá trình phát triển.

- Tốn thời gian trung chuyển dữ liệu qua các tầng.

Laravel là một PHP framework mã nguồn mở và miễn phí, được phát triển bởi

Taylor Otwell và nhắm vào mục tiêu hỗ trợ phát triển các ứng dụng web theo kiếm trúc model-view-controller (MVC).

Laravel nổi bật với cú pháp dễ hiểu và rõ ràng, hệ thống đóng gói modular cùng với quản lý gói phụ thuộc hiệu quả Nó cung cấp nhiều phương thức truy cập vào các cơ sở dữ liệu quan hệ và đi kèm với nhiều tiện ích hỗ trợ cho việc triển khai và bảo trì ứng dụng.

Bản Laravel beta đầu tiên được phát hành vào ngày 09/06/2011, tiếp đó là:

- Laravel 1: Phát hành trong cùng tháng với phiên bản beta đầu tiên.

- Laravel 2: được phát hành vào tháng 09 năm 2011.

- Laravel 3: Được phát hành vào tháng 02 năm 2012.

- Laravel 4: Tên mã “Illuminate”, được phát hành vào tháng 05 năm 2013.

- Laravel 5: Được phát hành trong tháng 02 năm 2015.

- Laravel 5.1: Được phát hành vào tháng 06 năm 2015.

- Laravel 5.6: Được phát hành vào tháng 01 năm 2016.

- Laravel 5.7: Được phát hành vào tháng 09 năm 2018.

- Laravel 6: Được phát hành vào tháng 9 năm 2019.

- Laravel 7: Được phát hành vào tháng 03 năm 2020.

- Laravel 8: Được phát hành vào tháng 09 năm 2020.

2.2.3 Cơ sở dữ liệu SQL

MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới, được ưa chuộng bởi các nhà phát triển ứng dụng nhờ vào tốc độ cao, tính ổn định và dễ sử dụng MySQL hỗ trợ nhiều hệ điều hành và cung cấp một loạt các hàm tiện ích mạnh mẽ, làm cho nó trở thành lựa chọn lý tưởng cho các ứng dụng có truy cập cơ sở dữ liệu trên internet Đặc biệt, MySQL hoàn toàn miễn phí và có nhiều phiên bản cho các hệ điều hành khác nhau như Windows, Linux, Mac OS X, và nhiều hệ điều hành khác.

Hình 2: Kiểu dữ liệu trong MySql.

MySQL là một hệ quản trị cơ sở dữ liệu quan hệ nổi bật, sử dụng ngôn ngữ truy vấn có cấu trúc (SQL) Nó hỗ trợ nhiều ngôn ngữ lập trình như PHP và Perl, đóng vai trò quan trọng trong việc lưu trữ thông tin cho các trang web được phát triển bằng các ngôn ngữ này.

2.2.3.2 Lý do sử dụng MySQL:

MySQL là một hệ thống cơ sở dữ liệu nhanh chóng và dễ sử dụng, được nhiều nhà phát triển coi là lựa chọn hàng đầu Với tính năng cao nhưng đơn giản trong cài đặt và quản trị, MySQL là giải pháp tiết kiệm chi phí vì hầu hết các ứng dụng trong tổ chức đều miễn phí Hỗ trợ ngôn ngữ SQL, MySQL cho phép người dùng truy cập thông qua các ứng dụng ODBC Hơn nữa, nhiều client có thể truy cập vào server đồng thời và sử dụng nhiều cơ sở dữ liệu cùng lúc, mang đến sự linh hoạt cao trong việc tương tác và xem kết quả qua các giao diện khác nhau như trình duyệt web.

PHÂN TÍCH THIẾT KẾ VÀ HỆ THỐNG

Phân tích bài toán

Website Booking Tour là nền tảng đặt tour trực tuyến, phục vụ doanh nghiệp và cá nhân theo xu hướng công nghiệp 4.0 Nó cung cấp các chức năng đặt tour tiện lợi và hiện đại, mang đến cho khách hàng trải nghiệm đặt tour tốt nhất.

3.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.

 Tour đượ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ể dễ dàng xem và tìm kiếm các tour du lịch, đặt tour theo nhu cầu, theo dõi trạng thái đơn đặt tour của mình, cũng như hủy đơn khi chưa được xác nhận hoặc chưa vượt quá thời gian quy định.

 Người dùng có thể đánh giá đơn đặt tour khi trả tour.

 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 tour, thanh toá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ị.

 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 toá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 Thanh toán Online.

 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.

Phân tích thiết kế

3.2.1 Tác nhân và vai trò

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

STT Tên tác nhân Vai trò

1 Khách hàng (User) Người có nhu cầu đặt tour tương tác trực tiếp với trang website.

Người quản lý trang website về tour, đơn đặt tour, phản hồi, checkin, checkout, người dùng,

3 Hệ thống (System) Xử lý các chức năng của trang web.

Bảng 1: Xác định các tác nhân

3.2.1.2 Xác định các Use-case

STT Tác nhân Use-case Ý nghĩa

1 Khách hàng Đăng ký và Đăng nhập.

Tạo 1 tài khoản để hưởng quyền 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 khoản Google

Thực hiện đăng nhập với tài khoản Google của khách hàng.

Quên mật khẩu 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ề tour.

Xem tour theo thể loại tour Hiển thị các tour theo thể loại tour đã 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 tour dựa trên những từ khóa ngày đến ngày đi … để tiết kiệm thời gian.

Thêm tour vào đơn đặt tour

Giúp khách hàng thêm tour đã chọn vào đơn đặt tour. Đặt tour Giúp khách hàng thực hiện đặt tour đã chọn.

Thanh toán online Giúp khách hàng thực hiện thanh toán đơn đặt tour thông qua VNPay.

Phản hồi Tiếp nhận phản hồi của khách hàng và trả lời lại cho khách hành thông qua email. Đánh giá đơn đặt tour

Sau khi trả tour, 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 tin chi tiết về tour đơn hàng đã đặt.

Chúng tôi cung cấp dịch vụ sắp xếp tour giúp khách hàng dễ dàng lựa chọn theo loại tour, giá cả và số lượng người Đặc biệt, chúng tôi hỗ trợ khách hàng bằng nhiều ngôn ngữ khác nhau để mang lại trải nghiệm tốt nhất.

Hỗ trợ khách hàng đăng ký nhận quảng cáo từ khách sạn.

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

Quản lý đơn đặt tour

Giúp khách hàng cập nhập bổ sung thông tin đơn đặt tour, hỗ trợ cho việc thanh toán.

Quản lý thông tin cá nhân

Giúp khách hàng xem thông tin cá nhân, cập nhập bổ sung thông tin cá nhân, hỗ trợ cho việc thanh toán.

Để sử dụng đầy đủ các chức năng của trang web, người dùng cần đăng nhập vào tài khoản Sau khi hoàn tất, hãy nhớ đăng xuất để đảm bảo an toàn cho tài khoản của mình.

Quản lý loại tour Giúp tạo, sửa, xóa loại tour.

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

Quản lý dịch vụ tour

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

Quản lý giá ngày đặc biệt (ngày lễ) Giúp tạo, sửa, xóa giá ngày đặc biệt.

Giúp hiển thị, cập nhật trạ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 sinh Giúp tạo, sửa, xóa dịch vụ phát sinh.

Quản lý bài viết Giúp tạo, sửa, xóa bài viết.

Quản lý tour Giúp tạo, sửa, xóa tour, xuất dữ liệu ra file exce.

Giúp tìm kiếm thông tin đơn đặt tour thông qua mã Thanh toán Online, cập nhật trạng thái đơn đặt tour.

Quản lý nhật ký công việc Giúp hiển thị nhật ký công 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.

Quản lý đơn đặt tour

Hệ thống hỗ trợ hiển thị và cập nhật trạng thái đơn hàng, cho phép người dùng xóa đơn đặt tour và xuất dữ liệu đơn đặt tour ra file Excel Ngoài ra, hệ thống còn đa ngôn ngữ, giúp người dùng dễ dàng tương tác bằng nhiều ngôn ngữ khác nhau.

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

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

Gửi thông tin đơn đặt tour qua email của khách hàng.

Gửi nội dung phản hồi Gửi nội dung phản hồi cho khách hàng.

Gửi thông báo Gửi thông báo đến khách hàng (tour mới, tin tức, event…).

Hiển thị thông báo khi có khách hàng đặt tour, góp ý…

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

Gửi email xác nhận đăng ký tài khoản, tránh các email ảo.

Bảng 2: Xác định các Use-case

3.2.2 Xây dựng biểu đồ Usecase (Usecase Diagram)

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

Hình 3: Biểu đồ usecase tổng quát.

3.2.2.2 Biểu đồ Use-Case đăng nhập, đăng ký

Hình 4: Biểu đồ usecase đăng nhập, đăng ký. Đặc tả usecase đăng ký tài khoản

Mục đích Để người dùng có thể đăng nhập vào bằng một tài khoản khác. Điều kiện tiên quyết Khách hàng đang trong website.

Để sử dụng hệ thống, người dùng cần có tài khoản hợp lệ và điền đầy đủ thông tin yêu cầu Tất cả các trường thông tin đều bắt buộc, nếu có trường nào bị bỏ trống, hệ thống sẽ hiển thị thông báo.

1 Tại trang chủ chọn chức năng đăng ký

2 Hiển thị form đăng ký tài khoản

3 Nhập thông tin đăng ký

4 Gửi thông tin đăng ký tới hệ thống

5 Kiểm tra thông tin, nếu đúng thì cho phép truy cập hệ thống và cập nhật CSDL.

Ngoại lệ 1 Hệ thống thông báo lỗi

2 Hệ thống thông báo bắt buộc phải nhập.

Bảng 3: Đặc tả usecase đăng ký tài khoản. Đặc tả usecase đăng nhập

Mục đích Cho phép người dùng truy cập vào hệ thống website. Điều kiện tiên quyết Người dùng đã có tài khoản.

Tất cả người dùng đều phải đăng nhập vào hệ thống, bao gồm email, password đều là trường bắt buộc.

1 Tại trang chủ chọn chức năng đăng nhập

2 Hiển thị form đăng nhập

3 Nhập thông tin đăng nhập (email, password)

4 Gửi thông tin đăng nhập tới hệ thống

5 Kiểm tra thông tin đăng nhập, nếu đúng thì cho phép truy cập hệ thống, sai thì thông báo lỗi và yêu cầu nhập lại

1 Hệ thống thông báo thông tin nhập chưa đầy đủ

2 Hệ thống thông báo thông tin nhập bị sai.

3 Hệ thống thông báo đăng nhập thất bại.

Bảng 4: Đặc tả usecase đăng nhập. Đặc tả usecase đăng xuất

Người dùng và quản trị viên muốn thoát tài khoản khỏi hệ thống. Điều kiện tiên quyết Khi User, Admin chọn đăng xuất.

Mô tả chung Người dùng đăng xuất ra khỏi hệ thống

Luồng sự kiện Hệ thống hủy việc lưu thông tin đăng nhập.

Quay về màn hình trang chủ.

Bảng 5: Đặc tả usecase đăng ký tài khoản.

3.2.2.3 Usecase quản lý danh mục tour

Hình 5: Biểu đồ usecase quản lý danh mục tour.

 Đặc tả usecase thêm danh mục tour

Tên Usecase Thêm danh mục tour

Mục đích Thêm danh mục tour mà admin muốn. Điều kiện tiên quyết Admin đã đăng nhập vào hệ thống.

Mô tả chung Chức năng này dùng cho khách hàng muốn thêm danh mục tour các tour mà họ muốn.

1.Tại trang chủ chọn chức năng đăng nhập

2 Hiển thị form đăng nhập

3 Nhập thông tin đăng nhập (email, password)

4 Gửi thông tin đăng nhập tới hệ thống

5 Kiểm tra thông tin đăng nhập, nếu đúng thì cho phép truy cập hệ thống, sai thì thông báo lỗi và yêu cầu nhập lại.

6 Chọn chức năng quản lý danh mục tour.

7 Hiển thị danh mục tour.

8 Chọn chức năng thêm danh mục tour.

9 Hiển thị giao diện thêm danh mục tour.

10 Nhập thông tin danh mục tour muốn thêm.

11 Kiểm tra thông tin nếu hợp lệ thì thông báo sửa thành công lưu vào CSDL.

Ngoại lệ Hệ thống thông báo không được bỏ trống.

Bảng 6: Đặc tả usecase thêm danh mục tour.

 Đặc tả usecase sửa danh mục tour

Tên Usecase Sửa danh mục tour

Mục đích Sửa danh mục tour mà admin muốn. Điều kiện tiên quyết Admin đã đăng nhập vào hệ thống.

Mô tả chung Chức năng này dùng cho khách hàng muốn sửa danh mục tour các tour mà họ muốn.

1 Tại trang chủ chọn chức năng đăng nhập

2 Hiển thị form đăng nhập

3 Nhập thông tin đăng nhập (email, password)

4 Gửi thông tin đăng nhập tới hệ thống

5 Kiểm tra thông tin đăng nhập, nếu đúng thì cho phép truy cập hệ thống, sai thì thông báo lỗi và yêu cầu nhập lại.

7 Hiển thị thông tin giỏ hàng.

8 Tìm tour cần sửa và thực hiện sửa.

Ngoại lệ Hệ thống thông báo không được bỏ trống.

Bảng 7: Đặc tả usecase sửa danh mục tour.

 Đặc tả usecase xóa danh mục tour

Tên Usecase Xóa danh mục tour

Mục đích Xóa danh mục tour mà admin muốn. Điều kiện tiên quyết Admin đã đăng nhập vào hệ thống.

Mô tả chung Chức năng này dùng cho khách hàng muốn xóa danh mục tour các tour mà họ muốn.

1 Tại trang chủ chọn chức năng đăng nhập.

2 Hiển thị form đăng nhập.

3 Nhập thông tin đăng nhập (email, password).

4 Gửi thông tin đăng nhập tới hệ thống.

5 Kiểm tra thông tin đăng nhập, nếu đúng thì cho phép truy cập hệ thống, sai thì thông báo lỗi và yêu cầu nhập lại.

6 Chọn chức năng quản lý danh mục tour.

7 Hiển thị danh mục tour.

8 Chọn chức năng xóa danh mục tour.

9 Hiển thị giao diện xóa danh mục tour.

10 Nhập thông tin danh mục tour muốn xóa.

11 Kiểm tra thông tin nếu hợp lệ thì thông báo xóa thành công lưu vào CSDL.

Ngoại lệ Hệ thống thông báo không được bỏ trống.

Bảng 8: Đặc tả usecase xóa danh mục tour.

3.2.2.4 Usecase quản lý thống kê

 Biểu đồ usecase quản lý thống kê

Hình 6: Biểu đồ usecase quản lý thống kê

 Đặc tả usecase quản lý thống kê

Tên Usecase Quản lý thống kê

Mục đích Thống kê doanh thu. Điều kiện tiên quyết Admin đã đăng nhập vào hệ thống.

Mô tả chung Chức năng này dùng cho admin.

1 Tại trang chủ chọn chức năng đăng nhập

2 Hiển thị form đăng nhập

3 Nhập thông tin đăng nhập (email, password)

4 Gửi thông tin đăng nhập tới hệ thống

5 Kiểm tra thông tin đăng nhập, nếu đúng thì cho phép truy cập hệ thống, sai thì thông báo lỗi và yêu cầu nhập lại.

6 Chọn chức năng in thống kê ở dashboard.

Bảng 9: Đặc tả usecase quản lý thống kê.

3.2.2.5 Usecase quản lý tài khoản khách hàng

 Biểu đồ usecase quản lý tài khoản khách hàng

Hình 7: Biểu đồ usecase quản lý tài khoản khách hàng.

 Đặc tả usecase quản lý tài khoản khách hàng

Tên Usecase Hiển thị danh sách

Danh sách khách hàng sẽ được hiển thị trên hệ thống quản lý, cho phép người dùng cập nhật tài khoản của họ Điều kiện tiên quyết là cả Admin và User đều phải đăng nhập vào hệ thống.

Mô tả chung Chức năng này dùng cho admin muốn xem các khách hàng của website

1 Tại trang chủ chọn chức năng đăng nhập.

2 Hiển thị form đăng nhập.

3 Nhập thông tin đăng nhập (email, password)

4 Gửi thông tin đăng nhập tới hệ thống

5 Kiểm tra thông tin đăng nhập, nếu đúng thì cho phép truy cập hệ thống, sai thì thông báo lỗi và yêu cầu nhập lại.

7 Hiển thị trang profile khách hàng.

8 Sau khi nhập xong, nếu hợp lệ hệ thống sẽ báp thành công.

Ngoại lệ Hiển thị thông báo nếu lỗi xảy ra.

Bảng 10: Đặc tả usecase quản lý tài khoản khách hàng.

3.2.2.6 Usecase quản lý đặt tour

 Biểu đồ usecase quản lý đặt tour

Hình 8: Biểu đồ usecase quản lý đặt tour.

 Đặc tả usecase đặt tour

Tên Usecase Quản lý đặt tour

Mục đích Khách hàng có thể thanh toán và mua tour. Điều kiện tiên quyết Người dùng đã đăng nhập vào hệ thống

Mô tả chung Khi khách hàng muốn đặt hàng Khách hàng sẽ nhập các thông tin liên hệ và xác nhận thanh toán đơn hàng.

1 Tại trang chủ chọn chức năng đăng nhập

2 Hiển thị form đăng nhập

3 Nhập thông tin đăng nhập (email, password)

4 Gửi thông tin đăng nhập tới hệ thống

5 Kiểm tra thông tin đăng nhập, nếu đúng thì cho phép truy cập hệ thống, sai thì thông báo lỗi và yêu cầu nhập lại.

6 Nhập đầy đủ thông tin và chọn phương thức thanh toán

Ngoại lệ Khách hàng không nhập thông tin, hệ thống hiển thị thông báo lỗi

Bảng 11: Đặc tả usecase đặt tour.

3.2.3 Biểu đồ trình tự (Sequence Diagram)

Hình 9: Biểu đồ trình tự đăng nhập của khách hàng.

Hình 10: Biểu đồ trình tự đăng nhập của quản trị viên.

Hình 11: Biểu đồ trình tự phân quyền.

3.2.3.3 Usecase quản lý tài khoản người dùng

Hình 12: Biểu đồ trình tự thêm người dùng.

Hình 13: Biểu đồ trình tự sửa người dùng.

Hình 14: Biểu đồ trình tự xóa người dùng.

Hình 15: Biểu đồ trình tự thêm tour.

Hình 16: Biểu đồ trình tự sửa tour.

Hình 17: Biểu đồ trình tự xóa tour.

3.2.3.5 Usecase quản lý danh mục tour

Hình 18: Biểu đồ trình tự thêm danh mục tour.

Hình 19: Biểu đồ trình tự sửa danh mục tour.

Hình 20: Biểu đồ trình tự xóa danh mục tour.

3.2.3.6 Usecase quản lý tài khoản khách hàng

Hình 21: Biểu đồ trình tự cập nhật thông tin khách hàng.

Hình 22: Biểu đồ trình tự đăng ký.

Hình 23: Biểu đồ hoạt động đăng nhập.

3.2.4.2 Usecase đăng ký tài khoản

Hình 24: Biểu đồ hoạt động đăng ký.

Hình 25: Biểu đồ hoạt động phân quyền người dùng.

3.2.4.3 Usecase quản lý danh mục tour

Hình 26: Biểu đồ hoạt động thêm danh mục tour.

Hình 27: Biểu đồ hoạt động sửa danh mục tour.

Hình 28: Biểu đồ hoạt động xóa danh mục tour.

3.2.4.4 Usecase quản lý người dùng

Hình 29: Biểu đồ hoạt động thêm người dùng.

Hình 30: Biểu đồ hoạt động đăng ký tài khoản khách hàng.

Hình 31: Biểu đồ hoạt động đặt tour.

3.2.5.1 Biểu đồ trạng thái đặt Tour

Hình 32: Biểu đồ trạng thái đặt Tour.

3.2.5.2 Biểu đồ trạng thái Tài khoản

Hình 33: Biểu đồ trạng thái Tài khoản.

3.2.5.3 Biểu đồ trạng thái Tour

Hình 34: Biểu đồ trạng thái tour.

3.2.6 Biểu đồ lớp (Class Diagram)

Hình 38: Biểu đồ cơ sở dữ liệu.

3.2.6 Các bảng cơ sở dữ liệu

3.2.6.1 Bảng quản trị viên (admins)

Bảng quản trị viên chứa các trường dữ liệu quan trọng như sau: "id" là mã định danh (khóa chính) kiểu số nguyên không âm, "name" lưu trữ tên quản trị viên với kiểu chuỗi tối đa 255 ký tự, "email" chứa địa chỉ email của quản trị viên cũng với kiểu chuỗi 255 ký tự, và "password" lưu trữ mật khẩu Trường "remember_token" có kiểu chuỗi 100 ký tự dùng để ghi nhớ đăng nhập, trong khi "isdeleted" là trường kiểu số nguyên nhỏ phân biệt giữa trạng thái đã xóa và chưa xóa Cuối cùng, "created_at" và "updated_at" là các trường thời gian ghi lại thời điểm tạo và cập nhật bản ghi.

3.2.6.2 Bảng nhật ký công việc (audits)

The article outlines a data structure for tracking changes in a system, featuring key attributes such as an unsigned integer ID as the primary key, a varchar for user type, and a bigint for the user ID who made the changes It includes fields for the event description and the auditable model's name and ID, along with text fields for old and new values Additionally, it captures the processing URL, the user's IP address, and device information through user agent details The structure also records timestamps for creation and updates, ensuring comprehensive tracking of changes within the system.

Bảng 13: Nhật ký công việc

3.2.6.3 Bảng đơn đặt tour (bookings)

The article outlines a database schema for a tour booking system, detailing various data types and their descriptions The key attributes include an unsigned integer ID as the primary key, a varchar for the booking code, and datetime fields for transaction, check-in, and check-out dates It also specifies a tinyint for the booking status, integers for the number of adults and children, and a double for the total amount Payment method, customer details (fullname, phone, email), a message field, and a foreign key user ID are included, along with indicators for deletion status and timestamps for creation and updates.

3.2.6.4 Bảng chi tiết đơn đặt tour (booking_detail)

The article outlines the data structure for a tour booking system, detailing key data types and their descriptions The 'id' is an unsigned integer that serves as the primary key, while 'tour_id' and 'booking_id' are also integers that function as foreign keys linking to the tour and booking entities, respectively The 'price' is represented as a double, indicating the cost of the tour Additionally, 'created_at' and 'updated_at' are timestamps that record the creation and last update times of the entries.

Bảng 15: Chi tiết đơn đặt tour.

3.2.6.5 Bảng quan hệ nhiều - nhiều giữa đơn đặt tour và dịch vụ phát sinh (cost_booking)

The article outlines a data structure with key attributes: 'id' is an unsigned integer serving as the primary key, 'booking_id' is an integer representing the foreign key for tour bookings, 'cost_id' is another integer that acts as a foreign key for additional services, and 'price' is a double indicating the cost of these services Additionally, 'created_at' and 'updated_at' are timestamps that record the creation and update times, respectively.

Bảng 16: Quan hệ nhiều – nhiều giữa đơn đặt tour và dịch vụ.

3.2.6.6 Bảng dịch vụ phát sinh (cost_overrun)

Dưới đây là mô tả về các kiểu dữ liệu trong bảng dịch vụ phát sinh: "id" là mã khóa chính với kiểu dữ liệu int(10) unsigned; "name" lưu trữ tên dịch vụ với kiểu varchar(255); "description" cung cấp mô tả dịch vụ cũng với kiểu varchar(255); "price" thể hiện giá tiền của dịch vụ dưới dạng double; "isdeleted" là trường tinyint(1) dùng để phân biệt dịch vụ đã xóa hay chưa; "created_by" và "updated_by" là các trường int(11) ghi nhận người tạo và người cập nhật; cuối cùng, "created_at" và "updated_at" là các trường timestamp cho biết thời gian tạo và cập nhật.

Bảng 17: Dịch vụ phát sinh

Bài viết mô tả cấu trúc của một bảng dữ liệu phản hồi, bao gồm các trường sau: "id" là mã định danh (khóa chính) kiểu số nguyên không dấu; "name" lưu tên người viết phản hồi; "email" chứa địa chỉ email của người phản hồi; "title" là tiêu đề của phản hồi; "content" ghi lại nội dung phản hồi; "isdeleted" là trường phân biệt trạng thái đã xóa hoặc chưa xóa; "reply" là nội dung trả lời phản hồi; "reply_by" lưu mã người thực hiện phản hồi; "created_at" ghi thời gian tạo; và "updated_at" ghi thời gian cập nhật.

Bài viết này mô tả cấu trúc của một bảng dữ liệu với các trường như sau: "id" là mã id (khóa chính) kiểu int(10) unsigned; "title" là tiêu đề bài viết kiểu varchar(255); "thumbnail" là ảnh đại diện cũng kiểu varchar(255); "content" chứa nội dung bài viết với kiểu longtext; "status" là trạng thái bài viết kiểu tinyint(1); "hot" phân biệt bài viết hay với bài viết bình thường, cũng là kiểu tinyint(1); "isdeleted" cho biết bài viết đã bị xóa hay chưa, kiểu tinyint(1); "created_by" là người tạo bài viết kiểu int(11); "updated_by" là người cập nhật bài viết kiểu int(11); "created_at" lưu thời gian tạo bài viết kiểu timestamp; và "updated_at" lưu thời gian cập nhật bài viết kiểu timestamp.

Bảng dữ liệu bao gồm các trường sau: "id" là kiểu dữ liệu int(10) unsigned, đóng vai trò là mã id (khóa chính); "name" là kiểu varchar(191), dùng để lưu tên quyền; "guard_name" cũng là kiểu varchar(191), xác thực người dùng; "created_at" là kiểu timestamp, ghi lại thời gian tạo; và "updated_at" là kiểu timestamp, ghi lại thời gian cập nhật.

3.2.6.10 Bảng quan hệ nhiều - nhiều giữa quyền và nhóm quyền

Tên Kiểu dữ liệu Mô tả permission_id int(10) Quyền role_id int(10) Nhóm quyền

Bảng 21: Quan hệ nhiều nhiều giữi quyền và nhóm quyền.

3.2.6.11 Bảng Giá ngày đặc biệt (ngày lễ) (price_manager)

Cấu hình hệ thống

3.3.1 Môi trường phát triển Để chạy được website, máy chủ webserver cần phải cài đặt những phần mềm sau:

3.3.2 Khởi chạy ứng dụng Để khởi chạy ứng dụng, cần thực thi những lệnh bên dưới trong terminal theo thứ tự từ trên xuống dưới để cài đặt ứng dụng:

 import file database trong thư mục public vào MySql server.

 Sửa tên DB_DATABASE trong thư file env.

THIẾT KẾ HỆ THỐNG

Đăng nhập

Đăng ký

Hình 40: Đăng ký tài khoản khách hàng.

Trang chủ

Danh mục tour

Danh mục tour khuyến mãi

Hình 43: Danh mục tour khuyến mãi.

Xem chi tiết tour

Hình 44: Xem chi tiết tour.

Danh sách tin tức

Hình 45: Danh sách tin tức.

Góp ý

Thông tin người dùng

Hình 47: Thông tin người dùng- Admin.

Hình 48: Thông tin người dùng- User.

Đổi mật khẩu

Đặt tour

Xác nhận đặt tour

Hình 51: Xác nhận đơn đặt tour.

Lịch sử đặt tour

Hình 52: Lịch sử đặt tour- Admin.

Hình 53: Lịch sử đặt tour- User.

Xem chi tiết lịch sử đơn đặt tour

Hình 54: Xem chi tiết đơn đặt tour- Admin.

Hình 55: Xem chi tiết đơn đặt tour- User.

Tìm kiếm

Ngày đăng: 26/06/2022, 20:30

HÌNH ẢNH LIÊN QUAN

Hình 9: Biểu đồ trình tự đăng nhập của khách hàng. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 9 Biểu đồ trình tự đăng nhập của khách hàng (Trang 41)
Hình 10: Biểu đồ trình tự đăng nhập của quản trị viên. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 10 Biểu đồ trình tự đăng nhập của quản trị viên (Trang 42)
Hình 13: Biểu đồ trình tự sửa người dùng. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 13 Biểu đồ trình tự sửa người dùng (Trang 44)
Hình 14: Biểu đồ trình tự xóa người dùng. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 14 Biểu đồ trình tự xóa người dùng (Trang 45)
Hình 17: Biểu đồ trình tự xóa tour. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 17 Biểu đồ trình tự xóa tour (Trang 47)
Hình 18: Biểu đồ trình tự thêm danh mục tour. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 18 Biểu đồ trình tự thêm danh mục tour (Trang 48)
Hình 21: Biểu đồ trình tự cập nhật thông tin khách hàng. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 21 Biểu đồ trình tự cập nhật thông tin khách hàng (Trang 50)
Hình 24: Biểu đồ hoạt động đăng ký. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 24 Biểu đồ hoạt động đăng ký (Trang 52)
Hình 25: Biểu đồ hoạt động phân quyền người dùng. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 25 Biểu đồ hoạt động phân quyền người dùng (Trang 53)
Hình 26: Biểu đồ hoạt động thêm danh mục tour. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 26 Biểu đồ hoạt động thêm danh mục tour (Trang 54)
Hình 28: Biểu đồ hoạt động xóa danh mục tour. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 28 Biểu đồ hoạt động xóa danh mục tour (Trang 55)
Hình 29: Biểu đồ hoạt động thêm người dùng. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 29 Biểu đồ hoạt động thêm người dùng (Trang 56)
Hình 31 : Biểu đồ hoạt động đặt tour. - PHÂN TÍCH THIẾT kế và xây DỰNG WEBSITE QUẢNG cáo và BOOKING DU LỊCH VIỆT NAM
Hình 31 Biểu đồ hoạt động đặt tour (Trang 57)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w