Tải bản đầy đủ (.pdf) (117 trang)

Xây dựng website bán linh kiện máy tính

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (10.31 MB, 117 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CƠNG NGHỆ THƠNG TIN

XÂY DỰNG WEBSITE
BÁN LINH KIỆN MÁY TÍNH

GVHD: ThS. NGUYỄN ĐĂNG QUANG
SVTH : PHẠM TRƯỜNG GIANG

SKL010681

Tp. Hồ Chí Minh, tháng 5/2023


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
--- ---

ĐỒ ÁN TỐT NGHIỆP
XÂY DỰNG WEBSITE BÁN LINH KIỆN MÁY TÍNH

SVTH: PHẠM TRƯỜNG GIANG
MSSV: 15110036
Khóa: 2015
Ngành: CƠNG NGHỆ THƠNG TIN
GVHD: ThS. NGUYỄN ĐĂNG QUANG


Tp. Hồ Chí Minh, tháng 5 năm 2023


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc

*******
Tp. Hồ Chí Minh, ngày tháng 06 năm 2023

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ và tên sinh viên: Phạm Trường Giang

MSSV: 15110036

Ngành: Công nghệ thông tin

Lớp: 15110CL2A

Giảng viên hướng dẫn: ThS. Nguyễn Đăng Quang ĐT: 0963636170
Ngày nhận đề tài: 20/02/2023

Ngày nộp đề tài: 29/05/2023

1. Tên đề tài:

XÂY DỰNG WEBSITE BÁN LINH KIỆN MÁY TÍNH.
2. Các số liệu, tài liệu ban đầu:

Tài liệu mô tả nội dung, yêu cầu thực hiện đề tài.
3. Nội dung thực hiện đề tài:


Khảo sát hiện trạng của các phần mềm quản lý cửa hàng, tìm hiểu về
nghiệp vụ và quy trình thực hiện trong khâu quản lý một cửa hàng như nhập
hàng, bán hàng, quản lý kho, thống kê doanh thu.
Sau khi tiếp nhận đầy đủ yêu cầu từ khách hàng sẽ bắt đầu các bước xây
dựng một phần mềm quản lý gồm vẽ sơ đồ use case cho từng yêu cầu, mô hình
hóa yêu cầu, vẽ sơ đồ luồng dữ liệu, thiết kế cơ sở dữ liệu, thiết kế giao diện và
cài đặt các chức năng cho phần mềm. Hoàn thành phần mềm sẽ tiến hành kiểm
thử và bàn giao cho khách hàng.
4. Sản phẩm:

Ứng dụng website thương mại điện tử bán các mặt hàng linh kiện máy
tính và mặt hàng liên quan.

i


TRƯỞNG NGÀNH

ThS. NGUYỄN ĐĂNG QUANG

GIẢNG VIÊN HƯỚNG DẪN

ThS. NGUYỄN ĐĂNG QUANG

ii


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ÁO VIÊN HƯỚNG DẪN
Họ và tên sinh viên: Phạm Trường Giang

MSSV: 15110036

Ngành: Công nghệ thông tin

Lớp: 15110CL2A

Tên đề tài: Xây dựng website bán linh kiện máy tính.
Họ và tên Giáo viên hướng dẫn: ThS. Nguyễn Đăng Quang

NHẬN XÉT
1. Về nội dung đề tài & khối lượng thực hiện:
...............................................................................................................................
................................................................................................................................
................................................................................................................................
................................................................................................................................
................................................................................................................................
2. Ưu điểm:
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
3. Khuyết điểm:
...............................................................................................................................

...............................................................................................................................
...............................................................................................................................
iii


...............................................................................................................................
...............................................................................................................................
4. Đề nghị cho bảo vệ hay không?
...............................................................................................................................
5. Đánh giá loại:
...............................................................................................................................

6. Điểm: ................................ (Bằng chữ: .......................................................... )
.............................................................................................................................

Tp. Hồ Chí Minh, ngày

tháng

năm 2023

Giáo viên hướng dẫn
(Ký & ghi rõ họ tên)

ThS. Nguyễn Đăng Quang

iv


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ÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên: Phạm Trường Giang

MSSV: 15110036

Ngành: Công nghệ thông tin

Lớp: 15110CL2A

Tên đề tài: Xây dựng website bán linh kiện máy tính.
Họ và tên Giáo viên hướng dẫn: ThS. Nguyễn Đăng Quang.

NHẬN XÉT
1. Về nội dung đề tài & khối lượng thực hiện:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
2. Ưu điểm:
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
3. Khuyết điểm:

...........................................................................................................................
...........................................................................................................................

v


...........................................................................................................................
...........................................................................................................................
4. Đề nghị cho bảo vệ hay không?
...........................................................................................................................
5. Đánh giá loại:
...........................................................................................................................

6. Điểm: ........................................ (Bằng chữ: ......................................................)
................................................................................................................................

Tp. Hồ Chí Minh, ngày

tháng

năm 2022

Giáo viên phản biện
(Ký & ghi rõ họ tên)

ThS. Lê Thị Minh Châu

vi



LỜI CẢM ƠN
Trong học kỳ này, được sự phân công của quý thầy cô khoa Đào tạo Chất
lượng cao, Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM, em đã hoàn thành Khóa
luận tốt nghiệp “XÂY DỰNG WEBSITE BÁN LINH KIỆN MÁY TÍNH”.
Em xin chân thành cảm ơn thầy ThS Nguyễn Đăng Quang, người đã hướng
dẫn cho nhóm em trong suốt q trình hồn thành khóa luận. Thầy khơng ngần ngại
chỉ dẫn em, định hướng đi cho em, để em hoàn thành tốt nhiệm vụ. Một lần nữa em
chân thành cảm ơn thầy và chúc thầy dồi dào sức khoẻ.
Em chân thành cảm ơn quý thầy, cô trong khoa Đào tạo Chất lượng cao,
Trường Đại Học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh đã tận tình truyền đạt
kiến thức trong những tháng năm em học tập tại trường. Với vốn kiến thức được tiếp
thu trong q trình học khơng chỉ là nền tảng cho q trình nghiên cứu khóa luận mà
còn là hành trang quý giá để em bước vào đời một cách vững chắc và tự tin.
Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế của một sinh viên,
bài báo cáo này không thể tránh được những thiếu sót. Em rất mong nhận được sự
chỉ bảo, đóng góp ý kiến của các quý thầy cô để em có điều kiện bổ sung, nâng cao ý
thức của mình, phục vụ tốt hơn cơng tác thực tế sau này.
Cuối cùng em kính chúc q thầy, cơ dồi dào sức khỏe và thành công trong sự
nghiệp cao quý.
Em xin chân thành cảm ơn!

Sinh viên thực hiện

Phạm Trường Giang

vii


MỤC LỤC
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

i
iii
v

LỜI CẢM ƠN

vii

MỤC LỤC

viii

DANH MỤC CÁC HÌNH ẢNH, BIỂU ĐỒ

xiii

DANH MỤC CÁC BẢNG BIỂU

xvi

DANH MỤC CÁC TỪ VIẾT TẮT

xvii

Chương 1: PHẦN MỞ ĐẦU

18


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

18

1.2. Ý nghĩa khoa học và thực tiễn của đề tài

18

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

19

1.4. Đối tượng nghiên cứu

19

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

19

1.6. Kết quả dự kiến

19

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

20

2.1. Tìm hiểu lý thút và cơng nghệ sử dụng trong đề tài:


20

2.2. Công Nghệ Back-End

21

2.2.1. Ngôn ngữ lập trình Java

21

2.2.2. Spring Framework

24
viii


2.2.3. Spring MVC

26

2.2.4. Spring Boot

29

2.2.5. Spring Security

30

2.3. Công Nghệ Front-End


31

2.3.1 HTML

31

2.3.2 CSS

32

2.3.3. JavaScript

33

2.3.4. Bootstrap

34

2.4. Hệ quản trị cơ sở dữ liệu MySQL

35

2.5. RESTful API

37

2.5.1. Giới thiệu

37


2.5.2. REST, RESTful API là gì?

37

2.5.2. Kiến trúc của REST

38

2.5.3. Tại sao nên sử dụng REST?

39

2.5.4. Resources

39

2.5.5. Mã phản hồi HTTP

39

2.6. JSON Web Token

40

2.7. Git & Github

44

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


46

3.1. Khảo sát hiện trạng

46

3.1.1. Trang GEARVN

46

3.1.2. Trang Tin học ngôi sao

47

3.1.3. Trang An Phát Computer

48

3.1.4. Tổng kết khảo sát

49

3.2. Nội dung phân tích và thiết kế

49

3.3. Xác định yêu cầu

50

ix


3.3.1. Yêu cầu chức năng về nghiệp vụ

50

3.3.2. Yêu cầu phi chức năng

54

3.4. Đặc tả hệ thống

54

3.5. Biểu đồ Use case

55

3.6. Đặc tả Use case

55

3.6.1 Use case chức năng đăng ký

55

3.6.2. Use case đăng nhập hệ thống

56


3.6.3. Use case tìm kiếm sản phẩm

57

3.6.4. Use case xem thông tin sản phẩm

58

3.6.5. Use case thêm sản phẩm vào giỏ hàng

59

3.6.6. Use case khách hàng tương tác hệ thống

60

3.6.7. Use case chức năng quản lý danh mục sản phẩm

62

3.6.8. Use case chức năng quản lý sản phẩm

64

3.6.9. Use case chức năng quản lý khách hàng

66

3.6.10. Use case chức năng quản lý đơn hàng


67

3.6.11. Use case chức năng thống kê

69

3.7. Biểu đồ tuần tự

71

Chương 4: THIẾT KẾ VÀ XÂY DỰNG WEBSITE

76

4.1. Xây dựng các chức năng

76

4.1.1. Các chức năng hệ thống

76

4.1.2. Các chức năng phần người dùng

76

4.1.3. Các chức năng phần quản trị

77


4.1.4. Sơ đồ ERD

78

4.2. Biểu đồ lớp

80

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

81

4.4. Xây dựng RESTful API

85
x


4.5. Thành phần giao diện

91

4.6. Giao diện trang quản lý

93

4.6.1. Chức năng quản lý thể loại

93


4.6.2. Chức năng quản lý sản phẩm

94

4.6.3. Chức năng quản lý khách hàng

95

4.6.4. Chức năng quản lý đơn hàng

96

4.6.5. Chức năng thống kê

97

4.7. Giao diện trang mua sắm

98

4.7.1. Chức năng trang chủ

98

4.7.2. Chức năng xem mục sản phẩm

100

4.7.3. Chức năng xem chi tiết sản phẩm


101

4.7.4. Chức năng yêu thích

102

4.7.5. Chức năng giỏ hàng

103

4.7.6. Chức năng đặt hàng

104

Chương 5: TRIỂN KHAI VÀ KIỂM THỬ

106

5.1. Cài đặt hệ thống

106

5.1.1. Thiết lập dự án

106

5.1.2. Cài đặt ứng dụng

107


5.2. Triển khai ứng dụng

108

5.3. Chiến lược kiểm thử

108

5.4. Kế hoạch kiểm thử

109

Chương 6: KẾT LUẬN

112

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

112

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

112

6.3. Hướng phát triển của đề tài

113
xi



TÀI LIỆU THAM KHẢO

114

xii


DANH MỤC CÁC HÌNH ẢNH, BIỂU ĐỒ
Hình 1 Thành phần chính trong hệ thống ................................................................20
Hình 2 Các thành phần trong Java SE của JDK Oracle ...........................................23
Hình 3 Spring Framework logo ................................................................................24
Hình 4 Tổng quan Spring Framework .....................................................................25
Hình 5 Các module chính trong Spring Framework ................................................26
Hình 6 Mơ hình MVC .............................................................................................. 26
Hình 7 Mô hình MVC thường đi cùng với kiến trúc 3 lớp ......................................27
Hình 8 Luồng xử lý trong Spring MVC ................................................................... 28
Hình 9 Luồng xử lý request và response bởi DispatcherServlet .............................. 29
Hình 10 Kiến trúc Spring Boot ................................................................................30
Hình 11 Cấu trúc của một thành phần CSS ............................................................32
Hình 12 Hệ quản trị cơ sở dữ liệu MySQL ..............................................................35
Hình 13 Mơ hình Client - Server ..............................................................................36
Hình 14 REST API Design ...................................................................................... 37
Hình 15 Sơ lược về luồng xử lý của JWT ................................................................ 44
Hình 16 Mơ hình hoạt động của DVCS ................................................................... 45
Hình 17 Trang chủ GEARVN ..................................................................................46
Hình 18 Trang chủ Tin học ngơi sao........................................................................ 47
Hình 19 Xây dựng cấu hình trong Tin học ngơi sao ................................................ 48
Hình 20 Trang chủ An Phát .....................................................................................49
Hình 21 Use case tổng quan .....................................................................................55

Hình 22 Use case chức năng của khách hàng ..........................................................60
Hình 23 Biểu đồ Use case chức năng quản lý danh mục sản phẩm .........................62
Hình 24 Biểu đồ Use case chức năng quản lý sản phẩm ......................................... 64
Hình 25 Biểu đồ use case chức năng quản lý khách hàng .......................................66
Hình 26 Biểu đồ use case phân rã chức năng quản lý đơn hàng ..............................67
Hình 27 Biểu đồ use case phân rã chức năng thống kê............................................ 69
Hình 28 Biểu đồ tuần tự đăng ký .............................................................................71
xiii


Hình 29 Biểu đồ tuần tự đăng nhập ......................................................................... 72
Hình 30 Biểu đồ tuần tự tìm kiếm ............................................................................73
Hình 31 Biểu đồ tuần tự xem sản phẩm ................................................................... 73
Hình 32 Biểu đồ tuần tự thêm giỏ hàng ...................................................................74
Hình 33 Biểu đồ t̀n tự thêm ưa thích ....................................................................74
Hình 34 Biểu đồ t̀n tự thanh toán ......................................................................... 75
Hình 35 Sơ đồ ERD ................................................................................................. 78
Hình 36 Tạo thực cơ sở dữ liệu bằng MySQL Workbench ..................................... 79
Hình 37: Biểu đồ lớp ................................................................................................ 80
Hình 38 Biểu đồ hoạt động đăng ký ........................................................................ 81
Hình 39 Biểu đồ hoạt động đăng nhập .....................................................................82
Hình 40 Biểu đồ hoạt động xem sản phẩm .............................................................. 82
Hình 41 Biểu đồ hoạt động xem sản phẩm ..............................................................83
Hình 42 Biểu đồ hoạt động đặt hàng COD ..............................................................83
Hình 43 Biểu đồ hoạt động đặt hàng Paypal ............................................................84
Hình 44 Biểu đồ hoạt động xác nhận đơn hàng .......................................................84
Hình 45 Sơ đồ thành phần giao diện quản lý ...........................................................91
Hình 46 Sơ đồ thành phần giao diện người dùng ....................................................92
Hình 47 Trang quản trị .............................................................................................93
Hình 48 Trang quản lý thể loại ................................................................................94

Hình 49 Giao diện chức năng quản lý sản phẩm .....................................................95
Hình 50 Giao diện chức năng quản lý khách hàng ..................................................96
Hình 51 Giao diện chức năng quản lý đơn hàng ......................................................97
Hình 52 Giao diện chức năng thống kê .................................................................... 98
Hình 53 Giao diện trang chủ ..................................................................................100
Hình 54 Tất cả sản phẩm trong cửa hàng ...............................................................101
Hình 55 Giao diện chi tiết sản phẩm ......................................................................102
Hình 56 Giao diện trang u thích .........................................................................103
Hình 57 Giao diện giỏ hàng ...................................................................................103
xiv


Hình 58 Giao diện xem đơn đặt hàng ....................................................................104
Hình 59 Thông tin đặt hàng gồm địa chỉ giao và phương thức thanh tốn ............105
Hình 60 Giao diện xác nhận đặt hàng ....................................................................105
Hình 61 Cấu trúc một dự án Spring Boot ..............................................................106
Hình 62 Kiến trúc các tầng trong đồ án web ..........................................................107

xv


DANH MỤC CÁC BẢNG BIỂU
Bảng 1 Bộ phận quản trị............................................................................................50
Bảng 2 Người sử dụng ..............................................................................................52
Bảng 3 Yêu cầu chức năng hệ thống .........................................................................53
Bảng 4 Use case chức năng của khách hàng .............................................................60
Bảng 5 Use case chức năng quản lý danh mục sản phẩm .........................................62
Bảng 6 Use case quản lý sản phẩm cửa hàng............................................................64
Bảng 7 Mô tả Use case quản lý khách hàng .............................................................66
Bảng 8 Use case Chức năng quản lý hóa đơn ...........................................................67

Bảng 9 Use case chức năng thống kê ........................................................................69
Bảng 10 Chức năng phần hệ thống ...........................................................................76
Bảng 11 Chức năng phía người dùng........................................................................76
Bảng 12 Chức năng phần quản trị .............................................................................77
Bảng 13 Chức năng thêm: .......................................................................................109
Bảng 14 Chức năng sửa ..........................................................................................110
Bảng 15 Chức năng xóa ..........................................................................................110
Bảng 16 Chức năng tìm kiếm thông tin ..................................................................111

xvi


DANH MỤC CÁC TỪ VIẾT TẮT
Từ viết tắt

Từ đầy đủ

1

ERD

Entity-Relationship Diagram

2

UML

Unified Modeling Language

3


MVC

Model – View – Controller

4

API

Application Programming Interface

5

REST

REpresentational State Transfer

6

JWT

JSON Web Token

7

Java EE

Java Platform, Enterprise Edition

8


JDK

Java Developement Kit

9

JSON

JavaScript Object Notation

10

ORM

Object Relational Mapping

11

JSP

Java Server Pages

12

CSDL

Cơ sở dữ liệu

STT


xvii


Chương 1: PHẦN MỞ ĐẦU
1.1. Tính cấp thiết của đề tài
Hiện nay với sự bùng nổ của công nghệ và cuộc cách mạng công nghiệp 4.0 tạo ra
thúc đẩy nhảy vọt về sản xuất và tiêu dùng. Nhờ tác nhân đó mà thương mại điện tử bùng
nổ mạnh mẽ mà mua hàng online đang là xu thế của toàn cầu. Việc phát triển ứng dụng
quản lý bán hàng sẽ giúp cho người bán, người mua có thể bn bán, mua hàng được mọi
lúc, mọi nơi, bất cứ khi nào, tiết kiệm được chi phí thuê mặt bằng kinh doanh chỉ cần có
máy tính hoặc điện thoại smartphone kết nối Internet. Người quản trị cũng dễ dàng quản
lý các thông tin bài đăng cũng như các thông tin đơn hàng một cách nhanh chóng.
Với mong muốn góp một phần cơng sức nhỏ bé của mình trong việc giúp đỡ người
mua, người bán dễ dàng tiếp cận với hình thức mua bán online, trong phạm vi làm đồ án
tốt nghiệp này em đã quyết định lựa chọn đề tài “Xây dựng website bán linh kiện máy
tính” để trau dồi kiến thức cũng như áp dụng các kiến thức đã được học vào xây dựng lên
hệ thống.

1.2. Ý nghĩa khoa học và thực tiễn của đề tài
Ý nghĩa khoa học
Là sự nghiên cứu tiếp cận mạng tính thực hành để phát triển ra các sản phẩm phần
mềm hiệu quả phục vụ nhu cầu ngành Cơng nghệ thơng tin nói chung và các ngành kỹ
thuật nói riêng trong thời kỳ bùng nổ cơng nghệ như hiện nay.
Tiếp xúc với các công nghệ hiện đại, mới mẻ.
Ý nghĩa thực tiễn
Em nhận thấy việc có website thương mại sẽ giúp:
• Người quản trị: Thấy được tổng quan tất cả quá trình mua bán. Theo dõi, đưa
ra quyết định và xử lý các vấn đề phát sinh một cách kịp thời. Quản lý khách
hàng, sản phẩm, đơn hàng chặt chẽ, thuận tiện.

• Người mua hàng: Đáp ứng mua hàng qua mạng, đặt hàng dễ dàng, đem đến
cho khách hàng sự thuận tiện khi mua sắm.

18



×