Hướng Dẫn Phát Triển Website Quản Lý Bán Hàng Thời Trang Sober Sử Dụng ReactJS, NodeJS Và MongoDB

Bài viết chia sẻ quy trình phát triển website quản lý bán hàng thời trang Sober sử dụng ReactJS, NodeJS, MongoDB, phù hợp làm đồ án tốt nghiệp.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2022

66
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI CAM ĐOAN

1. CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

1.1. Tổng quan về đề tài

1.2. Mô tả đề tài

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

1.4. Phạm vi đề tài

2. CHƯƠNG 2: CƠ SỞ DỮ LIỆU NOSQL

2.1. Khái niệm NoSQL

2.2. Ưu nhược điểm của CSDL NoSql

2.3. So sánh NoSql với CSDL quan hệ

2.4. Cơ sở dữ liệu MongoDB

2.4.1. Giới thiệu về MongoDB

2.4.2. Các khái niệm trong MongoDB CRUD

2.5. ExpressJs là gì

2.6. Routing trong ExpressJS

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

3.1. Biểu đồ hoạt động

3.2. Mô hình thực thể liên kết ERD

3.3. Thiết kế cơ sở dữ liệu

3.3.1. Thiết kế cơ sở dữ liệu mức logic

3.3.2. Thiết kế cơ sở dữ liệu mức vật lý

3.4. Thiết kế giao diện

3.4.1. Giao diện trang chủ

3.4.2. Giao diện trang sản phẩm

3.4.3. Giao diện trang admin dashboard

3.4.4. Giao diện trang user dashboard

3.4.5. Giao diện trang đăng ký

3.4.6. Giao diện trang đăng nhập

3.4.7. Giao diện trang quản lý sản phẩm

3.4.8. Giao diện trang thêm sản phẩm

3.4.9. Giao diện trang sửa thông tin sản phẩm

3.4.10. Giao diện trang quản lý subcribers

3.4.11. Giao diện trang thêm subcribers

3.4.12. Giao diện trang quản lý giỏ hàng

3.4.13. Giao diện trang quản lý đơn hàng

3.4.14. Giao diện trang xem chi tiết sản phẩm

4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

4.1. Kết quả đạt được

4.2. Hạn chế của đề tài

4.3. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Phát triển website

Phát triển website là một quá trình quan trọng trong việc xây dựng các ứng dụng web hiện đại. Trong đồ án này, ReactJS, NodeJS, và MongoDB được sử dụng để phát triển một website quản lý bán hàng thời trang Sober. ReactJS đóng vai trò là thư viện JavaScript giúp xây dựng giao diện người dùng động và hiệu quả. NodeJS được dùng để xử lý logic phía server, cung cấp khả năng xử lý yêu cầu nhanh chóng. MongoDB là cơ sở dữ liệu NoSQL linh hoạt, phù hợp với các ứng dụng web cần mở rộng và xử lý dữ liệu lớn. Sự kết hợp của ba công nghệ này tạo nên một hệ thống quản lý bán hàng hiệu quả và dễ bảo trì.

1.1. Quản lý bán hàng

Quản lý bán hàng là một trong những chức năng chính của website. Hệ thống cho phép quản lý sản phẩm, đơn hàng, và danh mục một cách dễ dàng. ReactJS giúp tạo ra các giao diện tương tác cao, giúp người dùng dễ dàng thêm, sửa, xóa sản phẩm. NodeJS xử lý các yêu cầu từ phía người dùng và tương tác với MongoDB để lưu trữ và truy xuất dữ liệu. Điều này giúp tối ưu hóa quy trình quản lý bán hàng, giảm thiểu thời gian và công sức.

1.2. Thời trang Sober

Thời trang Sober là lĩnh vực chính mà website hướng đến. Hệ thống được thiết kế để quản lý các sản phẩm thời trang, từ quần áo đến phụ kiện. ReactJS giúp hiển thị sản phẩm một cách trực quan, với các tính năng như tìm kiếm, lọc, và sắp xếp. NodeJS đảm bảo rằng các yêu cầu từ người dùng được xử lý nhanh chóng, trong khi MongoDB lưu trữ thông tin sản phẩm một cách hiệu quả. Điều này giúp người dùng dễ dàng tìm kiếm và mua sắm các sản phẩm thời trang.

II. Công nghệ web

Công nghệ web đóng vai trò quan trọng trong việc phát triển các ứng dụng hiện đại. Trong đồ án này, ReactJS, NodeJS, và MongoDB được sử dụng để tạo ra một hệ thống quản lý bán hàng hiệu quả. ReactJS là một thư viện JavaScript mạnh mẽ, giúp xây dựng giao diện người dùng động và tương tác cao. NodeJS là một nền tảng phía server, cho phép xử lý các yêu cầu từ người dùng một cách nhanh chóng. MongoDB là một cơ sở dữ liệu NoSQL, linh hoạt và dễ mở rộng, phù hợp với các ứng dụng web cần xử lý dữ liệu lớn.

2.1. Lập trình web

Lập trình web là quá trình xây dựng và phát triển các ứng dụng web. Trong đồ án này, ReactJS được sử dụng để xây dựng giao diện người dùng, với các tính năng như tìm kiếm, lọc, và sắp xếp sản phẩm. NodeJS được dùng để xử lý logic phía server, đảm bảo rằng các yêu cầu từ người dùng được xử lý nhanh chóng. MongoDB lưu trữ dữ liệu một cách hiệu quả, giúp hệ thống hoạt động ổn định và dễ bảo trì.

2.2. Ứng dụng thương mại điện tử

Ứng dụng thương mại điện tử là một trong những lĩnh vực quan trọng của công nghệ web. Trong đồ án này, hệ thống được thiết kế để quản lý bán hàng thời trang Sober. ReactJS giúp tạo ra các giao diện tương tác cao, giúp người dùng dễ dàng tìm kiếm và mua sắm sản phẩm. NodeJS xử lý các yêu cầu từ phía người dùng và tương tác với MongoDB để lưu trữ và truy xuất dữ liệu. Điều này giúp tối ưu hóa quy trình quản lý bán hàng, giảm thiểu thời gian và công sức.

III. Hệ thống quản lý

Hệ thống quản lý là một phần quan trọng của website, giúp quản lý các hoạt động bán hàng một cách hiệu quả. Trong đồ án này, hệ thống được thiết kế để quản lý sản phẩm, đơn hàng, và danh mục. ReactJS giúp tạo ra các giao diện tương tác cao, giúp người dùng dễ dàng thêm, sửa, xóa sản phẩm. NodeJS xử lý các yêu cầu từ phía người dùng và tương tác với MongoDB để lưu trữ và truy xuất dữ liệu. Điều này giúp tối ưu hóa quy trình quản lý bán hàng, giảm thiểu thời gian và công sức.

3.1. Quản lý thời trang

Quản lý thời trang là một trong những chức năng chính của hệ thống. Hệ thống cho phép quản lý các sản phẩm thời trang, từ quần áo đến phụ kiện. ReactJS giúp hiển thị sản phẩm một cách trực quan, với các tính năng như tìm kiếm, lọc, và sắp xếp. NodeJS đảm bảo rằng các yêu cầu từ người dùng được xử lý nhanh chóng, trong khi MongoDB lưu trữ thông tin sản phẩm một cách hiệu quả. Điều này giúp người dùng dễ dàng tìm kiếm và mua sắm các sản phẩm thời trang.

3.2. Giải pháp công nghệ

Giải pháp công nghệ được áp dụng trong đồ án này bao gồm ReactJS, NodeJS, và MongoDB. ReactJS giúp xây dựng giao diện người dùng động và tương tác cao. NodeJS xử lý các yêu cầu từ phía người dùng một cách nhanh chóng. MongoDB lưu trữ dữ liệu một cách hiệu quả, giúp hệ thống hoạt động ổn định và dễ bảo trì. Sự kết hợp của ba công nghệ này tạo nên một hệ thống quản lý bán hàng hiệu quả và dễ bảo trì.

12/02/2025

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

Đặt vấn đề Ngày nay, Công nghệ thông tin có vai trò quan trọng, là động lực thúc đẩy tăng trưởng kinh tế và kích thích tiềm năng đổi mới đối với nền kinh tế toàn cầu nói chung và nền kinh tế quốc dân của mỗi nước nói riêng. Với nhiều thành quả quan trọng, Công nghệ thông tin đã được ứng dụng rộng dãi trong nhiều lĩnh vực, trở thành một trong những yếu tố quan trọng nhất của sự phát triển kinh tế - xã hội, an ninh - quốc phòng. Việc đẩy mạnh ứng dụng công nghệ thông tin sẽ làm thay đổi tác phong làm việc, nâng cao năng suất lao động, nâng cao dân trí,…Chính vì thế, công nghệ thông tin sẽ trở thành nền kinh tế mũi nhọn của nước ta trong những năm tới đây. Hơn nữa thương mại điện tử là một lĩnh vực mới đang được nhiều cơ quan, nhiều công ty, nhiều đoàn thể cũng như cá nhân nghiên cứu và phát triển nhằm đưa các thiết bị, các ứng dụng liên quan đến điện tử tin học vào phục vụ cho sự phát triển kinh doanh.

Thương mại điện tử là một trong những lĩnh vực được xem là mang tính thời sự ở Việt nam, ở nước ta cũng đã có nhiều tổ chức, cá nhân nghiên cứu, ứng dụng thương mại điện tử vào kinh doanh nhưng đây là một lĩnh vực mới mẻ và còn rất non trẻ. Để góp một phần nhỏ vào sự phát triển Thương mại điện tử ở nước ta Em đã quyết định thực hiện đề tài “Phát triển website quản lý bán hàng Sober”. Mô tả đề tài Với những thao tác đơn giản trên máy có nối mạng Internet người tiêu dùng sẽ có tận tay những gì mình cần chỉ cần vào các trang web bán hàng, làm theo hướng dẫn và click vào những gì bạn cần. Không cần đi đâu xa, chỉ cần ngồi tại chỗ là có thể chọn 6 Năm 2022 NGUYỄN VĂN CÔNG Khoa: CNTT lựa thỏa thích các mặt hàng mà mình yêu thích và được giao hàng tận nơi, tiết kiệm được thời gian, công sức và cả tiền bạc.

Mục tiêu của đề tài Hệ thống là một chương trình phần mềm giúp cho các doanh nghiệp hay các chủ cửa hàng giới thiệu và bán sản phẩm của mình tới người tiêu dùng một cách nhanh nhất thông qua trang web bán hàng. Và thông qua trang web này người dùng có thể tiếp cận mặt hàng chỉ với những thao tác đơn giản trên thiết bị có nối mạng Internet bạn sẽ có tận tay những gì mình cần mà không phải mất nhiều thời gian Đề tài này giúp chúng ta hiểu rõ hơn nghiệp vụ quản lý bán hàng qua mạng. Ứng dụng đề tài vào việc tối ưu hóa các chương trình quản lý sản phẩm trong các cửa hàng. Phạm vi đề tài Tập trung vào khách hàng giới trẻ gồm cả nam và nữ trong, các khách hàng thích các style về thể thao,phạm vi triển khai áp dụng cho toàn tỉnh thành phố trên khu vực Việt Nam CHƯƠNG 2.

Cơ sở dữ liệu NoSQL 2. Khái niệm NoSQL NoSQL là Non-Relational: tạm dịch là không có quan hệ. NoSQL là cơ sở dữ liệu không quan hệ, không ràng buộc giữa các Collection (tương đương bảng trong cơ sở dữ liệu quan hệ). Tức là giữa các Collection (Bảng) sẽ không có khóa chính, khóa ngoại như trong cơ sở dữ liệu quan hệ.

Việc này sẽ giảm thiểu độ phức tạp khi cơ sở dữ liệu chúng ta có nhiều bảng. NoSQL đặc biệt nhấn mạnh đến mô hình lưu trữ cặp key - value và hệ thống lưu trữ phân tán. Ưu nhược điểm của CSDL NoSql a. Ưu điểm của NoSQL: Là mã nguồn mở: không phải mất chi phí và có xu hướng tin cậy, an ninh và nhanh hơn khi triển khai so với các hệ quản trị cơ sở dữ liệu độc quyền.

7 Năm 2022 NGUYỄN VĂN CÔNG Khoa: CNTT Linh hoạt trong việc mở rộng và phát triển: giúp dễ dàng mở rộng máy chủ khi dữ liệu càng ngày càng lớn hoặc lượng truy cập và lượng dữ liệu quá lớn, thay vì thuê một máy chủ lớn hơn để thay thế cho máy chủ hiện tại thì ta chỉ cần thuê thêm một máy chủ khác. Về phía người lập trình thì giúp dễ dàng thêm Collection hoặc cặp dữ liệu. Dễ dàng trong việc thống kê, truy vấn nhanh. Áp dụng được công nghệ điện toán đám mây: dễ dàng mở rộng phạm vi được theo yêu cầu có sử dụng một dịch vụ như là Amazon EC2.

Giống như tất cả công nghệ đám mây, EC2 dựa vào ảo hóa. Liên kết yếu của ảo hóa là sự thực thi của I/O, với bộ nhớ và CPU các các kết nối mạnh. NoSQL lưu trữ dữ liệu thường được mở rộng phạm vi theo chiều ngang tận dụng được sự cung cấp mềm dẻo của đám mây. Giúp mở rộng dữ liệu dễ dàng hơn.

Nhược điểm của NoSQL: Hỗ trợ không đồng đều cho các doanh nghiệp. Các doanh nghiệp vừa được sự hỗ trợ tốt nhất từ nhà cung cấp RMBMS (vì đã được phát triển trước NoSQL một thời gian khá dài) còn các doanh nghiệp nhỏ thì thường sử dụng các mã nguồn mở thì không được sự hỗ trợ tốt nhất. Chưa thực sự phổ biến vì NoSQL vẫn chưa nhận được sự tin cậy với nhiều doanh nghiệp, một phần dữ liệu đã được xây dựng từ lâu, nên việc chuyển đổi cũng là vấn đề khó với nhiều doanh nghiệp và chưa được hỗ trợ tốt về chức năng cũng như sự ổn định như RMBMS. Còn mới lạ với một số lập trình viên.

Chưa được sử dụng để đào tạo rộng rãi. Chưa có nhiều công cụ hỗ trợ giao diện tương tác cũng như các phương thức tốt nhất dẫn đến còn hạn chế về mặt nghiệp vụ. Chia sẻ dữ liệu chưa theo một tiêu chuẩn chung. Mỗi CSDL NoSQL có các giao diện lập trình ứng dụng API riêng của mình.

Sự thiếu hụt các tiêu chuẩn có nghĩa là nó không có khả năng để chuyển một cách đơn giản từ một nhà cung cấp này sang một nhà cung cấp khác. So sánh NoSql với CSDL quan hệ Tiêu chí đánh giá RDBMS NoSQL 8 Năm 2022 NGUYỄN VĂN CÔNG Khoa: CNTT Đánh chỉ mục lượng lớn dữ liệu, phân trang hoặc Có nhiều điểm yếu kém Thực hiện khá tốt. phân phối luồng dữ liệu media Key/Value, Columnbased – Tabular, Document- Mô hình dữ liệu Table based, Graphbased data- stores. Không nhất thiết phần cứng phải cao, có thể mở Yêu cầu phần cứng cho dữ Yêu cầu phần cứng máy rộng máy chủ ở nhiều nơi liệu lớn chủ cao.

với tài nguyên phần cứng thấp. Thông qua chuỗi kết nối Thông qua API (tên máy chủ, tên cơ sở dữ Cách lấy dữ liệu từ client. Kém hơn SQL Relational Cực tốt Bỏ qua SQL Bỏ Hiệu xuất giữa các bảng qua các ràng buộc dữ liệu Hỗ trợ lượng lớn cho các Khả năng mở rộng Hạn chế về lượng node Phù hợp với công nghệ Không Có. điện toán đám mây Kém do thiết kế để đảm Tốt với mô hình xử lý lô và Hiệu suất đọc ghi bảo sự vào/ra liên tục của những tối ưu về đọcghi dữ dữ liệu liệu.

Không cần phải shutdown Phải shutdown cả hệ thống. Thay đổi số node trong hệ cả hệ thống. Việc thay đổi Việc thay đổi số node phức thống số node đơn giản, không tạp. ảnh hưởng đến hệ thống.

9 Năm 2022 NGUYỄN VĂN CÔNG Khoa: CNTT Hỗ trợ lập trình hướng đối Kém Tốt tượng Tính tiện dụng về mặt hỗ Tốt Còn chưa hoàn thiện trợ Bảng 2.1 So sánh RDBMS và NOSQL Các RDBMs hiện tại đã bộc lộ những yếu kém, chẳng hạn như việc đánh chỉ mục một lượng lớn dữ liệu, phân trang, hoặc phân phối luồng dữ liệu media (phim, ảnh, nhạc. Cơ sở dữ liệu quan hệ được thiết kế cho những mô hình dữ liệu nhỏ thường xuyên đọc viết trong khi các Social Network Services lại có một lượng dữ liệu cực lớn và cập nhật liên tục do số lượng người dùng quá nhiều ở một thời điểm. NoSQL chủ yếu lựa chọn mô hình lưu trữ tập dữ liệu theo cặp giá trị key/value để dễ dàng trong việc truy xuất. Trong NoSQL có khái niệm gọi là node được sử dụng trong quản lý dữ liệu phân tán.

Hệ thống dữ liệu phân tán không có sự kiểm tra có trùng dữ liệu hay không, nên dữ liệu phân tá sẽ chấp nhận việc lưu trữ trùng lặp dữ liệu. Khi có một yêu cầu truy vấn lấy dữ liêu có thể có nhiều máy cùng lúc gửi đến, nếu có một máy nào bị hỏng thì cũng không ảnh hưởng nhiều tới toàn bộ hệ thống. Thông thường người ta sẽ tách biệt database ra nhiều database để đảm bảo lượng truy cập xử lý lớn. Một database nhỏ đảm bảo được dữ liệu nhập/ xuất liên tục, nhưng dữ liệu đạt tới ngưỡng nào đó thì sẽ gộp vào một Database lớn hơn có thiết kế tối ưu.

Mô hình đó cho phép tăng cường hiệu suất nhập/ xuất. Thế hệ CSDL NoSQL - giảm thiểu tối đa các phép tính toán, tác vụ đọc ghi, đảm bảo được yêu cầu xử lý dữ liệu của các dịch vụ mạng xã hội. Hệ CSDL này có thể lưu trữ, xử lý từ lượng dữ liệu rất nhỏ đến hàng petabytes dữ liệu với khả năng chịu tải, chịu lỗi cao nhưng chỉ đòi hỏi về tài nguyên phần cứng thấp. NoSQL sẽ là lựa chọn tốt nhất cho các công ty nhỏ không đủ kinh phí cho việc đầu tư về bản quyền hoặc server mạnh, cấu hình cao.

10 Năm 2022 NGUYỄN VĂN CÔNG Khoa: CNTT 2. Cơ sở dữ liệu MongoDB 2. Giới thiệu về MongoDB MongoDB là một mã nguồn mở, dùng đê thiết kế cơ sở dữ liệu để dễ dàng phát triển và mở rộng, cung cấp hiệu suất và tính sẵn sàng cao. Cấu trúc của Mongodb bao gôm các cặp “thuộc tính” – “giá trị”, MongoDB document tương tự như đối tượng JSON.

Giá trị của thuộc tính bao gồm các thuộc tính giá trị cụ thể ( số, chữ, …), document, mảng, mảng các đối tượng.1 Cấu trúc của một Document trong MongoDB Các tính năng: - Hiệu suất cao: Hỗ trợ nhúng dữ liệu dạng mô hinh dữ liệu giúp giảm thiểu hoạt động của server, Truy vấn dữ liệu sử dụng chỉ mục giúp tối ưu tốc độ truy vấn. - Dễ dàng tăng tính mở rộng: chế sharding tự động (tự động phân vùng dữ liệu trên máy chủ, động bộ hóa dữ liệu tốt 2. Các khái niệm trong MongoDB CRUD Database là gì? Database là một Ô chứa dữ liệu ở mức vật lý (physical), mỗi database sẽ có nhiều collection và được thiết lập lưu trữ ở một nơi trong máy chủ máy tính. Một máy chủ MongoDB thường có thể tạo nhiều cơ sở dữ liệu.

Collection là gì? Collection trong MongoDB là nhóm các tài liệu (document), nó tương đương với một bảng trong cơ sở dữ liệu quan hệ nên mỗi collection sẽ thuộc về một database duy nhất.

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

Phát Triển Website Quản Lý Bán Hàng Thời Trang Sober Với ReactJS, NodeJS, MongoDB - Đồ Án Tốt Nghiệp là một tài liệu chi tiết về quá trình xây dựng hệ thống quản lý bán hàng thời trang sử dụng các công nghệ hiện đại như ReactJS, NodeJS và MongoDB. Tài liệu này không chỉ cung cấp kiến thức chuyên sâu về cách tích hợp các công nghệ này mà còn hướng dẫn từng bước để tạo ra một ứng dụng web hoàn chỉnh, từ thiết kế giao diện đến quản lý cơ sở dữ liệu. Đây là nguồn tài nguyên quý giá cho sinh viên và nhà phát triển muốn nâng cao kỹ năng lập trình full-stack và áp dụng vào các dự án thực tế.

Nếu bạn quan tâm đến các dự án tương tự, bạn có thể khám phá thêm về Phát triển website quản lý cửa hàng bán máy đào coin sử dụng Angular và .NET Framework, một đồ án tốt nghiệp khác tập trung vào việc quản lý cửa hàng với công nghệ hiện đại. Bên cạnh đó, Đồ án phát triển website tìm kiếm cửa hàng sản phẩm sử dụng MERN Stack và Google Maps API cũng là một tài liệu đáng chú ý, giúp bạn hiểu rõ hơn về việc tích hợp API và xây dựng ứng dụng web với MERN Stack. Cuối cùng, Nghiên cứu mô hình MVC Laravel và xây dựng website đăng ký đề tài luận văn sẽ mang đến góc nhìn khác về việc áp dụng mô hình MVC trong phát triển web. Mỗi tài liệu này là cơ hội để bạn mở rộng kiến thức và khám phá các phương pháp tiếp cận khác nhau trong lĩnh vực phát triển web.