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

Xây dựng website hỗ trợ tìm kiếm việc làm puzzle tk

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.47 MB, 135 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
HỖ TRỢ TÌM KIẾM VIỆC LÀM PUZZLE.TK

GVHD: ThS. MAI ANH THƠ
SVTH : LÊ THỊ NGỌC DIỂM
LÊ VŨ BẢO

SKL011473

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


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA CƠNG NGHỆ THƠNG TIN
-----🙞🙜🕮🙞🙜-----

KHĨA LUẬN TỐT NGHIỆP
Đề Tài:

XÂY DỰNG WEBSITE HỖ TRỢ TÌM KIẾM VIỆC
LÀM PUZZLE.TK

Giảng viên hướng dẫn: ThS. Mai Anh Thơ
SVTH: Lê Thị Ngọc Diễm - 19110335


Lê Vũ Hảo - 19110359

KHĨA 2019 - 2023
Tp. Hồ Chí Minh, tháng 07 năm 2023


ĐH SƯ PHẠM KỸ THUẬT TP. HCM

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CNTT

Độ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 1: Lê Thị Ngọc Diễm

MSSV 1: 19110335

Họ và tên Sinh viên 2: Lê Vũ Hảo

MSSV 2: 19110359

Ngành: Công nghệ thông tin
Tên đề tài: Xây dựng website hỗ trợ tìm kiếm việc làm Puzzle.tk
Họ và tên Giáo viên hướng dẫn: ThS. Mai Anh Thơ

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:

4. Đề nghị cho bảo vệ hay không?
5. Đánh giá loại:
6. Điểm:
Tp. Hồ Chí Minh, ngày

tháng 07 năm 2023

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


ĐH SƯ PHẠM KỸ THUẬT TP. HCM

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CNTT

Độ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 1: Lê Thị Ngọc Diễm

MSSV 1: 19110335

Họ và tên Sinh viên 2: Lê Vũ Hảo

MSSV 2: 19110359

Ngành: Công nghệ thông tin
Tên đề tài: Xây dựng website hỗ trợ tìm kiếm việc làm Puzzle.tk
Họ và tên Giáo viên phản biện: TS.Huỳnh Xuân Phụng
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:

4. Đề nghị cho bảo vệ hay không?
5. Đánh giá loại:
6. Điểm:
Tp. Hồ Chí Minh, ngày

tháng 07 năm 2023

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



LỜI CẢM ƠN
Lời đầu tiên, nhóm xin phép được gửi lời cảm ơn chân thành đến với 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 cho nhóm chúng em được trau dồi, học tập và phát triển nền tảng kiến thức
vững chắc để thực hiện đề tài này.
Bên cạnh đó, nhóm chúng em xin gửi đến cơ Mai Anh Thơ lời cảm ơn chân thành
và sâu sắc nhất. Cơ đã tận tâm hướng dẫn nhiệt tình và đưa ra những góp ý quý báu cho
nhóm chúng em trong suốt quá trình từ lúc bắt đầu cũng như kết thúc đề tài này.
Nhờ có những nền tảng kiến thức chuyên ngành vững chắc cộng thêm với những
kinh nghiệm và u cầu thực tế ngồi xã hội thơng qua việc học ở trường và thực tập ở
các công ty. Tập thể các thầy cô Khoa Công Nghệ Thông Tin và đặc biệt cô Mai Anh
Thơ đã đem đến cho chúng em một khối lượng kiến thức và kinh nghiệm khổng lồ về
chuyên ngành và công việc trong tương lai. Đặc biệt điều này đã giúp và thơi thúc chúng
em hồn thành được đề tài. Đây sẽ là hành trang vô cùng lớn của chúng em trước khi
bước ra một cuộc sống mới.
Tuy nhiên lượng kiến thức là vô tận và với khả năng hạn hẹp chúng em đã rất cố
gắng để hồn thành một cách tốt nhất. Chính vì vậy việc xảy ra những thiếu sót là điều
khó có thể tránh khỏi. Chúng em hi vọng nhận được sự góp ý tận tình của q thầy (cơ)
qua đó chúng em có thể rút ra được bài học kinh nghiệm và hoàn thiện và cải thiện nâng
cấp lại sản phẩm của mình một cách tốt nhất có thể.
Chúng em xin chân thành cảm ơn!
Nhóm thực hiện
Lê Thị Ngọc Diễm – 19110335
Lê Vũ Hảo – 19110359


Trường ĐH Sư Phạm Kỹ Thuật TP.HCM
Khoa Công nghệ Thông tin

ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP

Họ và Tên SV thực hiện 1 : Lê Thị Ngọc Diễm

Mã Số SV : 19110335

Họ và Tên SV thực hiện 2 : Lê Vũ Hảo

Mã Số SV : 19110359

Thời gian làm luận văn : Từ :

Đến :

Chun ngành: Cơng nghệ phần mềm
Tên khóa luận tốt nghiệp: Xây dựng website hỗ trợ tìm kiếm việc làm Puzzle.tk
Giáo viên hướng dẫn: ThS. Mai Anh Thơ
Nhiệm vụ của khóa luận:
1. Tìm hiểu về các cơng nghệ: ReactJS, Gastby framework, Restful API, Json Web
Token, Spring boot.
2. Sử dụng Spring boot Restful API để xây dựng Backend, viết các API cho các module
trong hệ thống.
3. Sử dụng ReactJS, Gastby framework để xây dựng và xử lý giao diện Website cho
người dùng.
4. Sử dụng Postgres để lưu trữ dữ liệu của người dùng trong hệ thống.
5. Sử dụng Json Web Token để xác thực và phân quyền cho hệ thống các API, đảm bảo
tính bảo mật cho hệ thống.
6. Tích hợp thanh toán trực tuyến với Paypal, đăng nhập bằng tài khoản Google.
Đề cương khóa luận:
PHẦN MỞ ĐẦU
1. Tính cấp thiết của đề tài
2. Đối tượng nghiên cứu

3. Phạm vi nghiên cứu
4. Mục tiêu đề tài
5. Ý nghĩa khoa học và thực tiễn
PHẦN NỘI DUNG
CHƯƠNG 1. KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
1.1. Khảo sát hiện trạng


1.2. Xác định yêu cầu
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
2.1. Kiến trúc hệ thống
2.2. Các công nghệ áp dụng
CHƯƠNG 3. THIẾT KẾ PHẦN MỀM
3.1. Mơ hình hố u cầu
3.2. Lược đồ lớp
3.3. Thiết kế csdl
3.4. Thiết kế giao diện
CHƯƠNG 4. CÀI ĐẶT VÀ KIỂM THỬ
4.1. Cài đặt
4.2. Kiểm thử
PHẦN KẾT LUẬN
1. Kết quả đạt được
2. Ưu điểm
3. Nhược điểm
4. Hướng phát triển
TÀI LIỆU THAM KHẢO


KẾ HOẠCH THỰC HIỆN
STT


Thời gian

Công việc
- Khảo sát hiện trạng.

1

14/03/2023 – 20/03/2023

- Thiết kế usecase và mơ hình hóa u
cầu.
- Thiết kế cơ sở dữ liệu.
- Tìm hiểu về thư viện ReactJS,

2

21/03/2023 – 07/04/2023

HTML, SCSS
- Tìm hiểu về Spring boot.
- Điều chỉnh cơ sở dữ liệu
- Tìm hiểu về JSON Web Token để
ứng dụng vào xác thực và phân
quyền API của hệ thống.

3

08/04/2023 – 17/04/2023 -


Tìm hiểu cách xây dựng RESTful
API

- Tìm hiểu về PostgresSQL để áp
dụng vào lưu trữ dữ liệu.
- Tiến hành phát triển API dựa trên
các kiến thức đã tìm hiểu được và
4

18/04/2023 – 08/05/2023

các tài liệu.
- Tiến hành xây dựng giao diện người
dùng cho hệ thống.
-

5

Tích hợp xử lý giao diện với các
chức năng của API.

09/05/2023 – 08/06/2023
-

Điều chỉnh và hoàn thiện các chức
năng của hệ thống.

6

09/06/2023 – 20/06/2023 -


Tích hợp thêm sdk, api của bên thứ
3 hỗ trợ xử lý các logic nghiệp vụ

Ghi chú


7

21/06/2023 – 28/06/2023

sửa lỗi.
-

8

Kiểm thử chương trình và tiến hành

29/06/2023 – 07/07/2023 -

Tìm hiểu và thực hành deploy.
Viết và hồn thiện báo cáo.

Giáo viên hướng dẫn

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

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

Người viết đề cương

(Ký và ghi rõ họ tên)
Hảo
Lê Vũ Hảo - 19110359


MỤC LỤC
PHẦN MỞ ĐẦU ......................................................................................................... 1
1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI ...........................................................................1
2. ĐỐI TƯỢNG NGHIÊN CỨU .................................................................................1
3. PHẠM VI NGHIÊN CỨU ......................................................................................2
4. MỤC TIÊU ĐỀ TÀI ................................................................................................ 2
5. Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN .............................................................2
6. PHÂN CÔNG ..........................................................................................................3
PHẦN NỘI DUNG...................................................................................................... 4
CHƯƠNG 1: KHẢO SÁT HIỆN TRẠNG VÀ MÔ HÌNH HỐ U CẦU ...........4
1.1 KHẢO SÁT HIỆN TRẠNG..............................................................................4
1.1.1 Vieclam24h.vn............................................................................................4
1.1.2 Topcv.vn .....................................................................................................5
1.1.3 Vlance.vn ....................................................................................................6
1.1.4 Linkedin.com .............................................................................................. 8
1.1.5 Glints.com ................................................................................................ 10
1.1.6 Kết luận ....................................................................................................11
1.2 XÁC ĐỊNH YÊU CẦU ...................................................................................13
1.2.1 Yêu cầu chức năng ...................................................................................13
1.2.2 Yêu cầu phi chức năng .............................................................................14
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT..........................................................................15
2.1 KIẾN TRÚC HỆ THỐNG ..............................................................................15
2.2 CÁC CÔNG NGHỆ SỬ DỤNG .....................................................................16
2.2.1 ReactJS Framework ..................................................................................16
2.2.2 Spring framework .....................................................................................21

2.2.3 Web client .................................................................................................22
2.2.4 PostgresSQL ............................................................................................. 23
2.2.5 Redis .........................................................................................................24
2.2.6 Jasypt ........................................................................................................26
2.2.7 AWS S3 ....................................................................................................27
2.2.8 Paypal .......................................................................................................29
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ PHẦN MỀM .......................................31


3.1 MƠ HÌNH HỐ U CẦU PHÍA KHÁCH, NGƯỜI LAO ĐỘNG VÀ NHÀ
TUYỂN DỤNG .....................................................................................................31
3.1.1 Usecase “Đăng nhập” ...............................................................................32
3.1.2 Usecase “Đăng ký” ...................................................................................33
3.1.3 Usecase “Xem thông tin tuyển dụng” ......................................................35
3.1.4 Usecase “Đổi mật khẩu”...........................................................................36
3.1.5 Usecase “Chỉnh sửa thông tin cá nhân” ...................................................37
3.1.6 Usecase “Xem trang cá nhân thành viên” ................................................39
3.1.7 Usecase “Thêm thông báo tuyển dụng” ...................................................40
3.1.8 Usecase “Chỉnh sửa thơng báo tuyển dụng” ............................................41
3.1.9 Usecase “Xóa thơng báo tuyển dụng” ......................................................42
3.1.10 Usecase “Theo dõi nhà tuyển dụng” ......................................................43
3.1.11 Usecase “Theo dõi công ty” ...................................................................45
3.1.12 Usecase “Ứng tuyển” .............................................................................46
3.1.13 Usecase “Thêm thông báo công việc” ....................................................47
3.1.14 Usecase “Phản hồi yêu cầu ứng tuyển” ..................................................49
3.1.15 Usecase “Thêm tài khoản” .....................................................................50
3.1.16 Usecase “Xoá tài khoản” ........................................................................52
3.1.17 Usecase “Reset mật khẩu” ......................................................................53
3.1.18 Usecase “Thêm ExtraInfo” .....................................................................54
3.1.19 Usecase “Sửa ExtraInfo” ........................................................................55

3.1.20 Usecase “Xoá ExtraInfo” .......................................................................56
3.1.21 Usecase “Thống kê số lượng Job được tạo”...........................................57
3.1.22 Usecase “Thống kê số lượng tài khoản được tạo” .................................58
3.1.23 Usecase “Xem profile ứng viên”. ...........................................................59
3.1.24 Usecase “Thêm thông tin công ty” .........................................................60
3.1.25 Usecase “Lưu thông tin tuyển dụng” .....................................................62
3.1.26 Usecase “Xem đơn ứng tuyển” .............................................................. 63
3.1.27 Usecase “Xem đánh giá, gợi ý từ Hirize cho đơn ứng tuyển” ...............64
3.1.28 Usecase “Thêm bình luận” .....................................................................66
3.1.29 Usecase “Sửa bình luận” ........................................................................67
3.1.30 Usecase “Xố bình luận” ........................................................................68
3.1.31 Usecase “Thêm bài chia sẻ mới” ............................................................ 70
3.1.32 Usecase “Chỉnh sửa thông tin bài chia sẻ” .............................................71


3.1.33 Usecase “Xóa thơng tin bài chia sẻ” ......................................................72
3.2 LƯỢC ĐỒ LỚP ............................................................................................... 74
3.3 THIẾT KẾ CƠ SỞ DỮ LIỆU .........................................................................75
3.3.1 Lược đồ sơ sở dữ liệu ...............................................................................75
3.3.2 Chi tiết bảng dữ liệu .................................................................................75
3.4 THIẾT KẾ GIAO DIỆN..................................................................................86
3.4.1 Giao diện chính phía người dùng ............................................................. 86
3.4.2 Giao diện phía Admin ..............................................................................99
CHƯƠNG 4: CÀI ĐẶT VÀ KIỂM THỬ ...............................................................106
4.1 CÀI ĐẶT HỆ THỐNG..................................................................................106
4.1.1 Cài đặt website .......................................................................................106
4.1.2 Kiểm thử bản beta đã deploy ..................................................................106
4.2 KIỂM THỬ HỆ THỐNG ..............................................................................107
4.2.1 Kế hoạch kiểm thử..................................................................................107
4.2.2 Quy trình thiết kế kiểm thử ....................................................................107

4.2.3 Quy trình chạy bộ kiểm thử ....................................................................108
4.2.4 Kiểm thử một số chức năng của hệ thống ..............................................109
PHẦN KẾT LUẬN ................................................................................................. 116
1.

KẾT QUẢ ĐÃ ĐẠT ĐƯỢC ...........................................................................116
1.1.

VỀ LÝ THUYẾT ....................................................................................116

1.2.

VỀ HỆ THỐNG ......................................................................................116

2.

ƯU ĐIỂM ........................................................................................................117

3.

NHƯỢC ĐIỂM ...............................................................................................117

4.

HƯỚNG PHÁT TRIỂN ..................................................................................117

TÀI LIỆU THAM KHẢO ....................................................................................... 118


DANH MỤC HÌNH ẢNH

Hình 1.1 Trang vieclam24h.vn .............................................................................4
Hình 1.2 Trang topcv.vn.......................................................................................5
Hình 1.3 Trang vlance.vn .....................................................................................6
Hình 1.4 trang linkedin.com .................................................................................8
Hình 1.5 Trang glints.com ..................................................................................10
Hình 2.1 Kiến trúc hệ thống ...............................................................................15
Hình 2.2 Virtual DOM trong ReactJS ................................................................ 17
Hình 2.3 One-way binding trong ReactJS ..........................................................18
Hình 2.4 Luồng hoạt động của Redux-saga .......................................................20
Hình 2.5 Các thành phần cấu thành Spring Boot ...............................................21
Hình 2.6 Spring WebClient ................................................................................22
Hình 2.7 Sơ đồ ứng dụng WebClient vào hệ thống ...........................................23
Hình 2.8 PostgresSQL ........................................................................................23
Hình 2.9 Hệ thống sử dụng hệ cơ sở dữ liệu PostgresSQL ................................ 24
Hình 2.10 Ứng dụng Redis trong hệ thống ........................................................26
Hình 2.11 Jasypt .................................................................................................26
Hình 2.12 Ứng dụng Jasypt mã hố thơng tin nhạy cảm ...................................27
Hình 2.13 Ứng dụng Jasypt mã hố thơng tin nhạy cảm ...................................27
Hình 2.14 AWS S3 ............................................................................................. 27
Hình 2.15 Ứng dụng AWS trong hệ thống.........................................................29
Hình 2.16 Paypal ................................................................................................ 29
Hình 2.17 Tích hợp thanh tốn Paypal trong hệ thống ......................................30
Hình 3.1 Usecase phía khách, người lao động và nhà tuyển dụng.....................31
Hình 3.2 Usecase phía quản trị viên và phần chung ..........................................32
Hình 3.3 Lược đồ tuần tự “Đăng nhập” ............................................................. 33
Hình 3.4 Lược đồ tuần tự “Đăng ký” .................................................................35
Hình 3.5 Lược đồ tuần tự “Xem thơng tin tuyển dụng” .....................................36
Hình 3.6 Lược đồ tuần tự “Đổi mật khẩu” .........................................................37
Hình 3.7 Lược đồ tuần tự “Chỉnh sửa thơng tin cá nhân” ..................................39
Hình 3.8 Lược đồ tuần tự “Xem trang cá nhân thành viên”.............................. 40

Hình 3.9 Lược đồ tuần tự “Thêm thơng báo tuyển dụng”..................................41
Hình 3.10 Lược đồ tuần tự “Chỉnh sửa thơng báo tuyển dụng”.........................42
Hình 3.11 Lược đồ tuần tự “Xóa thơng báo tuyển dụng” ..................................43
Hình 3.12 Lược đồ tuần tự “Theo dõi nhà tuyển dụng” .....................................45
Hình 3.13 Lược đồ tuần tự “Theo dõi cơng ty” .................................................46
Hình 3.14 Lược đồ tuần tự “Ứng tuyển” ............................................................ 47
Hình 3.15 Lược đồ tuần tự “Thêm thơng báo cơng việc” ..................................48
Hình 3.16 Lược đồ tuần tự “Xử lý các yêu cầu ứng tuyển” ............................... 50
Hình 3.17 Lược đồ tuần tự “Thêm tài khoản”....................................................51
Hình 3.18 Lược đồ tuần tự “Xố tài khoản” ......................................................52
Hình 3.19 Lược đồ tuần tự “Reset mật khẩu” ....................................................54
Hình 3.20 Lược đồ tuần tự “Thêm ExtraInfo” ...................................................55


Hình 3.21 Lược đồ tuần tự “Sửa ExtraInfo” ......................................................56
Hình 3.22 Lược đồ tuần tự “Xố ExtraInfo” ......................................................57
Hình 3.23 Lược đồ tuần tự “Thống kê Job” .......................................................58
Hình 3.24 Lược đồ tuần tự “Thống kê tài khoản” ..............................................59
Hình 3.25 Lược đồ tuần tự “Xem profile ứng viên” ..........................................60
Hình 3.26 Lược đồ tuần tự “Thêm thơng tin cơng ty” .......................................61
Hình 3.27 Lược đồ tuần tự “Lưu thơng tin tuyển dụng” ....................................63
Hình 3.28 Lược đồ tuần tự “Xem đơn ứng tuyển” .............................................64
Hình 3.29 Lược đồ tuần tự “Xem đánh giá từ Hirize cho đơn ứng tuyển” ........65
Hình 3.30 Lược đồ tuần tự “Thêm bình luận” ...................................................67
Hình 3.31 Lược đồ usecase sửa bình luận ..........................................................68
Hình 3.32 Lược đồ tuần tự “Xố bình luận” ......................................................69
Hình 3.33 Lược đồ tuần tự “Thêm bài chia sẻ mới” ..........................................71
Hình 3.34 Lược đồ tuần tự “Chỉnh sửa thông tin bài chia sẻ” ...........................72
Hình 3.35 Lược đồ tuần tự “Xóa thơng tin bài chia sẻ” ....................................73
Hình 3.36 Lược đồ lớp .......................................................................................74

Hình 3.37 Lược đồ cơ sở dữ liệu ........................................................................75
Hình 3.38 Giao diện Trang đăng nhập .............................................................. 86
Hình 3.39 Giao diện Trang đăng ký ...................................................................87
Hình 3.40 Giao diện Trang tìm kiếm Job ...........................................................88
Hình 3.41 Giao diện Trang thơng tin liên hệ......................................................89
Hình 3.42 Giao diện Trang chủ ..........................................................................90
Hình 3.43 Giao diện Chi tiết Job ........................................................................91
Hình 3.44 Giao diện Dashboard Employer ........................................................92
Hình 3.45 Giao diện List các job đã đăng của Employer ...................................93
Hình 3.46 Giao diện List các applicant của Employer .......................................94
Hình 3.47 Giao diện My Account của Candidate ..............................................95
Hình 3.48 Giao diện My Account của Candidate ..............................................96
Hình 3.49 Giao diện Chỉnh sửa thơng tin cá nhân .............................................97
Hình 3.50 Giao diện Quản lí CV ........................................................................97
Hình 3.51 Giao diện tạo CV ...............................................................................98
Hình 3.52 Giao diện Trang Dashboard .............................................................. 99
Hình 3.53 Giao diện Trang List All Job ...........................................................100
Hình 3.54 Giao diện Trang List All Company .................................................101
Hình 3.55 Giao diện Trang thêm Company .....................................................102
Hình 3.56 Giao diện Trang List All Extra Info ................................................103
Hình 3.57 Giao diện Trang thêm Extra Info ....................................................104
Hình 3.58 Giao diện Trang cập nhật thơng tin tài khoản admin ......................104
Hình 4.1 Quy trình thiết kế kiểm thử ...............................................................107
Hình 4.2 Quy trình chạy bộ kiểm thử ...............................................................108


DANH MỤC BẢNG BIỂU
Bảng 0.1 Bảng phân công công việc ....................................................................3
Bảng 3.1 Đặc tả usecase “Đăng nhập” ............................................................... 32
Bảng 3.2 Đặc tả usecase “Đăng ký” ...................................................................34

Bảng 3.3 Đặc tả usecase “Xem thông tin tuyển dụng” ......................................35
Bảng 3.4 Đặc tả usecase “Đổi mật khẩu” ...........................................................36
Bảng 3.5 Đặc tả usecase “Chỉnh sửa thông tin cá nhân” ...................................38
Bảng 3.6 Đặc tả usecase “Xem trang cá nhân thành viên” ................................ 39
Bảng 3.7 Đặc tả usecase “Thêm thông báo tuyển dụng” ...................................40
Bảng 3.8 Đặc tả usecase “Chỉnh sửa thông báo tuyển dụng” ............................ 41
Bảng 3.9 Đặc tả usecase “Xóa thơng báo tuyển dụng” ......................................42
Bảng 3.10 Đặc tả usecase “Theo dõi nhà tuyển dụng” ......................................44
Bảng 3.11 Đặc tả usecase “Theo dõi nhà tuyển dụng” ......................................45
Bảng 3.12 Đặc tả usecase “Ứng tuyển” ............................................................. 46
Bảng 3.13 Đặc tả usecase “Thêm thông báo công việc” ....................................47
Bảng 3.14 Đặc tả usecase “Xử lý các yêu cầu ứng tuyển” ................................ 49
Bảng 3.15 Đặc tả usecase “Thêm tài khoản” .....................................................50
Bảng 3.16 Đặc tả usecase “Xoá tài khoản” ........................................................52
Bảng 3.17 Đặc tả usecase “Reset mật khẩu” ......................................................53
Bảng 3.18 Đặc tả usecase “Thêm ExtraInfo” .....................................................54
Bảng 3.19 Đặc tả usecase “Sửa ExtraInfo” ........................................................55
Bảng 3.20 Đặc tả usecase “Xoá ExtraInfo” .......................................................56
Bảng 3.21 Đặc tả usecase “Thống kê số lượng Job được tạo” ...........................57
Bảng 3.22 Đặc tả usecase “Thống kê số lượng tài khoản được tạo” .................58
Bảng 3.23 Đặc tả usecase “Xem profile ứng viên” ............................................59
Bảng 3.24 Đặc tả usecase “Thêm thông tin công ty” .........................................60
Bảng 3.25 Đặc tả usecase “Lưu thông tin tuyển dụng”......................................62
Bảng 3.26 Đặc tả usecase “Xem đơn ứng tuyển” ..............................................63
Bảng 3.27 Đặc tả usecase “Xem đánh giá, gợi ý từ Hirize cho đơn ứng tuyển”64
Bảng 3.28 Đặc tả usecase “Xem đánh giá từ Hirize cho đơn ứng tuyển”.........66
Bảng 3.29 Đặc tả usecase “Sửa bình luận” ........................................................67
Bảng 3.30 Đặc tả usecase “Xố bình luận” ........................................................68
Bảng 3.31 Đặc tả usecase “Thêm bài chia sẻ mới” ............................................70
Bảng 3.32 Đặc tả usecase “Chỉnh sửa thông tin bài chia sẻ” ............................. 71

Bảng 3.33 Đặc tả usecase “Xóa thơng tin bài chia sẻ” ......................................72
Bảng 3.34 Chi tiết bảng dữ liệu “users” ............................................................. 75
Bảng 3.35 Chi tiết dữ liệu bảng “token” ............................................................ 76
Bảng 3.36 Chi tiết bảng “role” ...........................................................................76
Bảng 3.37 Chi tiết bảng “user_role” ..................................................................76
Bảng 3.38 Chi tiết bảng “document”..................................................................77
Bảng 3.39 Chi tiết bảng “candidate” ..................................................................77
Bảng 3.40 Chi tiết bảng “employer” ..................................................................78
Bảng 3.41 Chi tiết bảng “job_alert” ...................................................................78


Bảng 3.42 Chi tiết bảng “package” ....................................................................79
Bảng 3.43 Chi tiết bảng “subscribe” ..................................................................79
Bảng 3.44 Chi tiết bảng “application”................................................................ 80
Bảng 3.45 Chi tiết bảng “follow_employer” ......................................................80
Bảng 3.46 Chi tiết bảng “notification” ............................................................... 80
Bảng 3.47 Chi tiết bảng “viewed_user” ............................................................. 81
Bảng 3.48 Chi tiết bảng “extra_info” .................................................................81
Bảng 3.49 Chi tiết bảng “evaluate” ....................................................................81
Bảng 3.50 Chi tiết bảng “company” ...................................................................82
Bảng 3.51 Chi tiết bảng “following_company” .................................................82
Bảng 3.52 Chi tiết bảng “image”........................................................................82
Bảng 3.53 Chi tiết bảng “invoice”......................................................................83
Bảng 3.54Chi tiết bảng “experience” .................................................................83
Bảng 3.55 Chi tiết bảng “save_job” ...................................................................84
Bảng 3.56 Chi tiết bảng “job_post”....................................................................84
Bảng 3.57 Mô tả giao diện Trang đăng nhập .....................................................86
Bảng 3.58 Mô tả giao diện Trang đăng ký .........................................................87
Bảng 3.59 Mô tả giao diện Trang tìm kiếm Job .................................................88
Bảng 3.60 Mơ tả giao diện Trang thông tin liên hệ............................................89

Bảng 3.61 Mô tả giao diện Trang chủ ................................................................ 90
Bảng 3.62 Mô tả giao diện Chi tiết Job .............................................................. 92
Bảng 3.63 Mô tả giao diện Dashboard Employer ..............................................92
Bảng 3.64 Mô tả giao diện List các job đã đăng của Employer .........................93
Bảng 3.65 Mô tả giao diện List các applicant của Employer ............................. 94
Bảng 3.66 Mô tả giao diện My Account của Candidate ....................................95
Bảng 3.67 Mô tả giao diện My Account của Candidate ....................................96
Bảng 3.68 Mô tả giao diện Chỉnh sửa thông tin cá nhân ...................................97
Bảng 3.69 Mô tả giao diện quản lý CV .............................................................. 97
Bảng 3.70 Mô tả giao diện tạo CV .....................................................................98
Bảng 3.71 Mô tả giao diện Trang Dashboard ....................................................99
Bảng 3.72 Mô tả giao diện Trang List All Job .................................................100
Bảng 3.73 Mô tả giao diện Trang List All Company .......................................101
Bảng 3.74 Mô tả giao diện Trang thêm Company ...........................................102
Bảng 3.75 Mô tả giao diện Trang List All Extra Info ......................................103
Bảng 3.76 Mô tả giao diện Trang thêm Extra Info ..........................................104
Bảng 3.77 Mô tả giao diện Trang cập nhật thông tin tài khoản admin ............105
Bảng 4.1 Kiểm thử các chức năng trang quản trị .............................................109
Bảng 4.2 Kiểm thử các chức năng người dùng không có tài khoản ................111
Bảng 4.3 Kiểm thử các chức năng của ứng viên ..............................................112
Bảng 4.4 Kiểm thử các chức năng của nhà tuyển dụng ...................................113


PHẦN MỞ ĐẦU
1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Ngày nay, xã hội phát triển ngày càng mạnh mẽ, nhu cầu tìm kiếm cơng việc
cũng như th nhân viên, nhân cơng ngày càng nhiều. Cũng với sự phát triển của công
nghệ nhu cầu việc làm đã dần được số hoá rát tiện lợi điển hình là các website tìm kiếm
việc làm ngày càng cần thiết. Nơi mà người muốn tìm việc tạo hồ sơ cá nhân, cài đặt
những tiêu chí mong muốn tìm việc làm chỉ một lần duy nhất mà có thể áp dụng ứng

tuyển việc làm tới các nhà tuyển dụng. Và chính các nhà tuyển dụng cũng vậy, rất dễ
dàng để đăng tuyển một công việc, và quản lý các thông tin ứng viên, thống kê, theo dõi
quá trình tuyển dụng một cách hiệu quả. Những điều tiện lợi này là lý do cho các website
hỗ trợ việc làm ra đời như TopCV, Linkedin, Glint, Vlance,…
Những tên gọi quen thuộc của các website hỗ trợ việc làm kể trên đều có một
điểm chung là hầu như hướng tới việc tìm kiếm, đánh giá một cách thủ cơng là chủ yếu.
Như vậy việc theo dõi, đánh giá công việc cũng như chất lượng ứng viên có thể sẽ mất
nhiều thời gian. Chính vì vậy nhóm thực hiện đã đặt ra vấn đề hỗ trợ đề xuất các công
việc phù hợp để việc tìm kiếm cơng việc dễ dàng hơn, ngồi ra cũng giúp nhà tuyển
dụng có cơng cụ đánh giá sơ bộ các ứng viên để họ cũng có thể dễ dàng tìm kiếm ứng
viên phù hợp cho cơng việc của và tiết kiệm được nhiều thời gian hơn.
Từ vấn đề cần giải quyết trên, nhóm đã có ý tưởng xây dựng một website hỗ trợ
tìm kiếm việc làm puzzleute.tk để ứng viên dễ dàng tìm kiếm được cơng việc hơn và
các nhà tuyển dụng cũng chọn được người phù hợp mà ít tốn thời gian và cơng sức hơn.
2. ĐỐI TƯỢNG NGHIÊN CỨU
Sau khi tìm hiểu thơng tin về đề tài và vận dụng các kiến thức đã được học tại
trường thì nhóm xác định được những đối tượng cần nghiên cứu trong đề tài là:
• Cơng nghệ React
• Quản lý dữ liệu PostgresSQL
• Spring boot framwork
• IDE: intellij, Visual studio code
1


• Các nền tảng tuyển dụng phổ biến như TopCV, Linkin, Vlance,…
• Và một số cơng nghệ liên quan khác
3. PHẠM VI NGHIÊN CỨU
Khi xây dụng ứng dụng này nhóm tập trung nghiên cứu, thực hiện các chức năng
cơ bản của một nền tảng tuyển dụng, hỗ trợ tìm việc làm và xử lý các nghiệp vụ quản lý
hồ sơ ứng viên, tối ưu tìm kiếm dựa trên thơng tin cơng việc cũng như khả năng và tình

trạng của ứng viên.
4. MỤC TIÊU ĐỀ TÀI
Xây dựng nền tảng website có các chức năng cơ bản của một website tuyển dụng
như hỗ trợ tìm kiếm việc làm cho ứng viên, giúp nhà tuyển dụng đăng tuyển công việc,
quản lý công việc đăng tuyển, quản lý ứng viên, gợi ý những công việc mà ứng viên có
khả năng phù hợp cao.
Bên cạnh đó, thơng qua việc thực hiện đề tài này, nhóm có thể được tiếp xúc, học
hỏi các nghiệp vụ liên quan tới tối ưu hố sắp xếp, tìm kiếm, quản lý q trình tuyển
dụng. Kèm theo đó là các kiến thức chuyên môn về công nghệ xu hướng hiện nay như
React, Spring boot, ….
5. Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN
Sau khi hồn thiện đề tài, nhóm chúng em đã rèn luyện, tiếp thu được nhiều kỹ
năng và kiến thức bổ ích, đặc biệt là về những cơng nghệ mới đang được sử dụng hiện
nay. Đồng thời, nâng cao tinh thần nghiên cứu và sáng tạo, cống hiến vì cộng đồng.
Khi đề tài nhóm chúng em được áp dụng vào thực tế, hoạt động tuyển dụng của
các nhà tuyển dụng sẽ trở nên thuận tiện và dễ dàng hơn. Với sự tối ưu tìm kiếm phân
loại, cơng việc và ứng viên, đây sẽ là nơi ứng viên có thể dễ dàng tiếp cận với các công
việc phù hợp cũng như nền tảng tuyển dụng hỗ trợ cộng đồng, tiềm năng cho nhà tuyển
dụng.

2


6. PHÂN CƠNG
Bảng 0.1 Bảng phân cơng cơng việc

THÀNH VIÊN

CƠNG VIỆC


Lê Thị Ngọc Diễm

HỒN THÀNH
Hồn thành

-

Thiết kế giao diện

-

Xử lý Front – End

-

Vẽ Diagram

-

Viết báo cáo phần Front-End và
Giao diện

-

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

-

Xử lý Back – End


-

Vẽ Diagram

-

Viết báo cáo phần Back-End và
các phần cịn lại

Lê Vũ Hảo

Hồn thành

3


CHƯƠNG 1: KHẢO SÁT HIỆN TRẠNG VÀ MƠ HÌNH HỐ YÊU CẦU

PHẦN NỘI DUNG
CHƯƠNG 1: KHẢO SÁT HIỆN TRẠNG VÀ MƠ HÌNH HỐ
U CẦU
1.1 Khảo sát hiện trạng
1.1.1 Vieclam24h.vn
>> Website:

Hình 1.1 Trang vieclam24h.vn

Vieclam24h.com là một phân trang thuộc báo điện tử 24h.com.vn. Hiện nay
Vieclam24h.com đã sở hữu lượng data lớn với hơn 1,3 triệu CV và 25,000 đầu việc đang
tìm kiếm ứng viên. Cơng việc trên trang rất đa dạng từ lao động phổ thông đến quản lý

doanh nghiệp cấp cao.
-

Ưu điểm

• Có hỗ trợ tạo CV và một số cơng cụ như cơng cụ tính lương, có các bài trắc
nghiệm tính cách,…
• Việc làm được chia theo các lĩnh vực rất chi tiết, có bộ lọc nâng cao giúp việc
tìm kiếm hiệu quả hơn
• Có mục lịch sử cơng việc, nhà tuyển dụng quan tâm,…
• Giao diện bắt mắt

4



×