(2024最新毕设合集)基于SpringBoot的员工考勤管理系统+10623|可做计算机毕业设计JAVA、PHP、爬虫、APP、小程序、C#、C++、python、数据可视化、大数据、文案

    目 录

中文摘要 1

中文关键词 1

英文摘要 1

英文关键词 1

1 绪论

1.1系统开发的背景

1.2本文所做的工作

2 系统需求分析与设计

2.1系统功能需求分析

2.2系统功能模块设计

2.3系统性能需求分析

2.4相关技术

3 数据库设计与实现

3.2数据库逻辑结构设计

4 系统实现

4.1登录模块设计

4.2员工用户模块设计

4.3人事用户模块设计

4.4管理员模块设计

5 系统测试

5.1测试目的

5.2测试方法

5.3测试用例设计

5.4测试结果

6 结束语

参考文献

SpringBoot员工考勤管理系统

  要:员工考勤管理系统的研究旨在设计和开发一个高效、智能化的系统,以提升企业人事员工考勤管理的效率和质量,并满足不断变化的需求。首先,通过调研和分析企业员工考勤管理中存在的问题和痛点,了解当前员工考勤管理流程中的挑战和需求。其次,设计和开发员工考勤管理系统,包括系统用户、签到信息管理、请假信息管理、出差信息管理、员工档案管理、薪资信息管理、部门信息管理、通知公告管理等功能模块。系统可以帮助企业管理者更好地了解人员结构、考勤情况等,总体来说系统是通过SpringBoot架构搭建后台的,中间件使用的是tomcat服务器,数据库管理平台采用开源的MySQL,前端使用的主要是Java编程语言和HTML页面展示技术。通过测试,该需要能够较好的完成设定的目标。

关键词:员工考勤管理系统;SpringBoot;MySQL数据库

SpringBoot Employee Attendance Management System

Abstract: The research on employee attendance management system aims to design and develop an efficient and intelligent system to improve the efficiency and quality of enterprise personnel and employee attendance management, and meet the constantly changing needs. Firstly, by conducting research and analyzing the problems and pain points in employee attendance management in enterprises, we aim to understand the challenges and needs in the current employee attendance management process. Secondly, design and develop an employee attendance management system, including functional modules such as system users, attendance information management, leave information management, business trip information management, employee file management, salary information management, department information management, and notification and announcement management. The system can help enterprise managers better understand personnel structure, attendance situation, etc. Overall, the system is built through the SpringBoot architecture as the backend, using Tomcat server as the middleware, open source MySQL as the database management platform, and Java programming language and HTML page display technology as the frontend. Through testing, the requirement has been proven to be able to achieve the set goals effectively.

Key words:Employee attendance management system; SpringBoot; MySQL database

1 绪论

1.1系统开发的背景

随着信息技术的快速发展,企业员工管理变得日益复杂。传统的纸质考勤系统已经逐渐不能满足企业对员工考勤的需求,需要一种更加高效、精确、可靠的考勤管理系统来提高管理效率和员工满意度。

在现代企业中,员工考勤管理是一个非常重要的环节。准确了解员工的考勤情况,可以帮助企业更好地优化资源,提高生产效率。此外,考勤管理还能够有效控制迟到、早退等不良考勤行为,促进员工的积极性和责任感。

然而,传统的考勤管理方式存在许多问题。首先,纸质考勤系统需要大量人力物力来进行考勤记录的整理和统计,容易出现错误并且耗时耗力。其次,纸质考勤系统的数据无法实时更新和查询,无法满足实时监控与调整的需求。此外,纸质考勤系统易被篡改和伪造,无法保证数据的安全性和准确性。

为了解决这些问题,许多企业开始采用计算机化的考勤管理系统。其中,基于SpringBoot的员工考勤管理系统具有开发简便、部署方便、灵活性强等优势,并且可以与其他系统进行集成,提高整体的运营效率[1-3]。

1.2本文所做的工作

本论文主要研究的是SpringBoot员工考勤管理系统,该系统旨在解决传统员工考勤管理方式中存在的问题,如效率低、信息不及时、易出错等。通过引入SpringBoot框架,结合数据库技术和前端开发技术,设计和开发一个高效、实用的员工考勤管理系统,实现系统用户、签到信息管理、请假信息管理、出差信息管理、员工档案管理、薪资信息管理、部门信息管理、通知公告管理等主要功能,提高管理效率并降低管理成本。本文的主要工作如下:

(1)系统需求分析:通过对传统员工考勤管理方式的调查和分析,明确系统需要满足的功能和性能要求。

(2)系统设计:基于系统需求分析结果,设计系统的总体架构、模块划分和数据库设计,确定系统所使用的技术和工具。

(3)系统开发:使用Springboot框架进行系统开发,使用关系型数据库MySQL存储系统数据,配合前台Java和HTML等技术。

(4)系统测试与优化:对系统进行全面测试,发现和解决存在的问题,并对系统性能进行优化。

(5)系统部署与运维:完成系统的部署和配置,确保系统能够稳定运行,并提供相应的技术支持与维护。

经过全面的需求分析,我们设计出了一个全新的员工考勤管理系统,它不仅拥有完善的数据库,而且还拥有先进的数据流程,以及良好的运行环境,此外,我们还精心设计了主要界面和相关组件,并且详细阐述了该系统的实施步骤。通过使用SpringBoot和Java技术,我们可以从数据库中提取和写入信息,并且可以直接对数据库进行操作。此外,我们还可以在网页上添加动态内容,以满足员工考勤管理系统的基本需求。

本文共分为六章,第一章绪论主要介绍了课题开发的背景以及技术、本文的研究内容与主要工作;第二章主要从系统的角色功能、性能等方面进行需求分析,以及相关技术介绍;第三章主要对系统数据库进行设计与实现;第四章主要介绍了系统各个用户的功能、系统界面的实现;第五章主要对系统的部分界面进行测试并对主要功能进行测试;最后是结论。

2 系统需求分析与设计

2.1系统功能需求分析

员工考勤管理系统的最大目的是通过该系统可以很好的整合企业人事信息管理。以前通过传统的员工考勤管理方式有个最大的问题就是流程繁琐,而且各种信息容易丢失,有了这样一个员工考勤管理系统,那么则可以很容易的把所有的员工考勤管理信息都放到数据库中,如果再对数据库进行备份处理,那么这样就可以很好的对员工考勤信息进行保存。

该系统需要很好的功能扩充性和可维护性。由于该系统是涉及的用户比较多,对管理员来说同样也是一个信息管理网站,包括用户信息,签到信息,请假信息,出差信息,薪资信息等。而且,随着用户数量的增加,必然对程序的更新迭代要求更高,所有在开发的时候就需要注意程序的可维护性和可拓展性[4-6]。

通过与企业的管理人员深入沟通了解,确定了员工考勤管理系统的实际需求。将系统划分为管理员、员工用户和人事用户三个角色模块,根据使用系统角色的不同,对三个不同角色的功能需求分别进行分析。

2.1.1员工用户相关功能需求

在设计本公司的业务系统员工用户端时,是以员工用户的实操作需求为中心进行的分析。实际应用中,员工用户首先需要人事用户添加账号,添加账号后员工用户可以登录系统完善自己的个人信息,例如上传自己的头像,添加邮箱信息等,方便业务的交流;同时可以添加自己的签到信息、请假信息和出差信息;对薪资信息和管理员发布的通知公告信息进行查看。

图1就是员工用户角色的用例展示。

图1 系统员工用户角色用例图

2.1.2人事用户相关功能需求

人事用户在本系统中主要负责考勤审核和薪资信息,所以其主要功能应该简单明了。与人事用户的相关功能需求主要有:登录员工考勤管理系统;修改个人信息与密码;添加与维护员工用户账号;对员工用户的签到信息、请假信息和出差信息进行审核;对员工档案、薪资信息进行添加确认;查看管理员发布的通知公告信息。

图2就是人事用户角色的用例展示。

2 系统人事用户角色用例图

2.1.3管理员相关功能需求

管理员作为本系统的超级管理者,需有一个综合的管理功能。与其相关的功能需求主要有两方面,一方面是对系统所有的信息进行管理,另一方面是对系统用户进行管理。首先第一方面,可以对系统的签到信息、请假信息、出差信息、员工档案、薪资信息进行管理维护;对部门信息和通知公告可以进行添加、维护;第二方面,可以对使用本系统的用户进行管理、对子管理员(员工用户、人事用户)账号进行删除或修改。当然也可以对自己的账号密码进行修改。

图3就是管理员角色的用例展示。

3 系统管理员角色用例图

2.2系统功能模块设计

系统在结构上的设计至关重要,要考虑周全,设计全面,一个完善的结构体系,能够满足用户在使用时的各种需求,这样会让提高程序的使用率,保证程序被长久的利用。在设计员工考勤管理系统的结构时,也列入重点,采用模块化的方法来进行设计,即首先将大模块确定下来,再慢慢的将大模块进行补充完善,向下分支出小模块,一起共同组成的系统的结构体系,下图是本员工考勤管理系统的结构设计图,直观明了的可以看出本项目程序的功能。

系统的功能结构图如下所示。

4 系统总体功能结构图

2.3系统性能需求分析

员工考勤管理系统的性能需求分析,比如员工考勤管理系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如表格1中:

1员工考勤管理系统性能需求表

安全性

主要指员工考勤管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指员工考勤管理系统能够按照用户提交的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响员工考勤管理系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的性能需求。

易用性

用户只要跟着员工考勤管理系统的页面展示内容进行操作,就可以了。

可维护性

员工考勤管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题

2.4相关技术

2.4.1 MySQL数据库

MySQL数据库已经成为网络上的一种强大的工具,它能够支持多个用户,并且能够根据客户端和服务端的需求进行调整,从而满足不同的需求。在这里,服务端和客户端只是一种软件上的概念,而我们所使用的计算机硬件则没有必要完全相互匹配[7]。

MySQL作为一个受到广泛认可的开放式DBMS,其卓越的性能和易于操作的特性,以及其在多种操作环境中的灵活性,让其成为了众多AP中的首选。此外,MySQL还具有良好的跨平台性,让软件开发人员对其有着极高的评价。与传统的关联式数据库系统形式大相径庭,MySQL拥有一套完善的数据库管理策略,以确保用户的安全、稳健、安全。MySQL具备良好的容错、安全、快速、稳健的特点,使得mysql成为一款极其实用的数据库管理工具[8]。

MySQL拥有一种独特的权限分配机制,可以根据用户的身份和业务逻辑,为用户提供更多的选择,从而大大提高了MySQL的安全性和完整性,远超过其他关系型数据库。

MySQL具有强大的功能,能够处理各种数据类型,包括动态、静态、多种语言,从而使用户能够轻松访问多种数据。

MySQL具有多种功能[9],它能够支持多种平台的开发,并且支持多种编程语言[4],使得用户能够轻松访问和使用MySQL数据库。

2.4.2 Tomcat简介

Tomcat是一种免费的服务器,它能够有效地处理大量的网络访问,特别是在访问量较少的情况下。当将Tomcat安装在电脑上时,它能够自动分析前端HTML页面的请求,从而提高网络的性能。事实上,Tomcat是对Apache的一种延伸,但它与Apache之间的关系更加紧密,因为它们在不同的进程中运行,而且它们之间也有着自己的独立性。

Tomcat最初由戴维森公司开发,但随着时间的推移,它逐渐成长为一个开源的服务器。后来,它被sun公司转移到了Apache软件基金会。最近,tomcat服务器经过了大量的重新设计和改进,使它更加易于使用。Tomcat负载均衡算法是一种免费的开源软件,它能够有效地减少硬件投入,使得它在一般的小企业网站服务器上的应用更加灵活,并且能够满足当前和未来的扩展需求。此外,它还可以作为其他类似应用的参考,以提高效率[10]。

2.4.3 Java语言

Java语言在计算机的程序应用过程当中,属于非常重要的一个应用软件,因为它的性能比较高,而且能够应用在多重领域当中,因此该程序在计算机的软件程序应用当中的范围相对来说是比较广泛的[11]。而从专业的技术角度来说,Java程序的应用的实用性也是非常强的,这是因为它与传统的C语言或C++相比没有太大的基本结构的变化,也就是说它的语法结构是相对单一,而且具有稳定的特性,还有更重要的一点是Java程序语言的基本参考对象就是C语言,所以他的程序编写并不是很复杂,而且还能够起到优化工作效率提升系统设计本身的基础功能的作用,因此他也就受到了非常广泛的程序员们的青睐。

在此次进行系统设计开发研究的过程当中,还发现Java程序语言之所以能够得到市场上更多用户的好评和青睐,其根本原因在于他能够具备各种语言的自身独特优点的展现,也就是说它的兼容性是常强的。因此,我们因此我们可以说在任何一个程序的开发过程当中,Java语言程序的应用是必不可少的,它他在程序员进行改动的时候,哪怕是一个程序字母的改动,都可以形成一种特定的程序,这是 Java程序,非常独特的另一个优点[12]。不仅如此,Java源程序的可移植性也是非常大,而且它的安全系数很高,能够通过不同方式进行移植到其他程序当中,而且可以兼容不同程序的系统,在运行的过程当中,其安全系数也是非常强的,能够确保用户在使用网络的过程当中去确保网络的安全,而正是基于这样的可移植性,为程序员节约了很多的系统语言程序的开发设计的时间,这是非常难得的一种自有优势。

2.4.4 SpringBoot框架

Spring框架是一个由SpringBoot公司发布的开放式框架,旨在通过其可扩展的特性来支持多种不同的编码方式[13]。尽管Spring框架不会影响任何特定的编码方式,但其出色的性价比和可扩展性,已经成为EJB(EnterpriseSpringBootBeans)框架的重要组成部分,并且一直得到越来越多的人的青睐。Spring框架不仅可以有效地支撑开发,而且还可以充分利用其独有的控制反转功能,以及支撑多种持久性技术,从而将托管对象的生命周期变得更加容易,并且可以支撑声明性的事务处理,还可以支撑多种Web框架,从而有效地推动开发。Spring框架拥有强大的IOC功能,可以轻松地实现SpringBoot对象的调度与操作,从而更好地支持项目的运行。此外,Spring还支持将SpringBoot对象的生命周期进行可视化,以实现更加灵活的调度与操作。Spring框架提供了一种新的、高效的容器设计工具,它能够根据XML文件和AOP注解的指引,从多个源中提取和组织相应的参数,从而实现多种功能。此外,它还提供了一种面向服务的框架,它能够根据用户的需求,自动调整参数,从而提高系统的效率和性能。Spring框架的AOP框架具有强大的功能,可以满足各种复杂的需求[14]。尽管AspectJ框架的性能不及其他框架,但是Spring AOP的出色表现使其在各种应用场景中都具有出色的表现,例如:在事务处理、远程控制、网络安全、数据共享、文件共享、网络安全协议、网络安全协议。SpringBoot的事务处理框架提供了一种灵活的方式,可以将不同的内容、不同的时间段、不同的类型的数据进行处理,并且可以将这些处理结果存储到一起。此外,Spring还提供了一系列的事务模型。Spring的事务框架提供了一种灵活的方式,它允许用户根据需要调整事务的类型,例如XML、SpringBoot等,同时还支持快速的消息传输、缓冲等特性,从而有效地帮助开发者处理日益增长的数据需求。这款应用程序拥有强大的功能,能够兼容各种常见的数据处理框架,包括SpringBoot、iBATS/MyBATIs、Hibernate、SpringBoot)数据对象(JDO)、Apache OJB、Apache Cayne等,并能够将其与Spring的事务处理功能相结合,从而实现更加高效的数据处理。SpringMVC最初的目的是要替代StrutsWeb框架,因此,开发者决定将其与传统的web页面框架进行改造,使其能更好地支持用户的访问。这样,SpringMVC就能更好地支持用户的需求,从而提高web页面的性能[15]。

3 数据库设计与实现

一个优秀的系统必须具备完善的后台数据库,就像建筑物一样,它不是一蹴而就的,而是需要经过精心设计,以确保其稳固可靠。只有将数据库设计得完善,并且考虑到各个方面,才能保证系统的可靠性,避免出现任何问题[16]。

3.1数据库概念结构设计

在数据库概念模型设计的时候,一般都采用E-R实体图进行展示,在实体图中可以展示出数据库表中的所有字段名称。下面是整个员工考勤管理系统中主要的数据库表总E-R实体关系图。

5 员工考勤管理系统E-R

3.2数据库逻辑结构设计

在数据库表中我们会看到系统的表名、主键、外键等信息,我们通过数据库表的主键、外键把每个表关联起来,然后在界面中展示,本员工考勤管理系统的主要的数据库表如下:

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表business_travel_information (出差信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

business_travel_information_id

int

10

0

N

Y

出差信息ID

2

employee_users

int

10

0

Y

N

0

员工用户

3

employee_name

varchar

64

0

Y

N

员工姓名

4

application_time

date

10

0

Y

N

申请时间

5

business_trip_days

int

10

0

Y

N

0

出差天数

6

reason_for_business_trip

text

65535

0

Y

N

出差原因

7

examine_state

varchar

16

0

N

N

未审核

审核状态

8

examine_reply

varchar

16

0

Y

N

审核回复

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表department_information (部门信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

department_information_id

int

10

0

N

Y

部门信息ID

2

department_name

varchar

64

0

Y

N

部门名称

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表employee_files (员工档案)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

employee_files_id

int

10

0

N

Y

员工档案ID

2

personnel_users

int

10

0

Y

N

0

人事用户

3

personnel_name

varchar

64

0

Y

N

人事姓名

4

employee_name

varchar

64

0

Y

N

员工姓名

5

employee_gender

varchar

64

0

Y

N

员工性别

6

home_address

varchar

64

0

Y

N

家庭住址

7

contact_information

varchar

64

0

Y

N

联系方式

8

employee_photos

varchar

255

0

Y

N

员工照片

9

department_name

varchar

64

0

Y

N

部门名称

10

date_of_employment

date

10

0

Y

N

入职日期

11

educational_background

varchar

64

0

Y

N

教育背景

12

remarks

text

65535

0

Y

N

备注信息

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表employee_users (员工用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

employee_users_id

int

10

0

N

Y

员工用户ID

2

employee_name

varchar

64

0

Y

N

员工姓名

3

employee_gender

varchar

64

0

Y

N

员工性别

4

home_address

varchar

64

0

Y

N

家庭住址

5

contact_information

varchar

64

0

Y

N

联系方式

6

examine_state

varchar

16

0

N

N

已通过

审核状态

7

user_id

int

10

0

N

N

0

用户ID

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表leave_information (请假信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

leave_information_id

int

10

0

N

Y

请假信息ID

2

employee_users

int

10

0

Y

N

0

员工用户

3

employee_name

varchar

64

0

Y

N

员工姓名

4

leave_type

varchar

64

0

Y

N

请假类型

5

leave_time

date

10

0

Y

N

请假时间

6

leave_days

int

10

0

Y

N

0

请假天数

7

reason_for_leave

text

65535

0

Y

N

请假原因

8

examine_state

varchar

16

0

N

N

未审核

审核状态

9

examine_reply

varchar

16

0

Y

N

审核回复

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notification_announcement (通知公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notification_announcement_id

int

10

0

N

Y

通知公告ID

2

announcement_name

varchar

64

0

Y

N

公告名称

3

announcement_title

varchar

64

0

Y

N

公告标题

4

announcement_image

varchar

255

0

Y

N

公告图片

5

release_time

date

10

0

Y

N

发布时间

6

announcement_content

text

65535

0

Y

N

公告内容

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表personnel_users (人事用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

personnel_users_id

int

10

0

N

Y

人事用户ID

2

personnel_name

varchar

64

0

Y

N

人事姓名

3

contact_number

varchar

64

0

Y

N

联系电话

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

user_id

int

10

0

N

N

0

用户ID

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表salary_information (薪资信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

salary_information_id

int

10

0

N

Y

薪资信息ID

2

personnel_users

int

10

0

Y

N

0

人事用户

3

personnel_name

varchar

64

0

Y

N

人事姓名

4

employee_users

int

10

0

Y

N

0

员工用户

5

employee_name

varchar

64

0

Y

N

员工姓名

6

attendance_days

int

10

0

Y

N

0

出勤天数

7

basic_salary

int

10

0

Y

N

0

基本薪资

8

bonus_salary

int

10

0

Y

N

0

奖金薪资

9

allowance_salary

int

10

0

Y

N

0

津贴薪资

10

insurance_deductions

int

10

0

Y

N

0

保险扣款

11

absence_deduction

int

10

0

Y

N

0

缺勤扣款

12

net_salary

varchar

64

0

Y

N

实发工资

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表sensitive_vocabulary (敏感词汇)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

sensitive_vocabulary_id

int

10

0

N

Y

敏感词汇ID

2

sensitive_vocabulary

varchar

64

0

Y

N

敏感词汇

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表sign_in_information (签到信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

sign_in_information_id

int

10

0

N

Y

签到信息ID

2

employee_users

int

10

0

Y

N

0

员工用户

3

employee_name

varchar

64

0

Y

N

员工姓名

4

clock_in_type

varchar

64

0

Y

N

打卡类型

5

check_in_time

datetime

19

0

Y

N

打卡时间

6

remarks

varchar

64

0

Y

N

备注信息

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

open_id

varchar

255

0

Y

N

针对获取用户信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

15

vip_level

varchar

255

0

Y

N

会员等级

16

vip_discount

double

11

2

Y

N

0.00

会员折扣

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

4 系统实现

4.1登录模块设计

员工考勤管理系统中的用户是可以通过自己的账户名和密码进行登录的,当普通用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到员工考勤管理系统的首页中;否则将会提示相应错误信息,用户登录界面如下图6所示。

6 登录模块设计

4.2员工用户模块设计

员工用户登录账号是由人事在后台添加后方可登录。主要功能是对签到信息、请假信息和出差信息进行添加,查看自己的薪资信息和管理员发布的通知公告,同时对个人信息或密码进行修改。

4.2.1员工用户修改个人信息

员工用户登录系统后点击用户头像可以随时修改自己的个人信息与密码,修改个人信息如图7所示:

7 用户修改个人信息界面

4.2.2员工用户签到信息管理

当员工用户点击“签到信息管理”可以进入到签到信息列表,也可以点击添加按钮进行签到信息内容添加,输入包括打卡类型、打卡时间和备注等信息。员工用户添加签到信息如图8所示:

8 员工用户添加签到信息界面

4.2.3员工用户请假信息管理

当员工用户点击“请假信息管理”可以进入到请假信息列表,也可以点击添加按钮进行请假信息内容添加,包括请假类型、请假时间、请假天数、请假原因等信息。员工用户添加签请假信息如图9所示:

9 员工用户添加请假信息界面

4.2.4员工用户出差信息管理

当员工用户点击“出差信息管理”可以进入到出差信息列表,也可以点击添加按钮进行出差信息内容添加,包括申请时间、出差天数和出差原因等信息。员工用户添加出差信息如图10所示:

10 员工用户添加出差信息界面

4.3人事用户模块设计

人事用户登录账号由管理员在后台添加完成。主要对系统用户(员工用户)、签到信息管理、请假信息管理、出差信息管理、员工档案管理、薪资信息管理、通知公告管理等模块进行信息管理。其中人事员工可以查看员工提交的签到信息,可对请假信息和出差信息进行审核;对员工档案和薪资信息进行添加;同时查看管理员发布的通知公告信息。

4.3.1人事用户添加员工用户信息

人事登录系统后,点击系统用户进入到员工用户信息列表,点击添加按钮进行员工用户账号信息添加。添加员工用户信息如图11所示:

11 人事用户添加员工信息

4.3.2人事用户审核请假、出差信息

人事用户登录系统进入到管理列表,点击详情可以对员工提交的请假信息和出差信息进行审核。审核请假信息如图12所示:

12 人事用户审核请假信息

审核出差信息如图13所示:

13 人事用户审核出差信息

4.3.3人事用户员工档案管理

当人事用户点击“员工档案管理”可以进入到员工档案列表,也可以点击添加按钮进行员工档案内容添加,包括人事姓名、员工姓名、家庭住址、联系方式、员工照片、部门名称、入职日期、教育背景、备注信息等信息。添加员工档案信息如图14所示:

14 添加员工档案信息

4.3.3人事用户薪资信息管理

当人事用户点击“薪资信息管理”可以进入到薪资信息列表,也可以点击添加按钮进行薪资信息内容添加,包括员工姓名、出勤天数、基本薪资、奖金薪资、津贴薪资、保险扣款、缺勤扣款、实发工资等信息。添加薪资信息如图15所示:

15 添加薪资信息

4.4管理员模块设计

管理员拥有着系统的最高权限,管理员账号密码通过MD5加密。管理员在后台可以对系统用户、签到信息管理、请假信息管理、出差信息管理、员工档案管理、薪资信息管理、部门信息管理、通知公告管理等模块进行信息管理。

4.4.1系统用户管理

员工考勤管理系统中的管理人员是可以对员工用户和人事用户进行账号添加和信息管理的,也可以对管理员进行管控,如图16所示:

16 管理员系统用户管理界面

4.4.2签到信息管理

在后台系统管理中,管理员可以通过员工姓名查询员工的签到信息,也可以添加新的签到信息。签到信息管理如图17所示:

17 管理员签到信息管理界面

4.4.2请假信息管理

在后台系统管理中,管理员可以通过员工姓名、请假类型和审核状态查询员工的请假信息,也可以添加新的请假信息,对已有的请假信息可重置、删除。请假信息管理如图18所示:

18 管理员请假信息管理界面

4.4.3出差信息管理

在后台系统管理中,管理员可以通过员工姓名和审核状态查询员工的出差信息,也可以添加新的出差信息,对已有的出差信息可重置、删除。出差信息管理如图19所示:

19 管理员出差信息管理界面

4.4.4员工档案管理

在后台系统管理中,管理员可以通过人事姓名或员工姓名查询员工的员工档案信息,也可以添加新的员工档案信息,对已有的员工档案可重置、删除。员工档案管理如图20所示:

20 管理员员工档案管理界面

4.4.5薪资信息管理

在后台系统管理中,管理员可以通过人事姓名或员工姓名查询员工的薪资信息,也可以添加新的薪资信息。薪资信息管理如图21所示:

21管理员薪资信息管理界面

4.4.6部门信息管理

当管理员点击“部门信息管理”可以进入到部门信息列表,也可以点击添加按钮进行部门信息添加。部门信息添加如图22所示:

22管理员添加部门信息界面

4.4.7通知公告管理

当管理员点击“通知公告管理”可以进入到通知公告信息列表,也可以点击添加按钮进行通知公告信息添,输入包括公告名称、公告标题、公告图片、公告内容和发布时间等信息。添加通知公告如图22所示:

22管理员添加通知公告界面

5 系统测试

5.1测试目的

在这款产品正式投入使用之前,试用是至关重要的一步。即使某些部分的开发没有出现任何问题,将多个模块组合在一起仍然可能会出现矛盾。就像每个人都有自己的特点,但如果混杂在一起,就会显得凌乱不堪,因此必须确保彼此之间能够达成默契的配合。在测试中,应该仔细检查其中的每一项内容,以确保它们符合预期的标准。如果发现有一些偏离,应该及时进行调整,以确保最终的结果能够达到预期的目标[17-20]。

5.2测试方法

具体测试方法包括:黑盒测试和白盒测试。

黑盒测试又被人们称作为功能测试,通常是在程序的接口来做一些测试的方法,它一般包括对程序的功能和使用的方法来做出一些数据的接受和输出,同时还可以做出正确的输出信息,并保证与外部信息的完整性。

白盒测试通常被人们称作为结构测试,在整个程序的结构和处理当中它是由程序当中的逻辑测试和检验程序来完成一些正确的工作。

具体的功能测试它是包括:系统的适用性、准确性、安全性等功能测试。

5.3测试用例设计

系统测试包括:用户登录功能测试、通知公告查看功能测试、签到信息添加功能测试、请假信息审核功能测试、密码修改功能测试,如表2、表3、表4、表5、表6所示:

用户登录功能测试:

2 用户登录功能测试表

用例名称

用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

通知公告查看功能测试:

3 通知公告查看功能测试表

用例名称

通知公告查看

目的

测试通知公告查看功能

前提

用户登录

测试流程

点击通知公告列表

预期结果

可以查看到所有通知公告信息

实际结果

实际结果与预期结果一致

员工添加签到信息测试:

4 员工添加签到信息测试表

用例名称

签到信息添加测试用例

目的

测试添加签到信息功能

前提

员工用户正常登录情况下

测试流程

1)员工用户点击签到信息管理,然后点击添加后并填写信息。

2)点击进行提交。

预期结果

提交以后,页面首页会显示新的签到信息

实际结果

实际结果与预期结果一致

人事用户请假信息审核功能测试:

表5人事用户请假信息审核功能测试表

用例名称

请假信息审核测试

目的

测试请假信息审核功能

前提

员工提交请假信息,人事用户正常登录情况下

测试流程

1)人事用户点击请假信息管理。

2)点击详情,填写审核意见。

预期结果

完整提交审核内容

实际结果

实际结果与预期结果一致

密码修改功能测试:

6 密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)管理员密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

5.4测试结果

通过编写员工考勤管理系统的测试用例,已经检测完毕用户登录功能测试、通知公告查看功能测试、签到信息添加功能测试、请假信息审核功能测试、密码修改功能测试,通过这5大模块为员工考勤管理系统的后期推广运营提供了强力的技术支撑。

本员工考勤管理系统满足相关信息的管理需求,在设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了管理员以及用户能够方便操作。系统的主要特点和优点归纳如下:

(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给用户带来了极大的方便。

(2)该员工考勤管理系统内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因用户的马虎操作而出现的失误,其操作方便,用户界面友好,能够上网的人都可以很好的进行操作。

经过对上述的测试结果分析,所有基本功能齐全,操作简单,系统运行性能良好,系统安全可靠,能促进员工考勤管理系统的发展,发展前景广阔。

结束语

本文描述了员工考勤管理系统设计与实现的原理和开发过程,该系统是通过SpringBoot框架来搭建后台,中间件使用的是Tomcat服务器,配合Java开发语言数据库管理平台采用开源的MySQL,前台使用的是JQuery框架,同时使用Validate校验框架,这样就可以减少前端代码的输入量,而且基于JQuery框架的Validat框架使用简单,是流行的前端使用框架,前端使用的主要是HTML页面展示技术。

在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从开发这个员工考勤管理系统的过程中我也收获了许许多多宝贵的方法以及设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如Web、Java、SpringBoot、MySQL,这些技术都是在以前的学习中学到了,其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情[21]。

当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中[22]。

参考文献

[1]Ma H .Construction of a refined people management model for SMEs based on discrete regression algorithm[J].Applied Mathematics and Nonlinear Sciences,2024,9(1):

[2]袁琳琳.计算机软件Java编程特点及技术分析[J].数字通信世界,2023,(12):87-89.

[3]马庆.计算机软件开发中JAVA编程语言的应用[J].山西电子技术,2023,(06):84-86+98.

[4]陈蓓蕾,洪年松.基于SpringBoot的数据库接口设计[J].信息与电脑(理论版),2023,35(16):181-183.

[5]宋荣军.企业人事档案管理存在的问题及对策研究[J].大陆桥视野,2023,(07):72-74.

[6]汪涛.基于SpringBoot和人脸识别的企业考勤管理系统设计与实现[D].阜阳师范大学,2023.000144.

[7]王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.

[8]Alaniz D R .The Employee Attendance Dilemma[J].Air Conditioning Heating  Refrigeration News,2023,278(2):31-31.

[9]高文静.员工档案进入信息化时代[J].人力资源,2023,(01):20-21.

[10]钱俊亮,田卉.考勤管理系统的设计与实现[J].数字传媒研究,2022,39(05):53-56.

[11]房桂梅.H企业考勤系统开发[D].山东大学,2021.006226.

[12]黄丽丽,杨敏.基于Java OpenCV的教师签到系统[J].信息与电脑(理论版),2021,33(02):78-79.

[13]Fatkharrofiqi A ,Achmad F ,Herman K , et al.Employee attendance application using location based service (lbs) method based on android[J].Journal of Physics: Conference Series,2020,1641(1):012044-.

[14]吴亮.中小企业人事管理系统设计[J].科学技术创新,2020,(31):73-74.

[15]刘蓉,丁旭.现代企业人事管理信息系统的设计与实现[J].黄河.黄土.黄种人,2020,(17):36-37.

[16]程文静.基于IFML的公司考勤信息管理系统的开发[D].首都经济贸易大学,2020.001058.

[17]张恒铭.基于SpringBoot+MyBatis框架的高校人事信息发布系统设计与实现[J].电脑知识与技术,2020,16(18):68-70.

[18]李灿灿.企业内部管理系统的设计与实现[D].山东大学,2020.003410.

[19]韩旭.基于数据挖掘技术的企业员工信息系统设计与实现[D].燕山大学,2020.001982.

[20]张婴楠.智能化考勤技术在人力资源管理中的应用价值[J].现代企业,2020,(01):13-14.

[21]聂毓谣.基于数据库的员工考勤系统设计与实现[J].电脑知识与技术,2020,16(01):56-58+87.

[22]何为,迟文恒.Java服务端研发知识图谱[M].机械工业出版社:201812.430.

免费领取项目源码,请关注❤点赞收藏并私信博主,谢谢-

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值