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

Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)

51 32 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 đề Tìm Hiểu Reactjs Và Xây Dựng Website Bán Đồ Gia Dụng
Tác giả Lê Thanh Tuấn, Võ Đông Phú
Người hướng dẫn ThS. Huỳnh Hồ Thị Mộng Trinh
Trường học Đại Học Quốc Gia Tp. Hồ Chí Minh
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ án
Năm xuất bản 2022
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 51
Dung lượng 659,18 KB

Cấu trúc

  • 2.8. Đặc tả Use-case “Xem danh mục sản phẩm” (25)
  • 2.9. Đặc tả Use-case “Thêm giỏ hàng” (26)
  • 2.10. Đặc tả Use-case “Kiểm tra giỏ hàng” (27)
  • 2.11. Đặc tả Use-case “Xóa sản phẩm khỏi giỏ hàng” (28)
  • 2.12. Đặc tả Use-case “Cập nhật sản phẩm trong giỏ” (29)
  • 2.13. Đặc tả Use-case “Đặt hàng” (30)
  • 3. Sơ đồ dữ liệu (31)
    • 3.1. Bảng User (33)
    • 3.2. Bảng Admin (34)
    • 3.3. Bảng Product (35)
    • 3.4. Bảng DetailProduct (36)
    • 3.5. Bảng Category (36)
    • 3.6. Bảng Discount (36)
    • 3.7. Bảng Transaction (37)
  • CHƯƠNG V: THIẾT KẾ GIAO DIỆN (38)
    • 1. Trang Home ................................................................................................................... 32 2 (38)
  • CHƯƠNG VI: TỔNG KẾT (46)
    • 1. Công nghệ sử dụng (46)
    • 2. Độ hoàn thiện chức năng (46)
      • 3.1. Kết quả đạt được............................................................................................................ 43 3.2. Hướng phát triển (48)
  • CHƯƠNG VII: BẢNG PHÂN CÔNG CÔNG VIỆC (49)
  • CHƯƠNG VIII: TÀI LIỆU THAM KHẢO (51)
    • 1. ReactJS: https://reactjs.org/................................................................................................ 47 2. PostgreSQL: https://www.postgresql.org/ .............................................................................. 47 3 (8)

Nội dung

Đặc tả Use-case “Xem danh mục sản phẩm”

Bảng 3.2.8: Bảng đặc tả Use-case “Xem danh mục sản phẩm”

Mô tả Khách hàng muốn xem danh mục sản phẩm

Luồng chính Hành vi của tác nhân Hành vi của hệ thống

1 – Khách hàng thực hiện truy cập website

2 – Khách hàng truy cập trang sản phẩm

3 – Chọn vào danh mục cần xem sản phẩm

6 - Hệ thống thực hiện hiển thị danh sách sản phảm theo danh mục được chọn

Luồng thay thế Không có Điều kiện trước Thiết bị truy cập phải có kết nối mạng

Kết nối thành công với server. Điều kiện sau Không có

Đặc tả Use-case “Thêm giỏ hàng”

Bảng 3.2.9: Bảng đặc tả Use-case “Thêm giỏ hàng”

Mô tả Khách hàng muốn thêm sản phẩm vào giỏ hàng

Luồng chính Hành vi của tác nhân Hành vi của hệ thống

1 - Người dùng thực hiện truy cập website

2 - Người dùng truy cập trang sản phẩm

3 – Chọn thêm sản phẩm vào giỏ hàng

4 – Truy cập vào Giỏ hàng để kiểm tra

5 – Hệ thống tiến hành thêm sản phẩm vào giỏ hàng

6 – Hệ thống trả về thông báo “Thêm sản phẩm vào giỏ hàng thành công”

Luồng thay thế Không có Điều kiện trước Thiết bị truy cập phải có kết nối mạng

Kết nối thành công với server. Điều kiện sau Không có

Đặc tả Use-case “Kiểm tra giỏ hàng”

Bảng 3.2.10: Bảng đặc tả Use-case “Kiểm tra giỏ hàng”

Mô tả Khách hàng muốn kiểm tra sản phẩm trong Giỏ hàng

Luồng chính Hành vi của tác nhân Hành vi của hệ thống

1 – Khách hàng thực hiện truy cập website

2 – Khách hàng truy cập vào giỏ hàng để kiểm gia

3 – Khách hàng có thể cập nhật và xóa sản phẩm khỏi giỏ hàng

5 - Hệ thống truy cập trang giỏ hàng

Luồng thay thế Không có Điều kiện trước Thiết bị truy cập phải có kết nối mạng

Kết nối thành công với server. Điều kiện sau Không có

Đặc tả Use-case “Xóa sản phẩm khỏi giỏ hàng”

Bảng 3.2.11: Bảng đặc tả Use-case “Xóa sản phẩm”

Mô tả Khách hàng muốn xóa sản phẩm khỏi giỏ hàng

Luồng chính Hành vi của tác nhân Hành vi của hệ thống

1 – Khách hàng thực hiện truy cập vào website

2 – Khách hàng truy cập vào Giỏ hàng

3 - Nhấn vào nút Xóa sản phẩm

6 – Hệ thống truy cập Giỏ hàng và hiển thị Sản phẩm đã được xóa khỏi giỏ hàng

Luồng thay thế Không có Điều kiện trước Thiết bị truy cập phải có kết nối mạng

Kết nối thành công với server. Điều kiện sau Không có

Đặc tả Use-case “Cập nhật sản phẩm trong giỏ”

Bảng 3.2.12: Bảng đặc tả Use-case “Cập nhật sản phẩm trong giỏ”

Mô tả Khách hàng muốn cập nhật sản phẩm trong giỏ hàng

Luồng chính Hành vi của tác nhân Hành vi của hệ thống

1 – Khách hàng thực hiện truy cập website

2 – Khách hàng truy cập vào giỏ hàng

3 – Tiến hành cập nhật số lượng sản phẩm

4 – Hệ thống truy cập vào trang Giỏ hàng

5 – Hệ thống cập nhật số lượng sản phẩm

Luồng thay thế Không có Điều kiện trước Thiết bị truy cập phải có kết nối mạng

Kết nối thành công với server. Điều kiện sau Không

Đặc tả Use-case “Đặt hàng”

Bảng 3.2.13: Bảng đặc tả Use-case “Đặt hàng”

Mô tả Khách hàng tiến hành thanh toán sản phẩm cần mua

Luồng chính Hành vi của tác nhân Hành vi của hệ thống

1 – Khách hàng thực hiện truy cập vào website

2 – Khách hàng truy cập vào Giỏ hàng

3 – Chọn sản phẩm muốn đặt hàng

4 – Chọn nút Đặt hàng 5 – Đăng nhập và điền thông tin cần thiết để thanh toán sản phẩm

6 – Hệ thống tiến hành kiểm tra thông tin khách hàng

7 – Nếu thông tin hợp lệ, tiến thành cập nhật thông tin đặt hàng lên server và hiển thị thông báo đặt hàng thành công

8 – Nếu thông tin không hợp lệ, yêu cầu người dùng

Nếu thông tin nhập vào không hợp lệ, khách hàng cần nhập lại thông tin để tiếp tục quá trình đặt hàng Để thực hiện điều này, thiết bị truy cập phải được kết nối với mạng.

Kết nối thành công với server cho phép cập nhật thông tin đơn hàng lên cơ sở dữ liệu và thông báo cho tài khoản Admin Ngược lại, nếu kết nối thất bại, cơ sở dữ liệu sẽ không được thay đổi.

Sơ đồ dữ liệu

Bảng User

STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú

1 id int PK Mã của bảng User

2 user_name nvarchar NotNull Tên của người dùng

3 pass_word nvarchar NotNull Mật khẩu của người dùng

4 gender int NotNull Giới tính của người dùng

5 address nvarchar NotNull Địa chỉ của người dùng

6 phone_number varchar NotNull SĐT người dùng

7 email varchar NotNull Email dùng để đăng nhập của người dùng

8 bithday datetime NotNull Ngày sinh của người dùng

Bảng Admin

STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú

1 id int PK Mã của bảng Admin

2 name nvarchar NotNull Tên của admin

3 email varchar NotNull Email dùng để đăng nhập

4 pass_word varchar NotNull Mật khẩu để đăng nhập

5 product_id int NotNull Khóa ngoại trỏ đến bảng

Product, thể hiện thông tin sản phẩm

6 category_id int NotNull Khóa ngoại trỏ đến bảng

Category, thể hiện thông tin danh mục sản phẩm

7 discount int NotNull Khóa ngoại trỏ đến bảng

Discount, thể hiện thông tin khuyến mãi

Bảng Product

STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú

1 id int PK Mã của bảng Product

2 product_name nvarchar NotNull Tên của sản phẩm

3 product_price varchar NotNull Giá sản phẩm

4 quantity int NotNull Số lượng sản phẩm

5 image varchar NotNull Hình ảnh sản phẩm

6 slug varchar NotNull Đường dẫn đến sản phẩm

7 detail_id int FK Khóa ngoại trỏ đến bảng

DetailProduct, thể hiện Chi tiết sản phẩm

8 category_id int FK Khóa ngoại trỏ đến bảng Category, thể hiện danh mục sản phẩm

Bảng DetailProduct

STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú

1 id int PK Mã của bảng

2 image_list varchar NotNull Danh sách hình ảnh của sản phẩm

3 descripton nvarchar NotNull Thông tin chi tiết sản phẩm

4 status int NotNull Trạng thái của sản phẩm

Bảng Category

STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú

1 id int PK Mã của bảng Category

2 title nvarchar NotNull Tên danh mục

3 category_slug varchar NotNull Đường dẫn đến danh mục

Bảng Discount

STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú

1 id int PK Mã của bảng Discount

2 title nvarchar NotNull Tên của sự kiện giảm giá

3 image varchar NotNull Hình ảnh của sự kiện giảm giá

4 description nvarchar NotNull Mô tả về sự kiện giảm giá

5 discount_slug varchar NotNull Đường dẫn đến discount

Bảng Transaction

STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú

1 id int PK Khóa ngoại trỏ đến bảng USER, thể hiện thông tin người thực hiện theo dõi sự kiện

2 status int NotNull Khóa ngoại trỏ đến bảng EVENT, thể hiện thông tin của sự kiện được theo dõi

3 amount int NotNull Thời gian thực hiện theo dõi

4 payment varchar NotNull Số tiền thanh toán

5 payment_infor nvarchar NotNull Phương thức thanh toán

7 product_id Int FK Khóa ngoại trỏ đến bảng Product

8 user_id int FK Khóa ngoại trỏ đến bảng User

THIẾT KẾ GIAO DIỆN

Trang Home 32 2

* Mô tả chung và xử lý các sự kiện trên màn hình:

Khi người dung truy cập vào trang web màn hình Home sẽ hiện lên Các component:

* Mô tả chung và xử lý các sự kiện trên màn hình:

Khi nhấn nút "Sản phẩm" trong phần Header, người dùng sẽ được chuyển đến màn hình hiển thị danh mục và danh sách sản phẩm.

* Mô tả chung và xử lý các sự kiện trên màn hình:

Giao diện vẫn chưa hoàn thiện

* Mô tả chung và xử lý các sự kiện trên màn hình:

Màn hình được hiển thị sau khi người dùng thêm sản phẩm vào giỏ hàng học chọn “Mua” và chọn button “Giỏ hàng”

- Button Đặt hàng, Tiếp tục mua hàng

- Button xóa sản phẩm khỏi giỏ hàng

* Mô tả chung và xử lý các sự kiện trên màn hình:

Khi người dùng click chọn “Liên hệ” website sẽ điều hướng tới trang Liên hệ

Hình 5.6.1: Trang chi tiết sản phẩm

Hình 5.6.2: Trang chi tiết sản phẩm

Hình 5.6.3: Trang chi tiết sản phẩm

* Mô tả chung và xử lý các sự kiện trên màn hình:

Màn hình được hiển thị sau khi người dùng click vào một sản phầm Các component:

- Form Chi tiết sản phẩm

- Danh sách sản phẩm đề xuất

TỔNG KẾT

Công nghệ sử dụng

- Công nghệ Reactjs dựa trên ngôn ngữ JavaScript, HTML, CSS - Công nghệ ASP.NET Web API dựa trên ngôn ngữ C#

- Sử dụng thư viện Axios gọi API từ services

- Sử dụng cơ sở dữ liệu Postgres để lưu trữ dữ liệu

Độ hoàn thiện chức năng

Bảng 6.1: Độ hoàn thiện chức năng

STT Tên chức năng Mức độ hoàn thành

1 Đăng ký, đăng nhập 50% Hoàn thành

Backend, chưa hoàn thành Frontend

2 Hiển thị danh sách sản phẩm

3 Hiển thị danh mục sản phẩm

4 Hiển thị sản phẩm theo danh mục

5 Xem chi tiết sản phẩm 100%

6 Thêm sản phẩm vào giỏ hàng

7 Xóa sản phẩm khỏi giỏ hàng

8 Xem thông tin khuyến mãi

9 Quản trị sản phẩm 50 Hoàn thành

Backend, chưa hoàn thành Frontend

3.Kết quả đạt được và hướng phát triển

Nắm vững quy trình xây dựng website là điều cần thiết để phát triển ứng dụng hiệu quả Hiểu biết về phương pháp phát triển phần mềm hướng đối tượng và quy trình phát triển phần mềm sẽ giúp bạn áp dụng kiến thức này vào thực tiễn, tối ưu hóa quá trình xây dựng ứng dụng.

- Tìm hiểu và áp dụng services vào website

- Ngoài ra, nhóm đã tìm hiểu và nắm được cách sử dụng một số framework hữu ích như Entity Framework,

- Phát triển và hoàn thiện kỹ năng sử dụng các công cụ hỗ trợ lập trình viên như: GitHub, Trello, figma…

- Học tập phát triển kỹ năng làm việc nhóm, kỹ năng phân chia điều phối công việc, kỹ năng sắp xếp thời gian

Phần mềm cung cấp đầy đủ các chức năng cơ bản cần thiết cho một website, tuy nhiên, một số tính năng bổ sung như đặt hàng và quản trị website vẫn chưa được hoàn thiện về mặt giao diện.

- Giao diện thân thiện, dễ sử dụng

Chúng tôi sẽ tiếp tục phát triển và hoàn thiện các chức năng chính của website như đặt hàng, quản trị website, tìm kiếm sản phẩm và mở rộng quy mô Bên cạnh đó, chúng tôi cũng sẽ phát triển thêm các tính năng hỗ trợ nhằm tối ưu hóa hoạt động bán hàng cho người dùng Một số tính năng mới dự kiến sẽ được triển khai trong thời gian tới.

- Phân quyền: Admin, người dùng

- Hỗ trợ tìm kiếm sản phẩm

- Tính năng đánh giá chất lượng sản phẩm

- Gợi ý sản phẩm cho người dùng

BẢNG PHÂN CÔNG CÔNG VIỆC

Bảng 7: Bảng phân công công việc

STT Nội dung công việc

1 Chọn đề tài 01/03/2022 03/03/2022 Thanh Tuấn Đông Phú

2 Phân tích yêu cầu 03/03/2022 08/03/2022 Thanh

3 Thiết lập các actor, các chức năng cơ bản

4 Vẽ sơ đồ Use case, đặc tả

5 Viết SRD 15/03/2022 10/03/2022 Thanh Tuấn Hoàn thành

6 Viết phân tích sơ đồ lớp mức phân tích

9 Thiết kế CSDL 20/03/2022 28/03/2022 Thanh Tuấn Hoàn thành

12 Xây dựng các màn hình trên

13 Xây dựng cơ sở dữ liệu, backend, gọi

15/04/2022 28/05/2022 Thanh Tuấn Chưa hoàn thành 100%

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

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Logo Reactjs - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Hình 1.1 Logo Reactjs (Trang 8)
Hình 2.1: Logo ASP.NET Web API - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Hình 2.1 Logo ASP.NET Web API (Trang 11)
Bảng 3.1. Danh sách yêu cầu của hệ thống - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.1. Danh sách yêu cầu của hệ thống (Trang 13)
Bảng 3.2: Danh sách các Actor - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2 Danh sách các Actor (Trang 15)
Bảng 3.2.1: Bảng đặc tả Use-case “Đăng ký” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.1 Bảng đặc tả Use-case “Đăng ký” (Trang 16)
Bảng 3.2.2: Bảng đặc tả Use-case “Đăng nhập” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.2 Bảng đặc tả Use-case “Đăng nhập” (Trang 18)
Bảng 3.2.3: Bảng đặc tả Use-case “Thêm sản phẩm” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.3 Bảng đặc tả Use-case “Thêm sản phẩm” (Trang 19)
Bảng 3.2.4: Bảng đặc tả Use-case “Sửa sản phẩm” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.4 Bảng đặc tả Use-case “Sửa sản phẩm” (Trang 20)
Bảng 3.2.5: Bảng đặc tả Use-case “Xóa sản phẩm” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.5 Bảng đặc tả Use-case “Xóa sản phẩm” (Trang 22)
Bảng 3.2.6: Bảng đặc tả Use-case “Tìm kiếm sản phẩm” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.6 Bảng đặc tả Use-case “Tìm kiếm sản phẩm” (Trang 23)
Bảng 3.2.7: Bảng đặc tả Use-case “Xem thông tin sản phẩm” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.7 Bảng đặc tả Use-case “Xem thông tin sản phẩm” (Trang 24)
Bảng 3.2.8: Bảng đặc tả Use-case “Xem danh mục sản phẩm” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.8 Bảng đặc tả Use-case “Xem danh mục sản phẩm” (Trang 25)
Bảng 3.2.9: Bảng đặc tả Use-case “Thêm giỏ hàng” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.9 Bảng đặc tả Use-case “Thêm giỏ hàng” (Trang 26)
Bảng 3.2.10: Bảng đặc tả Use-case “Kiểm tra giỏ hàng” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.10 Bảng đặc tả Use-case “Kiểm tra giỏ hàng” (Trang 27)
Bảng 3.2.11: Bảng đặc tả Use-case “Xóa sản phẩm” - Tìm hiểu REACTJS và xây dựng WEBSITE bán đồ gia dụng (báo cáo cuối kì đồ án 1)
Bảng 3.2.11 Bảng đặc tả Use-case “Xóa sản phẩm” (Trang 28)

TỪ KHÓA LIÊN QUAN

w