Đồ Án Tốt Nghiệp: Xây Dựng Hệ Thống Sàn Thương Mại Điện Tử

Khám phá đề tài xây dựng hệ thống sàn thương mại điện tử, từ thiết kế đến triển khai, giúp tối ưu hóa trải nghiệm người dùng và tăng trưởng doanh thu.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2023

114
2
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI MỞ ĐẦU

1. CHƯƠNG 1: GIỚI THIỆU CHUNG

1.1. Thực trạng hiện nay

1.2. Thực trạng các sàn TMĐT ở Việt Nam

1.3. Thực trạng các sàn TMĐT trên Thế giới

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

1.5. Phạm vi nghiên cứu

1.6. Phương pháp nghiên cứu

1.7. Các công nghệ được sử dụng

1.8. Tổng quan về Javascript

1.9. Tổng quan về NestJS

2. CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

2.1. Phân tích hệ thống

2.2. Mục tiêu của hệ thống

2.3. Các tác nhân của hệ thống

2.4. Yêu cầu đối với hệ thống

2.5. Phạm vi của hệ thống

2.6. Usecase Tổng quan

2.7. Đăng ký thành viên

2.8. Đăng nhập bằng tài khoản Google

2.9. Người dùng tìm kiếm sản phẩm

2.10. Người dùng xem chi tiết sản phẩm

2.11. Người dùng xem giỏ hàng

2.12. Người dùng thanh toán

2.13. Người dùng yêu cầu mở gian hàng

2.14. Người bán thêm sản phẩm

2.15. Người bán quản lý đơn hàng

2.16. Người bán quản lý sản phẩm

2.17. Người bán xem thống kê doanh thu

2.18. Quản trị viên quản lý các shop

2.19. Quản trị viên phê duyệt yêu cầu mở shop

2.20. Quản trị viên quản lý người dùng

2.21. Quản trị viên quản lý đơn hàng

2.22. Thiết kế hệ thống

2.23. Biểu đồ lớp thực thể

2.24. Tổng kết chương

3. CHƯƠNG 3: THỰC HIỆN VÀ TRIỂN KHAI HỆ THỐNG

3.1. Yêu cầu hệ thống

3.2. Một số công cụ, thư viện hỗ trợ

3.3. Cài đặt, tích hợp dịch vụ

3.4. Cài đặt Nodejs, NVM, Yarn

3.5. Khởi tạo hệ thống

3.6. Đăng ký, tích hợp cơ sở dữ liệu MongoDB

3.7. Đăng ký, tích hợp dịch vụ lưu trữ AWS S3

3.8. Đăng ký, tích hợp dịch vụ Google API

3.9. Đăng ký, tích hợp dịch vụ Mail Service

3.10. Đăng ký, tích hợp dịch vụ AlgoliaSearch

3.11. Đăng ký, tích hợp dịch vụ Firebase Notification

3.12. Đăng ký, tích hợp dịch vụ OpenAI Assistant

3.13. Đăng ký, tích hợp dịch vụ vận chuyển Giao Hàng Nhanh

3.14. Đăng ký, tích hợp dịch vụ thanh toán VNPay

3.15. Kết quả cài đặt

3.16. Source code phía backend

3.17. Source code phía frontend

3.18. Phía cơ sở dữ liệu

3.19. Một số hình ảnh của hệ thống

3.20. Hiệu năng hệ thống

3.21. Tổng kết chương

3.22. Đánh giá kết quả đồ án

3.23. Phương hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về Xây Dựng Hệ Thống Sàn Thương Mại Điện Tử Tại Việt Nam

Thương mại điện tử (TMĐT) đã trở thành một phần không thể thiếu trong nền kinh tế Việt Nam. Sự phát triển nhanh chóng của các sàn thương mại điện tử đã tạo ra nhiều cơ hội cho cả người tiêu dùng và doanh nghiệp. Việc xây dựng hệ thống sàn thương mại điện tử không chỉ giúp kết nối người mua và người bán mà còn thúc đẩy sự phát triển của nền kinh tế số. Theo báo cáo của Hiệp hội Thương mại điện tử Việt Nam, doanh thu từ TMĐT đã đạt 17,8 tỷ USD vào năm 2022 và dự kiến sẽ tiếp tục tăng trong những năm tới.

1.1. Thực Trạng Thương Mại Điện Tử Tại Việt Nam

Việt Nam hiện có khoảng 500 sàn thương mại điện tử đang hoạt động, với các tên tuổi lớn như Shopee, Tiki, và Lazada. Sự cạnh tranh giữa các sàn đã tạo ra một môi trường mua sắm phong phú cho người tiêu dùng.

1.2. Lợi Ích Của Sàn Thương Mại Điện Tử

Sàn thương mại điện tử mang lại nhiều lợi ích cho người tiêu dùng như sự tiện lợi, đa dạng sản phẩm và giá cả cạnh tranh. Đồng thời, nó cũng giúp doanh nghiệp mở rộng thị trường và gia tăng doanh thu.

II. Những Thách Thức Trong Việc Xây Dựng Sàn Thương Mại Điện Tử

Mặc dù có nhiều cơ hội, việc xây dựng hệ thống sàn thương mại điện tử cũng gặp phải nhiều thách thức. Các vấn đề như bảo mật thông tin, quản lý đơn hàng và tích hợp công nghệ mới là những yếu tố cần được chú trọng. Đặc biệt, việc đảm bảo an toàn cho người dùng là một trong những ưu tiên hàng đầu.

2.1. Vấn Đề Bảo Mật Thông Tin

Bảo mật thông tin là một trong những thách thức lớn nhất trong thương mại điện tử. Các sàn cần phải áp dụng các biện pháp bảo mật mạnh mẽ để bảo vệ dữ liệu của người dùng khỏi các cuộc tấn công mạng.

2.2. Quản Lý Đơn Hàng Hiệu Quả

Quản lý đơn hàng là một yếu tố quan trọng để đảm bảo sự hài lòng của khách hàng. Hệ thống cần phải có khả năng theo dõi và xử lý đơn hàng một cách nhanh chóng và chính xác.

III. Phương Pháp Xây Dựng Hệ Thống Sàn Thương Mại Điện Tử Hiệu Quả

Để xây dựng một hệ thống sàn thương mại điện tử hiệu quả, cần áp dụng các công nghệ hiện đại và phương pháp quản lý tốt. Việc sử dụng các framework như Node.js, NestJS và MongoDB sẽ giúp tối ưu hóa quy trình phát triển và quản lý dữ liệu.

3.1. Sử Dụng Công Nghệ Hiện Đại

Việc áp dụng các công nghệ như Node.js và NestJS giúp tăng tốc độ phát triển và cải thiện hiệu suất của hệ thống. MongoDB cũng là một lựa chọn tốt cho việc quản lý dữ liệu phi cấu trúc.

3.2. Tối Ưu Hóa Trải Nghiệm Người Dùng

Tối ưu hóa trải nghiệm người dùng là yếu tố quan trọng để thu hút và giữ chân khách hàng. Các tính năng như tìm kiếm nhanh và giao diện thân thiện sẽ giúp nâng cao sự hài lòng của người dùng.

IV. Ứng Dụng Thực Tiễn Của Hệ Thống Sàn Thương Mại Điện Tử

Hệ thống sàn thương mại điện tử không chỉ là một nền tảng giao dịch mà còn là một công cụ mạnh mẽ để phân tích thị trường và hành vi người tiêu dùng. Các doanh nghiệp có thể sử dụng dữ liệu từ sàn để đưa ra các quyết định kinh doanh chính xác hơn.

4.1. Phân Tích Dữ Liệu Người Dùng

Phân tích dữ liệu người dùng giúp doanh nghiệp hiểu rõ hơn về nhu cầu và thói quen mua sắm của khách hàng, từ đó tối ưu hóa chiến lược marketing.

4.2. Tăng Cường Chiến Lược Marketing

Sử dụng các công cụ marketing trực tuyến như SEO và quảng cáo trên mạng xã hội sẽ giúp tăng cường khả năng tiếp cận khách hàng và nâng cao doanh thu.

V. Kết Luận Về Tương Lai Của Sàn Thương Mại Điện Tử Tại Việt Nam

Tương lai của sàn thương mại điện tử tại Việt Nam rất hứa hẹn với sự phát triển không ngừng của công nghệ và nhu cầu mua sắm trực tuyến ngày càng tăng. Các doanh nghiệp cần phải nắm bắt xu hướng này để không bị bỏ lại phía sau.

5.1. Xu Hướng Phát Triển TMĐT

Xu hướng phát triển thương mại điện tử sẽ tiếp tục gia tăng, đặc biệt là trong bối cảnh người tiêu dùng ngày càng ưa chuộng mua sắm trực tuyến.

5.2. Cơ Hội Cho Doanh Nghiệp

Các doanh nghiệp có cơ hội lớn để mở rộng thị trường và gia tăng doanh thu thông qua việc đầu tư vào công nghệ và cải thiện trải nghiệm người dùng.

10/07/2025
Đề tài xây dựng hệ thống sàn thương mại điện tử

Trích đoạn nội dung tài liệu

CHƯƠNG 1. GIỚI THIỆU CHUNG 1. Thực trạng hiện nay 1. Thực trạng các sàn TMĐT ở Việt Nam Trong những năm gần đây, thương mại điện tử (TMĐT) đã phát triển mạnh mẽ ở Việt Nam.

Theo báo cáo của Hiệp hội Thương mại điện tử Việt Nam (VECOM), năm 2022, tổng mức bán lẻ hàng hóa và doanh thu dịch vụ thương mại điện tử đạt 17,8 tỷ USD, tăng 27,6% so với năm 2021. Dự kiến, năm 2023, tổng mức bán lẻ hàng hóa và doanh thu dịch vụ thương mại điện tử đạt 20,7 tỷ USD, tăng 17,3% so với năm 2022 [1]. Sự phát triển của TMĐT đã kéo theo sự ra đời của hàng loạt sàn thương mại điện tử (TMĐT) lớn nhỏ. Theo thống kê của VECOM, hiện nay có khoảng 500 sàn TMĐT đang hoạt động tại Việt Nam.

Trong đó, có thể kể đến một số sàn TMĐT lớn như: - Shopee - Tiki - Lazada - Sendo Các sàn TMĐT đã tạo ra một môi trường giao thương thuận lợi, giúp người mua dễ dàng tiếp cận với nhiều sản phẩm, dịch vụ đa dạng với giá cả cạnh tranh. Bên cạnh đó, các sàn TMĐT cũng mang lại nhiều lợi ích cho người bán, giúp họ gia tăng doanh số, tiếp cận với nhiều khách hàng tiềm năng hơn. Thực trạng các sàn TMĐT trên Thế giới Trên thế giới, TMĐT cũng đang phát triển mạnh mẽ. Theo báo cáo của Statista, năm 2022, tổng doanh thu TMĐT toàn cầu đạt 5,72 nghìn tỷ USD, tăng 10% so với năm 2021.

Dự kiến, năm 2023, tổng doanh thu TMĐT toàn cầu đạt 6,3 nghìn tỷ USD, tăng 10% so với năm 2022 [2]. Các sàn TMĐT lớn trên thế giới bao gồm: Vũ Duy Nguyên – B19DCCN481 10 ĐỒ ÁN TỐT NGHIỆP GIỚI THIỆU CHUNG - Amazon - Alibaba - eBay Các sàn TMĐT này đã trở thành những gã khổng lồ trong lĩnh vực TMĐT, có tầm ảnh hưởng lớn đến thị trường toàn cầu. Mục tiêu của đề tài Mục tiêu là xây dựng một hệ thống sàn TMĐT đáp ứng các yêu cầu sau: - Cung cấp đầy đủ thông tin về sản phẩm, dịch vụ cho người mua. - Cho phép người mua thực hiện các giao dịch mua bán trực tuyến một cách dễ dàng, thuận tiện.

- Đảm bảo an toàn, bảo mật thông tin cho người mua và người bán. Phạm vi nghiên cứu Đề tài tập trung nghiên cứu và xây dựng hệ thống website sàn TMĐT theo mô hình B2C (Business-to-Consumer), trong đó sàn TMĐT đóng vai trò là trung gian kết nối giữa người bán và người mua. Phương pháp nghiên cứu Để thực hiện đề tài, em đã sử dụng các phương pháp nghiên cứu sau: - Nghiên cứu lý luận: Nghiên cứu các tài liệu, giáo trình liên quan đến TMĐT, sàn TMĐT, hệ thống website,. - Nghiên cứu thực tiễn: Khảo sát thực trạng hoạt động của các sàn TMĐT hiện nay, thực hiện các bài test, thử nghiệm để đánh giá tính khả thi của hệ thống.

Các công nghệ được sử dụng Để thực hiện đề tài và xây dựng hệ thống, em quyết định sử dụng các công nghệ phổ biến trong thời điểm hiện tại như ngôn ngữ Javascript, NodeJS, NestJS, NextJS, Redis, AWS S3, MongoDB, TailwindCSS, OpenAI, … Vũ Duy Nguyên – B19DCCN481 11 ĐỒ ÁN TỐT NGHIỆP GIỚI THIỆU CHUNG 5. Tổng quan về Javascript Javascript là một ngôn ngữ lập trình, ban đầu nó được tạo ra để giúp cho các trang web trở nên sống động hơn và được sử dụng chủ yếu phía trình duyệt. Các tập lệnh javascript được cung cấp và thực thi dưới dạng văn bản thuần túy, không cần chuẩn bị hay biên dịch để chạy. Hiện nay, javascript không chỉ được thực thi ở phía trình duyệt mà còn trên phía máy chủ hoặc trên thực tế là trên bất cứ thiết bị nào có chương trình đặc biệt được gọi là công cụ Javascript.

Quá trình phát triển của javascript: - Năm 1995, javascript được phát minh bởi Brendan Eich. - Năm 1996, Netscape 2 được phát hành với javascript 1.0 - Năm 1997, javascript trở thành tiêu chuẩn ECMA-262 - Trải qua nhiều giai đoạn, Javascript ngày càng phát triển mạnh mẽ và được hỗ trợ ngày càng nhiều trên các trình duyệt khác nhau. - Cho đến năm 2018, Javascript phiên bản ECMAScript 6 được hỗ trợ trên tất cả các trình duyệt thông dụng: Chrome, FireFox, Safari. - Hiện nay, Javascript vẫn đang là một trong những ngôn ngữ phổ biến nhất thế giới Hình 1-1 Những ngôn ngữ được sử dụng phổ biến nhất năm 2023 [3] Ưu điểm của javascript: Vũ Duy Nguyên – B19DCCN481 12 ĐỒ ÁN TỐT NGHIỆP GIỚI THIỆU CHUNG - Javascript là ngôn ngữ lập trình có cấu trúc rất đơn giản, mã javascript dễ hiểu và dễ tiếp thu.

- Javascript là ngôn ngữ thông dịch, không cần biên dịch để thực thi nên tốc độ thực thi chương trình nhanh. - Bất kể JavaScript được lưu trữ ở đâu, nó luôn chạy trong môi trường máy khách để giảm mức sử dụng băng thông và tăng tốc độ thực thi. - Javascript hoạt động được trên nhiều trình duyệt, nền tảng. - Thật dễ dàng trong việc giải quyết các vấn đề thắc mắc bởi Javascript được sử dụng bởi rất nhiều nhà phát triển.

Nhược điểm của javascript: - Khó khăn trong việc gỡ lỗi. - Người dùng có thể xem được mã javascript phía máy khách, nó có thể bị người khác lạm dụng. Ngoài ra không khó để chèn mã vào trang web làm suy giảm tính bảo mật. - Kiểu dữ liệu trong javascript ở dạng kiểu dữ liệu động nên khả năng gặp những lỗi tiềm ẩn là rất cao.

Tổng quan về NestJS NestJS là một framework Node.JS cho phép xây dựng ứng dụng phía server. Nest mở rộng các framework Node.js như Express hay Fastify để bổ sung thêm nhiều module hay thư viện hỗ trợ việc xử lý tác vụ. Đây là một framework mã nguồn mở, sử dụng TypeScript và rất linh hoạt để xây dựng các hệ thống backend. [4] Vũ Duy Nguyên – B19DCCN481 13 ĐỒ ÁN TỐT NGHIỆP GIỚI THIỆU CHUNG Hình 1-2 Ngôn ngữ NestJS Bên cạnh đó, NestJS còn giúp mở rộng các server Node để hỗ trợ những cơ sở dữ liệu như MongoDB, Redis hay Apache Cassandra Cấu trúc của Nestjs: - Module (Các module): Module là một phần cơ bản trong cấu trúc NestJS.

Mỗi ứng dụng NestJS bao gồm ít nhất một module gốc (root module) và có thể có nhiều module con. Module là nơi tổ chức các thành phần của ứng dụng như Controllers, Providers và các thành phần khác. Mỗi module đại diện cho một phần chức năng cụ thể của ứng dụng. - Controller (Bộ điều khiển): Controllers là thành phần chịu trách nhiệm xử lý các yêu cầu HTTP từ phía client và trả về kết quả tương ứng.

Controllers là nơi xử lý các request và trả về các response. Các phương thức của controller được chú thích (decorated) bằng các decorator như `@Get()`, `@Post()`, `@Put()`, v., để chỉ định các route và phương thức HTTP tương ứng. - Provider (Các nhà cung cấp): Providers là thành phần chịu trách nhiệm cung cấp các dịch vụ cho ứng dụng. Đây có thể là các service, repository, logger, v.

Providers sử dụng dependency injection để chèn vào các thành phần khác và có thể được sử dụng bởi các controllers hoặc các providers khác. Vũ Duy Nguyên – B19DCCN481 14 ĐỒ ÁN TỐT NGHIỆP GIỚI THIỆU CHUNG - Middleware (Trung gian): Middleware là các hàm xử lý mà NestJS sử dụng để xử lý các yêu cầu HTTP trước khi chúng đến các route xử lý chính. Middleware có thể được sử dụng để thực hiện các thao tác chung như xác thực, ghi log, xử lý lỗi, v. - Filter (Bộ lọc): Filters được sử dụng để xử lý các exception (ngoại lệ) xảy ra trong ứng dụng.

Filters cho phép bạn xử lý và thay đổi response trước khi gửi về client khi có exception xảy ra. - Guard (Bảo vệ): Guards được sử dụng để kiểm tra xem một yêu cầu có thể được xử lý hoặc không. Guards cho phép bạn thực hiện các kiểm tra xác thực hoặc kiểm tra quyền trước khi xử lý một yêu cầu. - Interceptor (Bộ chặn): Interceptors là các hàm xử lý mà NestJS sử dụng để chặn và thay đổi response trước khi nó được gửi về client.

Interceptors có thể được sử dụng để thực hiện các thao tác chung trên response trước khi nó đi ra ngoài. - Exception (Ngoại lệ): Exception handling (xử lý ngoại lệ) là một phần quan trọng của cấu trúc NestJS. Exception handling cho phép bạn xử lý các exception xảy ra trong ứng dụng và trả về các thông báo lỗi thích hợp cho client. NestJS là một framework phát triển backend mã nguồn mở đáng chú ý, được xây dựng dựa trên Node.js và sử dụng ngôn ngữ TypeScript hoặc JavaScript.

Đặc điểm nổi bật của NestJS là mô hình kiến trúc lõi giúp tổ chức ứng dụng một cách rõ ràng và dễ quản lý, giúp lập trình viên xây dựng các ứng dụng server-side hiện đại và phức tạp một cách hiệu quả. Một trong những ưu điểm nổi bật của NestJS là việc hỗ trợ cả TypeScript và JavaScript. Lập trình viên có thể lựa chọn ngôn ngữ phù hợp với nhu cầu và kinh nghiệm của họ. TypeScript là một ngôn ngữ mở rộng của JavaScript, cung cấp kiểu dữ liệu tĩnh và các tính năng nâng cao, giúp mã nguồn dễ đọc và dễ bảo trì hơn.

NestJS triển khai mô hình kiến trúc lõi, trong đó mỗi ứng dụng bao gồm ít nhất một module gốc và có thể có nhiều module con. Mỗi module đại diện cho một phần chức năng cụ thể của ứng dụng, giúp mã nguồn trở nên rõ ràng, tổ chức tốt hơn và dễ quản lý. Vũ Duy Nguyên – B19DCCN481 15 ĐỒ ÁN TỐT NGHIỆP GIỚI THIỆU CHUNG Với NestJS, việc sử dụng Dependency Injection (DI) là một cách hiệu quả để giảm sự phụ thuộc cứng giữa các thành phần của ứng dụng. DI giúp bạn tạo ra mã linh hoạt, tái sử dụng và dễ kiểm thử.

Các decorator (chú thích) trong NestJS giúp xác định vai trò và mục đích của từng thành phần trong mã nguồn như Controllers, Providers, Middleware, v., giúp bạn dễ dàng hiểu và bảo trì mã nguồn. NestJS hỗ trợ Middleware và Interceptors, giúp bạn thực hiện các thao tác chung trước và sau khi xử lý yêu cầu HTTP. Điều này giúp bạn xử lý các yêu cầu HTTP trước khi chúng đến các route xử lý chính và thay đổi response trước khi nó được gửi về client. Exception handling (xử lý ngoại lệ) là một phần quan trọng trong NestJS, giúp bạn xử lý các exception xảy ra trong ứng dụng và trả về các thông báo lỗi thích hợp cho client khi có lỗi xảy ra.

Tổng quan về NextJS NextJS là framework mã nguồn mở được xây dựng trên nền tảng của React, cho phép chúng ta xây dựng các trang web tĩnh có tốc độ siêu nhanh và thân thiện với người dùng, cũng như xây dựng các ứng dụng web React. [5] NextJS được ra đời vào năm 2016, thuộc sở hữu của Vercel.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Xây Dựng Hệ Thống Sàn Thương Mại Điện Tử Tại Việt Nam" cung cấp cái nhìn tổng quan về việc phát triển và triển khai các nền tảng thương mại điện tử tại Việt Nam. Nó nhấn mạnh tầm quan trọng của việc áp dụng công nghệ hiện đại trong việc tối ưu hóa quy trình kinh doanh, nâng cao trải nghiệm người dùng và mở rộng thị trường. Bên cạnh đó, tài liệu cũng đề cập đến các thách thức mà các doanh nghiệp có thể gặp phải trong quá trình xây dựng hệ thống, từ việc quản lý dữ liệu đến bảo mật thông tin.

Để mở rộng kiến thức của bạn về các ứng dụng công nghệ trong lĩnh vực này, bạn có thể tham khảo tài liệu Ứng dụng học tăng cường sâu cho tối ưu phân bổ tài nguyên trong hệ thống học liên kết, nơi khám phá cách tối ưu hóa tài nguyên trong các hệ thống phức tạp. Ngoài ra, tài liệu Luận văn tạo lập hệ luật mờ sử dụng phân cụm trừ mờ dữ liệu sẽ giúp bạn hiểu rõ hơn về các phương pháp phân tích dữ liệu trong thương mại điện tử. Cuối cùng, bạn cũng có thể tìm hiểu về Luận văn thạc sĩ quản lý nhà nước về dịch vụ thông tin di động mặt đất trả trước từ thực tiễn tỉnh đắk lắk, để có cái nhìn sâu sắc hơn về quản lý dịch vụ thông tin trong bối cảnh thương mại điện tử.

Mỗi tài liệu này đều là cơ hội để bạn khám phá thêm và nâng cao hiểu biết của mình về lĩnh vực thương mại điện tử và công nghệ thông tin.