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

Xây dựng phần mềm quản lý nhân sự đồ án tốt nghiệp

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 (4.44 MB, 110 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á

BÁO CÁO ĐỒ ÁN TỐT NGHIỆP
TÊN ĐỀ TÀI
XÂY DỰNG PHẦN MỀM QUẢN LÝ NHÂN SỰ

Sinh viên thực hiện
Ngày sinh
Lớp:
Khóa
Khoa
Mã sinh viên
Giảng viên hướng dẫn

:
:
:
:
:
:
:

Nguyễn Chí Thịnh
01/06/1999
DCCNTT8.10
8
Cơng nghệ thơng tin
1752480201056
Ths. Hà Trọng Thắng


Bắc Ninh, năm 2022

1


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á

BÁO CÁO
ĐỒ ÁN TỐT NGHIỆP

TÊN ĐỀ TÀI
XÂY DỰNG PHẦN MỀM QUẢN LÝ NHÂN SỰ
GIẢNG VIÊN HƯỚNG DẪN: Th.S Hà Trọng Thắng

Họ và tên sinh viên:

Nguyễn Chí Thịnh

Ngày sinh: 01/06/1999

Khóa: 8

Lớp: DCCNTT8.10

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

Điểm báo cáo

Bằng số:


Bằng chữ:

CÁN BỘ CHẤM 1
(Ký và ghi rõ họ tên)

CÁN BỘ CHẤM 2
(Ký và ghi rõ họ tên)

Bắc Ninh, năm 2022

2


MỤC LỤC
LỜI CẢM ƠN ......................................................................................................... 1
DANH MỤC HÌNH ẢNH ....................................................................................... 2
MỞ ĐẦU ................................................................................................................ 4
Chương 1. Giới thiệu về công nghệ ......................................................................... 5
1.1 Cấu trúc của dự án sử dụng Spring boot, Angular, Hibernate.......................... 5
1.2 Giới thiệu về Spring Boot ............................................................................... 6
1.2.1 Spring Boot là gì? .................................................................................... 6
1.2.2 Ưu điểm của Spring boot .......................................................................... 7
1.2.3 Tạo dự án Spring boot .............................................................................. 8
1.2.4 Chạy dự án Spring boot đơn giản trên Eclipse ........................................ 13
1.2.5 Các thành phần trong một dự án Spring boot thực tế .............................. 19
1.3 Giới thiệu về Angular ................................................................................... 23
1.3.1 Angular là gì?......................................................................................... 23
1.3.2 Kiến trúc của Angular ............................................................................ 25
1.4 Giới thiệu về Hibernate Framework.............................................................. 27

1.4.1 Hibernate Framework là gì? ................................................................... 27
1.4.2 Kiến trúc của Hibernate.......................................................................... 28
Chương 2. Mơ tả các yêu cầu của hệ thống ............................................................ 30
2.1 Khảo sát hệ thống ......................................................................................... 30
2.2 Hoạt động của hệ thống ................................................................................ 32
2.2.1 Hoạt động quản lý thông tin nhân viên ................................................... 32
2.2.2 Hoạt động chấm cơng, tính lương........................................................... 32
2.2.3 Tài liệu thu thập được ............................................................................ 33
2.3 Các yêu cầu hệ thống.................................................................................... 36
2.3.1 Yêu cầu chức năng ................................................................................. 36
2.3.2 Yêu cầu phi chức năng ........................................................................... 36
Chương 3. Phân tích các yêu cầu chức năng của hệ thống ..................................... 38
3.1

Biểu đồ usecase ........................................................................................ 38

3.1.1

Xác định các Actor và usecase .......................................................... 38
1


3.1.2

Biểu đồ usecase chính ........................................................................ 39

3.1.3

Biểu đồ usecase quản lý nhân viên ..................................................... 40


3.1.4

Biểu đồ usecase quản lý tài khoản ...................................................... 41

3.1.5

Biểu đồ usecase quản lý chấm công ................................................... 41

3.1.6

Biểu đồ usecase quản lý tính lương .................................................... 42

3.2 Mơ tả chi tiết các usecase ............................................................................. 43
3.2.1 Đăng nhập .............................................................................................. 43
3.2.2 Cập nhật thông tin cá nhân ..................................................................... 43
3.2.3 Xem thông tin cá nhân ........................................................................... 47
3.2.4 Quản lý chấm công................................................................................. 48
3.2.5 Quản lý nhân viên .................................................................................. 50
3.2.6 Quản lý tài khoản ................................................................................... 52
3.2.7 Quản lý tính lương ................................................................................. 54
3.3 Sơ đồ khối các luồng sự kiện ........................................................................ 57
3.3.1 Sơ đồ khối thêm nhân viên ..................................................................... 57
3.3.2 Sơ đồ khối sửa thông tin nhân viên ......................................................... 58
3.3.3 Sơ đồ khối xóa nhân viên ....................................................................... 59
3.3.4 Sơ đồ khối thêm tài khoản ...................................................................... 60
3.3.5 Sơ đồ khối sửa thông tin tài khoản ......................................................... 61
3.3.6 Sơ đồ khối xóa tài khoản ........................................................................ 62
3.3.7 Sơ đồ khối import bảng chấm công ........................................................ 63
3.3.8 Sơ đồ khối thống kê lương nhân viên ..................................................... 64
3.3.9 Sơ đồ khối export bảng lương ................................................................ 65

Chương 4. Thiết kế cơ sở dữ liệu ........................................................................... 66
4.1 Mơ hình hóa dữ liệu ..................................................................................... 66
4.1.1 Biểu đồ thực thể liên kết......................................................................... 66
4.1.2 Mô tả vắn tắt các thực thể....................................................................... 67
4.1.3 Các quy tắc nghiệp vụ ............................................................................ 68
4.2 Thiết kế bảng................................................................................................ 70
4.2.1 Bảng nhân viên ...................................................................................... 70
4.2.2 Bảng phòng ban ..................................................................................... 70
4.2.3 Bảng chấm công ..................................................................................... 70
2


4.2.4 Bảng lương ............................................................................................ 71
4.2.5 Bảng tài khoản ....................................................................................... 71
4.2.6 Bảng thơng tin gia đình .......................................................................... 71
4.2.7 Bảng q trình cơng tác .......................................................................... 71
4.2.8 Bảng q trình đào tạo ........................................................................... 72
4.2.9 Bảng bằng cấp chứng chỉ ....................................................................... 72
4.2.10 Bảng đánh giá nhân viên ...................................................................... 72
.2.11 Bảng tính lương tháng ............................................................................ 72
4.3 Quan hệ giữa các bảng trong hệ quản trị CSDL ............................................ 73
Chương 5. Thiết kế các chức năng của hệ thống .................................................... 74
5.1 Usecase quản lý tài khoản ............................................................................ 74
5.1.1 Biểu đồ trình tự ...................................................................................... 74
5.1.2 Biểu đồ lớp............................................................................................. 77
5.2 Usecase cập nhật thông tin cá nhân............................................................... 78
5.2.1 Biểu đồ trình tự ...................................................................................... 78
5.2.2 Biểu đồ lớp............................................................................................. 79
5.3 Usecase quản lý chấm cơng .......................................................................... 80
5.3.1 Biểu đồ trình tự ...................................................................................... 80

5.3.2 Biểu đồ lớp............................................................................................. 82
5.4 Usecase quản lý tính lương ........................................................................... 83
5.4.1 Biểu đồ trình tự ...................................................................................... 83
5.4.2 Biểu đồ lớp............................................................................................. 85
5.5 Usecase quản lý nhân viên ............................................................................ 86
5.5.1 Biểu đồ trình tự ...................................................................................... 86
5.5.2 Biểu đồ lớp............................................................................................. 88
Chương 6. Thiết kế giao diện và cài đặt ................................................................. 89
6.1 Màn hình đăng nhập ..................................................................................... 89
6.2 Màn hình quản lý nhân viên ......................................................................... 89
6.3 Màn hình nhập hồ sơ nhân viên .................................................................... 90
6.4 Màn hình xem thơng tin nhân viên ............................................................... 90
6.5 Màn hình quản lý tài khoản .......................................................................... 93
6.6 Màn hình quản lý chấm cơng ........................................................................ 93
3


6.7 Màn hình xem thơng tin tài khoản ................................................................ 94
6.8 Màn hình tạo tài khoản ................................................................................. 94
6.9 Màn hình thơng kê lương tháng .................................................................... 95
6.10 Màn hình quản lý tiền lương ....................................................................... 95
6.11 Mẫu xuất báo cáo danh sách nhân sự .......................................................... 96
Chương 7. Quy trình sử dụng hệ thống .................................................................. 98
B1: Đăng nhập hệ thống .................................................................................... 98
B2: Nhập hồ sơ nhân viên .................................................................................. 98
B3:Tạo tài khoản cho nhân viên ......................................................................... 99
B4: Nhập lương cho nhân viên ........................................................................ 100
B5: Import file chấm công của nhân viên (file chấm công xuất từ máy chấm công
và theo file như mẫu ) ...................................................................................... 100
B6: Thống kê lương tháng của nhân viên Danh sách chi tiết bảng lương nhân

viên và có thể export bảng lưởng nhân viên ..................................................... 102
TỔNG KẾT VÀ ĐÁNH GIÁ .............................................................................. 103
1 Tổng kết và đánh giá ..................................................................................... 103
2 Hướng phát triển của đề tài............................................................................ 103
TÀI LIỆU THAM KHẢO ................................................................................... 104

4


LỜI CẢM ƠN
Để hoàn thành chuyên đề báo cáo đồ án này trước tiên em xin gửi lời cảm
ơn chân thành đến các thầy, cô khoa Công nghệ thông tin - trường Đại học
Công Nghệ Đông Á đã truyền dạy cho em những kiến thức quý báu trong suốt
bốn năm học vừa qua. Đặc biệt, em xin gửi lời cảm ơn sâu sắc nhất đến giảng
viên hướng dẫn – Th.S Hà Trọng Thắng – người đã tận tình hướng dẫn, chỉ bảo
và đưa ra định hướng đúng đắn cho em trong suốt thời gian thực hiện đồ án vừa
qua để em có thể hồn thành đồ án của mình với một kết quả tốt nhất.
Mặc dù bản thân em đã rất cố gắng nhưng do thời gian có hạn, vốn kiến
thức vẫn cịn nhiều hạn chế và thiếu sót nên bài báo cáo của em khó có thể tránh
khỏi những sai sót và những phần chưa được chính xác. Em rất mong nhận
được sự thơng cảm và đóng góp ý kiến của cơ để em có thể hồn thiện đồ án
của mình tốt hơn.
Cuối cùng, em kính chúc thầy và gia đình thật dồi dào sức khỏe, đạt được
nhiều thành công trong cuộc sống!
Em xin chân thành cảm ơn!

1


DANH MỤC HÌNH ẢNH

Hình 1 Mơ hình dự án Spring boot, Angular, Hibernate ................................. 5
Hình 2 Spring boot trong kiến trúc Spring ...................................................... 6
Hình 3 Giao diện cơng cụ Spring initializr ..................................................... 8
Hình 4 Cấu trúc thư mục một sự án Spring thực tế ....................................... 19
Hình 5 Kiến trúc cơ bản của angular ............................................................ 25
Hình 6 Sơ đồ ánh xạ đối tượng vào dữ liệu được lưu trong cơ sở dữ liệu ..... 27
Hình 7 Kiến trúc của Hibernate .................................................................... 28
Hình 8 Sơ đồ tổ chức bộ máy cơng ty ........................................................... 30
Hình 9 Mẫu thống kê bảng chấm cơng tháng................................................ 33
Hình 10 Mẫu sơ yếu lý lịch nhân viên .......................................................... 35
Hình 11 Biểu đồ usecase chính ..................................................................... 39
Hình 12 Biểu đồ usecase quản lý nhân viên.................................................. 40
Hình 13 Biểu đồ usecase quản lý tài khoản .................................................. 41
Hình 14 Biểu đồ usecase quản lý chấm cơng ................................................ 41
Hình 15 Biểu đồ usecase quản lý tính lương ................................................. 42
Hình 16 Sơ đồ khối thêm nhân viên ............................................................. 57
Hình 17 Sơ đồ khối sửa thơng tin nhân viên ................................................. 58
Hình 18 Sơ đồ khối xóa nhân viên................................................................ 59
Hình 19 Sơ đồ khối thêm tài khoản .............................................................. 60
Hình 20 Sơ đồ khối sửa tài khoản ................................................................. 61
Hình 21 Sơ đồ khối xóa tài khoản ................................................................ 62
Hình 22 Sơ đồ khối import chấm cơng ......................................................... 63
Hình 23 Sơ đồ khối thống kê lương .............................................................. 64
Hình 24 Sơ đồ khối export bảng lương ......................................................... 65
Hình 25 Biểu đồ thực thể liên kết ................................................................. 66
Hình 26 Bảng nhân viên ............................................................................... 70
Hình 27 Bảng phịng ban .............................................................................. 70
Hình 28 Bảng chấm cơng ............................................................................. 70
Hình 29 Bảng lương ..................................................................................... 71
Hình 30 Bảng tài khoản ................................................................................ 71

2


Hình 31 Bảng thơng tin gia đình................................................................... 71
Hình 32 Bảng q trình cơng tác .................................................................. 71
Hình 33 Bảng q trình đào tạo .................................................................... 72
Hình 34 Bảng bằng cấp chứng chỉ ................................................................ 72
Hình 35 Bảng đánh giá nhân viên ................................................................. 72
Hình 36 Bảng tính lương tháng .................................................................... 72
Hình 37 Sơ đồ quan hệ giữa các bảng........................................................... 73
Hình 38 Biểu đồ trình tự Usecase Quản lý tài khoản .................................... 76
Hình 39 Biểu đồ lớp usecase quản lý tài khoản ............................................ 77
Hình 40 Biểu đồ trình tự usecase cập nhật thơng tin cá nhân ........................ 78
Hình 41 Biều đồ lớp usecase cập nhật thơng tin cá nhân .............................. 79
Hình 42 Biểu đồ trình tự usecase quản lý chấm cơng ................................... 81
Hình 43 Biểu đồ lớp usecase quản lý chấm cơng .......................................... 82
Hình 44 Biểu đồ usecase quản lý tính lương ................................................. 84
Hình 45 Biểu đồ lớp usecase quản lý tính lương........................................... 85
Hình 46 Biểu đồ trình tự usecase quản lý nhân viên ..................................... 87
Hình 47 Biểu đồ lớp usecase quản lý nhân viên............................................ 88
Hình 48 Màn hình đăng nhập ....................................................................... 89
Hình 49 Màn hình danh sách nhân viên ........................................................ 89
Hình 50 Màn hình nhập hồ sơ nhân viên ...................................................... 90
Hình 51 Màn hình xem thơng tin nhân viên.................................................. 92
Hình 52 Màn hình quản lý tài khoản ............................................................ 93
Hình 53 Màn hình quản lý chấm cơng .......................................................... 93
Hình 54 Màn hình xem thơng tin tài khoản .................................................. 94
Hình 55 Màn tạo tài khoản ........................................................................... 94
Hình 56 Màn hình thơng kê lương tháng ...................................................... 95
Hình 57 Màn quản lý tiền lương ................................................................... 95

Hình 58 Mẫu xuất báo cáo danh sách nhân sự .............................................. 96
Hình 59 Mẫu xuất bảng lương nhiều nhân viên ............................................ 96
Hình 60 Mẫu xuất báo cáo lương 1 nhân viên .............................................. 97

3


MỞ ĐẦU
1.Tên đề tài
“Tìm hiểu cơng nghệ Spring boot và Angular ứng dụng xây dựng
phần mềm quản lý nhân sự cho công ty FintechViet”.
2.Lý do chọn đề tài
Xuất phát từ thực tế, cũng như nhu cầu quản lý nhân sự hiện nay tại công
ty cổ phần FintechViet. Em nhận thấy việc quản lý của cơng ty khơng cịn phù
hợp với quy mơ và cơng nghệ hiện nay do đó em muốn xây dựng một hệ thống
giúp cho việc quản lý nhân sự của công ty trở lên dễ dàng, thuận tiện hơn, đạt
hiệu quả tốt hơn. Đồng thời giúp tiết kiệm chi phí một cách tối đa mà vẫn đảm
bảo những chức năng quan trọng, cần thiết và hệ thống hoạt động một cách ổn
định, hiệu năng cao nhất. Qua q trình tìm hiểu, xác định cơng nghệ để xây
dựng hệ thống, em nhận thấy Spring boot là một công nghệ mạnh mẽ, hiệu quả,
rất phù hợp với xu hướng hiện nay. Do đó, em đã quyết định theo đuổi, tìm hiểu
sâu về cơng nghệ này để xây dựng lên hệ thống quản lý nhân sự.
3.Tóm tắt nội dung
Tìm hiểu công nghệ Spring boot để ứng dụng xây dựng phần mềm quản
lý nhân sự cho công ty FintechViet với mục đích nhắm giúp cho việc quản lý
nhân sự trong cơng ty dễ dàng hiệu quả hơn, thay thế cách thức quản lý hiện tại
đã lạc hậu, không đáp ứng tốt nhu cầu.
Nội dung chính gồm 6 chương:
 Chương 1. Giới thiệu về công nghệ
 Chương 2. Mô tả các yêu cầu của hệ thống

 Chương 3. Phân tích các yêu cầu chức năng của hệ thống
 Chương 4. Thiết kế cơ sở dữ liệu
 Chương 5. Thiết kế các chức năng của hệ thống
 Chương 6. Thiết kế giao diện và cài đặt
4


Chương 1. Giới thiệu về công nghệ
1.1 Cấu trúc của dự án sử dụng Spring boot, Angular, Hibernate

Hình 1 Mơ

hình dự án Spring boot, Angular, Hibernate

5


1.2 Giới thiệu về Spring Boot
1.2.1 Spring Boot là gì?
 Spring Boot được phát hành từ giữa năm 2014, đây là một module nằm trong
Spring Framework – một framework đã quá quen thuộc của Java , nó cung cấp
giao diện và khả năng phát triển các ứng dụng độc lập với rất ít các bước cấu hình
rườm rà hoặc gần như bằng khơng.
 Spring Boot được đóng gói với rất nhiều thư viện phụ thuộc các module nền tảng
của Spring Framework nhưng được giảm thiểu đi các mã nguồn dài dòng, phức
tạp nhằm cung cấp sự thuận tiện và phù hợp với từng mục đích khi phát triển ứng
dụng.
 Spring boot cung cấp tính năng RAD(Rapid Application Development) - có
nghĩa là phát triển ứng dụng một cách nhanh chóng, giúp tăng cao năng suất cho
lập trình viên.

 Spring Boot Framework được sử dụng rộng rãi để phát triển các REST APIs.

Hình 2

Spring boot trong kiến trúc Spring

6


1.2.2 Ưu điểm của Spring boot
Spring boot ra đời nhằm khắc phục điểm hạn chế của Spring là các bước cấu hình
rất phức tạp, mất rất nhiều thời gian để ứng dụng có thể chạy được. Do đó, Spring
boot có những ưu điểm sau:
 Có các tính năng của Spring Framework.
 Tạo ứng dụng độc lập, có thể chạy bằng java -jar (cho cả java web)
 Nhúng trực tiếp các ứng dụng server (Tomcat, Jetty…) do đó khơng cần phải
triển khai file WAR, khơng cần cấu hình server.
 Cấu hình ít, tự động cậu hình bất kì khi nào có thể (Giảm thời gian viết code, tăng
năng suất)
 Không yêu cầu cầu hình XML, xây dựng các bean dự trên annotation
 Cung cấp nhiều plugin
 Chuẩn cho Microservices (Cloud support; giảm việc setup, config; các thư viện
hỗ trợ…)
 Ví dụ ưu điểm của dự án sử dụng cấu hình của Spring boot
Cấu hình một model tương ứng với một bảng trong cơ sở dữ liệu
+ Với Spring MVC thông thường: cần cấu hình file xml phức tạp khi muốn khai
báo một package chứa các model.

+ Với Spring boot: sử dụng anotation @Entity, @Table ngắn gọn đơn giản,
Spring boot sẽ xác định đây là một class tương ứng với bảng bang_luong trong

cơ sở dữ liệu.
7


1.2.3 Tạo dự án Spring boot
 Trên website của Spring có một cơng cụ giúp chúng ta nhanh chóng khởi tạo
project Spring boot gọi là Spring Initializr. Spring Initializr có thể truy cập trên
website tại địa chỉ />
Hình 3 Giao diện công cụ Spring initializr

 Mô tả về các thành phần của cơng cụ:
Project: Chọn loại chương trình dùng để quản lý, build dự án.
Language: Chọn loại ngôn ngữ để viết code dự án.
Dependencies: Thêm các thư viện vào dự án để sử dụng.
Spring boot: Chọn phiên bản Spring boot cho dự án.

8


Project Metadata: Gồm các thông tin về tên các package của dự án và phiên bản
của ngôn ngữ được sử dụng.
 Các bước tạo dự án Spring boot với Spring initializr:
Bước1. Khai báo thông tin dự án
 Loại project: là chọn loại package manager nào, Maven hoặc Gradle.
 Language: chọn ngôn ngữ code, chọn Java.
 Phiên bản Spring Boot: Các version có SNAPSHOT là bản chưa ổn định,
khơng nên chọn.
 Loại file build ra: với Spring Boot thì nên chọn JAR để đỡ cấu hình Tomcat
server.
 Phiên bản Java: chọn phiên bản java theo phiên bản đã được cấu hình trong

máy tính của mình.
Bước 2. Chọn dependency
 Click vào Add Dependencies.
 Chọn dependencies cần thiết cho dự án

9


 Đây là một số dependencies cơ bản để tạo một dự án web spring boot

10


Bước 3: Chọn GENERATE để tạo và download dự án về máy

11


Bước 4: Giải nén file vừa tải về

Đây là thư mục dự án Spring boot

12


1.2.4 Chạy dự án Spring boot đơn giản trên Eclipse
Bước 1: Cài đặt Spring tool
Để chạy được dự án Spring boot trên Eclipse, trước tiên chúng ta cần cài đặt Spring tool.
 Tại giao diện Eclipse. Chọn Help -> Eclipse MarketPlace...


 Tìm kiếm Spring tool -> chọn install, nếu màn hiển hiển thị Installed có nghĩa là
Spring tool đã được cài đặt.

13


Bước 2: Import dự án Spring boot
 Chọn file -> Import

14


 Chọn Maven -> Existing Maven Projects

 Chọn Next
 Chọn Browse và tìm đến folder dự án

15


 Chọn Select Folder -> Chọn Finish
 Đây là cấu trúc thư mục của dự án

Bước 3: Chạy dự án Spring boot
 Spring boot cung cấp một ApplicationClass để khởi động ứng dụng từ hàm main()
sử dụng phương thức static SpringApplication.run, anotation
@SpringBootApplication giúp chương trình hiểu rằng đây là nơi khởi chạy ứng
dụng.

16



 Để chạy dự án Spring boot, click chuột phải vào dự án -> chọn Run as -> Chọn
Spring boot app

17


 Build thành công, dự án chạy tại cổng 8080
 Truy cập http://localhost:8080/ , đây là kết quả
18


1.2.5 Các thành phần trong một dự án Spring boot thực tế
 Cấu trúc dự án

Hình 4 Cấu trúc thư mục một sự án Spring thực tế

Src/main/java là nơi chứa các package viết các class mã nguồn java
+ Src/main/resources là nơi chứa các file html, css, javascript để hiển thị lên
giao diện website, trong đồ án này em sử dụng Angular.
+ Application.properties: Nơi cấu hình dự án, trong đó có cấu hình để kết nối
với cơ sở dữ liệu.

19


×