ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN ---------- BÁO CÁO ĐỒ ÁN 1 XÂY DỰNG WEBSITE BÁN ĐỒ CÔNG NGHỆ VỚI SPRING BOOT VÀ REACTJS Giảng viên hướng dẫn: ThS. Trần Thị Hồng Yến Sinh viên thực hiện: Phạm Tấn Khang 19521670 Bùi Minh Huy 19521597 Thành phố Hồ Chí Minh, 16 tháng 06 năm 2022 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN ---------- BÁO CÁO ĐỒ ÁN 1 XÂY DỰNG WEBSITE BÁN ĐỒ CÔNG NGHỆ VỚI SPRING BOOT VÀ REACTJS Giảng viên hướng dẫn: ThS. Trần Thị Hồng Yến Sinh viên thực hiện: Phạm Tấn Khang 19521670 Bùi Minh Huy 19521597 Thành phố Hồ Chí Minh, 16 tháng 06 năm 2022 LỜI CẢM ƠN Đầu tiên, nhóm xin gửi lời cảm ơn chân thành đến tập thể quý Thầy Cô Trường Đại học Công nghệ thông tin – Đại học Quốc gia TP.HCM và quý Thầy Cô khoa Công nghệ phần mềm đã giúp cho em có những kiến thức cơ bản làm nền tảng để thực hiện đề tài này. Đặc biệt, em xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới cô Trần Thị Hồng Yến (Giảng viên khoa Công Nghệ Phần Mềm).
Cô đã trực tiếp hướng dẫn tận tình, sửa chữa và đóng góp nhiều ý kiến quý báu giúp em hoàn thành tốt báo cáo môn học của mình. Trong thời gian một học kỳ thực hiện đề tài, em đã vận dụng những kiến thức nền tảng đã tích lũy đồng thời kết hợp với việc học hỏi và nghiên cứu những kiến thức mới. Từ đó, em vận dụng tối đa những gì đã thu thập được để hoàn thành một báo cáo đồ án tốt nhất. Tuy nhiên, trong quá trình thực hiện, em không tránh khỏi những thiếu sót.
Chính vì vậy, em rất mong nhận được những sự góp ý từ phía Cô nhằm hoàn thiện những kiến thức mà em đã học tập và là hành trang để em thực hiện tiếp các đề tài khác trong tương lai. Xin chân thành cảm ơn các quý Thầy Cô! Nhóm sinh viên thực hiện Phạm Tấn Khang Bùi Minh Huy 1 ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: XÂY DỰNG WEBSITE BÁN ĐỒ CÔNG NGHỆ VỚI SPRING BOOT VÀ REACTJS TÊN ĐỀ TÀI TIẾNG ANH: BUILDING TECHNOLOGY SHOP WEBSITE WITH SPRING BOOT AND REACTJS Cán bộ hướng dẫn: ThS. Trần Thị Hồng Yến Thời gian thực hiện: Từ ngày: 21/02/2022 đến ngày: 10/06/2022 Sinh viên thực hiện: Phạm Tấn Khang – 19521670 Bùi Minh Huy – 19521597 Nội dung đề tài: 1. Giới thiệu đề tài: Trong thời đại chuyển giao công nghệ cộng với sự tác động của đại dịch mà người tiêu dùng chuyển thói quen mua hàng tại các cửa hàng siêu thị sang mua sắm online.
Bởi vì sự tiện lợi, giá cả rõ ràng, vận chuyển đơn hàng ngày càng nhanh chóng hơn, các cửa hàng kinh doanh luôn nhận thấy được tiềm năng của việc tiếp thị và bán hàng online.Đặc biệt đối với các cửa hàng bán đồ công nghệ cần phải mở rộng hơn trong việc quảng bá các mặt hàng của mình tới khách hàng. Nhận thấy được nhu cầu của cửa hàng và tiềm năng trong việc kinh doanh online, nhóm 2 chúng em đã tiến hành xây dựng "Website bán hàng công nghệ" nhằm thúc đẩy doanh thu của cửa hàng thông qua việc bán hàng online. Phần mềm sẽ là nơi cũng cấp cho người dùng những thông tin chính xác và giá cả trực quan nhất của sản phẩm, góp phần làm cho việc mua bán các thiết bị công nghệ trong thời kì dịch bệnh trở nên dễ dàng hơn. Ngoài ra còn giúp của hàng có thể quản lý kho hàng, các đơn xuất nhập hàng và doanh thu.
Mục tiêu đề tài: - Nắm bắt và áp dụng được framework Spring Boot và ReactJS để xây dựng sản phẩm đề tài. - Xây dựng được website bán đồ công nghệ với nội dung phong phú, giao diện thân thiện, màu sắc hài hòa, bố cục hợp lý, đáp ứng các chức năng cần thiết của một website thương mại điện tử. Website được phát triển dựa trên VueJs. - Xây dựng được website quản trị cho nhân viên của hàng với các chức năng quản lý thông tin đa dạng và tiện dụng.
Website được phát triển dựa trên ReactJs. Phạm vi đề tài: • Phạm vi môi trường: o Triển khai sản phẩm trên môi trường web. • Phạm vi chức năng: o Đối với phía admin: ▪ Quản lý sản phẩm, biến thể sản phẩm. ▪ Quản lý thương hiệu, loại sản phẩm.
▪ Quản lý nhập hàng. ▪ Quản lý tài khoản nhân viên. 3 o Đối với phía website: ▪ Đăng nhập, đăng ký tài khoản. ▪ Xác thực mail, quên mật khẩu.
▪ Quản lý thông tin tài khoản. ▪ Hiển thị danh sách sản phẩm, chi tiết sản phẩm. ▪ Tìm kiếm sản phẩm. ▪ Bộ lọc chi tiết sản phẩm.
▪ Chức năng giỏ hàng. ▪ Chức năng đặt hàng. ▪ Lịch sử mua hàng. Đối tượng sử dụng: - Tất cả người dùng có nhu cầu mua đồ công nghệ tại cửa hàng.
- Nhân viên, chủ cửa hàng. Phương pháp thực hiện: - Tìm hiểu về Spring Boot, ReactJS, VueJS, PostgreSQL. - Tham khảo các website liên quan để hiểu rõ về nghiệp vụ. - Tiến hành phân tích và thiết kế hệ thống.
- Tìm hiểu UX/UI và tiến hành thiết kế giao diện cho website. - Xây dựng website cho người dùng và website cho nhân viên. - Tiến hành triển khai và kiểm thử. Công nghệ sử dụng: - Backend: Spring Boot - Front-end: ReactJS, VueJS - Database: PostgreSQL - Source Control: GitHub 4 7.
Kết quả mong đợi: - Nắm bắt và áp dụng được các công nghệ mới để xây dựng sản phẩm đề tài. - Hiểu rõ các nghiệp vụ, chức năng của một website thương mại điện tử. - Áp dụng được các kiến thức đã học về phân tích và thiết kế hệ thống phần mềm, quy trình phát triển phần mềm, cũng như quản lý và triển khai dự án phần mềm để xây dựng website sản phẩm đề tài. - Giao diện website đẹp mắt, dễ sử dụng đối với người dùng.
- Có thể thay đổi giao diện một cách linh động và mở rộng thêm các chức năng mới cho website sản phẩm đề tài để phù hợp với nhu cầu thực tiễn trong tương lai. Kế hoạch thực hiện: Giai đoạn Thời gian Công việc Chuẩn bị - Tìm hiểu về Spring Boot và ReactJS, kiến thức về 21/02/2022 – 07/03/2022 PostgreSQL công nghệ - Phân tích, xác định, chức năng. Phân tích, - Thiết kế database. thiết kế 08/03/2022 – 08/04/2021 - Xây dựng base source.
hệ thống - Thiết kế UI. - Xây dựng giao diện admin với ReactJS. - Xây dựng giao diện website với VueJS. Xây dựng - Xây dựng RESTful API cho các chức 09/04/2021 – 16/05/2021 ứng dụng năng.
- Tích hợp API để hoàn thiện giao diện admin và website. - Thực hiện kiểm thử các luồng chức năng. Kiểm thử 17/05/2021 – 31/05/2021 - Tiến hành sửa lỗi phát sinh nếu có. và sửa lỗi - Cải thiện giao diện và hoàn thành ứng dụng Hoàn thiện - Viết báo cáo.
báo cáo và - Làm slide thuyết trình. 01/06/2022 – 10/06/2022 slide thuyết trình 6 9. Phân công công việc: Công việc Mô tả công việc Công việc chung - Tìm hiểu công nghệ. - Phân tích, xác định, chức năng yêu cầu.
- Chuẩn bị tài liệu, viết báo cáo. - Xây dựng website bán hàng. Phạm Tấn Khang Bùi Minh Huy Công việc cá nhân - Lập trình Backend, xây - Lập trình Frontend, xây dựng dựng RESTful API. giao diện admin.
- Thiết kế cơ sở dữ liệu. - Crawl data cho website. HCM, ngày 10 tháng 06 năm 2022 Xác nhận của CBHD Sinh viên (Ký tên và ghi rõ họ tên) (Ký tên và ghi rõ họ tên) ThS. Trần Thị Hồng Yến Phạm Tấn Khang | Bùi Minh Huy 7 MỤC LỤC LỜI CẢM ƠN .1 ĐỀ CƯƠNG CHI TIẾT .8 DANH MỤC BẢNG .12 DANH MỤC HÌNH ẢNH.
GIỚI THIỆU ĐỀ TÀI .2 Mô tả đề tài .3 Lý do chọn thiết kế Website .4 Công nghệ sử dụng .1 Tổng quan về ReactJS.2 Tổng quan về VueJS .3 Tổng quan về Spring Boot .4 Tổng quan về Spring Data JPA .5 Tổng quan về Postgres SQL .6 Tổng quan về Cloudinary .7 Tổng quan về Json Web Token (JWT). PHÂN TÍCH ĐẶC TẢ YÊU CẦU .1 Mô tả yêu cầu .1 Yêu cầu chức năng .2 Yêu cầu phi chức năng .2 Phân tích Use case .1 Use case quản lý .2 Danh sách Actor .3 Danh sách Use-case .4 Đặc tả Use-case.2 Use case website .2 Danh sách Actor .3 Danh sách Use case .4 Đặc tả Use Case. THIẾT KẾ HỆ THỐNG .1 Kiến trúc hệ thống.1 Kiến trúc hệ thống BackEnd .1 Mô tả kiến trúc hệ thống .2 Mô tả thành phần trong hệ thống .2 Mô tả kiến trúc FrontEnd .1 Phía hệ thống quản lý. THIẾT KẾ CƠ SỞ DỮ LIỆU .2 Danh sách các bảng dữ liệu .3 Mô tả từng bảng dữ liệu .5 Bảng CATEGORY_ATTRIBUTE .8 Bảng VARIANT_ATTRIBUTE .10 Bảng IMPORT_DETAIL .13 Bảng ORDER_DETAIL .16 Bảng VERIFICATION_TOKEN .17 Bảng PASSWORD_RESET_TOKEN.
THIẾT KẾ GIAO DIỆN .1 Phía hệ thống quản lý.2 Danh sách các màn hình.3 Mô tả chi tiết .1 Màn hình quản lý phân loại .2 Màn hình thêm phân loại .3 Màn hình chỉnh sửa phân loại .4 Màn hình quản lý thương hiệu .5 Màn hình tạo mới thương hiệu .6 Màn hình chỉnh sửa thương hiệu .7 Màn hình quản lý sản phẩm .8 Màn hình tạo mới sản phẩm .9 Màn hình chỉnh sửa sản phẩm .10 Màn hình chỉnh sửa phiên bản .11 Màn hình quản lý đơn hàng .12 Màn hình xem chi tiết đơn hàng .13 Màn hình xuất hóa đơn .14 Màn hình quản lý nhập hàng .15 Màn hình tạo mới đơn nhập .16 Màn hình xem chi tiết đơn nhập .17 Màn hình xuất đơn nhập .18 Màn hình quản lý tài khoản khách hàng .19 Màn hình quản lý tài khoản nhân viên .20 Màn hình tạo mới tài khoản nhân viên .21 Màn hình quản lý khuyến mãi .22 Màn hình tạo mới khuyến mãi .23 Màn hình chỉnh sửa khuyến mãi .24 Màn hình thống kê .2 Danh sách các màn hình.3 Chi tiết màn hình .2 Xem sản phẩm theo thương hiệu .3 Xem sản phẩm theo phân loại.4 Xem giỏ hàng .5 Thông tin đặt hàng .6 Chi tiết sản phẩm .7 Lịch sử mua hàng .8 Thay đổi thông tin cá nhân .9 Thay đổi mật khẩu .12 Quên mật khẩu .13 Đặt lại mật khẩu. 120 TÀI LIỆU THAM KHẢO. 122 11 DANH MỤC BẢNG Bảng 3.1 Yêu cầu chức năng.2 Danh sách Actor quản lý.3 Danh sách use-case quản lý .4 Đăc tả use-case đăng nhập (quản lý) .5 Đặc tả use-case đăng xuất (quản lý) .6 Đặc tả use-case chỉnh sửa thông tin (quản lý) .7 Đặc tả use-case đổi mật khẩu (quản lý) .8 Đặc tả use-case quản lý phân loại sản phẩm (quản lý) .9 Đặc tả use-case quản lý thương hiệu sản phẩm (quản lý) .10 Đặc tả use-case quản lý sản phẩm, phiên bản (quản lý) .