1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Xây dựng hệ thống thương mại điện tử sử dụng mern stack

182 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 thương mại điện tử sử dụng MERN Stack
Tác giả Nguyễn Thị Bích Phương, Đặng Văn Nghĩa
Người hướng dẫn ThS. Nguyễn Hữu Trung
Trường học Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh
Chuyên ngành Công nghệ phần mềm
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2022
Thành phố Hồ Chí Minh
Định dạng
Số trang 182
Dung lượng 15,59 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • 1. Lý do chọn đề tài (23)
  • 2. Mục đích và nhiệm vụ của đề tài (23)
    • 2.1. Mục đích (23)
    • 2.2. Nhiệm vụ (23)
  • 3. Cách tiếp cận và phương pháp nghiên cứu (6)
  • 4. Kết quả đạt được (24)
  • Chương 1: CƠ SỞ LÝ THUYẾT (0)
    • 1.1. Ngôn ngữ JavaScript (7)
    • 1.2. Bộ công nghệ MERN stack (7)
      • 1.2.1. MongoDB (7)
      • 1.2.2. Node.js (7)
      • 1.2.3. Express.js (7)
      • 1.2.4. React.js (7)
    • 1.3. Kiến trúc hệ thống (7)
      • 1.3.1. Cơ sở dữ liệu (7)
      • 1.3.2. Back-end (7)
      • 1.3.3. Front-end (7)
      • 1.3.4. React Native (7)
  • Chương 2: KHẢO SÁT HIỆN TRẠNG (0)
    • 2.1. Tiki (7)
    • 2.2. Shopee (7)
    • 2.3. Lazada (7)
    • 2.4. Etsy (7)
  • Chương 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG (0)
    • 3.1. Phân tích chức năng (7)
      • 3.1.1. Phía Khách (Guest) (7)
      • 3.1.2. Phía Người mua (Customer) (7)
      • 3.1.3. Phía Người bán (Vendor) (7)
      • 3.1.4. Phía Quản trị viên (Admin) (7)
    • 3.2. Biểu đồ Use case (Use case Diagram) (44)
      • 3.2.1. Đăng ký (Sign up) (44)
      • 3.2.2. Đăng nhập (Sign in) (45)
      • 3.2.3. Đăng xuất (Sign out) (45)
      • 3.2.4. Khôi phục mật khẩu (Password Recovery) (46)
      • 3.2.5. Tìm kiếm/Xem sản phẩm (Search/View products) (47)
      • 3.2.6. Tìm kiếm/Xem cửa hàng (Search/View stores) (48)
      • 3.2.7. Tìm kiếm/Xem người dùng (Search/View users) (49)
      • 3.2.8. Quản lý tài khoản (Account Management - Account) (50)
      • 3.2.9. Quản lý thông tin của tài khoản (Account Management - Profile) (51)
      • 3.2.10. Quản lý địa chỉ của tài khoản (Account Management - Address) (52)
      • 3.2.11. Quản lý đơn hàng của tài khoản (Account Management - Purchase) (53)
      • 3.2.12. Giỏ hàng (Cart) (54)
      • 3.2.13. Đặt hàng (Order) (54)
      • 3.2.14. Phản hồi, đánh giá (Review & rating) (55)
      • 3.2.15. Theo dõi sản phẩm (Follow/unfollow products) (56)
      • 3.2.16. Theo dõi cửa hàng (Follow/unfollow stores) (57)
      • 3.2.17. Tạo cửa hàng (Create store) (58)
      • 3.2.18. Quản lý các cửa hàng (Stores Management) (58)
      • 3.2.19. Quản lý thông tin của cửa hàng (Store Management – Profile) (59)
      • 3.2.20. Quản lý nhân viên của cửa hàng (Store Management – Staff) (61)
      • 3.2.21. Quản lý sản phẩm của cửa hàng (Store Management – Product) (62)
      • 3.2.22. Quản lý đơn hàng của cửa hàng (Store Management – Order) (63)
      • 3.2.23. Quản lý ví điện tử của cửa hàng (Store Management – Ewallet) (65)
      • 3.2.24. Thống kê doanh thu (Revenue statistics) (66)
      • 3.2.25. Thống kê người dùng mới (New users statistics) (66)
      • 3.2.26. Thống kê cửa hàng mới (New stores statistics) (67)
      • 3.2.27. Quản lý người dùng trong hệ thống (Users management) (68)
      • 3.2.28. Quản lý sản phẩm trong hệ thống (Products management) (68)
      • 3.2.29. Quản lý đơn hàng trong hệ thống (Orders management) (69)
      • 3.2.30. Quản lý loại sản phẩm (System management – Category) (70)
      • 3.2.31. Quản lý thuộc tính sản phẩm (System management – Style) (71)
      • 3.2.32. Quản lý cấp độ người dùng (System management – User level) (73)
      • 3.2.33. Quản lý cấp độ cửa hàng (System management – Store level) (74)
      • 3.2.34. Quản lý đơn vị vận chuyển (System management – Delivery unit) (75)
      • 3.2.35. Quản lý chính sách hoa hồng (System management – Commission) (76)
      • 3.2.36. Quản lý giao dịch trong hệ thống (System management – Transaction) (77)
    • 3.3. Biểu đồ Tuần tự (Sequence Diagram) (8)
      • 3.3.1. Sequence Diagram Đăng ký (Sign up) (77)
      • 3.3.2. Sequence Diagram Đăng nhập (Sign in) (78)
      • 3.3.3. Sequence Diagram Đăng xuất (Sign out) (79)
      • 3.3.4. Sequence Diagram Khôi phục mật khẩu (Password Recovery) (80)
      • 3.3.5. Sequence Diagram Tìm kiếm/Xem cửa hàng (Search/View stores) (81)
      • 3.3.6. Sequence Diagram Tìm kiếm/Xem sản phẩm (Search/View products) (82)
      • 3.3.7. Sequence Diagram Tìm kiếm/Xem người dùng (Search/View users) (82)
      • 3.3.8. Sequence Diagram Thay đổi mật khẩu (Change Password) (83)
      • 3.3.9. Sequence Diagram Quản lý thông tin của tài khoản (Account (84)
      • 3.3.10. Sequence Diagram Quản lý địa chỉ của tài khoản (Account Management - Address) (84)
      • 3.3.11. Sequence Diagram Quản lý đơn hàng của tài khoản (Account (85)
      • 3.3.12. Sequence Diagram Giỏ hàng (Cart) (86)
      • 3.3.13. Sequence Diagram Đặt hàng (Order) (87)
      • 3.3.14. Sequence Diagram Phản hồi, đánh giá (Review & rating) (88)
      • 3.3.15. Sequence Diagram Theo dõi sản phẩm (Follow/unfollow products) (89)
      • 3.3.16. Sequence Diagram Theo dõi cửa hàng (Follow/unfollow stores) (90)
      • 3.3.17. Sequence Diagram Tạo cửa hàng (Create store) (91)
      • 3.3.18. Sequence Diagram Quản lý các cửa hàng (Stores Management) (92)
      • 3.3.19. Sequence Diagram Quản lý thông tin của cửa hàng (Store Management – Profile) 77 3.3.20. Sequence Diagram Quản lý nhân viên của cửa hàng (Store Management – Staff) 78 3.3.21. Sequence Diagram Quản lý sản phẩm của cửa hàng (Store Management – Product) ................................................................................................................... 79 3.3.22. Sequence Diagram Quản lý đơn hàng của cửa hàng (Store Management – Order) 80 (93)
      • 3.3.24. Sequence Diagram Thống kê doanh thu (Revenue statistics) (98)
      • 3.3.25. Sequence Diagram Thống kê người dùng mới (New users statistics) (99)
      • 3.3.26. Sequence Diagram Quản lý người dùng trong hệ thống (Users management) (100)
      • 3.3.27. Sequence Diagram Quản lý sản phẩm trong hệ thống (Products management) (101)
      • 3.3.28. Sequence Diagram Quản lý đơn hàng trong hệ thống (Orders management) (101)
      • 3.3.29. Sequence Diagram Quản lý loại sản phẩm (System management – Category) (102)
      • 3.3.30. Sequence Diagram Quản lý thuộc tính sản phẩm (System management – Style) 87 3.3.31. Sequence Diagram Quản lý cấp độ người dùng (System management – (103)
      • 3.3.32. Sequence Diagram Quản lý đơn vị vận chuyển (System management – (105)
      • 3.3.33. Sequence Diagram Quản lý chính sách hoa hồng (System management – Commission) (106)
      • 3.3.34. Sequence Diagram Quản lý giao dịch trong hệ thống (System (107)
    • 3.4. Biểu đồ Classs (Class Diagram) (0)
    • 3.5. Thiết kế Cơ sở dữ liệu (8)
      • 3.5.1. User (110)
      • 3.5.2. UserLevel (111)
      • 3.5.3. Store (112)
      • 3.5.4. StoreLevel (114)
      • 3.5.5. Commission (115)
      • 3.5.6. Category (115)
      • 3.5.7. Style (116)
      • 3.5.8. StyleValue (117)
      • 3.5.9. Product (118)
      • 3.5.10. Delivery (119)
      • 3.5.11. UserFollowStore (120)
      • 3.5.12. UserFollowProduct (121)
      • 3.5.13. Review (122)
      • 3.5.14. Order (123)
      • 3.5.15. OrderItem (124)
      • 3.5.16. Cart (125)
      • 3.5.17. CartItem (126)
      • 3.5.18. Transaction (126)
    • 3.6. Thiết kế Giao diện (8)
      • 3.6.1. Phía Khách (Guest) (8)
      • 3.6.2. Phía Người mua (Customer) (8)
      • 3.6.3. Phía Người bán (Vendor) (8)
      • 3.6.4. Phía Quản trị viên (Admin) (8)
  • Chương 4: CÀI ĐẶT VÀ KIỂM THỬ (0)
    • 4.1. Cài đặt (8)
    • 4.2. Kiểm thử (8)
    • 1. Những kết quả đạt được (8)
    • 2. Ưu điểm (4)
    • 3. Nhược điểm (179)
    • 4. Hướng phát triển (179)
  • TÀI LIỆU THAM KHẢO (8)

Nội dung

Phía Người mua a Đặng nhập, đăng xuất, quên mật khẩu b Quản lý tài khoản, giỏ hàng, đơn hàng c Theo dõi sản phẩm, cửa hàng yêu thích d Đặt hàng, thanh toán, phản hồi, đánh giá 3.. Phía N

Mục đích và nhiệm vụ của đề tài

Mục đích

- Tìm hiểu bộ công nghệ MERN stack

- Xây dựng hệ thống thương mại điện tử

Cách tiếp cận và phương pháp nghiên cứu

4 Phân tích những công trình có liên quan

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

1 Chương 1: Cơ sở lý thuyết

1.2 Bộ công nghệ MERN stack

2 Chương 2: Khảo sát hiện trạng

3 Chương 3: Phân tích và thiết kế hệ thống 3.1 Phân tích chức năng

3.1.4 Phía Quản trị viên (Admin)

3.3 Biểu đồ Use case (Use case Diagram)

3.3 Biểu đồ Tuần tự (Sequence Diagram)

3.4 Biểu đồ Class (Class Diagram)

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

3.6.4 Phía Quản trị viên (Admin)

4 Chương 4: Cài đặt và kiểm thử

1 Những kết quả đạt được

STT Thời gian Công việc Ghi chú

Nghiên cứu cơ sở lý thuyết, khảo sát hiện trạng, phân tích và thiết kế hệ thống Đã hoàn thành

Xây dựng cấu trúc hệ thống, thiết lập môi trường, cài đặt phần mềm Đã hoàn thành

Xây dựng hệ thống phía Khách, Người mua Đã hoàn thành

Xây dựng hệ thống phía Người bán Đã hoàn thành

Kiểm thử, sửa lỗi, hoàn thiện Đã hoàn thành

Viết báo cáo Đã hoàn thành

Người viết đề cương Đặng Văn Nghĩa Ý kiến của Giảng viên hướng dẫn

(ký và ghi rõ họ tên)

Chúng tôi xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, đã tạo điều kiện thuận lợi cho việc học tập, nghiên cứu và thực hiện đề tài này.

Chúng tôi xin chân thành cảm ơn ThS Nguyễn Hữu Trung, giảng viên hướng dẫn, người đã nhiệt tình chia sẻ và hỗ trợ nhóm, giúp chúng tôi trang bị đủ kiến thức để áp dụng vào bài Khóa luận tốt nghiệp.

Trong quá trình thực hiện đề tài, nhóm nhận thấy rằng do hạn chế về kiến thức, kinh nghiệm và kỹ thuật chuyên môn, việc xảy ra sai sót là điều không thể tránh khỏi Chúng tôi rất mong nhận được sự quan tâm, ý kiến đóng góp và nhận xét công tâm từ Hội đồng, các Giảng viên hướng dẫn và Giảng viên phản biện.

Xin chân thành cảm ơn

Sàn giao dịch thương mại điện tử là hệ thống website cho phép thương nhân, tổ chức và cá nhân không phải chủ sở hữu thực hiện quy trình mua bán hàng hóa và dịch vụ qua Internet Hình thức này đang phát triển mạnh mẽ và có khả năng thay thế các cửa hàng truyền thống trong tương lai Một số ví dụ thành công như Shopee, Lazada và Tiki.

Nhóm đã quyết định xây dựng một hệ thống thương mại điện tử dưới dạng sàn giao dịch, sử dụng công nghệ MERN stack, với đầy đủ các chức năng chính.

1 Phía Khách a) Đăng ký tài khoản b) Tìm kiếm, xem danh sách, chi tiết sản phẩm, cửa hàng, người dùng khác

Người mua có thể dễ dàng đăng nhập, đăng xuất và khôi phục mật khẩu khi cần Họ cũng có khả năng quản lý tài khoản, giỏ hàng và theo dõi đơn hàng một cách hiệu quả Bên cạnh đó, người mua có thể theo dõi sản phẩm và cửa hàng yêu thích, đồng thời thực hiện đặt hàng, thanh toán, và gửi phản hồi, đánh giá về trải nghiệm mua sắm của mình.

Người bán có thể tạo cửa hàng, thống kê doanh thu, và quản lý các thông tin liên quan đến cửa hàng, sản phẩm, nhân viên, và đơn hàng Bên cạnh đó, họ cũng có khả năng quản lý giao dịch và ví điện tử một cách hiệu quả.

Phía Quản trị viên bao gồm các nhiệm vụ quan trọng như thống kê doanh thu, theo dõi số lượng người đăng ký mới và cửa hàng mới Ngoài ra, quản lý người dùng, cửa hàng, sản phẩm, đơn hàng và giao dịch trên hệ thống cũng là một phần không thể thiếu Cuối cùng, quản lý các yếu tố khác như danh mục, phong cách, giao hàng, cấp độ và hoa hồng cũng được thực hiện để đảm bảo hoạt động hiệu quả.

1 Lý do chọn đề tài 7

2 Mục đích và nhiệm vụ của đề tài 7

3 Cách tiếp cận và phương pháp nghiên cứu 7

Chương 1: CƠ SỞ LÝ THUYẾT 9

1.2 Bộ công nghệ MERN stack 9

Chương 2: KHẢO SÁT HIỆN TRẠNG 21

Chương 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 25

3.1.4 Phía Quản trị viên (Admin) 26

3.2 Biểu đồ Use case (Use case Diagram) 28

3.2.4 Khôi phục mật khẩu (Password Recovery) 30

3.2.5 Tìm kiếm/Xem sản phẩm (Search/View products) 31

3.2.6 Tìm kiếm/Xem cửa hàng (Search/View stores) 32

3.2.7 Tìm kiếm/Xem người dùng (Search/View users) 33

3.2.8 Quản lý tài khoản (Account Management - Account) 34

3.2.9 Quản lý thông tin của tài khoản (Account Management - Profile) 35

3.2.10 Quản lý địa chỉ của tài khoản (Account Management - Address) 36

3.2.11 Quản lý đơn hàng của tài khoản (Account Management - Purchase) 37

3.2.14 Phản hồi, đánh giá (Review & rating) 39

3.2.15 Theo dõi sản phẩm (Follow/unfollow products) 40

3.2.16 Theo dõi cửa hàng (Follow/unfollow stores) 41

3.2.17 Tạo cửa hàng (Create store) 42

3.2.18 Quản lý các cửa hàng (Stores Management) 42

3.2.19 Quản lý thông tin của cửa hàng (Store Management – Profile) 43

3.2.20 Quản lý nhân viên của cửa hàng (Store Management – Staff) 45

3.2.21 Quản lý sản phẩm của cửa hàng (Store Management – Product) 46

3.2.22 Quản lý đơn hàng của cửa hàng (Store Management – Order) 47

3.2.23 Quản lý ví điện tử của cửa hàng (Store Management – Ewallet) 49

3.2.24 Thống kê doanh thu (Revenue statistics) 50

3.2.25 Thống kê người dùng mới (New users statistics) 50

3.2.26 Thống kê cửa hàng mới (New stores statistics) 51

3.2.27 Quản lý người dùng trong hệ thống (Users management) 52

3.2.28 Quản lý sản phẩm trong hệ thống (Products management) 52

3.2.29 Quản lý đơn hàng trong hệ thống (Orders management) 53

3.2.30 Quản lý loại sản phẩm (System management – Category) 54

3.2.31 Quản lý thuộc tính sản phẩm (System management – Style) 55

3.2.32 Quản lý cấp độ người dùng (System management – User level) 57

3.2.33 Quản lý cấp độ cửa hàng (System management – Store level) 58

3.2.34 Quản lý đơn vị vận chuyển (System management – Delivery unit) 59

3.2.35 Quản lý chính sách hoa hồng (System management – Commission) 60

3.2.36 Quản lý giao dịch trong hệ thống (System management – Transaction) 61

3.3 Biểu đồ Tuần tự (Sequence Diagram) 61

3.3.1 Sequence Diagram Đăng ký (Sign up) 61

3.3.2 Sequence Diagram Đăng nhập (Sign in) 62

3.3.3 Sequence Diagram Đăng xuất (Sign out) 63

3.3.4 Sequence Diagram Khôi phục mật khẩu (Password Recovery) 64

3.3.5 Sequence Diagram Tìm kiếm/Xem cửa hàng (Search/View stores) 65

3.3.6 Sequence Diagram Tìm kiếm/Xem sản phẩm (Search/View products) 66

3.3.7 Sequence Diagram Tìm kiếm/Xem người dùng (Search/View users) 66

3.3.8 Sequence Diagram Thay đổi mật khẩu (Change Password) 67

3.3.9 Sequence Diagram Quản lý thông tin của tài khoản (Account

3.3.10 Sequence Diagram Quản lý địa chỉ của tài khoản (Account Management - Address) 68

3.3.11 Sequence Diagram Quản lý đơn hàng của tài khoản (Account

3.3.12 Sequence Diagram Giỏ hàng (Cart) 70

3.3.13 Sequence Diagram Đặt hàng (Order) 71

3.3.14 Sequence Diagram Phản hồi, đánh giá (Review & rating) 72

3.3.15 Sequence Diagram Theo dõi sản phẩm (Follow/unfollow products) 73

3.3.16 Sequence Diagram Theo dõi cửa hàng (Follow/unfollow stores) 74

3.3.17 Sequence Diagram Tạo cửa hàng (Create store) 75

3.3.18 Sequence Diagram Quản lý các cửa hàng (Stores Management) 76

The article discusses various sequence diagrams related to store management, including the management of store profiles, staff, products, and orders Specifically, it covers the sequence diagram for managing store information, staff management, product management, and order management, each providing a structured approach to enhance operational efficiency in retail settings.

3.3.23 Sequence Diagram Quản lý ví điện tử của cửa hàng (Store Management –

3.3.24 Sequence Diagram Thống kê doanh thu (Revenue statistics) 82

3.3.25 Sequence Diagram Thống kê người dùng mới (New users statistics) 83

3.3.26 Sequence Diagram Quản lý người dùng trong hệ thống (Users management) 84

3.3.27 Sequence Diagram Quản lý sản phẩm trong hệ thống (Products management) 85

3.3.28 Sequence Diagram Quản lý đơn hàng trong hệ thống (Orders management) 85

3.3.29 Sequence Diagram Quản lý loại sản phẩm (System management – Category) 86

3.3.30 Sequence Diagram Quản lý thuộc tính sản phẩm (System management – Style) 87 3.3.31 Sequence Diagram Quản lý cấp độ người dùng (System management –

3.3.32 Sequence Diagram Quản lý đơn vị vận chuyển (System management –

3.3.33 Sequence Diagram Quản lý chính sách hoa hồng (System management – Commission) 90

3.3.34 Sequence Diagram Quản lý giao dịch trong hệ thống (System management – Transaction) 91

3.4 Biểu đồ Classs (Class Diagram) 92

3.5 Thiết kế Cơ sở dữ liệu 94

3.6.4 Phía Quản trị viên (Admin) 140

Chương 4: CÀI ĐẶT VÀ KIỂM THỬ 151

1 Những kết quả đạt được 163

Hình 1-1 Bộ công nghệ MERN stack 9

Hình 1-2 Kiến trúc hệ thống 11

Hình 1-3 Ví dụ tập dữ liệu 12

Hình 1-5 Cấu trúc file, folder back-end 13

Hình 1-8 Cấu trúc file, folder front-end 15

Hình 1-9 Kiến trúc Front-end 16

Hình 1-10 Các Reducer trong hệ thống 17

Hình 1-11 Cấu trúc file, folder mobile app 18

Hình 1-12 Kiến trúc mobile app 19

Hình 1-13 Các loại Navigation trong hệ thống 19

Hình 1-14 Các Context trong hệ thống 20

Hình 3-2 Sequence Diagram Đăng ký 62

Hình 3-3 Sequence Diagram Đăng nhập 63

Hình 3-4 Sequence Diagram Đăng xuất 64

Hình 3-5 Sequence Diagram Khôi phục mật khẩu 65

Hình 3-6 Sequence Diagram Tìm kiếm/Xem cửa hàng 65

Hình 3-7 Sequence Diagram Tìm kiếm/Xem sản phẩm 66

Hình 3-8 Sequence Diagram Tìm kiếm/Xem người dùng 67

Hình 3-9 Sequence Diagram Thay đổi mật khẩu 67

Hình 3-10 Sequence Diagram Quản lý thông tin của tài khoản 68

Hình 3-11 Sequence Diagram Quản lý địa chỉ của tài khoản 69

Hình 3-12 Sequence Diagram Quản lý đơn hàng của tài khoản 70

Hình 3-13 Sequence Diagram Giỏ hàng 71

Hình 3-14 Sequence Diagram Đặt hàng 72

Hình 3-15 Sequence Diagram Phản hồi, đánh giá 73

Hình 3-16 Sequence Diagram Theo dõi sản phẩm 74

Hình 3-17 Sequence Diagram Theo dõi cửa hàng 75

Hình 3-18 Sequence Diagram Tạo cửa hàng 75

Hình 3-19 Sequence Diagram Quản lý các cửa hàng 76

Hình 3-20 Sequence Diagram Quản lý các cửa hàng(1) 77

Hình 3-21 Sequence Diagram Quản lý thông tin của cửa hàng 78

Hình 3-22 Sequence Diagram Quản lý nhân viên của cửa hàng 79

Hình 3-23 Sequence Diagram Quản lý sản phẩm của cửa hàng 80

Hình 3-24 Sequence Diagram Quản lý đơn hàng của cửa hàng 81

Hình 3-25 Sequence Diagram Quản lý ví điện tử của cửa hàng 82

Hình 3-26 Sequence Diagram Thống kê doanh thu 83

Hình 3-27 Sequence Diagram Thống kê người dùng mới 84

Hình 3-28 Sequence Diagram Quản lý người dùng trong hệ thống 84

Hình 3-29 Sequence Diagram Quản lý sản phẩm trong hệ thống 85

Hình 3-30 Sequence Diagram Quản lý đơn hàng trong hệ thống 86

Hình 3-31 Sequence Diagram Quản lý loại sản phẩm 87

Hình 3-32 Sequence Diagram Quản lý thuộc tính sản phẩm 88

Hình 3-33 Sequence Diagram Quản lý cấp độ người dùng 89

Hình 3-34 Sequence Diagram Quản lý đơn vị vận chuyển 90

Hình 3-35 Sequence Diagram Quản lý chính sách hoa hồng 91

Hình 3-36 Sequence Diagram Quản lý giao dịch trong hệ thống 92

Hình 3-37 Biểu đồ Quan hệ thực thể 92

Hình 3-38 Giao diện trang Home phía Khách 112

Hình 3-39 Chức năng Đăng nhập 113

Hình 3-40 Chức năng Đăng ký 114

Hình 3-41 Chức năng tìm kiếm sản phẩm 115

Hình 3-42 Chức năng tìm kiếm sản phẩm (1) 115

Hình 3-43 Chức năng tìm kiếm theo loại sản phẩm 116

Hình 3-44 Chức năng tìm kiếm theo loại sản phẩm (1) 116

Hình 3-45 Chức năng tìm kiếm cửa hàng 117

Hình 3-46 Chức năng tìm kiếm người dùng 117

Hình 3-47 Giao diện trang Chi tiết sản phẩm phía Khách 119

Hình 3-48 Giao diện trang Home của cửa hàng 120

Hình 3-49 Giao diện trang Collection của cửa hàng 121

Hình 3-50 Giao diện trang Collection của cửa hàng (1) 121

Hình 3-51 Giao diện trang Review & Rating của cửa hàng 122

Hình 3-52 Giao diện trang About của cửa hàng 123

Hình 3-53 Giao diện trang Home của người dùng 123

Hình 3-54 Giao diện trang About của người dùng 124

Hình 3-55 Giao diện trang Home phía Người mua 125

Hình 3-56 Giao diện trang Chi tiết sản phẩm phía Người mua 127

Hình 3-57 Giao diện hệ thống trang của cửa hàng phía Người mua 128

Hình 3-58 Chức năng Giỏ hàng của Người mua 129

Hình 3-59 Chức năng Đặt hàng của Người mua 129

Hình 3-60 Giao diện trang Quản lý tài khoản, thông tin cá nhân 130

Hình 3-61 Giao diện trang Quản lý đơn hàng, lịch sử mua hàng 130

Hình 3-62 Giao diện trang Chi tiết đơn hàng 131

Hình 3-63 Giao diện trang Quản lý địa chỉ 131

Hình 3-64 Giao diện trang Bộ sưu tầm sản phẩm yêu thích 132

Hình 3-65 Giao diện trang Bộ sưu tầm cửa hàng yêu thích 132

Hình 3-66 Giao diện trang Quản lý ví điện tử phía Người mua 133

Hình 3-67 Giao diện trang Quản lý tổng hợp cửa hàng 134

Hình 3-68 Giao diện trang Thống kê doanh thu phía Người bán 134

Hình 3-69 Giao diện trang Thống kê doanh thu phía Người bán (1) 135

Hình 3-70 Giao diện trang Quản lý thông tin cửa hàng 136

Hình 3-71 Giao diện trang Quản lý sản phẩm của cửa hàng 137

Hình 3-72 Giao diện trang Quản lý sản phẩm của cửa hàng (1) 137

Hình 3-73 Giao diện trang Quản lý nhân viên của cửa hàng 138

Hình 3-74 Giao diện trang Quản lý nhân viên của cửa hàng (1) 138

Hình 3-75 Giao diện trang Quản lý đơn hàng của cửa hàng 139

Hình 3-76 Giao diện trang Quản lý đơn hàng của cửa hàng (1) 139

Hình 3-77 Giao diện trang Chi tiết đơn hàng phía Người bán 140

Hình 3-78 Giao diện trang Quản lý ví điện tử của cửa hàng 140

Hình 3-79 Giao diện trang Thống kê doanh thu phía Quản trị viên 141

Hình 3-80 Giao diện trang Thống kê doanh thu phía Quản trị viên (1) 141

Hình 3-81 Giao diện Thống kê cửa hàng mới phía Quản trị viên 142

Hình 3-82 Giao diện Thống kê người dùng mới phía Quản trị viên 142

Hình 3-83 Giao diện trang Quản lý người dùng phía Quản trị viên 143

Hình 3-84 Giao diện trang Quản lý cửa hàng phía Quản trị viên 143

Hình 3-85 Giao diện trang Quản lý cửa hàng phía Quản trị viên (1) 144

Hình 3-86 Giao diện trang Quản lý đơn hàng phía Quản trị viên 144

Hình 3-87 Giao diện trang Quản lý đơn hàng phía Quản trị viên (1) 145

Hình 3-88 Giao diện trang Chi tiết đơn hàng phía Quản trị viên 145

Hình 3-89 Giao diện trang Quản lý giao dịch phía Quản trị viên 146

Hình 3-90 Giao diện trang Quản lý loại sản phẩm phía Quản trị viên 146

Hình 3-91 Giao diện trang Quản lý thuộc tính sản phẩm phía Quản trị viên 147

Hình 3-92 Giao diện trang Quản lý sản phẩm phía Quản trị viên 147

Hình 3-93 Giao diện trang Quản lý sản phẩm phía Quản trị viên (1) 148

Hình 3-94 Giao diện trang Quản lý cấp độ người dùng phía Quản trị viên 148

Hình 3-95 Giao diện trang Quản lý cấp độ cửa hàng phía Quản trị viên 149

Hình 3-96 Giao diện trang Quản lý chính sách hoa hồng phía Quản trị viên 149

Hình 3-97 Giao diện trang Quản lý đơn vị vận chuyển phía Quản trị viên 150

Bảng 3-1 Chức năng phía Khách 25

Bảng 3-2 Chức năng phía Người mua 25

Bảng 3-3 Chức năng phía Người bán 26

Bảng 3-4 Chức năng phía Quản trị viên 27

Bảng 3-5 Use case Đăng ký 29

Bảng 3-6 Use case Đăng nhập 29

Bảng 3-7 Use case Đăng xuất 30

Bảng 3-8 Use case Khôi phục mật khẩu 31

Bảng 3-9 Use case Tìm kiếm/Xem sản phẩm 32

Bảng 3-10 Use case Tìm kiếm/Xem cửa hàng 33

Bảng 3-11 Use case Tìm kiếm/Xem người dùng 34

Bảng 3-12 Use case Quản lý tài khoản 35

Bảng 3-13 Use case Quản lý thông tin của tài khoản 36

Bảng 3-14 Use case Quản lý địa chỉ của tài khoản 37

Bảng 3-15 Use case Quản lý đơn hàng của tài khoản 38

Bảng 3-16 Use case Giỏ hàng 38

Bảng 3-17 Use case Đặt hàng 39

Bảng 3-18 Use case Phản hồi, đánh giá 40

Bảng 3-19 Use case Theo dõi sản phẩm 41

Bảng 3-20 Use case Theo dõi cửa hàng 42

Bảng 3-21 Use case Tạo cửa hàng 42

Bảng 3-22 Use case Quản lý các cửa hàng 43

Bảng 3-23 Use case Quản lý thông tin của cửa hàng 45

Bảng 3-24 Use case Quản lý nhân viên của cửa hàng 46

Bảng 3-25 Use case Quản lý sản phẩm của cửa hàng 47

Bảng 3-26 Use case Quản lý đơn hàng của cửa hàng 48

Bảng 3-27 Use case Quản lý ví điện tử của cửa hàng 49

Bảng 3-28 Use case Thống kê doanh thu 50

Bảng 3-29 Use case Thống kê người dùng mới 51

Bảng 3-30 Use case Thống kê cửa hàng mới 52

The article outlines various use cases and tables related to user management, product management, order management, and more within a system Key use cases include managing users, products, orders, product types, product attributes, user levels, store levels, shipping units, commission policies, and transactions Additionally, it lists tables such as User, UserLevel, Store, StoreLevel, Commission, Category, Style, StyleValue, Product, Delivery, UserFollowStore, UserFollowProduct, Review, Order, OrderItem, Cart, CartItem, and Transaction The document also includes a section on test cases, providing a comprehensive overview of the system's functionalities and data structures.

1 Lý do chọn đề tài

Thị trường thương mại điện tử tại Việt Nam đang phát triển mạnh mẽ và sôi động, với tiềm năng vươn lên dẫn đầu khu vực Đông Nam Á trong tương lai gần, theo báo cáo từ trang Fibre2fashion.

Mặc dù phát triển mạnh mẽ, hệ thống thương mại điện tử vẫn là một thách thức lớn đối với sinh viên công nghệ Yêu cầu về bộ công nghệ MERN stack, mà chúng tôi chưa được tiếp xúc trong chương trình học, càng làm tăng độ khó Tuy nhiên, những khó khăn này lại kích thích sự hào hứng của nhóm, vì chúng tôi sẽ thu được nhiều kiến thức và trải nghiệm thú vị trong quá trình thực hiện đề tài này.

2 Mục đích và nhiệm vụ của đề tài

- Tìm hiểu bộ công nghệ MERN stack

- Xây dựng hệ thống thương mại điện tử

- Tìm hiểu về bộ công nghệ MERN stack

- Tìm hiểu về cách xây dựng một hệ thống thương mại điện tử

- Tiến hành xây dựng hệ thống

- Tiếp tục cải thiện, phát triển hệ thống, xây dựng ứng dụng đa nền tảng

3 Cách tiếp cận và phương pháp nghiên cứu

- Tìm hiểu các cơ sở lý thuyết với những tài liệu về MERN stack tại các website chính thức của chúng, các khóa học trên Udemy và Youtube

- Tiến hành khảo sát, nghiên cứu các hệ thống thương mại điện tử phổ biến ở Việt Nam như Shopee, Tiki, Lazada và quốc tế như Etsy

- Lên kế hoạch xây dựng hệ thống

- Thực hiện theo kế hoạch, bên cạnh tiếp tục nghiên cứu cơ sở lý thuyết và khảo sát thực tế

- Đối với những khó khăn, nhóm sẽ tìm kiếm giải pháp qua mạng và trao đổi với Giảng viên hướng dẫn

CƠ SỞ LÝ THUYẾT

Bộ công nghệ MERN stack

KHẢO SÁT HIỆN TRẠNG

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

Phân tích chức năng

3.1.4 Phía Quản trị viên (Admin)

3.3 Biểu đồ Use case (Use case Diagram)

3.3 Biểu đồ Tuần tự (Sequence Diagram)

3.4 Biểu đồ Class (Class Diagram)

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

3.6.4 Phía Quản trị viên (Admin)

4 Chương 4: Cài đặt và kiểm thử

1 Những kết quả đạt được

STT Thời gian Công việc Ghi chú

Nghiên cứu cơ sở lý thuyết, khảo sát hiện trạng, phân tích và thiết kế hệ thống Đã hoàn thành

Xây dựng cấu trúc hệ thống, thiết lập môi trường, cài đặt phần mềm Đã hoàn thành

Xây dựng hệ thống phía Khách, Người mua Đã hoàn thành

Xây dựng hệ thống phía Người bán Đã hoàn thành

Kiểm thử, sửa lỗi, hoàn thiện Đã hoàn thành

Viết báo cáo Đã hoàn thành

Người viết đề cương Đặng Văn Nghĩa Ý kiến của Giảng viên hướng dẫn

(ký và ghi rõ họ tên)

Chúng tôi xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, đã tạo điều kiện thuận lợi cho việc học tập, nghiên cứu và thực hiện đề tài này.

Chúng tôi xin chân thành cảm ơn ThS Nguyễn Hữu Trung, giảng viên hướng dẫn, vì đã tận tình chia sẻ và hỗ trợ nhóm trong suốt quá trình thực hiện bài Khóa luận tốt nghiệp, giúp chúng tôi có đủ kiến thức để áp dụng hiệu quả.

Trong quá trình thực hiện đề tài, nhóm nhận thấy rằng do hạn chế về kiến thức, kinh nghiệm và kỹ thuật chuyên môn, việc xảy ra sai sót là điều không thể tránh khỏi Chúng tôi rất mong nhận được sự quan tâm, ý kiến đóng góp và nhận xét công tâm từ Hội đồng, các Giảng viên hướng dẫn và Giảng viên phản biện.

Xin chân thành cảm ơn

Sàn giao dịch thương mại điện tử là hệ thống website cho phép thương nhân, tổ chức và cá nhân không phải chủ sở hữu thực hiện quy trình mua bán hàng hóa và dịch vụ qua Internet Hình thức này đang phát triển mạnh mẽ và có khả năng thay thế các cửa hàng truyền thống trong tương lai Một số ví dụ thành công trong lĩnh vực này bao gồm Shopee, Lazada và Tiki.

Nhóm đã quyết định xây dựng một hệ thống thương mại điện tử dưới dạng sàn giao dịch, sử dụng công nghệ MERN stack, với đầy đủ các chức năng chính.

1 Phía Khách a) Đăng ký tài khoản b) Tìm kiếm, xem danh sách, chi tiết sản phẩm, cửa hàng, người dùng khác

2 Phía Người mua a) Đặng nhập, đăng xuất, quên mật khẩu b) Quản lý tài khoản, giỏ hàng, đơn hàng c) Theo dõi sản phẩm, cửa hàng yêu thích d) Đặt hàng, thanh toán, phản hồi, đánh giá

3 Phía Người bán a) Tạo cửa hàng b) Thống kê doanh thu c) Quản lý cửa hàng, thông tin cửa hàng, sản phẩm, nhân viên, đơn hàng d) Quản lý giao dịch, ví điện tử

4 Phía Quản trị viên a) Thống kê doanh thu b) Thống kê người đăng ký mới, cửa hàng mới c) Quản lý người dùng, cửa hàng, sản phẩm, đơn hàng, giao dịch trên hệ thống d) Quản lý khác (category, style, deliver y, level, commission…)

1 Lý do chọn đề tài 7

2 Mục đích và nhiệm vụ của đề tài 7

3 Cách tiếp cận và phương pháp nghiên cứu 7

Chương 1: CƠ SỞ LÝ THUYẾT 9

1.2 Bộ công nghệ MERN stack 9

Chương 2: KHẢO SÁT HIỆN TRẠNG 21

Chương 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 25

3.1.4 Phía Quản trị viên (Admin) 26

3.2 Biểu đồ Use case (Use case Diagram) 28

3.2.4 Khôi phục mật khẩu (Password Recovery) 30

3.2.5 Tìm kiếm/Xem sản phẩm (Search/View products) 31

3.2.6 Tìm kiếm/Xem cửa hàng (Search/View stores) 32

3.2.7 Tìm kiếm/Xem người dùng (Search/View users) 33

3.2.8 Quản lý tài khoản (Account Management - Account) 34

3.2.9 Quản lý thông tin của tài khoản (Account Management - Profile) 35

3.2.10 Quản lý địa chỉ của tài khoản (Account Management - Address) 36

3.2.11 Quản lý đơn hàng của tài khoản (Account Management - Purchase) 37

3.2.14 Phản hồi, đánh giá (Review & rating) 39

3.2.15 Theo dõi sản phẩm (Follow/unfollow products) 40

3.2.16 Theo dõi cửa hàng (Follow/unfollow stores) 41

3.2.17 Tạo cửa hàng (Create store) 42

3.2.18 Quản lý các cửa hàng (Stores Management) 42

3.2.19 Quản lý thông tin của cửa hàng (Store Management – Profile) 43

3.2.20 Quản lý nhân viên của cửa hàng (Store Management – Staff) 45

3.2.21 Quản lý sản phẩm của cửa hàng (Store Management – Product) 46

3.2.22 Quản lý đơn hàng của cửa hàng (Store Management – Order) 47

3.2.23 Quản lý ví điện tử của cửa hàng (Store Management – Ewallet) 49

3.2.24 Thống kê doanh thu (Revenue statistics) 50

3.2.25 Thống kê người dùng mới (New users statistics) 50

3.2.26 Thống kê cửa hàng mới (New stores statistics) 51

3.2.27 Quản lý người dùng trong hệ thống (Users management) 52

3.2.28 Quản lý sản phẩm trong hệ thống (Products management) 52

3.2.29 Quản lý đơn hàng trong hệ thống (Orders management) 53

3.2.30 Quản lý loại sản phẩm (System management – Category) 54

3.2.31 Quản lý thuộc tính sản phẩm (System management – Style) 55

3.2.32 Quản lý cấp độ người dùng (System management – User level) 57

3.2.33 Quản lý cấp độ cửa hàng (System management – Store level) 58

3.2.34 Quản lý đơn vị vận chuyển (System management – Delivery unit) 59

3.2.35 Quản lý chính sách hoa hồng (System management – Commission) 60

3.2.36 Quản lý giao dịch trong hệ thống (System management – Transaction) 61

3.3 Biểu đồ Tuần tự (Sequence Diagram) 61

3.3.1 Sequence Diagram Đăng ký (Sign up) 61

3.3.2 Sequence Diagram Đăng nhập (Sign in) 62

3.3.3 Sequence Diagram Đăng xuất (Sign out) 63

3.3.4 Sequence Diagram Khôi phục mật khẩu (Password Recovery) 64

3.3.5 Sequence Diagram Tìm kiếm/Xem cửa hàng (Search/View stores) 65

3.3.6 Sequence Diagram Tìm kiếm/Xem sản phẩm (Search/View products) 66

3.3.7 Sequence Diagram Tìm kiếm/Xem người dùng (Search/View users) 66

3.3.8 Sequence Diagram Thay đổi mật khẩu (Change Password) 67

3.3.9 Sequence Diagram Quản lý thông tin của tài khoản (Account

3.3.10 Sequence Diagram Quản lý địa chỉ của tài khoản (Account Management - Address) 68

3.3.11 Sequence Diagram Quản lý đơn hàng của tài khoản (Account

3.3.12 Sequence Diagram Giỏ hàng (Cart) 70

3.3.13 Sequence Diagram Đặt hàng (Order) 71

3.3.14 Sequence Diagram Phản hồi, đánh giá (Review & rating) 72

3.3.15 Sequence Diagram Theo dõi sản phẩm (Follow/unfollow products) 73

3.3.16 Sequence Diagram Theo dõi cửa hàng (Follow/unfollow stores) 74

3.3.17 Sequence Diagram Tạo cửa hàng (Create store) 75

3.3.18 Sequence Diagram Quản lý các cửa hàng (Stores Management) 76

3.3.19 Sequence Diagram Quản lý thông tin của cửa hàng (Store Management – Profile) 77 3.3.20 Sequence Diagram Quản lý nhân viên của cửa hàng (Store Management – Staff) 78 3.3.21 Sequence Diagram Quản lý sản phẩm của cửa hàng (Store Management – Product) 79 3.3.22 Sequence Diagram Quản lý đơn hàng của cửa hàng (Store Management – Order) 80

3.3.23 Sequence Diagram Quản lý ví điện tử của cửa hàng (Store Management –

3.3.24 Sequence Diagram Thống kê doanh thu (Revenue statistics) 82

3.3.25 Sequence Diagram Thống kê người dùng mới (New users statistics) 83

3.3.26 Sequence Diagram Quản lý người dùng trong hệ thống (Users management) 84

3.3.27 Sequence Diagram Quản lý sản phẩm trong hệ thống (Products management) 85

3.3.28 Sequence Diagram Quản lý đơn hàng trong hệ thống (Orders management) 85

3.3.29 Sequence Diagram Quản lý loại sản phẩm (System management – Category) 86

3.3.30 Sequence Diagram Quản lý thuộc tính sản phẩm (System management – Style) 87 3.3.31 Sequence Diagram Quản lý cấp độ người dùng (System management –

3.3.32 Sequence Diagram Quản lý đơn vị vận chuyển (System management –

3.3.33 Sequence Diagram Quản lý chính sách hoa hồng (System management – Commission) 90

3.3.34 Sequence Diagram Quản lý giao dịch trong hệ thống (System management – Transaction) 91

3.4 Biểu đồ Classs (Class Diagram) 92

3.5 Thiết kế Cơ sở dữ liệu 94

3.6.4 Phía Quản trị viên (Admin) 140

Chương 4: CÀI ĐẶT VÀ KIỂM THỬ 151

1 Những kết quả đạt được 163

Hình 1-1 Bộ công nghệ MERN stack 9

Hình 1-2 Kiến trúc hệ thống 11

Hình 1-3 Ví dụ tập dữ liệu 12

Hình 1-5 Cấu trúc file, folder back-end 13

Hình 1-8 Cấu trúc file, folder front-end 15

Hình 1-9 Kiến trúc Front-end 16

Hình 1-10 Các Reducer trong hệ thống 17

Hình 1-11 Cấu trúc file, folder mobile app 18

Hình 1-12 Kiến trúc mobile app 19

Hình 1-13 Các loại Navigation trong hệ thống 19

Hình 1-14 Các Context trong hệ thống 20

Hình 3-2 Sequence Diagram Đăng ký 62

Hình 3-3 Sequence Diagram Đăng nhập 63

Hình 3-4 Sequence Diagram Đăng xuất 64

Hình 3-5 Sequence Diagram Khôi phục mật khẩu 65

Hình 3-6 Sequence Diagram Tìm kiếm/Xem cửa hàng 65

Hình 3-7 Sequence Diagram Tìm kiếm/Xem sản phẩm 66

Hình 3-8 Sequence Diagram Tìm kiếm/Xem người dùng 67

Hình 3-9 Sequence Diagram Thay đổi mật khẩu 67

Hình 3-10 Sequence Diagram Quản lý thông tin của tài khoản 68

Hình 3-11 Sequence Diagram Quản lý địa chỉ của tài khoản 69

Hình 3-12 Sequence Diagram Quản lý đơn hàng của tài khoản 70

Hình 3-13 Sequence Diagram Giỏ hàng 71

Hình 3-14 Sequence Diagram Đặt hàng 72

Hình 3-15 Sequence Diagram Phản hồi, đánh giá 73

Hình 3-16 Sequence Diagram Theo dõi sản phẩm 74

Hình 3-17 Sequence Diagram Theo dõi cửa hàng 75

Hình 3-18 Sequence Diagram Tạo cửa hàng 75

Hình 3-19 Sequence Diagram Quản lý các cửa hàng 76

Hình 3-20 Sequence Diagram Quản lý các cửa hàng(1) 77

Hình 3-21 Sequence Diagram Quản lý thông tin của cửa hàng 78

Hình 3-22 Sequence Diagram Quản lý nhân viên của cửa hàng 79

Hình 3-23 Sequence Diagram Quản lý sản phẩm của cửa hàng 80

Hình 3-24 Sequence Diagram Quản lý đơn hàng của cửa hàng 81

Hình 3-25 Sequence Diagram Quản lý ví điện tử của cửa hàng 82

Hình 3-26 Sequence Diagram Thống kê doanh thu 83

Hình 3-27 Sequence Diagram Thống kê người dùng mới 84

Hình 3-28 Sequence Diagram Quản lý người dùng trong hệ thống 84

Hình 3-29 Sequence Diagram Quản lý sản phẩm trong hệ thống 85

Hình 3-30 Sequence Diagram Quản lý đơn hàng trong hệ thống 86

Hình 3-31 Sequence Diagram Quản lý loại sản phẩm 87

Hình 3-32 Sequence Diagram Quản lý thuộc tính sản phẩm 88

Hình 3-33 Sequence Diagram Quản lý cấp độ người dùng 89

Hình 3-34 Sequence Diagram Quản lý đơn vị vận chuyển 90

Hình 3-35 Sequence Diagram Quản lý chính sách hoa hồng 91

Hình 3-36 Sequence Diagram Quản lý giao dịch trong hệ thống 92

Hình 3-37 Biểu đồ Quan hệ thực thể 92

Hình 3-38 Giao diện trang Home phía Khách 112

Hình 3-39 Chức năng Đăng nhập 113

Hình 3-40 Chức năng Đăng ký 114

Hình 3-41 Chức năng tìm kiếm sản phẩm 115

Hình 3-42 Chức năng tìm kiếm sản phẩm (1) 115

Hình 3-43 Chức năng tìm kiếm theo loại sản phẩm 116

Hình 3-44 Chức năng tìm kiếm theo loại sản phẩm (1) 116

Hình 3-45 Chức năng tìm kiếm cửa hàng 117

Hình 3-46 Chức năng tìm kiếm người dùng 117

Hình 3-47 Giao diện trang Chi tiết sản phẩm phía Khách 119

Hình 3-48 Giao diện trang Home của cửa hàng 120

Hình 3-49 Giao diện trang Collection của cửa hàng 121

Hình 3-50 Giao diện trang Collection của cửa hàng (1) 121

Hình 3-51 Giao diện trang Review & Rating của cửa hàng 122

Hình 3-52 Giao diện trang About của cửa hàng 123

Hình 3-53 Giao diện trang Home của người dùng 123

Hình 3-54 Giao diện trang About của người dùng 124

Hình 3-55 Giao diện trang Home phía Người mua 125

Hình 3-56 Giao diện trang Chi tiết sản phẩm phía Người mua 127

Hình 3-57 Giao diện hệ thống trang của cửa hàng phía Người mua 128

Hình 3-58 Chức năng Giỏ hàng của Người mua 129

Hình 3-59 Chức năng Đặt hàng của Người mua 129

Hình 3-60 Giao diện trang Quản lý tài khoản, thông tin cá nhân 130

Hình 3-61 Giao diện trang Quản lý đơn hàng, lịch sử mua hàng 130

Hình 3-62 Giao diện trang Chi tiết đơn hàng 131

Hình 3-63 Giao diện trang Quản lý địa chỉ 131

Hình 3-64 Giao diện trang Bộ sưu tầm sản phẩm yêu thích 132

Hình 3-65 Giao diện trang Bộ sưu tầm cửa hàng yêu thích 132

Hình 3-66 Giao diện trang Quản lý ví điện tử phía Người mua 133

Hình 3-67 Giao diện trang Quản lý tổng hợp cửa hàng 134

Hình 3-68 Giao diện trang Thống kê doanh thu phía Người bán 134

Hình 3-69 Giao diện trang Thống kê doanh thu phía Người bán (1) 135

Hình 3-70 Giao diện trang Quản lý thông tin cửa hàng 136

Hình 3-71 Giao diện trang Quản lý sản phẩm của cửa hàng 137

Hình 3-72 Giao diện trang Quản lý sản phẩm của cửa hàng (1) 137

Hình 3-73 Giao diện trang Quản lý nhân viên của cửa hàng 138

Hình 3-74 Giao diện trang Quản lý nhân viên của cửa hàng (1) 138

Hình 3-75 Giao diện trang Quản lý đơn hàng của cửa hàng 139

Hình 3-76 Giao diện trang Quản lý đơn hàng của cửa hàng (1) 139

Hình 3-77 Giao diện trang Chi tiết đơn hàng phía Người bán 140

Hình 3-78 Giao diện trang Quản lý ví điện tử của cửa hàng 140

Hình 3-79 Giao diện trang Thống kê doanh thu phía Quản trị viên 141

Hình 3-80 Giao diện trang Thống kê doanh thu phía Quản trị viên (1) 141

Hình 3-81 Giao diện Thống kê cửa hàng mới phía Quản trị viên 142

Hình 3-82 Giao diện Thống kê người dùng mới phía Quản trị viên 142

Hình 3-83 Giao diện trang Quản lý người dùng phía Quản trị viên 143

Hình 3-84 Giao diện trang Quản lý cửa hàng phía Quản trị viên 143

Hình 3-85 Giao diện trang Quản lý cửa hàng phía Quản trị viên (1) 144

Hình 3-86 Giao diện trang Quản lý đơn hàng phía Quản trị viên 144

Hình 3-87 Giao diện trang Quản lý đơn hàng phía Quản trị viên (1) 145

Hình 3-88 Giao diện trang Chi tiết đơn hàng phía Quản trị viên 145

Hình 3-89 Giao diện trang Quản lý giao dịch phía Quản trị viên 146

Hình 3-90 Giao diện trang Quản lý loại sản phẩm phía Quản trị viên 146

Hình 3-91 Giao diện trang Quản lý thuộc tính sản phẩm phía Quản trị viên 147

Hình 3-92 Giao diện trang Quản lý sản phẩm phía Quản trị viên 147

Hình 3-93 Giao diện trang Quản lý sản phẩm phía Quản trị viên (1) 148

Hình 3-94 Giao diện trang Quản lý cấp độ người dùng phía Quản trị viên 148

Hình 3-95 Giao diện trang Quản lý cấp độ cửa hàng phía Quản trị viên 149

Hình 3-96 Giao diện trang Quản lý chính sách hoa hồng phía Quản trị viên 149

Hình 3-97 Giao diện trang Quản lý đơn vị vận chuyển phía Quản trị viên 150

Bảng 3-1 Chức năng phía Khách 25

Bảng 3-2 Chức năng phía Người mua 25

Bảng 3-3 Chức năng phía Người bán 26

Bảng 3-4 Chức năng phía Quản trị viên 27

Bảng 3-5 Use case Đăng ký 29

Bảng 3-6 Use case Đăng nhập 29

Bảng 3-7 Use case Đăng xuất 30

Bảng 3-8 Use case Khôi phục mật khẩu 31

Bảng 3-9 Use case Tìm kiếm/Xem sản phẩm 32

Bảng 3-10 Use case Tìm kiếm/Xem cửa hàng 33

Bảng 3-11 Use case Tìm kiếm/Xem người dùng 34

Bảng 3-12 Use case Quản lý tài khoản 35

Bảng 3-13 Use case Quản lý thông tin của tài khoản 36

Bảng 3-14 Use case Quản lý địa chỉ của tài khoản 37

Bảng 3-15 Use case Quản lý đơn hàng của tài khoản 38

Bảng 3-16 Use case Giỏ hàng 38

Bảng 3-17 Use case Đặt hàng 39

Bảng 3-18 Use case Phản hồi, đánh giá 40

Bảng 3-19 Use case Theo dõi sản phẩm 41

Bảng 3-20 Use case Theo dõi cửa hàng 42

Bảng 3-21 Use case Tạo cửa hàng 42

Bảng 3-22 Use case Quản lý các cửa hàng 43

Bảng 3-23 Use case Quản lý thông tin của cửa hàng 45

Bảng 3-24 Use case Quản lý nhân viên của cửa hàng 46

Bảng 3-25 Use case Quản lý sản phẩm của cửa hàng 47

Bảng 3-26 Use case Quản lý đơn hàng của cửa hàng 48

Bảng 3-27 Use case Quản lý ví điện tử của cửa hàng 49

Bảng 3-28 Use case Thống kê doanh thu 50

Bảng 3-29 Use case Thống kê người dùng mới 51

Bảng 3-30 Use case Thống kê cửa hàng mới 52

The article outlines various use cases and tables related to user management, product management, order management, and more within a system Key use cases include managing users, products, orders, product types, product attributes, user levels, store levels, shipping units, commission policies, and transactions Additionally, it lists tables such as User, UserLevel, Store, StoreLevel, Commission, Category, Style, StyleValue, Product, Delivery, UserFollowStore, UserFollowProduct, Review, Order, OrderItem, Cart, CartItem, and Transaction The document also includes a section on test cases, providing a comprehensive overview of the system's functionalities and data structures.

1 Lý do chọn đề tài

Thị trường thương mại điện tử tại Việt Nam đang phát triển mạnh mẽ và sôi động, được dự báo sẽ vươn lên dẫn đầu khu vực Đông Nam Á trong thời gian tới, theo báo cáo từ trang Fibre2fashion.

Mặc dù thương mại điện tử đang phát triển mạnh mẽ, nhưng đối với sinh viên công nghệ, đây vẫn là một thách thức lớn Yêu cầu về bộ công nghệ MERN stack, mà chúng tôi chưa được tiếp xúc trong chương trình học, càng làm tăng độ khó Tuy nhiên, những khó khăn này lại kích thích sự hào hứng của nhóm, vì chúng tôi sẽ có cơ hội học hỏi và khám phá nhiều kiến thức thú vị trong quá trình thực hiện đề tài này.

2 Mục đích và nhiệm vụ của đề tài

- Tìm hiểu bộ công nghệ MERN stack

- Xây dựng hệ thống thương mại điện tử

- Tìm hiểu về bộ công nghệ MERN stack

- Tìm hiểu về cách xây dựng một hệ thống thương mại điện tử

- Tiến hành xây dựng hệ thống

- Tiếp tục cải thiện, phát triển hệ thống, xây dựng ứng dụng đa nền tảng

3 Cách tiếp cận và phương pháp nghiên cứu

- Tìm hiểu các cơ sở lý thuyết với những tài liệu về MERN stack tại các website chính thức của chúng, các khóa học trên Udemy và Youtube

- Tiến hành khảo sát, nghiên cứu các hệ thống thương mại điện tử phổ biến ở Việt Nam như Shopee, Tiki, Lazada và quốc tế như Etsy

- Lên kế hoạch xây dựng hệ thống

- Thực hiện theo kế hoạch, bên cạnh tiếp tục nghiên cứu cơ sở lý thuyết và khảo sát thực tế

- Đối với những khó khăn, nhóm sẽ tìm kiếm giải pháp qua mạng và trao đổi với Giảng viên hướng dẫn

- Về kiến thức: Hiểu về thành phần, cấu trúc, cách hoạt động của bộ công nghệ MERN stack

Xây dựng hệ thống thương mại điện tử GoodDeal bao gồm một website cho PC và một ứng dụng Android cho di động, với đầy đủ các chức năng cần thiết.

Chương 1: CƠ SỞ LÝ THUYẾT

JavaScript là ngôn ngữ lập trình phổ biến nhất trên thế giới trong suốt 20 năm qua

Nó cũng là một trong số 3 ngôn ngữ chính của lập trình Web, được phát triển bởi Brendan Eich tại hãng truyền thông Netscape

JavaScript là một ngôn ngữ lập trình bậc cao, tương tự như C/C++, Java và Python, với đặc điểm là ngôn ngữ lập trình kiểu động Nó được tối ưu hóa để nâng cao hiệu suất làm việc cho lập trình viên Từ "script" trong tên gọi cho thấy JavaScript là ngôn ngữ lập trình kịch bản, nghĩa là nó được dịch tại thời điểm chạy Ngoài ra, JavaScript còn là ngôn ngữ dựa trên hướng đối tượng và nguyên mẫu.

1.2 Bộ công nghệ MERN stack

MERN là bộ công nghệ bao gồm MongoDB, Express.js, React.js và Node.js, tất cả đều sử dụng JavaScript Với MERN stack, việc xây dựng kiến trúc 3 tầng hoàn toàn bằng JavaScript và JSON trở nên dễ dàng, bao gồm tầng Hiển thị Front-end (React.js), tầng Ứng dụng Back-end (Express.js và Node.js) và tầng Cơ sở dữ liệu (MongoDB).

Hình 1-1 Bộ công nghệ MERN stack

Biểu đồ Classs (Class Diagram)

3.3 Biểu đồ Tuần tự (Sequence Diagram)

3.4 Biểu đồ Class (Class Diagram)

CÀI ĐẶT VÀ KIỂM THỬ

Kiểm thử

Ưu điểm

4 Đề nghị cho phản biện hay không?

TP Hồ Chí Minh, ngày……tháng……năm 2022

Họ tên sinh viên 1: Nguyễn Thị Bích Phương MSSV 1: 18110341

Họ tên sinh viên 2: Đặng Văn Nghĩa MSSV 2: 18110325

Chuyên ngành: Công nghệ phần mềm

Tên đề tài: ÂY DỰNG HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ SỬ DỤNG MERN

PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ĐẠI HỌC SƯ PHẠM KỸ THUẬT

TP HỒ CHÍ MINH KHOA 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

PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN

Họ tên sinh viên 1: Nguyễn Thị Bích Phương MSSV 1: 18110341

Họ tên sinh viên 2: Đặng Văn Nghĩa MSSV 2: 18110325

Chuyên ngành: Công nghệ phần mềm

Tên đề tài: XÂY DỰNG HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ SỬ DỤNG MERN

Họ và tên giảng viên phản biện: ThS Mai Anh Thơ

7 Về nội dung đề tài và khối công việc thực hiện:

10 Đề nghị cho phản biện hay không?

TP Hồ Chí Minh, ngày……tháng……năm 2022

Giảng viên phản biện ĐẠI HỌC SƯ PHẠM KỸ THUẬT

TP HỒ CHÍ MINH KHOA 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 LUẬN VĂN TỐT NGHIỆP

Họ và tên Sinh viên 1: Nguyễn Thị Bích Phương Mã Số SV: 18110341

Họ và tên Sinh viên 2: Đặng Văn Nghĩa Mã Số SV: 18110325 Thời gian làm luận văn: Từ: 14/02/2022 Đến: 30/06/2022

Chuyên ngành: Công nghệ phần mềm

Tên đề tài: XÂY DỰNG HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ SỬ DỤNG

Giảng viên hướng dẫn: ThS Nguyễn Hữu Trung

Nhiệm vụ của đề tài:

1 Tìm hiểu bộ công nghệ MERN

2 Xây dựng hệ thống thương mại điện tử Đề cương viết luận văn:

1 Tính cấp thiết của đề tài

2 Mục đích của đề tài

3 Cách tiếp cận và phương pháp nghiên cứu

4 Phân tích những công trình có liên quan

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

1 Chương 1: Cơ sở lý thuyết

1.2 Bộ công nghệ MERN stack

2 Chương 2: Khảo sát hiện trạng

3 Chương 3: Phân tích và thiết kế hệ thống 3.1 Phân tích chức năng

3.1.4 Phía Quản trị viên (Admin)

3.3 Biểu đồ Use case (Use case Diagram)

3.3 Biểu đồ Tuần tự (Sequence Diagram)

3.4 Biểu đồ Class (Class Diagram)

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

3.6.4 Phía Quản trị viên (Admin)

4 Chương 4: Cài đặt và kiểm thử

1 Những kết quả đạt được

STT Thời gian Công việc Ghi chú

Nghiên cứu cơ sở lý thuyết, khảo sát hiện trạng, phân tích và thiết kế hệ thống Đã hoàn thành

Xây dựng cấu trúc hệ thống, thiết lập môi trường, cài đặt phần mềm Đã hoàn thành

Xây dựng hệ thống phía Khách, Người mua Đã hoàn thành

Xây dựng hệ thống phía Người bán Đã hoàn thành

Kiểm thử, sửa lỗi, hoàn thiện Đã hoàn thành

Viết báo cáo Đã hoàn thành

Người viết đề cương Đặng Văn Nghĩa Ý kiến của Giảng viên hướng dẫn

(ký và ghi rõ họ tên)

Chúng tôi xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, đã tạo điều kiện thuận lợi cho việc học tập, nghiên cứu và thực hiện đề tài này.

Chúng tôi xin chân thành cảm ơn ThS Nguyễn Hữu Trung, giảng viên hướng dẫn, người đã nhiệt tình chia sẻ và hỗ trợ nhóm, giúp chúng tôi trang bị đủ kiến thức để áp dụng vào bài Khóa luận tốt nghiệp.

Trong quá trình thực hiện đề tài, nhóm nhận thấy rằng do hạn chế về kiến thức, kinh nghiệm và kỹ thuật chuyên môn, việc xảy ra sai sót là điều không thể tránh khỏi Chúng tôi rất mong nhận được sự quan tâm, ý kiến đóng góp và nhận xét công tâm từ Hội đồng, các Giảng viên hướng dẫn và Giảng viên phản biện.

Xin chân thành cảm ơn

Sàn giao dịch thương mại điện tử là hệ thống website cho phép thương nhân, tổ chức và cá nhân không phải chủ sở hữu thực hiện quy trình mua bán hàng hóa và dịch vụ qua Internet Hình thức này đang phát triển mạnh mẽ và có khả năng thay thế các cửa hàng truyền thống trong tương lai Một số ví dụ thành công như Shopee, Lazada và Tiki.

Nhóm đã quyết định phát triển một hệ thống thương mại điện tử dưới dạng sàn giao dịch, sử dụng công nghệ MERN stack, với đầy đủ các chức năng chính.

1 Phía Khách a) Đăng ký tài khoản b) Tìm kiếm, xem danh sách, chi tiết sản phẩm, cửa hàng, người dùng khác

2 Phía Người mua a) Đặng nhập, đăng xuất, quên mật khẩu b) Quản lý tài khoản, giỏ hàng, đơn hàng c) Theo dõi sản phẩm, cửa hàng yêu thích d) Đặt hàng, thanh toán, phản hồi, đánh giá

3 Phía Người bán a) Tạo cửa hàng b) Thống kê doanh thu c) Quản lý cửa hàng, thông tin cửa hàng, sản phẩm, nhân viên, đơn hàng d) Quản lý giao dịch, ví điện tử

4 Phía Quản trị viên a) Thống kê doanh thu b) Thống kê người đăng ký mới, cửa hàng mới c) Quản lý người dùng, cửa hàng, sản phẩm, đơn hàng, giao dịch trên hệ thống d) Quản lý khác (category, style, deliver y, level, commission…)

1 Lý do chọn đề tài 7

2 Mục đích và nhiệm vụ của đề tài 7

3 Cách tiếp cận và phương pháp nghiên cứu 7

Chương 1: CƠ SỞ LÝ THUYẾT 9

1.2 Bộ công nghệ MERN stack 9

Chương 2: KHẢO SÁT HIỆN TRẠNG 21

Chương 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 25

3.1.4 Phía Quản trị viên (Admin) 26

3.2 Biểu đồ Use case (Use case Diagram) 28

3.2.4 Khôi phục mật khẩu (Password Recovery) 30

3.2.5 Tìm kiếm/Xem sản phẩm (Search/View products) 31

3.2.6 Tìm kiếm/Xem cửa hàng (Search/View stores) 32

3.2.7 Tìm kiếm/Xem người dùng (Search/View users) 33

3.2.8 Quản lý tài khoản (Account Management - Account) 34

3.2.9 Quản lý thông tin của tài khoản (Account Management - Profile) 35

3.2.10 Quản lý địa chỉ của tài khoản (Account Management - Address) 36

3.2.11 Quản lý đơn hàng của tài khoản (Account Management - Purchase) 37

3.2.14 Phản hồi, đánh giá (Review & rating) 39

3.2.15 Theo dõi sản phẩm (Follow/unfollow products) 40

3.2.16 Theo dõi cửa hàng (Follow/unfollow stores) 41

3.2.17 Tạo cửa hàng (Create store) 42

3.2.18 Quản lý các cửa hàng (Stores Management) 42

3.2.19 Quản lý thông tin của cửa hàng (Store Management – Profile) 43

3.2.20 Quản lý nhân viên của cửa hàng (Store Management – Staff) 45

3.2.21 Quản lý sản phẩm của cửa hàng (Store Management – Product) 46

3.2.22 Quản lý đơn hàng của cửa hàng (Store Management – Order) 47

3.2.23 Quản lý ví điện tử của cửa hàng (Store Management – Ewallet) 49

3.2.24 Thống kê doanh thu (Revenue statistics) 50

3.2.25 Thống kê người dùng mới (New users statistics) 50

3.2.26 Thống kê cửa hàng mới (New stores statistics) 51

3.2.27 Quản lý người dùng trong hệ thống (Users management) 52

3.2.28 Quản lý sản phẩm trong hệ thống (Products management) 52

3.2.29 Quản lý đơn hàng trong hệ thống (Orders management) 53

3.2.30 Quản lý loại sản phẩm (System management – Category) 54

3.2.31 Quản lý thuộc tính sản phẩm (System management – Style) 55

3.2.32 Quản lý cấp độ người dùng (System management – User level) 57

3.2.33 Quản lý cấp độ cửa hàng (System management – Store level) 58

3.2.34 Quản lý đơn vị vận chuyển (System management – Delivery unit) 59

3.2.35 Quản lý chính sách hoa hồng (System management – Commission) 60

3.2.36 Quản lý giao dịch trong hệ thống (System management – Transaction) 61

3.3 Biểu đồ Tuần tự (Sequence Diagram) 61

3.3.1 Sequence Diagram Đăng ký (Sign up) 61

3.3.2 Sequence Diagram Đăng nhập (Sign in) 62

3.3.3 Sequence Diagram Đăng xuất (Sign out) 63

3.3.4 Sequence Diagram Khôi phục mật khẩu (Password Recovery) 64

3.3.5 Sequence Diagram Tìm kiếm/Xem cửa hàng (Search/View stores) 65

3.3.6 Sequence Diagram Tìm kiếm/Xem sản phẩm (Search/View products) 66

3.3.7 Sequence Diagram Tìm kiếm/Xem người dùng (Search/View users) 66

3.3.8 Sequence Diagram Thay đổi mật khẩu (Change Password) 67

3.3.9 Sequence Diagram Quản lý thông tin của tài khoản (Account

3.3.10 Sequence Diagram Quản lý địa chỉ của tài khoản (Account Management - Address) 68

3.3.11 Sequence Diagram Quản lý đơn hàng của tài khoản (Account

3.3.12 Sequence Diagram Giỏ hàng (Cart) 70

3.3.13 Sequence Diagram Đặt hàng (Order) 71

3.3.14 Sequence Diagram Phản hồi, đánh giá (Review & rating) 72

3.3.15 Sequence Diagram Theo dõi sản phẩm (Follow/unfollow products) 73

3.3.16 Sequence Diagram Theo dõi cửa hàng (Follow/unfollow stores) 74

3.3.17 Sequence Diagram Tạo cửa hàng (Create store) 75

3.3.18 Sequence Diagram Quản lý các cửa hàng (Stores Management) 76

3.3.19 Sequence Diagram Quản lý thông tin của cửa hàng (Store Management – Profile) 77 3.3.20 Sequence Diagram Quản lý nhân viên của cửa hàng (Store Management – Staff) 78 3.3.21 Sequence Diagram Quản lý sản phẩm của cửa hàng (Store Management – Product) 79 3.3.22 Sequence Diagram Quản lý đơn hàng của cửa hàng (Store Management – Order) 80

3.3.23 Sequence Diagram Quản lý ví điện tử của cửa hàng (Store Management –

3.3.24 Sequence Diagram Thống kê doanh thu (Revenue statistics) 82

3.3.25 Sequence Diagram Thống kê người dùng mới (New users statistics) 83

3.3.26 Sequence Diagram Quản lý người dùng trong hệ thống (Users management) 84

3.3.27 Sequence Diagram Quản lý sản phẩm trong hệ thống (Products management) 85

3.3.28 Sequence Diagram Quản lý đơn hàng trong hệ thống (Orders management) 85

3.3.29 Sequence Diagram Quản lý loại sản phẩm (System management – Category) 86

3.3.30 Sequence Diagram Quản lý thuộc tính sản phẩm (System management – Style) 87 3.3.31 Sequence Diagram Quản lý cấp độ người dùng (System management –

3.3.32 Sequence Diagram Quản lý đơn vị vận chuyển (System management –

3.3.33 Sequence Diagram Quản lý chính sách hoa hồng (System management – Commission) 90

3.3.34 Sequence Diagram Quản lý giao dịch trong hệ thống (System management – Transaction) 91

3.4 Biểu đồ Classs (Class Diagram) 92

3.5 Thiết kế Cơ sở dữ liệu 94

3.6.4 Phía Quản trị viên (Admin) 140

Chương 4: CÀI ĐẶT VÀ KIỂM THỬ 151

1 Những kết quả đạt được 163

Hình 1-1 Bộ công nghệ MERN stack 9

Hình 1-2 Kiến trúc hệ thống 11

Hình 1-3 Ví dụ tập dữ liệu 12

Hình 1-5 Cấu trúc file, folder back-end 13

Hình 1-8 Cấu trúc file, folder front-end 15

Hình 1-9 Kiến trúc Front-end 16

Hình 1-10 Các Reducer trong hệ thống 17

Hình 1-11 Cấu trúc file, folder mobile app 18

Hình 1-12 Kiến trúc mobile app 19

Hình 1-13 Các loại Navigation trong hệ thống 19

Hình 1-14 Các Context trong hệ thống 20

Hình 3-2 Sequence Diagram Đăng ký 62

Hình 3-3 Sequence Diagram Đăng nhập 63

Hình 3-4 Sequence Diagram Đăng xuất 64

Hình 3-5 Sequence Diagram Khôi phục mật khẩu 65

Hình 3-6 Sequence Diagram Tìm kiếm/Xem cửa hàng 65

Hình 3-7 Sequence Diagram Tìm kiếm/Xem sản phẩm 66

Hình 3-8 Sequence Diagram Tìm kiếm/Xem người dùng 67

Hình 3-9 Sequence Diagram Thay đổi mật khẩu 67

Hình 3-10 Sequence Diagram Quản lý thông tin của tài khoản 68

Hình 3-11 Sequence Diagram Quản lý địa chỉ của tài khoản 69

Hình 3-12 Sequence Diagram Quản lý đơn hàng của tài khoản 70

Hình 3-13 Sequence Diagram Giỏ hàng 71

Hình 3-14 Sequence Diagram Đặt hàng 72

Hình 3-15 Sequence Diagram Phản hồi, đánh giá 73

Hình 3-16 Sequence Diagram Theo dõi sản phẩm 74

Hình 3-17 Sequence Diagram Theo dõi cửa hàng 75

Hình 3-18 Sequence Diagram Tạo cửa hàng 75

Hình 3-19 Sequence Diagram Quản lý các cửa hàng 76

Hình 3-20 Sequence Diagram Quản lý các cửa hàng(1) 77

Hình 3-21 Sequence Diagram Quản lý thông tin của cửa hàng 78

Hình 3-22 Sequence Diagram Quản lý nhân viên của cửa hàng 79

Hình 3-23 Sequence Diagram Quản lý sản phẩm của cửa hàng 80

Hình 3-24 Sequence Diagram Quản lý đơn hàng của cửa hàng 81

Hình 3-25 Sequence Diagram Quản lý ví điện tử của cửa hàng 82

Hình 3-26 Sequence Diagram Thống kê doanh thu 83

Hình 3-27 Sequence Diagram Thống kê người dùng mới 84

Hình 3-28 Sequence Diagram Quản lý người dùng trong hệ thống 84

Hình 3-29 Sequence Diagram Quản lý sản phẩm trong hệ thống 85

Hình 3-30 Sequence Diagram Quản lý đơn hàng trong hệ thống 86

Hình 3-31 Sequence Diagram Quản lý loại sản phẩm 87

Hình 3-32 Sequence Diagram Quản lý thuộc tính sản phẩm 88

Hình 3-33 Sequence Diagram Quản lý cấp độ người dùng 89

Hình 3-34 Sequence Diagram Quản lý đơn vị vận chuyển 90

Hình 3-35 Sequence Diagram Quản lý chính sách hoa hồng 91

Hình 3-36 Sequence Diagram Quản lý giao dịch trong hệ thống 92

Hình 3-37 Biểu đồ Quan hệ thực thể 92

Hình 3-38 Giao diện trang Home phía Khách 112

Hình 3-39 Chức năng Đăng nhập 113

Hình 3-40 Chức năng Đăng ký 114

Hình 3-41 Chức năng tìm kiếm sản phẩm 115

Hình 3-42 Chức năng tìm kiếm sản phẩm (1) 115

Hình 3-43 Chức năng tìm kiếm theo loại sản phẩm 116

Hình 3-44 Chức năng tìm kiếm theo loại sản phẩm (1) 116

Hình 3-45 Chức năng tìm kiếm cửa hàng 117

Hình 3-46 Chức năng tìm kiếm người dùng 117

Hình 3-47 Giao diện trang Chi tiết sản phẩm phía Khách 119

Hình 3-48 Giao diện trang Home của cửa hàng 120

Hình 3-49 Giao diện trang Collection của cửa hàng 121

Hình 3-50 Giao diện trang Collection của cửa hàng (1) 121

Hình 3-51 Giao diện trang Review & Rating của cửa hàng 122

Hình 3-52 Giao diện trang About của cửa hàng 123

Hình 3-53 Giao diện trang Home của người dùng 123

Hình 3-54 Giao diện trang About của người dùng 124

Hình 3-55 Giao diện trang Home phía Người mua 125

Hình 3-56 Giao diện trang Chi tiết sản phẩm phía Người mua 127

Hình 3-57 Giao diện hệ thống trang của cửa hàng phía Người mua 128

Hình 3-58 Chức năng Giỏ hàng của Người mua 129

Hình 3-59 Chức năng Đặt hàng của Người mua 129

Hình 3-60 Giao diện trang Quản lý tài khoản, thông tin cá nhân 130

Hình 3-61 Giao diện trang Quản lý đơn hàng, lịch sử mua hàng 130

Hình 3-62 Giao diện trang Chi tiết đơn hàng 131

Hình 3-63 Giao diện trang Quản lý địa chỉ 131

Hình 3-64 Giao diện trang Bộ sưu tầm sản phẩm yêu thích 132

Hình 3-65 Giao diện trang Bộ sưu tầm cửa hàng yêu thích 132

Hình 3-66 Giao diện trang Quản lý ví điện tử phía Người mua 133

Hình 3-67 Giao diện trang Quản lý tổng hợp cửa hàng 134

Hình 3-68 Giao diện trang Thống kê doanh thu phía Người bán 134

Hình 3-69 Giao diện trang Thống kê doanh thu phía Người bán (1) 135

Hình 3-70 Giao diện trang Quản lý thông tin cửa hàng 136

Hình 3-71 Giao diện trang Quản lý sản phẩm của cửa hàng 137

Hình 3-72 Giao diện trang Quản lý sản phẩm của cửa hàng (1) 137

Hình 3-73 Giao diện trang Quản lý nhân viên của cửa hàng 138

Hình 3-74 Giao diện trang Quản lý nhân viên của cửa hàng (1) 138

Hình 3-75 Giao diện trang Quản lý đơn hàng của cửa hàng 139

Hình 3-76 Giao diện trang Quản lý đơn hàng của cửa hàng (1) 139

Hình 3-77 Giao diện trang Chi tiết đơn hàng phía Người bán 140

Hình 3-78 Giao diện trang Quản lý ví điện tử của cửa hàng 140

Hình 3-79 Giao diện trang Thống kê doanh thu phía Quản trị viên 141

Hình 3-80 Giao diện trang Thống kê doanh thu phía Quản trị viên (1) 141

Hình 3-81 Giao diện Thống kê cửa hàng mới phía Quản trị viên 142

Hình 3-82 Giao diện Thống kê người dùng mới phía Quản trị viên 142

Hình 3-83 Giao diện trang Quản lý người dùng phía Quản trị viên 143

Hình 3-84 Giao diện trang Quản lý cửa hàng phía Quản trị viên 143

Hình 3-85 Giao diện trang Quản lý cửa hàng phía Quản trị viên (1) 144

Hình 3-86 Giao diện trang Quản lý đơn hàng phía Quản trị viên 144

Hình 3-87 Giao diện trang Quản lý đơn hàng phía Quản trị viên (1) 145

Hình 3-88 Giao diện trang Chi tiết đơn hàng phía Quản trị viên 145

Hình 3-89 Giao diện trang Quản lý giao dịch phía Quản trị viên 146

Hình 3-90 Giao diện trang Quản lý loại sản phẩm phía Quản trị viên 146

Hình 3-91 Giao diện trang Quản lý thuộc tính sản phẩm phía Quản trị viên 147

Hình 3-92 Giao diện trang Quản lý sản phẩm phía Quản trị viên 147

Hình 3-93 Giao diện trang Quản lý sản phẩm phía Quản trị viên (1) 148

Hình 3-94 Giao diện trang Quản lý cấp độ người dùng phía Quản trị viên 148

Hình 3-95 Giao diện trang Quản lý cấp độ cửa hàng phía Quản trị viên 149

Hình 3-96 Giao diện trang Quản lý chính sách hoa hồng phía Quản trị viên 149

Hình 3-97 Giao diện trang Quản lý đơn vị vận chuyển phía Quản trị viên 150

Bảng 3-1 Chức năng phía Khách 25

Bảng 3-2 Chức năng phía Người mua 25

Bảng 3-3 Chức năng phía Người bán 26

Bảng 3-4 Chức năng phía Quản trị viên 27

Bảng 3-5 Use case Đăng ký 29

Bảng 3-6 Use case Đăng nhập 29

Bảng 3-7 Use case Đăng xuất 30

Bảng 3-8 Use case Khôi phục mật khẩu 31

Bảng 3-9 Use case Tìm kiếm/Xem sản phẩm 32

Bảng 3-10 Use case Tìm kiếm/Xem cửa hàng 33

Bảng 3-11 Use case Tìm kiếm/Xem người dùng 34

Bảng 3-12 Use case Quản lý tài khoản 35

Bảng 3-13 Use case Quản lý thông tin của tài khoản 36

Bảng 3-14 Use case Quản lý địa chỉ của tài khoản 37

Bảng 3-15 Use case Quản lý đơn hàng của tài khoản 38

Bảng 3-16 Use case Giỏ hàng 38

Bảng 3-17 Use case Đặt hàng 39

Bảng 3-18 Use case Phản hồi, đánh giá 40

Bảng 3-19 Use case Theo dõi sản phẩm 41

Bảng 3-20 Use case Theo dõi cửa hàng 42

Bảng 3-21 Use case Tạo cửa hàng 42

Bảng 3-22 Use case Quản lý các cửa hàng 43

Bảng 3-23 Use case Quản lý thông tin của cửa hàng 45

Bảng 3-24 Use case Quản lý nhân viên của cửa hàng 46

Bảng 3-25 Use case Quản lý sản phẩm của cửa hàng 47

Bảng 3-26 Use case Quản lý đơn hàng của cửa hàng 48

Bảng 3-27 Use case Quản lý ví điện tử của cửa hàng 49

Bảng 3-28 Use case Thống kê doanh thu 50

Bảng 3-29 Use case Thống kê người dùng mới 51

Bảng 3-30 Use case Thống kê cửa hàng mới 52

The article outlines various use cases and tables related to user management, product management, order management, and more within a system Key use cases include managing users, products, orders, product types, product attributes, user levels, store levels, shipping units, commission policies, and transactions Additionally, it lists tables such as User, UserLevel, Store, StoreLevel, Commission, Category, Style, StyleValue, Product, Delivery, UserFollowStore, UserFollowProduct, Review, Order, OrderItem, Cart, CartItem, and Transaction The document also includes a section on test cases, providing a comprehensive overview of the system's functionalities and data structures.

1 Lý do chọn đề tài

Thị trường thương mại điện tử tại Việt Nam đang phát triển mạnh mẽ và sôi động, được dự báo sẽ vươn lên dẫn đầu khu vực Đông Nam Á trong thời gian tới, theo báo cáo từ trang Fibre2fashion.

Mặc dù phát triển mạnh mẽ, hệ thống thương mại điện tử vẫn là một thách thức lớn đối với sinh viên công nghệ Yêu cầu về bộ công nghệ MERN stack, mà chúng tôi chưa từng tiếp xúc trong chương trình học, càng làm tăng độ khó Tuy nhiên, những khó khăn này lại kích thích sự hào hứng của nhóm, vì chúng tôi sẽ thu được nhiều kiến thức và trải nghiệm thú vị trong quá trình thực hiện đề tài.

2 Mục đích và nhiệm vụ của đề tài

- Tìm hiểu bộ công nghệ MERN stack

- Xây dựng hệ thống thương mại điện tử

- Tìm hiểu về bộ công nghệ MERN stack

- Tìm hiểu về cách xây dựng một hệ thống thương mại điện tử

- Tiến hành xây dựng hệ thống

- Tiếp tục cải thiện, phát triển hệ thống, xây dựng ứng dụng đa nền tảng

3 Cách tiếp cận và phương pháp nghiên cứu

- Tìm hiểu các cơ sở lý thuyết với những tài liệu về MERN stack tại các website chính thức của chúng, các khóa học trên Udemy và Youtube

- Tiến hành khảo sát, nghiên cứu các hệ thống thương mại điện tử phổ biến ở Việt Nam như Shopee, Tiki, Lazada và quốc tế như Etsy

- Lên kế hoạch xây dựng hệ thống

- Thực hiện theo kế hoạch, bên cạnh tiếp tục nghiên cứu cơ sở lý thuyết và khảo sát thực tế

- Đối với những khó khăn, nhóm sẽ tìm kiếm giải pháp qua mạng và trao đổi với Giảng viên hướng dẫn

- Về kiến thức: Hiểu về thành phần, cấu trúc, cách hoạt động của bộ công nghệ MERN stack

Xây dựng hệ thống thương mại điện tử GoodDeal bao gồm website cho PC và ứng dụng Android cho di động, với đầy đủ các chức năng cần thiết.

Chương 1: CƠ SỞ LÝ THUYẾT

JavaScript là ngôn ngữ lập trình phổ biến nhất trên thế giới trong suốt 20 năm qua

Nó cũng là một trong số 3 ngôn ngữ chính của lập trình Web, được phát triển bởi Brendan Eich tại hãng truyền thông Netscape

JavaScript là một ngôn ngữ lập trình bậc cao, tương tự như C/C++, Java và Python, với đặc điểm là ngôn ngữ lập trình kiểu động Nó được tối ưu hóa để nâng cao hiệu suất làm việc cho lập trình viên Từ "script" trong JavaScript cho thấy đây là một ngôn ngữ lập trình kịch bản, nghĩa là nó được dịch tại thời điểm chạy Ngoài ra, JavaScript còn là ngôn ngữ dựa trên hướng đối tượng và nguyên mẫu.

1.2 Bộ công nghệ MERN stack

MERN là bộ công nghệ bao gồm MongoDB, Express.js, React.js và Node.js, tất cả đều sử dụng JavaScript Với MERN stack, việc xây dựng kiến trúc 3 tầng hoàn toàn bằng JavaScript và JSON trở nên dễ dàng, bao gồm tầng Hiển thị Front-end (React.js), tầng Ứng dụng Back-end (Express.js và Node.js) và tầng Cơ sở dữ liệu (MongoDB).

Hình 1-1 Bộ công nghệ MERN stack

Nhược điểm

- Giao diện đơn giản, không có chế độ dark mode, light mode…

- Chưa có chức năng thông báo, nhắn tin trực tuyến… là một cản trở giữa người mua và người bán

- Nhiều chức năng thuộc bên thứ ba chỉ mang tính chất demo, chưa áp dụng thực tế được

Ngày đăng: 25/05/2023, 12:20

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. MDN Web Docs (2021) JavaScript. [Online]. Available: https://developer.mozilla.org/en-US/docs/Web/JavaScript Sách, tạp chí
Tiêu đề: JavaScript
Tác giả: MDN Web Docs
Năm: 2021
[2]. GeeksforGeeks (2021) MERN stack. [Online]. Available: https://www.geeksforgeeks.org/mern-stack/ Sách, tạp chí
Tiêu đề: MERN stack
Tác giả: GeeksforGeeks
Năm: 2021
[3]. Nodejs.org (không rõ) About Node.js. [Online]. Available: https://nodejs.org/en/about/ Sách, tạp chí
Tiêu đề: About Node.js
Nhà XB: Nodejs.org
[4]. Expressjs.com (2017) Express. [Online]. Available: https://expressjs.com/en/starter/installing.html Sách, tạp chí
Tiêu đề: Express
Tác giả: Expressjs.com
Năm: 2017
[5]. Reactjs.org (2021) Getting Started. [Online]. Available: https://reactjs.org/docs/getting-started.html Sách, tạp chí
Tiêu đề: Getting Started
Tác giả: Reactjs.org
Năm: 2021
[6]. Mongodb.com (2021) MongoDB Documentation. [Online]. Available: https://docs.mongodb.com/ Sách, tạp chí
Tiêu đề: MongoDB Documentation
Nhà XB: Mongodb.com
Năm: 2021
[7]. Getbootstrap.com (2021) Getting started. [Online]. Available: https://getbootstrap.com/docs/5.1/getting-started/introduction/ Sách, tạp chí
Tiêu đề: Getting started
Tác giả: Getbootstrap.com
Năm: 2021
[8]. Mongoosejs.com (không rõ) API Docs. [Online]. Available: https://mongoosejs.com/docs/api.html Sách, tạp chí
Tiêu đề: API Docs
Nhà XB: Mongoosejs.com
[9]. Reactnative.dev (2022) Guide. [Online]. Available: https://reactnative.dev/docs/getting-started Sách, tạp chí
Tiêu đề: Guide
Tác giả: Reactnative.dev
Năm: 2022
[10]. Website Tiki. [Online]. Available: https://tiki.vn/ Sách, tạp chí
Tiêu đề: Website Tiki
[12]. Website Lazada. [Online]. Available: https://www.lazada.vn/ Sách, tạp chí
Tiêu đề: Lazada Việt Nam | Mua Sắm Online, Giá Tốt Nhất Mỗi Ngày
Nhà XB: Lazada
Năm: 2025
[16]. F8 fullstack (2021) Khóa học nổi bật. [Online]. https://fullstack.edu.vn/courses?_type=tab Sách, tạp chí
Tiêu đề: Khóa học nổi bật
Tác giả: F8 fullstack
Năm: 2021
[17]. Ryan Dhungel (2021) MERN Stack React Node Ecommerce from Scratch to Deployment. [Online]. Available: https://www.udemy.com/course/react-node-ecommerce/ Sách, tạp chí
Tiêu đề: MERN Stack React Node Ecommerce from Scratch to Deployment
Tác giả: Ryan Dhungel
Năm: 2021
[11]. Website Shopee. [Online]. Available: https://shopee.vn/ Link
[13]. Website Etsy. [Online]. Available: https://www.etsy.com/ Link
[14]. Academind (2016) Node.js Basics. [Online]. Available: https://www.youtube.com/watch?v=65a5QQ3ZR2g&list=PL55RiY5tL51oGJorjEgl6NVeDbx_fO5jR Link
[15]. Web Dev Simplified (2020) React Hooks. [Online]. Available: https://www.youtube.com/watch?v=O6P86uwfdR0&list=PLZlA0Gpn_vH8EtggFGERCwMY5u5hOjf-h Link

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w