1. Trang chủ
  2. » Cao đẳng - Đại học

Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)

66 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 đề Xây Dựng Hệ Thống Kinh Doanh Sách Online Với Khuyến Nghị Và Tư Vấn Tự Động
Tác giả Lê Bá Lĩnh, Trần Duy Trọng
Người hướng dẫn ThS. Mai Trọng Khang
Trường học Đại học Quốc gia TP. Hồ Chí Minh
Chuyên ngành Kỹ sư ngành Kỹ thuật phần mềm
Thể loại khóa luận tốt nghiệp
Năm xuất bản 2022
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 66
Dung lượng 3,27 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI (13)
    • 1.1. Lí do chọn đề tài (13)
    • 1.2. Mục tiêu và nhiệm vụ (13)
      • 1.2.1. Mục đích của đề tài (13)
      • 1.2.2. Nhiệm vụ của đề tài (13)
    • 1.3. Tính mới và tính khác biệt (14)
      • 1.3.1. Tính mới của đề tài (14)
      • 1.3.2. Tính khác biệt của đề tài (14)
    • 1.4. Phạm vi và đối tượng nghiên cứu (15)
      • 1.4.1. Phạm vi nghiên cứu (15)
      • 1.4.2. Đối tượng nghiên cứu (15)
    • 1.5. Ý nghĩa của đề tài (16)
      • 1.5.1. Đối với người dùng (16)
      • 1.5.2. Đối với nhóm (16)
  • CHƯƠNG 2: KIẾN THỨC TRỌNG TÂM (18)
    • 2.1. Chatbot (18)
      • 2.1.1. Khái niệm (18)
      • 2.1.2. Ưu điểm (18)
      • 2.1.3. Hạn chế (18)
      • 2.1.4. Tính ứng dụng (19)
    • 2.2. Khuyến nghị (19)
      • 2.2.1. Tổng quan (19)
      • 2.2.2. Thuật toán tiếp cận dựa theo nội dung (21)
      • 2.2.3. Ý tưởng xây dựng (22)
      • 2.2.4. Xây dựng công thức toán học (23)
      • 2.2.5. Thuật toán collaborative filtering (25)
  • CHƯƠNG 3: XÂY DỰNG CHATBOT VÀ KHUYẾN NGHỊ (27)
    • 3.1. Xây dựng chatbot (27)
      • 3.1.1. Phân tích (27)
      • 3.1.2. Xây dựng (27)
      • 3.1.3. Cài đặt (28)
      • 3.1.4. Triển khai (34)
    • 3.2. Xây dựng khuyến nghị (37)
      • 3.2.1. Mô hình xử lý (37)
      • 3.2.2. Chi tiết (37)
  • CHƯƠNG 4: PHÂN TÍCH, THIẾT KẾ HỆ THỐNG (42)
    • 4.1. Xây dựng kiến trúc (42)
      • 4.1.1. Đối tượng tham gia (42)
    • 4.2. Sơ đồ Use cases (43)
      • 4.2.1. Sơ đồ tổng quát (43)
      • 4.2.2. Sơ đồ tư vấn chatbot (44)
      • 4.2.3. Sơ đồ mua hàng (45)
      • 4.2.4. Sơ đồ theo dõi đơn hàng (46)
      • 4.2.5. Sơ đồ đánh giá sản phẩm (47)
      • 4.2.6. Sơ đồ quản lí người dùng (48)
      • 4.2.7. Sơ đồ quản lí đặt hàng (49)
      • 4.2.8. Sơ đồ quản lí sách (50)
      • 4.2.9. Danh sách các Actor (50)
      • 4.2.10. Danh sách các Use case (51)
    • 4.3. Phân tích và thiết kế dữ liệu (52)
    • 4.4. Thiết kế giao diện (55)
      • 4.4.1. Giao diện admin quản lý (55)
      • 4.4.2. Giao diện website (58)
      • 4.4.3. Giao diện mobile (61)
  • CHƯƠNG 5: KẾT LUẬN (65)
    • 5.1. Kết quả đạt được (65)
      • 5.1.1. Đối với người dùng (65)
      • 5.1.2. Hệ thống khuyến nghị (65)
      • 5.1.3. Hệ thống tư vấn tự động (65)
    • 5.2. Hướng phát triển (65)

Nội dung

KIẾN THỨC TRỌNG TÂM

Chatbot

Chatbot là phần mềm tương tác với người dùng bằng ngôn ngữ tự nhiên qua âm thanh hoặc tin nhắn Kết hợp với công nghệ AI, chatbot nâng cao hiệu quả hỗ trợ khách hàng, mang lại trải nghiệm tốt hơn cho người sử dụng.

Hình 2.1: Minh họa về chatbot

Sử dụng chatbot trong doanh nghiệp, đặc biệt trong lĩnh vực Thương mại điện tử, mang lại lợi ích lớn về thời gian, giúp tiếp cận và xử lý yêu cầu của khách hàng nhanh chóng Điều này không chỉ gia tăng doanh thu bán hàng mà còn nâng cao tỷ lệ chốt đơn Hơn nữa, chatbot có khả năng ghi nhớ thông tin người dùng, từ đó cung cấp tư vấn phù hợp dựa trên dữ liệu đã thu thập, nâng cao trải nghiệm cho khách hàng.

2.1.3 Hạn chế Đi kèm với lợi ích, những hạn chế trong quá trình sử dụng chatbot gây thiệt hại cũng rất lớn Ở đây chúng ta phải kể đến những hạn chế như sau:

+ Cần dữ liệu đào tạo lớn

+ Gặp khó khăn trong các câu hỏi nằm ngoài phạm vi được đào tạo

+ Các lỗi ngôn ngữ trong quá trình xử lí chatbot

2.1.4 Tính ứng dụng Ứng dụng của chatbot hiện nay rất phổ biến và xuất hiện hầu hết trong nhiều lĩnh vực như: Đầu tư, giáo dục, báo chí, tài chính, thương mại,

Hiện nay, nhiều ứng dụng nhắn tin phổ biến như Facebook Messenger, Discord và Telegram đã tích hợp chatbot, điều này cho thấy vai trò quan trọng của chatbot trong việc nâng cao khả năng cạnh tranh trên thị trường.

Khuyến nghị

Hệ thống gợi ý (Recommender System - RC) ngày càng phổ biến trong các ứng dụng phần mềm, mang lại nhiều lợi ích cho người dùng và nhà phát triển.

• Hệ thống đề xuất sản phẩm của Amazon

Amazon là một trong những công ty tiên phong trong việc phát triển hệ thống khuyến nghị sản phẩm Ngay từ những ngày đầu, họ đã nhận ra giá trị của công nghệ này, giúp cải thiện trải nghiệm người dùng Hệ thống đề xuất của Amazon dựa trên việc phân tích xếp hạng sản phẩm, hành vi mua sắm và hành vi duyệt web của người tiêu dùng.

• Hệ thống đề xuất sách của Netflix

Netflix là nền tảng xem sách trực tuyến, với hệ thống đề xuất sách thông minh Hệ thống này cho phép người dùng xếp hạng sách trên thang điểm 5 và theo dõi hành vi của họ khi chọn các thể loại yêu thích như lãng mạn hay phiêu lưu mạo hiểm.

Netflix còn cung cấp giải thích cho các cuốn sách được đề xuất bởi hệ thống

Ví dụ: Netflix sẽ hiển thị danh sách các cuốn sách A, B, C kèm theo một dòng thông báo: “Vì bạn đã xem D”

Cách tiếp cận này giúp cho người dùng có nhiều khả năng thực hiện theo đề xuất của netflix và thực sự cải thiện trải nghiệm của người dùng

• Hệ thống cá nhân hóa tin tức của google (Google News Personalization System)

Hệ thống cá nhân hóa tin tức của Google hiển thị nội dung dựa trên lịch sử nhấp chuột của người dùng trên trình duyệt web, thông qua thông tin thu thập từ tài khoản Gmail đã đăng nhập Hệ thống này coi mỗi cú nhấp chuột vào một bài báo như một đánh giá tích cực, từ đó đưa ra các khuyến nghị về các bài viết tương tự Tuy nhiên, không có cơ chế cho phép người dùng thể hiện sự không thích đối với một bài báo nào, dẫn đến việc các xếp hạng này được gọi là “xếp hạng 1 lần” (unary rating).

• Hệ thống giới thiệu bạn bè của facebook

Các trang mạng xã hội, như Facebook, sử dụng hệ thống giới thiệu bạn bè tiềm năng nhằm tăng cường tương tác và cải thiện trải nghiệm người dùng Khác với các hệ thống đề xuất sản phẩm, mục tiêu của hệ thống này là mở rộng kết nối xã hội, từ đó tạo ra một mạng lưới lớn hơn và tăng doanh thu quảng cáo cho các nhà phát triển Các hình thức khuyến nghị này dựa trên mối quan hệ cấu trúc thay vì dữ liệu xếp hạng, dẫn đến sự khác biệt trong các thuật toán được áp dụng.

2.2.2 Thuật toán tiếp cận dựa theo nội dung

Vậy model cho Recommender System được xây dựng như thế nào? Chúng ta cùng đi đến bài toán sau:

Giả sử chúng ta có một tập khách hàng và một tập hợp các cuốn sách Mỗi khách hàng đánh giá từ 0 đến 5 cho một hoặc nhiều cuốn sách, với 5 là mức độ hài lòng cao nhất và 0 là thấp nhất Một số khách hàng có thể chưa đánh giá một số cuốn sách Vậy làm thế nào để xác định cuốn sách nào phù hợp với từng khách hàng?

Ta cùng mô hình hóa bài toán dưới dạng ma trận như sau:

Hình 2.2: Ví dụ dự đoán rating

• Khách hàng là cột và các cuốn sách là hàng

• Các giá trị từ 0 – 5 sẽ được điền vào hàng i cột j của ma trận theo đánh giá của khách hàng j cho cuốn sách i

Giả sử họ đã đánh giá như sau:

Bảng 2.1: Bảng đánh giá các cuốn sách

Chúng ta quy ước rằng:

• r(i,j) = 1 nếu như user j đã đánh giá cho cuốn sách i

• y (i,j) = số điểm mà khách hàng j đã đánh giá cho cuốn sách i và chỉ được định nghĩa nếu r(i,j) = 1

Và bài toán bây giờ là sẽ xác định các giá trị “?” sao cho phù hợp với khách hàng dựa vào các đánh giá đã có

Chúng ta thêm vào ma trận hai cột nữa để đánh giá các thể loại của sách như sau:

2 cột này có thể được hiểu như sau:

The book "Love at Last" is characterized by a high level of romance, rated at 0.9, while its action elements are virtually nonexistent, scoring 0.

Và tương tự cho các cuốn sách khác

Nhưng như thế vẫn chưa đủ để xây dựng thuật toán vì vẫn chưa có tham số nào để biểu diễn mức độ yêu thích của các khách hàng

Như vậy theo suy nghĩ tự nhiên, cứ mỗi user chúng ta sẽ thêm vào một (hoặc nhiều) tham số để đại diện cho user đó

Bài toán hiện tại là dự đoán giá trị y dựa trên cặp (x1, x2), và thuật toán hồi quy tuyến tính với nhiều tham số, đã được đề cập trong mục 2.2.1, có thể được áp dụng để giải quyết vấn đề này.

Alice là một ví dụ điển hình cho bài toán hồi quy tuyến tính đơn giản trong toán học Về mặt ngữ nghĩa, có thể hiểu rằng Alice thích những cuốn sách lãng mạn và không ưa thích sách hành động Do đó, cuốn sách "Cute puppies of Love", với chỉ số lãng mạn cao (romance = 0.99) và chỉ số hành động thấp (action = 0.01), có khả năng cao để cô ấy yêu thích.

Hướng tiếp cận này được gọi là tiếp cận dựa trên nội dung (Content – Based Recommendation)

2.2.4 Xây dựng công thức toán học

Để giải quyết bài toán hồi quy tuyến tính với nhiều biến, cần sử dụng hai công cụ chính: hàm lỗi (cost function) và phương pháp Gradient Descent để học các tham số.

Chúng ta sẽ lần lượt giải quyết 2 bước này để hoàn thiện thuật toán Đầu tiên là công thức của hàm lỗi:

Hàm lỗi cho người dùng j được biểu diễn bởi đại lượng (θ (j) ) T x (i), tương ứng với h(x (i)) đã đề cập ở phần trước Để tránh tình trạng overfitting trong mô hình, việc thêm regularization là cần thiết để tối ưu hóa hiệu suất.

Hình 2.5: Hàm lỗi cho user j có sử dụng regularization

Chúng ta không chỉ muốn tối ưu hóa tham số cho từng người dùng riêng lẻ, mà còn cần tối ưu cho tất cả người dùng Do đó, chúng ta cần điều chỉnh công thức để đạt được mục tiêu này.

Hình 2.6: Hàm lỗi cho tất cả user có sử dụng regularization

Việc tiếp theo là học các tham số sử dụng gradient descent

Hình 2.7: Gradient Descent cho Content - based Recommendations

Bài toán đã được giải quyết theo hướng tiếp cận dựa trên nội dung!

Để khắc phục nhược điểm của thuật toán đã nêu, cần thiết phải xây dựng một mô hình mới cho hệ thống gợi ý Mô hình này sẽ tiếp tục sử dụng nguyên tắc cơ bản của phương pháp dựa trên nội dung.

Các giá trị về tính năng của sách sẽ bị ẩn đi, khiến chúng ta không thể phân biệt được đâu là cuốn sách lãng mạn và đâu là cuốn sách thuộc thể loại hành động.

Hình 2.8: Model mới cho RS

Và bây giờ giả sử như chúng ta, bằng cách nào đó có thể xác định được ma trận sở thích của mỗi user chẳng hạn như sau:

Hình 2.9: Xác định ma trận sở thích

Bài toán hiện tại là tìm bộ số (x1, x2) dựa vào tập ma trận sở thích, tương tự như bài toán linear regression cho nhiều biến, trong đó bộ tham số cần học là tham số thể loại Sự khác biệt ở đây là ma trận được học là ma trận tham số thể loại thay vì ma trận tham số sở thích như ở bài toán trước Hai bài toán này có thể coi là hoán đổi vai trò giữa ma trận tham số sở thích và ma trận tham số thể loại.

XÂY DỰNG CHATBOT VÀ KHUYẾN NGHỊ

Xây dựng chatbot

Trong quá trình nghiên cứu, nhóm chúng em đã xác định được các nội dung cần thực hiện trong quá trình thực hiện chatbot như sau:

+ Lời chào: Gửi lời chào khi có người dùng gửi tin nhắn đến

+ Thông tin chi tiết: Các thông tin chi tiết bao gồm Sách mới nhất, thể loại sách, tác giả

+ Đặt sách: Người dùng có thể thực hiện đặt sách ngay trong form

+ Xử lí ngôn ngữ tự nhiên

Trước khi đi đến phần nội dung chính là Cài đặt, chúng ta cần phải thực hiện các bước sau:

Bước 1: Tạo một Trang trên Facebook hoặc sử dụng trang sẵn có Ở đây nhóm chúng em sử dụng Fanpage Nhà Sách Tri Thức mà nhóm đã tạo

Hình 3.1: Trang được sử dụng để cài đặt Chatbot

Bước 2: Chuẩn bị tài khoản Heroku để triển khai code bằng cách vào trang đăng kí sau đây: https://signup.heroku.com/login

Bước 3: Tạo ứng dụng và quản lí ứng dụng thông qua Facebook Developers tại đường dẫn: https://developers.facebook.com/apps

Tiến hành chọn Tạo app và kết nối với với Trang đã tạo được ở bước 1

Hình 3.2: Thông tin ứng dụng được tạo trên Facebook Developers

Bước 1: Cài Nodejs và Git trên máy tính

Bước 2: Xây dựng sườn code, ở đây nhóm xây dựng theo mô hình MVC

Hình 3.3: Cây thư mục của source code chatbot

Chi tiết nội dung của các thư mục như sau:

+ node_moudles: Các module được cài đặt bằng lệnh: npm install

+ config: Cấu hình cài đặt dự án

+ controller: Nhận các phản hồi từ view và gom nhóm để đưa đến service xử lí

+ services: Xử lí các thông tin của controller chuyển đến

+ public: Các tệp hiển thị bên phía client và được công khai như thư mục, hình ảnh, css,

+ routers: Định danh các url được thực hiện

+ views: Hiển thị và lưu trữ các file html

+ index.js: Xử lí và thực hiện các chức năng (được xem là hàm chính của dự án)

+ env: Lưu trữ các biến môi trường

Bước 3: Bắt đầu thực hiện code dựa theo tài liệu hướng dẫn trên facebook: https://developers.facebook.com/docs/messenger-platform/

Có những đoạn code cần phải lưu ý như sau:

Hình 3.4: : Nội dung code trong file môi trường Ở đây, có 2 biến được cài đặt ở file môi trường cần phải lưu ý, đó là

VERIFY_TOKEN: Token dùng để xác thực khi thực hiện kết nối và nhận dữ liệu

Giá trị của biến này là tùy ý miễn là trong quá trình xác thực truyền đúng giá trị của biến

The PAGE_ACCESS_TOKEN is essential for accessing a Facebook page To obtain this token, navigate to Settings and select Generate Token on the Facebook Developers site associated with the page you have created.

Hình 3.5: Thông tin token được khởi tạo

Để triển khai và thực hiện quá trình xử lý chatbot, cần viết các hàm handlePostback, callSendAPI và handleMessage nhằm xử lý nội dung từ phía khách hàng theo tài liệu hướng dẫn Đây là những hàm chính đóng vai trò quan trọng trong việc quản lý tương tác của chatbot.

Hình 3.6: Nội dung code của hàm callSendAPI

Hàm callSendAPI dùng để xử lí quá trình gửi tin nhắn về phía người dùng Trong hàm này có 2 thuộc tính chính cần lưu ý:

Để xác định đối tượng nhận tin nhắn, chúng ta sử dụng mã PSID của người dùng Nội dung chi tiết của tin nhắn sẽ được người dùng gửi và được truyền vào hàm handleMessage để xử lý.

Hình 3.7: Nội dung code của hàm handleMessage

Hàm handleMessage dùng để xử lí khi nhận được tin nhắn từ phía người dùng Ở đây,

2 tham số được truyền vào:

• sender_psid: Dùng để nhận biết người đã gửi tin

• received_message: Đối tượng tin nhắn được gửi

Sau đó hàm này sẽ xử lí đoạn tin nhắn và gọi đến callSendAPI để trả lại phản hồi cho người dùng

Hàm handlePostback được sử dụng để xử lý các sự kiện từ các nút postback mà người dùng gửi đến Tham số đầu vào của hàm này tương tự như hàm handleMessage Nội dung xử lý của hàm được tổ chức trong khối lệnh switch case.

Hình 3.9 trình bày mã xử lý lệnh Postback, bao gồm các trường hợp như khởi động lại bot, bắt đầu đoạn trò chuyện, thông tin sách và sách mới nhất Mỗi trường hợp sẽ được gọi đến chatbotService để xử lý một cách hiệu quả.

Sau đây là ví dụ một một trường hợp RESTART_BOT được xử lí trong chatbotService

Hàm trong chatbotService nhận sender_psid để xác định người gửi, sau đó gọi callSendAPI để trả lại nội dung phản hồi cho người dùng.

Trong quá trình lập trình, chúng ta có thể triển khai ứng dụng lên Heroku để kiểm tra xem bot hoạt động chính xác hay không Các bước thực hiện sẽ được tiến hành như sau:

Bước 1: Vào dashboard của heroku và tiến hành tạo app bằng cách chọn New -> Create new app Sau đó điền các trường thông tin cần thiết

Hình 3.11: Giao diện tạo app trên Heroku

Bước 2: Vào Settings -> Config Vars và tiến hành thêm các biến môi trường trước khi thực hiện deploy

Hình 3.12: Thêm các biến môi trường trên Heroku

Ta có thể thấy được các trường VERIFY_TOKEN và PAGE_ACCESS_TOKEN giống được thêm vào giống như file env đã được đề cập ở phía trên

Bước 3: Triển khai code lên heroku theo như hướng dẫn của Heroku

Hình 3.13: Hướng dẫn triển khai app trên Heroku

Bước 4: Truy cập vào Facebook Developers, vào mục Settings => Webhooks

Hình 3.14: Cài đặt webhook trên Facebook Developers

Để hoàn tất quá trình cấu hình, hãy thêm Callback URL, đó là đường dẫn đến website đã được triển khai trên Heroku Đồng thời, cần nhập giá trị Verify Token trùng khớp với giá trị đã được thiết lập trong mục cấu hình.

Như vậy ta đã hoàn tất quá trình cài đặt webhooks

Xây dựng khuyến nghị

Hình 3.15: Mô hình xử lý hệ khuyến nghị

Về cơ bản, bên phía BE sẽ chuyển data để cho google colab xử lý

Data nhận được từ NodeJS sẽ được chia thành các file u.data, ua.base, ua.test, ub.base, ub.test

Hình 3.16: Thông tin cơ bản các về data

Hình 3.17: Đọc dữ liệu từ file rating

Hình 3.18: Đọc dữ liệu từ các file items

Hình 3.19: Xây dựng Feature Vector

Hình 3.20: Hàm tìm items được đánh giá bởi user

Hình 3.21: Tìm mô hình cho mỗi user

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

Xây dựng kiến trúc

Người dùng chưa đăng nhập:

+ Xem thông tin các sách

+ Tư vấn trực tiếp với chatbot

+ Lọc thể loại theo sách, tác giả

Người dùng đã đăng nhập

+ Mua sách bằng nhiều hình thức khác nhau

+ Xem các đơn hàng đã đặt

+ Xem hệ thống khuyến nghị tư vấn sách

+ Tư vấn trực tiếp với chatbot

Tài khoản người quản lí

+ Thêm, sửa, xóa sách, thể loại, tác giả

+ Phân tích người dùng, đơn đặt hàng

Sơ đồ Use cases

Hình 4.1: Sơ đồ Use case tổng quát

4.2.2 Sơ đồ tư vấn chatbot

Hình 4.2: Sơ đồ tư vấn chatbot

Hình 4.3: Sơ đồ mua hàng

4.2.4 Sơ đồ theo dõi đơn hàng

Hình 4.4: Sơ đồ theo dõi đơn hàng

4.2.5 Sơ đồ đánh giá sản phẩm

Hình 4.5: Sơ đồ đánh giá sản phẩm

4.2.6 Sơ đồ quản lí người dùng

Hình 4.6: Sơ đồ quản lí người dùng

4.2.7 Sơ đồ quản lí đặt hàng

Hình 4.7: Sơ đồ quản lí đặt hàng

4.2.8 Sơ đồ quản lí sách

Hình 4.8: Sơ đồ quản lí sách

1 Người dùng Người dùng có thể sử dụng được đầy đủ các tính năng trên mobile và website

2 Người quản lí Quản lí các thông tin sách được hiển thị trên các hệ thống, quản lí người dùng, theo dõi và thống kê các đơn hàng

Bảng 4.1: Danh sách các Actor

4.2.10 Danh sách các Use case

STT Tên use case Ý nghĩa

1 Tư vấn chatbot Tương tác với chatbot để tư vấn tự động

2 Xem sách Xem thông tin các sách hiện có trên hệ thống

3 Mua hàng Thực hiện hành động mua hàng trên hệ thống

4 Theo dõi đơn hàng Theo dõi các đơn hàng đã đặt trên hệ thống

5 Đánh giá Đánh giá sách trên hệ thống

6 Tra cứu, tìm kiếm Thực hiện tra cứu, tìm kiếm theo thông tin thể loại, tên sách

7 Đăng kí Đăng kí là người dùng trên hệ thống

8 Thêm vào giỏ hàng Thêm sản phẩm vào giỏ hàng trên hệ thống

9 Thanh toán Thực hiện thanh toán thông qua 2 hình thức: Momo hoặc trực tiếp

10 Quản lí đặt hàng Quản lí các đơn đặt hàng của người dùng

11 Quản lí sách Có thể xem, sửa thông tin sách trên hệ thống

Bảng 4.2: Danh sách các Use case

Phân tích và thiết kế dữ liệu

Hình 4.9: Bảng thiết kế dữ liệu

Tên trường Kiểu dữ liệu Ràng buộc Mô tả category_id INT Primary key Mã thể loại category_name CHAR(100) Not null Tên thể loại

Bảng 4.3: Thiết kế dữ liệu bảng thể loại

The table structure for a book database includes several key fields: 'book_id' as an integer serving as the primary key, 'book_name' as a non-null character field limited to 100 characters for the book title, and 'book_description' as a non-null text field for detailed descriptions Additionally, 'book_publisher' is a character field for the publisher's name, while 'book_year_published' captures the publication year as an integer The 'book_inventory_quantity' is a non-null integer indicating the available stock, and 'book_price' is a non-null decimal field formatted to three decimal places for pricing.

Bảng 4.4: Thiết kế dữ liệu bảng sách

Tên trường Kiểu dữ liệu Ràng buộc Mô tả book_id INT Foreign key Mã sách category_id INT Foreign key Mã thể loại

Bảng 4.5: Thiết kế dữ liệu bảng sách - thể loại

The table structure includes the following fields: `author_id`, an integer serving as the primary key that uniquely identifies each author; `author_name`, a non-null character field with a maximum length of 100 characters representing the author's name; and `author_telephone`, a character field also limited to 100 characters that stores the author's telephone number.

Bảng 4.6: Thiết kế dữ liệu bảng tác giả

Tên trường Kiểu dữ liệu Ràng buộc Mô tả book_id INT Primary key Mã sách author_id INT Primary key Mã tác giả

Bảng 4.7: Thiết kế dữ liệu bảng sách - tác giả

The table structure includes the following fields: the "transaction_id" is an integer serving as the primary key, representing the unique transaction code The "transaction_status" is a non-null integer that indicates the status of the transaction The "transaction_date" is a required date field that records the date of the transaction, while the "ship_date" is also a non-null date field that captures the shipping date Lastly, the "transaction_price_total" is a mandatory price field that reflects the total transaction amount.

Bảng 4.8: Thiết kế dữ liệu bảng giao dịch

The article outlines the structure of a database table with the following key fields: "transaction_id" as an integer serving as the primary key representing the transaction code; "book_id," also an integer and primary key, indicating the book code; "transaction_detail_quantity," which is a non-null integer specifying the quantity of books involved in the transaction; and "transaction_price_total," a non-null price field that records the total amount of the transaction.

Bảng 4.9: Thiết kế dữ liệu bảng chi tiết giao dịch

The table structure includes a primary key named "customer_id," which is of type INT, representing the customer code The "customer_name" field is defined as CHAR(100) and cannot be null, indicating the customer's name Additionally, "customer_telephone" is a CHAR(10) field for the customer's phone number, while "customer_address" is also CHAR(100), capturing the customer's address Lastly, the "customer_email" field, which is CHAR(100), is used for the customer's email address.

Bảng 4.10: Thiết kế dữ liệu bảng khách hàng

The table includes three key fields: 'customer_id', an integer serving as the primary key representing the customer code; 'book_id', another integer functioning as the primary key for the book code; and 'rating_value', an integer that cannot be null, indicating the rating score.

Bảng 4.11: Thiết kế dữ liệu bảng đánh giá

Thiết kế giao diện

4.4.1 Giao diện admin quản lý

Hình 4.10: Giao diện admin - đăng nhập

Hình 4.11: Giao diện admin - trang chủ

Hình 4.12: Giao diện admin - quản lí người dùng

Hình 4.13: Giao diện admin - quản lí sách

Hình 4.14: Giao diện admin - lịch sử giao dịch

Hình 4.15: Giao diện admin - cài đặt

Hình 4.16: Giao diện website - Trang chủ

Hình 4.17: Giao diện website - thông tin sản phẩm

Hình 4.18: Giao diện website - đặt hàng

Hình 4.19: Giao diện website - thanh toán

Hình 4.20: Giao diện website - đơn hàng của tôi

Hình 4.21: Giao diện mobile - trang chủ

Hình 4.22: Giao diện mobile - thông tin chi tiết

Hình 4.23: Giao diện mobile - trang cá nhân

Hình 4.24: Giao diện mobile - thanh toán

Ngày đăng: 16/06/2022, 21:06

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[4]. Chatbot - tất cả những gì bạn cần biết https://nordiccoder.com/blog/chatbot-tat-ca-nhung-gi-ban-can-biet/ Link
[5]. Youtube Channel: Hỏi Dân IT https://www.navee.asia/kb/su-dung-google-analytics-nhu-the-nao-de-cai-thien hieu-qua-seo/ Link
[6]. Stack Overflow: https://stackoverflow.com [7]. Messenger platform tutorial:https://developers.facebook.com/docs/messenger-platform/ Link
[1] Machine Learning – Recommender System Machine Learning | Coursera Khác
[2] Textbook: 2016 Recommender Systems, Charu C. Aggarwal Khác
[3] Machine Learning cơ bản (machinelearningcoban.com) Khác

HÌNH ẢNH LIÊN QUAN

Hình 2.1: Minh họa về chatbot - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 2.1 Minh họa về chatbot (Trang 18)
Hình 3.2: Thông tin ứng dụng được tạo trên Facebook Developers - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.2 Thông tin ứng dụng được tạo trên Facebook Developers (Trang 28)
Hình 3.6: Nội dung code của hàm callSendAPI. - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.6 Nội dung code của hàm callSendAPI (Trang 31)
Hình 3.7: Nội dung code của hàm handleMessage. - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.7 Nội dung code của hàm handleMessage (Trang 32)
Hình 3.10: Nội dung code trong chatbotService - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.10 Nội dung code trong chatbotService (Trang 34)
Hình 3.12: Thêm các biến môi trường trên Heroku. - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.12 Thêm các biến môi trường trên Heroku (Trang 35)
Hình 3.15: Mô hình xử lý hệ khuyến nghị - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.15 Mô hình xử lý hệ khuyến nghị (Trang 37)
Hình 3.17: Đọc dữ liệu từ file rating - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.17 Đọc dữ liệu từ file rating (Trang 38)
Hình 3.20: Hàm tìm items được đánh giá bởi user - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 3.20 Hàm tìm items được đánh giá bởi user (Trang 40)
Hình 4.1: Sơ đồ Use case tổng quát - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
Hình 4.1 Sơ đồ Use case tổng quát (Trang 43)
4.2.2. Sơ đồ tư vấn chatbot - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
4.2.2. Sơ đồ tư vấn chatbot (Trang 44)
4.2.3. Sơ đồ mua hàng - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
4.2.3. Sơ đồ mua hàng (Trang 45)
4.2.4. Sơ đồ theo dừi đơn hàng - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
4.2.4. Sơ đồ theo dừi đơn hàng (Trang 46)
4.2.5. Sơ đồ đánh giá sản phẩm - Xây dựng hệ thống kinh doanh sách online với khuyến nghị và tư vấn tự động (khóa luận tốt nghiệp)
4.2.5. Sơ đồ đánh giá sản phẩm (Trang 47)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w