HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc Lập - Tự Do - Hạnh Phúc ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: XÂY DỰNG WEBSITE BÁN NÔNG SẢN VỚI CHATBOT
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
NGUYỄN HOÀNG TRƯỜNG
KHÓA LUẬN TỐT NGHIỆP
XÂY DỰNG WEBSITE BÁN NÔNG SẢN
VỚI CHATBOT TƯ VẤN
Building a website to sell agricultural products
with consulting chatbot
KỸ SƯ NGÀNH CÔNG NGHỆ PHẦN MỀM
Trang 2ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
NGUYỄN HOÀNG TRƯỜNG – 17521185
KHÓA LUẬN TỐT NGHIỆP
XÂY DỰNG WEBSITE BÁN NÔNG SẢN
VỚI CHATBOT TƯ VẤN
Building a website to sell agricultural products
with consulting chatbot
KỸ SƯ NGÀNH CÔNG NGHỆ PHẦN MỀM
GIẢNG VIÊN HƯỚNG DẪN ThS Trần Thị Hồng Yến
Trang 3THÔNG TIN HỘI ĐỒNG CHẤM KHÓA LUẬN TỐT NGHIỆP
Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……… ngày ……… của Hiệu trưởng Trường Đại học Công nghệ Thông tin
1 – Chủ tịch
2 .. – Thư ký
3 – Ủy viên
4 – Ủy viên
Trang 4ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG
NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA
VIỆT NAM Độc Lập - Tự Do - Hạnh Phúc
TP HCM, ngày tháng năm
NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ HƯỚNG DẪN) Tên khóa luận:
XÂY DỰNG WEBSITE BÁN NÔNG SẢN VỚI CHATBOT TƯ VẤN Building a website to sell agricultural products with consulting chatbot Nhóm SV thực hiện: Cán bộ hướng dẫn: Nguyễn Hoàng Trường 17521185 ThS Trần Thị Hồng Yến Đánh giá Khóa luận 1 Về cuốn báo cáo: Số trang: …… Số chương: ……
Số bảng số liệu: …… Số hình vẽ: ……
Số tài liệu tham khảo: …… Sản phẩm: ……
Một số nhận xét về hình thức cuốn báo cáo:
Trang 5
3 Về chương trình ứng dụng:
4 Về thái độ làm việc của sinh viên:
Đánh giá chung:
Điểm của sinh viên:
Nguyễn Hoàng Trường: ………/10
Người nhận xét
(Ký và ghi rõ họ tên)
Trang 6ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG
NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA
VIỆT NAM Độc Lập - Tự Do - Hạnh Phúc
TP HCM, ngày tháng năm
NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ PHẢN BIỆN) Tên khóa luận:
XÂY DỰNG WEBSITE BÁN NÔNG SẢN VỚI CHATBOT TƯ VẤN Nhóm SV thực hiện: Cán bộ phản biện: Nguyễn Hoàng Trường 17521185 Đánh giá Khóa luận 1 Về cuốn báo cáo: Số trang: …… Số chương: ……
Số bảng số liệu: …… Số hình vẽ: ……
Số tài liệu tham khảo: …… Sản phẩm: ……
Một số nhận xét về hình thức cuốn báo cáo:
Trang 7
3 Về chương trình ứng dụng:
4 Về thái độ làm việc của sinh viên:
Đánh giá chung:
Điểm của sinh viên:
Nguyễn Hoàng Trường: ………/10
Người nhận xét
(Ký và ghi rõ họ tên)
Trang 8ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC
CÔNG NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập - Tự Do - Hạnh Phúc
ĐỀ CƯƠNG CHI TIẾT
TÊN ĐỀ TÀI:
XÂY DỰNG WEBSITE BÁN NÔNG SẢN VỚI CHATBOT TƯ VẤN
Tên đề tài tiếng Anh:
BUILDING A WEBSITE TO SELL AGRICULTURAL PRODUCTS
WITH A CONSULTING CHATBOT Cán bộ hướng dẫn: ThS Trần Thị Hồng Yến
Thời gian thực hiện: Từ ngày 21/02/2022 đến tháng 10/06/2022
Sinh viên thực hiện: Nguyễn Hoàng Trường – 17521185
Nội dung đề tài:
1 Giới thiệu:
Trong nền kinh tế hiện nay, mọi mặt của đời sống xã hội ngày càng được nâng cao, đặc biệt là nhu cầu trao đổi hàng hoá của con người ngày càng tăng cả về số lượng và chất lượng Hiện nay các công ty tin học hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet Thông qua các sản phẩm và công nghệ này, chúng ta
dễ dàng nhận ra tầm quan trọng và tính tất yếu của các trang web bán hàng Với những thao tác đơn giản trên các thiết bị có nối mạng Internet, người dùng sẽ có tận tay những gì họ cần mà không phải mất nhiều thời gian
Trang 9Đặc biệt, trong bối cảnh dịch Covid-19 vẫn còn diễn biến phức tạp, nhiều địa phương đã áp dụng biện pháp giãn cách xã hội Kinh doanh trực tuyến đã và đang là biện pháp hữu hiệu nhằm giảm thiểu việc tiếp xúc trực tiếp, tập trung đông người Đây là dịch vụ cần tiếp tục được khuyến khích, phát triển và nhân rộng Với lợi thế mặt hàng phong phú dễ lựa chọn, người nội trợ không phải bỏ công đi chợ để chọn lựa hàng hóa, được “ship” tận nhà nên không ít người vẫn ưu tiên lựa chọn dịch vụ này Trong phạm vi đề tài Khóa luận tốt nghiệp này, nhóm nghiên cứu “Xây dựng website bán nông sản với chatbot tư vấn” để có thể hỗ trợ, chia sẻ, giảm bớt sự khó khăn trong việc đi chợ trực tiếp và góp phần hạn chế gia tăng dịch bệnh, tránh tiếp xúc, tập trung đông người trong bối cảnh xã hội hiện nay
2 Mục tiêu:
• Xây dựng được website bán nông sản với nội dung phong phú, giao diện thân thiện, màu sắc hài hòa, bố cục hợp lý, đáp ứng các chức năng cần thiết của một website thương mại điện tử Đồng thời, tích hợp vào website chatbot tự động với các kịch bản tư vấn đa dạng cho khách hàng
• Xây dựng được website quản trị cho nhân viên cửa hàng với các chức năng quản
lý thông tin đa dạng và tiện dụng
- Quản lý khách hàng, tài khoản cá nhân
- Quản lý đơn đặt hàng, giỏ hàng, thanh toán
- Quản lý liên hệ, kiểm tra tin nhắn
- Xuất mã QR cho sản phẩm
- Chatbot tư vấn khách hàng
Trang 10- Thống kê báo cáo, tìm kiếm
4 Đối tượng:
- Người dùng có nhu cầu mua nông sản tại cửa hàng
- Nhân viên của cửa hàng
5 Phương pháp thực hiện:
- Tìm hiểu về PHP, Laravel Framework, MySQL
- Khảo sát thực trạng các website bán hàng hiện có trên thị trường, từ đó tiến hành phân tích, xác định các yêu cầu cụ thể cho đề tài
- Phân tích và thiết kế hệ thống website
- Tìm hiểu quy trình thiết kế UX/UI và tiến hành thiết kế giao diện cho website
- Xây dựng website cho người dùng và website cho nhân viên
- Tích hợp chatbot hỗ trợ tư vấn người dùng
- Tiến hành triển khai và kiểm thử
6 Công nghệ:
- Front-end: HTML5, CSS3, jQuery
- Back-end: PHP, Laravel Framework
- Database: MySQL
7 Kết quả mong đợi
- Nắm bắt và áp dụng được các công nghệ mới để xây dựng sản phẩm đề tài
- Hiểu rõ các nghiệp vụ, chức năng của một website thương mại điện tử
- Áp dụng được các kiến thức đã học về phân tích và thiết kế hệ thống phần mềm, quy trình phát triển phần mềm, cũng như quản lý và triển khai dự án phần mềm để xây dựng website sản phẩm đề tài
- Xây dựng được website bán nông sản tích hợp chatbot tư vấn đáp ứng được các yêu cầu về giao diện và chức năng đã đề ra
- Có thể thay đổi giao diện một cách linh động và mở rộng thêm các chức năng mới cho website sản phẩm đề tài để phù hợp với nhu cầu thực tiễn trong tương lai
Trang 11Kế hoạch thực hiện:
21/02/2022 – 06/03/2022 Tìm hiểu đề tài, đánh giá thị trường, xác định các chức năng
của hệ thống
07/03/2022 – 27/03/2022 Tìm hiểu, nghiên cứu công nghệ
28/03/2022 – 17/04/2022 Phân tích và thiết kế hệ thống website
18/04/2022 – 01/05/2022 Tìm hiểu quy trình thiết kế UX/UI và thiết kế giao diện cho
website 02/05/2022 – 29/05/2022 Cài đặt phần back-end, xử lý của hệ thống
30/05/2022 – 10/06/2022 Kiểm thử hệ thống và hoàn thiện báo cáo
Nguyễn Hoàng Trường
Trang 12LỜI CẢM ƠN
Sau quá trình học tập và rèn luyện tại trường Đại Học Công Nghệ Thông Tin,
em đã nhận được sự chỉ dạy nhiệt tình và tâm huyết của các quý thầy cô Nhờ đó em
đã học tập được rất nhiều kiến thức bổ ích và khóa luận tốt nghiệp sẽ giúp em hệ thống hóa kiến thức của mình Trong khoảng thời gian thực hiện khóa luận, em đã có điều kiện nâng cao kiến thức, kỹ năng, kinh nghiệm cần thiết, giúp em phát huy được các điểm mạnh và khắc phục các điểm yếu của mình
Em xin chân thành cảm ơn các quý thầy cô Khoa Công nghệ Phần mềm, đặc biệt là cô Trần Thị Hồng Yến trong thời gian qua đã cung cấp cho em kiến thức về chuyên môn và góp ý em rất nhiều Cô rất nhiệt tình và tâm huyết, luôn có mặt để hỗ trợ khi em gặp vấn đề trong quá trình thực hiện khóa luận, đồng thời cô luôn động viên để tiếp thêm cho em động lực trong giai đoạn này Nhờ đó mà em mới có thể phát huy hết khả năng và hoàn thành tốt nhất khóa luận cũng như bài báo cáo này Mặc dù đã rất cố gắng, tuy nhiên do sự hiểu biết vẫn còn hạn chế nên vẫn không tránh khỏi những sai sót, em rất mong nhận được sự thông cảm và góp ý chân tình từ quý thầy cô để em có thể hoàn thành một cách tốt hơn
Em xin được chân thành cảm ơn các quý thầy cô!
Thành phố Hồ Chí Minh, tháng 06 năm 2022
Sinh viên thực hiện Nguyễn Hoàng Trường
Trang 13MỤC LỤC
Chương 1 TỔNG QUAN ĐỀ TÀI 25
1.1 Lí do chọn đề tài 25
1.2 Mục đích 25
1.3 Đối tượng sử dụng 26
1.4 Công nghệ sử dụng 26
Chương 2 PHÁT BIỂU BÀI TOÁN 27
2.1 Website bán hàng trực tuyến [6] 27
2.2 Chatbot [7] 27
2.3 Khảo sát hiện trạng 28
2.3.1 Khảo sát trách nhiệm 28
2.3.2 Khảo sát dữ liệu 28
2.3.3 Đánh giá hiện trạng và hướng giải quyết 29
2.4 Cửa hàng nông sản 29
2.4.1 Khái niệm nông sản 29
2.4.2 Quy trình quản lý cửa hàng 30
Chương 3 CƠ SỞ LÝ THUYẾT 32
3.1 Laravel PHP Framework [8] 32
3.1.1 Mô hình MVC 32
3.1.2 Giới thiệu về Laravel PHP Framework 32
3.2 Bootstrap [9] 33
3.2.1 Giới thiệu về Bootstrap 33
3.2.2 Hướng dẫn sử dụng Bootstrap cơ bản 34
Trang 143.3 jQuery [10] 34
3.3.1 Giới thiệu về jQuery 34
3.3.2 Ưu điểm của jQuery 35
3.4 MySQL [11] 35
3.4.1 MySQL là gì? 35
3.4.2 Một số đặc điểm của MySQL 35
Chương 4 PHÂN TÍCH & THIẾT KẾ 36
4.1 Xác định yêu cầu 36
4.1.1 Danh sách các yêu cầu chức năng 36
4.1.2 Danh sách biểu mẫu và quy định của biểu mẫu 37
4.2 Đặc tả use-case 43
4.2.1 Sơ đồ use-case tổng quát 43
4.2.2 Danh sách các Actor 44
4.2.3 Danh sách các Use-case 44
4.2.4 Đăng nhập 46
4.2.5 Đăng ký 47
4.2.6 Xem thông tin sản phẩm 48
4.2.7 Quản lý giỏ hàng 49
4.2.8 Chatbot tư vấn 50
4.2.9 Xem thông tin tài khoản 51
4.2.10 Quản lý sản phẩm 52
4.2.11 Quản lý danh mục 53
4.2.12 Quản lý thông tin khách hàng 54
4.2.13 Quản lý đơn hàng 55
Trang 154.2.14 Quản lý mã khuyến mãi 56
4.2.15 Thống kê doanh thu 57
4.2.16 Quản lý nhân viên 58
4.2.17 Quản lý kho 59
4.2.18 Quản lý nhà cung cấp 60
4.3 Sơ đồ hoạt động 61
4.3.1 Đăng ký 61
4.3.2 Xem thông tin sản phẩm 62
4.3.3 Quản lý giỏ hàng 63
4.3.4 Xem thông tin tài khoản 64
4.3.5 Quản lý sản phẩm 65
4.3.6 Quản lý danh mục 66
4.3.7 Quản lý nhân viên 67
4.3.8 Quản lý đơn hàng 68
4.3.9 Quản lý mã khuyến mãi 69
4.3.10 Thống kê doanh thu 70
4.3.11 Quản lý kho 71
4.3.12 Quản lý nhà cung cấp 72
4.4 Thiết kế dữ liệu 73
4.4.1 Sơ đồ logic 73
4.4.2 Danh sách các bảng dữ liệu trong sơ đồ 74
4.4.3 Mô tả từng bảng dữ liệu 75
Chương 5 XÂY DỰNG ỨNG DỤNG 81
5.1 Website người dùng 81
Trang 165.1.1 Màn hình trang chủ 81
5.1.2 Màn hình đăng nhập, đăng ký 83
5.1.3 Màn hình xem danh sách sản phẩm 84
5.1.4 Màn hình xem chi tiết sản phẩm 85
5.1.5 Màn hình giỏ hàng 86
5.1.6 Màn hình nhập thông tin thanh toán 87
5.1.7 Màn hình vòng quay may mắn 88
5.1.8 Màn hình xem thông tin tài khoản 89
5.1.9 Màn hình danh sách đặt hàng 90
5.1.10 Màn hình danh sách mã khuyến mãi 91
5.1.11 Màn hình danh sách sản phẩm yêu thích 91
5.2 Website nhân viên 92
5.2.1 Màn hình đăng nhập 92
5.2.2 Màn hình trang chủ 93
5.2.3 Màn hình danh sách danh mục 95
5.2.4 Màn hình tạo mới danh mục 96
5.2.5 Màn hình danh sách sản phẩm 97
5.2.6 Màn hình thêm sản phẩm 98
5.2.7 Màn hình danh sách đơn đặt hàng 99
5.2.8 Màn hình chi tiết đơn hàng 100
5.2.9 Màn hình quản lý kho hàng 101
5.2.10 Màn hình nhập hàng 102
5.2.11 Màn hình quản lý khách hàng 103
5.2.12 Màn hình chi tiết khách hàng 104
Trang 175.2.13 Màn hình danh sách mã khuyến mãi 105
5.2.14 Màn hình tạo mới mã khuyến mãi 106
5.2.15 Màn hình danh sách nhân viên 107
5.2.16 Màn hình tạo nhân viên 108
5.2.17 Màn hình thống kê doanh thu 109
5.3 Các giao diện khác 110
5.3.1 Giao diện email về đơn hàng 110
5.3.2 Thông báo thành công 111
5.3.3 Thông báo thất bại 111
5.3.4 Xác nhận xóa 112
5.3.5 Giao diện Excel – hóa đơn bán hàng 112
Chương 6 CHATBOT TƯ VẤN 113
6.1 Tổng hợp quá trình sử dụng chatbot của khách hàng 113
6.2 Kỹ thuật xây dựng chatbot 114
6.2.1 Webhook [12] 114
6.2.2 BotMan [13] 115
6.3 Xây dựng chatbot 115
Chương 7 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 117
7.1 Kết quả đạt được 117
7.2 Ưu điểm 117
7.3 Nhược điểm 118
7.4 Hướng phát triển 118
TÀI LIỆU THAM KHẢO 119
Trang 18DANH MỤC HÌNH ẢNH
Hình 3.1 Laravel PHP Framework 32
Hình 3.2 Bootstrap Framework 33
Hình 3.3 Thư viện jQuery 34
Hình 3.4 Hệ quản trị dữ liệu MySQL 35
Hình 4.1 Sơ đồ use-case tổng quát 43
Hình 4.2 Use-case đăng nhập 46
Hình 4.3 Use-case đăng ký 47
Hình 4.4 Use-case xem thông tin sản phẩm 48
Hình 4.5 Use-case quản lý giỏ hàng 49
Hình 4.6 Use-case Chatbot tư vấn 50
Hình 4.7 Use-case xem thông tin tài khoản 51
Hình 4.8 Use-case quản lý sản phẩm 52
Hình 4.9 Use-case quản lý danh mục 53
Hình 4.10 Use-case quản lý thông tin khách hàng 54
Hình 4.11 Use-case quản lý đơn hàng 55
Hình 4.12 Use-case quản lý mã khuyến mãi 56
Hình 4.13 Use-case thống kê doanh thu 57
Hình 4.14 Use-case quản lý nhân viên 58
Hình 4.15 Use-case quản lý kho 59
Hình 4.16 Use-case quản lý nhà cung cấp 60
Hình 4.17 Sơ đồ hoạt động - đăng ký 61
Hình 4.18 Sơ đồ hoạt động - xem thông tin sản phẩm 62
Hình 4.19 Sơ đồ hoạt động - quản lý giỏ hàng 63
Hình 4.20 Sơ đồ hoạt động - xem thông tin tài khoản 64
Hình 4.21 Sơ đồ hoạt động - quản lý sản phẩm 65
Hình 4.22 Sơ đồ hoạt động - quản lý danh mục 66
Hình 4.23 Sơ đồ hoạt động - quản lý nhân viên 67
Hình 4.24 Sơ đồ hoạt động - quản lý đơn hàng 68
Trang 19Hình 4.25 Sơ đồ hoạt động - quản lý mã khuyến mãi 69
Hình 4.26 Sơ đồ hoạt động – thống kê doanh thu 70
Hình 4.27 Sơ đồ hoạt động - quản lý kho 71
Hình 4.28 Sơ đồ hoạt động - quản lý nhà cung cấp 72
Hình 4.29 Sơ đồ dữ liệu 73
Hình 5.1 Màn hình trang chủ 81
Hình 5.2 Màn hình đăng nhập, đăng ký 83
Hình 5.3 Màn hình xem danh sách sản phẩm 84
Hình 5.4 Màn hình xem chi tiết sản phẩm 85
Hình 5.5 Màn hình giỏ hàng 86
Hình 5.6 Màn hình nhập thông tin thanh toán 87
Hình 5.7 Màn hình vòng quay may mắn 88
Hình 5.8 Màn hình xem thông tin tài khoản 89
Hình 5.9 Màn hình danh sách đặt hàng 90
Hình 5.10 Màn hình danh sách mã khuyến mãi 91
Hình 5.11 Màn hình danh sách sản phẩm yêu thích 91
Hình 5.12 Màn hình đăng nhập (nhân viên) 92
Hình 5.13 Màn hình trang chủ (nhân viên) 93
Hình 5.14 Dropdown quản lý tài khoản 94
Hình 5.15 Màn hình danh sách danh mục 95
Hình 5.16 Màn hình tạo danh mục 96
Hình 5.17 Màn hình danh sách sản phẩm 97
Hình 5.18 Màn hình thêm sản phẩm 98
Hình 5.19 Màn hình danh sách đơn đặt hàng 99
Hình 5.20 Màn hình chi tiết đơn hàng 100
Hình 5.21 Màn hình quản lý kho hàng 101
Hình 5.22 Màn hình nhập hàng 102
Hình 5.23 Màn hình quản lý khách hàng 103
Hình 5.24 Màn hình danh sách mã khuyến mãi 105
Trang 20Hình 5.25 Màn hình tạo mới mã khuyến mãi 106
Hình 5.26 Màn hình danh sách nhân viên 107
Hình 5.27 Màn hình tạo nhân viên 108
Hình 5.28 Màn hình thống kê doanh thu theo bảng biểu 109
Hình 5.29 Màn hình thống kê doanh thu theo biểu đồ 109
Hình 5.30 Giao diện mail - đơn hàng 110
Hình 5.31 Thông báo thành công 111
Hình 5.32 Thông báo thất bại 111
Hình 5.33 Xác nhận xóa 112
Hình 5.34 Giao diện Excel - phiếu nhập hàng 112
Hình 6.1 Sơ đồ mô tả quá trình mua sản phẩm 113
Hình 6.2 Sơ đồ miêu tả quá trình phản hồi sản phẩm 113
Hình 6.3 Webhook 114
Hình 6.4 BotMan 115
Hình 6.5 Minh hoạt khung chatbot 115
Hình 6.6 Sơ đồ kịch bản chatbot 116
Trang 21DANH MỤC BẢNG
Bảng 4.1 Danh sách các yêu cầu chức năng 36
Bảng 4.2 Danh sác các actor 44
Bảng 4.3 Danh sách các use-case 45
Bảng 4.4 Use-case đăng nhập 46
Bảng 4.5 Use-case đăng ký 47
Bảng 4.6 Use-case xem thông tin sản phẩm 48
Bảng 4.7 Use-case quản lý giỏ hàng 49
Bảng 4.8 Use-case chatbot tư vấn 50
Bảng 4.9 Use-case xem thông tin tài khoản 51
Bảng 4.10 Use-case quản lý sản phẩm 52
Bảng 4.11 Use-case quản lý danh mục 53
Bảng 4.12 Use-case quản lý thông tin khách hàng 54
Bảng 4.13 Use-case quản lý đơn hàng 55
Bảng 4.14 Use-case quản lý mã khuyến mãi 56
Bảng 4.15 Use-case thống kê doanh thu 57
Bảng 4.16 Use-case quản lý nhân viên 58
Bảng 4.17 Use-case quản lý kho 59
Bảng 4.18 Danh sách các bảng dữ liệu 74
Bảng 4.19 Table “product” 75
Bảng 4.20 Table “menu” 75
Bảng 4.21 Table “customer” 76
Bảng 4.22 Table “order” 76
Bảng 4.23 Table “order detail” 76
Bảng 4.24 Table “shipping” 77
Bảng 4.25 Table "payment" 77
Bảng 4.26 Table "comment" 78
Bảng 4.27 Table "voucher" 78
Bảng 4.28 Table "use voucher" 79
Trang 22Bảng 4.29 Table "rotate" 79Bảng 4.30 Table "Warehouse_goods" 79Bảng 4.31 Table staff 80Bảng 4.32 Table "supplier" 80
Trang 23DANH MỤC TỪ VIẾT TẮT
API Application Programming
Interface
Giao diện lập trình ứng dụng
MVC Model - View - Controller Mô hình lập trình 3 lớp: model,
view, controller
Trang 24TÓM TẮT KHÓA LUẬN
Khóa luận với đề tài: “Xây dựng website bán nông sản với chatbot tư vấn” nhằm tạo một website giúp cửa hàng Nông Sản Việt dễ dàng đưa thông tin về sản phẩm, các dịch vụ đến khách hàng có thể mua sắm thoải mái mà không cần gặp mặt trực tiếp Ngoài ra, đề tài còn cung cấp hệ thống quản trị giúp cho người quản lý và nhân viên có thể dễ dàng quản lý cửa hàng Nông Sản Việt Đề tài sẽ giúp cửa hàng nông sản này tiết kiệm các chi phí và gia tăng cơ hội cạnh tranh với các đối thủ cùng lĩnh vực khác
Báo cáo khóa luận với đề tài: “Xây dựng website bán nông sản với chatbot tư vấn” bao gồm 06 chương:
• Chương 1 - Tổng quan đề tài: Giới thiệu lí do chọn đề tài, mục đích, đối tượng sử dụng và phạm vi đề tài
• Chương 2 – Phát biểu bài toán: Giới thiệu về khái niệm liên quan đề tài và kết quả khảo sát các ứng dụng có trên thị trường, từ đó rút ra hướng giải quyết cho đề tài
• Chương 3 – Cơ sở lý thuyết: Trình bày các kiến thức nền tảng, các công nghệ được sử dụng để xây dựng đề tài
• Chương 4 – Phân tích & thiết kế: Phân tích yêu cầu, thiết kế các các sơ đồ đặc tả, sơ đồ hoạt động, sơ đồ lớp, sơ đồ cơ sở dữ liệu để áp dụng tạo tiền
Trang 25Chương 1 TỔNG QUAN ĐỀ TÀI 1.1 Lí do chọn đề tài
Trong nền kinh tế hiện nay, mọi mặt của đời sống xã hội ngày càng được nâng cao, đặc biệt là nhu cầu trao đổi hàng hoá của con người ngày càng tăng cả về số lượng và chất lượng Hiện nay, các công ty công nghệ thông tin hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp, cũng như các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet Thông qua các sản phẩm và công nghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của các trang web thương mại điện tử
Đặc biệt, sau đại dịch Covid, thói quen đi chợ của người dân đã thay đổi đáng
kể thông qua các trang bán hàng trực tuyến Kinh doanh trực tuyến đã và đang là biện pháp hữu hiệu nhằm giảm thiểu việc tiếp xúc trực tiếp, tập trung đông người cần tiếp tục được khuyến khích Với lợi thế mặt hàng phong phú dễ lựa chọn, các bà nội trợ không phải bỏ công đi chợ chọn lựa, nấu nướng mà được giao hàng tận nhà nên không
ít người dân vẫn ưu tiên lựa chọn dịch vụ này Bên cạnh đó, chatbot sẽ là một giải pháp hiệu quả cho các cửa hàng, có thể hỗ trợ các hoạt động thu thập thông tin, tư vấn người dùng để hỗ trợ cho việc mua hàng diễn ra hiệu quả nhất
Nhìn thấy được thực trạng này, em đã bắt đầu tìm hiểu và mong muốn tạo ra một website bán nông sản cùng với bộ công cụ chatbot để hỗ trợ việc kinh doanh đạt hiệu quả tối đa Vì thế, trong khóa luận tốt nghiệp này, em đã quyết định thực đề tài
“Xây dựng website bán nông sản với chatbot tư vấn”
1.2 Mục đích
• Tìm hiểu và xây dựng một website bán rau củ với đầy đủ chức năng hỗ trợ cho người dùng đáp ứng các tiêu chí:
- Nội dung hấp dẫn, đầy đủ phù hợp với các đối tượng
- Được sắp xếp, bố cục một cách hợp lý, tạo điều kiện cho người dùng dễ định hướng trong website
- Hình thức đẹp phù hợp với chủ đề, nội dung, thân thiện với người dùng
Trang 26• Nghiên cứu, xây dựng chatbot và tìm hiểu các bài toán trong việc kinh doanh nông sản để áp dụng cho chatbot
1.3 Đối tượng sử dụng
Website dành cho người có nhu cầu mua nông sản tại cửa hàngvà nhân viên của cửa hàng
1.4 Công nghệ sử dụng
• Front-end: HTML5, CSS3, Framework Bootstrap 4, jQuery
• Back-end: PHP, Framework Laravel 8
• Công nghệ tạo chatbot: Webhook, Botman
• Hệ quản trị CSDL: MySQL
• Nền tảng triển khai: Website
• Hệ điều hành: Windows 10
• Các phần mềm hỗ trợ: XAMPP, PHPStorm, Navicat, draw.io, Figma
• Các công nghệ khác: PHPExcel, SweetAlert, ImageMagick
Trang 27Chương 2 PHÁT BIỂU BÀI TOÁN 2.1 Website bán hàng trực tuyến [6]
Website bán hàng trực tuyến hay website thương mại điện tử được hiểu là trang thông tin điện tử được thiết lập để phục vụ một phần hoặc toàn bộ quy trình của hoạt động mua bán hàng hóa hay cung ứng dịch vụ, từ trưng bày giới thiệu hàng hóa, dịch
vụ đến giao kết hợp đồng, cung ứng dịch vụ, thanh toán và dịch vụ sau bán hàng Tác dụng website bán hàng trực tuyến:
• Giúp tạo dựng hình ảnh về một doanh nghiệp uy tín, chuyên nghiệp và thân thiện hơn đối với khách hàng
• Giúp các cửa hàng, doanh nghiệp có thể chủ động xây dựng hình ảnh, quảng
bá thương hiệu theo yêu cầu riêng
• Tương tác hiệu quả nhất đối với khách hàng bởi khả năng nhận thông tin phản hồi nhanh chóng thông qua tính năng chat trực tuyến hoặc các hình thức liên
hệ trực tuyến khác
• Giúp việc bán hàng trở nên nhanh chóng và thuận tiện hơn, tất cả các khâu bán hàng đều gói gọn bên trong một website từ khâu trưng bày sản phẩm (thông tin mô tả, hình ảnh sản phẩm, giá bán), giao kết hợp đồng đến thanh toán, giao hàng và chăm sóc khách hàng sau bán hàng
• Giúp các cửa hàng, doanh nghiệp triển khai các kế hoạch Marketing Online hiệu quả
• Có thể hoạt động liên tục, mọi giao dịch mua bán, đặt hàng của khách mua hàng được thực hiện 24/7 ngay cả vào ban đêm khi cửa hàng, doanh nghiệp của bạn ngừng hoạt động giúp thúc đẩy doanh thu hiệu quả
2.2 Chatbot [7]
Chatbot là một chương trình kết hợp với trí tuệ nhân tạo (AI) để tương tác với con người Công cụ này thay thế cho nhân viên để tư vấn trả lời những gì khách hàng thắc mắc Ngày nay, chatbot được ứng dụng rất rộng rãi để thực hiện các công việc sau:
Trang 28• Trợ lý cá nhân
• Giới thiệu sản phẩm
• Chăm sóc khách hàng
• Đưa ra kết quả tìm kiếm, cập nhật tin tức
Việc ứng dụng chatbot vào bán hàng trực tuyến đem lại rất nhiều lợi ích to lớn
Cụ thể như cá nhân hóa trải nghiệm khách hàng, giảm thiểu được chi phí hay phản hồi khách hàng một cách nhanh chóng nhất
2.3 Khảo sát hiện trạng
Sau quá trình khảo sát hiện trạng bằng việc tham khảo các trang web bán hàng như “nongsan.congthuong.hochiminhcity.gov.vn, chopp.vn, bachhoaxanh.com, …” thì em đã tổng hợp được một số thông tin:
2.3.1 Khảo sát trách nhiệm
• Người quản trị website là người chức quyền cao nhất: có thể xem tình hình thu nhập, quản lý mọi thay đổi trên website, cung cấp quyền hạn cho người nhân viên
• Nhân viên: xem trong ngày, trong tuần có bao nhiêu đơn đặt hàng và đã giải quyết được bao nhiêu để có thể báo cáo bất cứ lúc nào cho chủ cửa hàng
• Khách hàng: có nhu cầu mua sắm hàng hóa, họ sẽ tìm kiếm các mặt hàng cần thiết từ hệ thống và đặt mua các mặt hàng này
2.3.2 Khảo sát dữ liệu
Em có xem rất nhiều mẫu đơn trên web thì hầu hết đều có nội dung như sau:
• Thông tin người mua: Họ tên, quê quán nơi đang sống, ngày tháng năm sinh, nghề nghiệp, email, điện thoại
• Thông tin về hàng hóa: Loại nông sản, giá cả, thông tin nông sản
• Thông tin về thanh toán: Phương thức thanh toán (trực tiếp, qua tài khoản ngân lượng), ngày giao hàng, thông tin nhận hàng, cước vận chuyển, tổng tiền phải trả
Trang 292.3.3 Đánh giá hiện trạng và hướng giải quyết
• Ưu điểm: Qua quá trình khảo sát thì em thấy hầu hết các web bán hàng trực tuyến đều có những tính năng mà em có thể áp dụng:
- Giới thiệu được thông tin sản phẩm
- Chi tiết giỏ hàng và chi tiết đơn hàng được thể hiện đầy đủ, rõ ràng
- Thông tin của người dùng bao gồm thông tin cá nhân và thông tin các đơn hàng đều được liệt kê
- Trang quản trị admin đầy đủ thông tin và các chức năng cơ bản như: thêm, xóa, sửa, tìm kiếm, bộ lọc và báo cáo, thống kê,
• Nhược điểm: Bên cạnh đó, vẫn còn một số hạn chế mà em có thể khắc phục:
- Trong phần đơn đặt hàng, thông tin về người đặt mua thì đầy đủ từ tài khoản nhưng về người nhận thì thông tin được nhập vào (hầu hết chỉ có địa chỉ) dẫn đến việc khó khăn trong việc quản lý đơn hàng
- Nhân viên cửa hàng trả lời tin nhắn nên không thể đảm bảo 24/7 mỗi ngày
- Người dùng không thể tìm kiếm sản phẩm qua nhiều từ khóa mình nhớ
- Các khách vãng lai muốn sử dụng thử dịch vụ trong cửa hàng đều phải cung cấp thông tin và tạo tài khoản
• Hướng giải quyết:
- Hiển thị thêm phần nhập thông tin cho người nhận hàng
- Tích hợp chatbot để tư vấn cho người dùng
- Bộ tìm kiếm có thể nhập nhiều từ khóa
- Khách hàng mua hàng mà không cần đăng nhập
2.4 Cửa hàng nông sản
2.4.1 Khái niệm nông sản
Nông sản là các thành phẩm, bán thành phẩm của ngành sản xuất hàng hóa thông qua nuôi trồng, được người nông dân sản xuất, chế biến với mục đích thu hoạch bán
ra thị trường
Trang 30Nông sản bao gồm phạm vi khá rộng bao gồm các hàng hóa có nguồn gốc từ hoạt động nông nghiệp như:
• Các sản phẩm nông nghiệp cơ bản như: lúa, gạo, bột mì, sữa, động vật tươi sống, cà phê, hồ tiêu, hạt điều, chè, rau quả tươi
• Các sản phẩm phát sinh như bánh mì, bơ, dầu ăn, thịt…
• Các sản phẩm được chế biến từ thành phẩm nông nghiệp: kẹo, bánh… [14]
2.4.2 Quy trình quản lý cửa hàng
Cửa hàng được xây dựng theo mô hình B2C (Business to Customer) tức là doanh nghiệp bán sản phẩm cho cá nhân khách hàng là người tiêu dùng cuối cùng
• Lập hóa đơn:
- Sau khi khách hàng đã thanh toán giỏ hàng, nhân viên gọi điện xác nhận thông tin đơn hàng Sau khi hoàn thành, nhân viên cập nhật trạng thái đơn hàng, ấn lưu và xuất hóa đơn cho khách
• Quản lý khách hàng:
- Cửa hàng lưu lại danh sách khách hàng và thống kê tần suất, giá trị mua
- Quản lý sẽ nhìn vào số liệu và xây dựng chiến lược bán hàng hợp lý
• Quản lý nhân viên:
- Người quản lý sẽ cần quản lý hồ sơ, lý lịch của toàn bộ nhân viên trong cửa hàng, bao gồm: họ tên, ngày sinh, CMND/CCCD, địa chỉ, chức vụ, ngày vào làm, …
- Điểm danh nhân viên hằng ngày
• Quản lý sản phẩm:
- Cửa hàng sẽ cần quản lý danh sách sản phẩm bao gồm: Thông tin cơ bản: tên sản phẩm, loại, giá, đơn vị thành phần, mùa vụ, đóng gói, hạn sử dụng, xuất sứ, …
- Để tạo mới hoặc sửa một sản phẩm, nhân viên cần điền tất cả các thông tin cơ bản vào form được tạo sẵn
Trang 31• Quản lý khuyến mãi:
- Cửa hàng đưa ra các chương trình khuyến mãi để thu hút thêm khách hàng Cửa hàng có thể tung ra các chương trình khuyến mãi như khuyến mãi theo tháng, khuyến mãi ra mắt sản phẩm, khuyến mãi ngày lễ,
- Để thêm mới hoặc sửa một sản phẩm, nhân viên cần điền tất cả các thông tin cơ bản như giá trị mã, giá trị đơn hàng, thời gian, mô tả khuyến mãi, vào form được tạo sẵn
Trang 32Chương 3 CƠ SỞ LÝ THUYẾT 3.1 Laravel PHP Framework [8]
• Controller: Đóng vài trò là phần trung gian giữa model và view Nó có nhiệm
vụ tiếp nhận yêu cầu từ client sau đó xử lý request, load model và gửi data qua view tương ứng rồi trả về kết quả về cho client
• Model: Có nhiệm vụ thao tác với cơ sở dữ liệu, có nghĩa là nó sẽ chứa tất cả các hàm, các phương thức truy vấn trực tiếp với dữ liệu và controller sẽ thông qua các hàm, phương thức này của model để lấy dữ liệu rồi gửi qua view
• View: Sẽ nhận dữ liệu từ controller và hiển thị nội dung sang các đoạn mã HTML, bạn có thể hiểu đơn giản là thành phần giao diện
3.1.2 Giới thiệu về Laravel PHP Framework
Hình 3.1 Laravel PHP Framework (Nguồn ảnh: laravel.com/ [Truy cập: 04-06-2022])
Laravel là một PHP framework, có mã nguồn mở và miễn phí, được xây dựng nhằm hỗ trợ phát triển các phần mềm, ứng dụng, theo kiến trúc MVC Laravel giúp lập trình viên thúc đẩy nhanh chóng quá trình phát triển ứng dụng Lập trình viên tiết kiệm được thời gian, tăng sự ổn định cho ứng dụng và giảm thiểu số lần phải viết lại code cho lập trình viên
Trang 33Ưu điểm của Laravel
• Sử dụng các tính năng mới nhất của PHP
• Nguồn tài nguyên vô cùng lớn và sẵn có
• Tốc độ xử lý nhanh
• Dễ sử dụng
• Tính bảo mật cao
3.2 Bootstrap [9]
3.2.1 Giới thiệu về Bootstrap
Hình 3.2 Bootstrap Framework (Nguồn ảnh: getbootstrap.com [Truy cập: 04-06-2022])
Bootstrap là một bộ sưu tập miễn phí của các mã nguồn mở và công cụ dùng để tạo ra một mẫu webiste hoàn chỉnh Với các thuộc tính về giao diện được quy định sẵn như kích thước, màu sắc, độ cao, độ rộng…, các designer có thể sáng tạo nhiều sản phẩm mới mẻ nhưng vẫn tiết kiệm thời gian khi làm việc với framework này trong quá trình thiết kế giao diện website
Ưu điểm của Bootstrap:
• Dễ dàng thao tác
• Tủy chỉnh dễ dàng
• Chất lượng sản phẩm đầu ra hoàn hảo
• Độ tương thích cao
Trang 343.2.2 Hướng dẫn sử dụng Bootstrap cơ bản
• Thêm HTML5 doctype: Bootstrap 4 ứng dụng các phần tử HTML và các thuộc tính CSS Bootstrap đòi hỏi người dùng bổ sung thẻ HTML5 doctype
Để sử dụng Bootstrap, bạn cần đảm bảo Bootstrap được cài đặt đã bao gồm HTML5 doctype ở đầu trang, cùng với thuộc tính lang và bộ ký tự chính xác
• Bootstrap 4 được thiết kế để đáp ứng cho các thiết bị di động Mobile-first Index là một phần cốt lõi của Bootstrap 4 Để đảm bảo hiển thị đúng và thu phóng khung của website linh hoạt với khung browser, hãy thêm thẻ <meta> sau vào bên trong phần tử <head>:
<meta name="viewport" content="width=device-width, initial-scale=1">
• Khi sử dụng trên webiste của riêng mình, người dùng cần bọc toàn bộ nội dung trong webiste bằng thẻ container (class container hoặc container-fluid)
3.3 jQuery [10]
3.3.1 Giới thiệu về jQuery
Hình 3.3 Thư viện jQuery (Nguồn ảnh: jquery.com [Truy cập: 04-06-2022])
jQuery không phải là một ngôn ngữ lập trình riêng biệt mà hoạt động liên kết với JavaScript Với jQuery, bạn có thể làm được nhiều việc hơn mà lại tốn ít công sức hơn jQuery cung cấp các API giúp việc duyệt tài liệu HTML, hoạt ảnh, xử lý sự kiện và thao tác AJAX đơn giản hơn jQuery hoạt động tốt trên nhiều loại trình duyệt khác nhau
Trang 353.3.2 Ưu điểm của jQuery
• jQuery xử lý code rất nhanh và có khả năng mở rộng
• jQuery tạo điều kiện cho người dùng viết các mã chức năng bằng các dòng tối thiểu jQuery cải thiện hiệu suất lập trình web
• jQuery phát triển các ứng dụng có tương thích với trình duyệt
MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên Internet
3.4.2 Một số đặc điểm của MySQL
• MySQL là một phần mềm quản trị cơ sở dữ liệu dạng server-based (gần tương đương với SQL Server của Microsoft)
• MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu, mỗi cơ sở dữ liệu có thể
có nhiều bảng quan hệ chứa dữ liệu
• MySQL có cơ chế phân quyền người sử dụng riêng, mỗi người dùng có thể được quản lý một hoặc nhiều cơ sở dữ liệu khác nhau
Trang 36Chương 4 PHÂN TÍCH & THIẾT KẾ 4.1 Xác định yêu cầu
4.1.1 Danh sách các yêu cầu chức năng
1 Đăng nhập Yêu cầu ở giao diện của khách hàng và
nhân viên
2 Đăng ký tài khoản
Yêu cầu ở giao diện của khách hàng
3 Xem thông tin sản phẩm
10 Quản lý mã khuyến mãi
11 Quản lý thông tin khách hàng
12 Quản lý đơn đặt hàng
13 Quản lý kho hàng
14 Thống kê doanh thu
15 Quản lý nhà cung cấp
16 Quản lý nhân viên
Bảng 4.1 Danh sách các yêu cầu chức năng
Trang 374.1.2 Danh sách biểu mẫu và quy định của biểu mẫu
4.1.2.1 Đăng ký tài khoản khách hàng
Trang 384.1.2.3 Cập nhật tài khoản cá nhân (khách hàng)
Mô tả:
Kích hoạt: …
Ghi chú: …
• Quy định:
- Tên dạnh mục, mô tả bắt buộc nhập và đúng định dạng
- Kích hoạt phải là giá trị “có” hoặc “không”
Trang 394.1.2.5 Quản lý sản phẩm
Biểu mẫu 5
Sản phẩm Tên sản phẩm:
Trang 404.1.2.6 Quản lý đơn đặt hàng
Biểu mẫu 7
Quản lý đơn đặt hàng Khách hàng: