人事档案管理系统是把已经有的纸质档案资料整理好数据存放到计算机当中,方便企业更直观的去管理。不仅要符合小型企业档案信息的管理规范专业性条件,并且还要能与目前现有的其他信息管理系统进行信息共享,减少重复劳动工作量,因此需要开发一款人事档案管理系统。
本设计基于Java语言和Spring Boot框架开发,使用MySQL数据库存取数据,开发了基于Java的人事档案管理系统。系统主要实现了用户管理、人事档案管理、部门管理、人事调动管理、职务管理、薪酬管理、培训管理、招聘信息管理、求职简历管理、邀请面试管理、录用信息管理、员工应聘管理、系统管理等功能。测试结果表明本系统的所有功能都能正常运行,同时界面简单明了,可以为企业提供更好的服务。
关键词:档案管理;Spring Boot框架;MySQL数据库;Java语言
The personnel file management system organizes existing paper file materials and stores them in a computer, making it easier for enterprises to manage them more intuitively. Not only should it meet the professional requirements for managing archival information in small enterprises, but it should also be able to share information with other existing information management systems to reduce repetitive workload. Therefore, it is necessary to develop a personnel archival management system.
This design is developed based on the Java language and Spring Boot framework, using a MySQL database to store data, and developing a personnel file management system based on Java. The system mainly implements functions such as user management, personnel file management, department management, personnel transfer management, job management, salary management, training management, recruitment information management, job resume management, invitation and interview management, employment information management, employee application management, system management, etc. The test results indicate that all functions of this system can operate normally, and the interface is simple and clear, which can provide better services for enterprises.
Key words: Archive Management; Spring Boot framework; MySQL database; Java language
第1章 绪论
1.1 研究背景
利用人事档案管理系统,可以对文件进行高效率的处理,可以以较低的费用,迅速地对海量的公司信息材料与文件(比如一般的文档、音频文件和照片文件等)进行处理。运用资料库的数据处理,可以让资料库管理员快速、有效率及安全的储存与运作。本系统的应用,一方面可以有效地解决对传统文件的保存与管理的难题,另一方面也可以充分发挥已有的先进互联网系统的优点,为有关工作人员提供更为便捷的查询与访问文件的便利条件。再加上档案管理系统的便利,大大减轻了档案管理工作人员的工作量,同时也在一定程度上降低了人力成本和运作成本。
档案的信息化建设也是一个不可或缺的环节,它不但可以极大地提升操作人员查询借阅档案的效率,还可以拓宽使用档案的有关领域。要想实现档案的现代化,档案信息化是一种非常有效的方法,而且可以极大地提高其储存信息的能力。
1.2 研究意义
在小型企业档案信息的信息化管理中,利用电脑技术,可以使小型企业档案信息的管理工作实现自动化、规范化和科学化,从而使小型企业档案信息的管理工作达到更高的水平。电脑技术能够迅速地把文件资料整理归类,从而避开了手工处理速度慢的缺点,实现了信息的自动集成,提高了文件的整体性和精确度,确保了文件的工作质量,使文件的管理变得更加简单,使文件的管理更加完善,最大程度的保证档案管理的安全性。
1.3 研究内容
本课题的主要目的是开发一个基于Java的人事档案管理系统,有效的提高公司人员档案管理的效率。采用Java开发语言,Windows为操作系统,MySQL数据库,运用的框架为Spring Boot+Mybatisplus,在IDEA开发工具来实现一个B/S体系结构的系统,本系统的管理员可以用增加、删除、修改、查询的操作来对普通用户、员工的个人档案信息来进行信息的修改,并且本系统需要满足企业在任何时间对需要调动档案的员工的信息调动。主界面的设计需要一目了然,方便操作。
通过这些系统功能可以有效的的提高公司企业对人事档案的管理效率。
1.4 国内外研究现状
随着社会的迅速发展,现在已经进入了一个大数据的时代,在这样的环境当中,目前的人工管理已经不能满足当前的需求,随之起来的是系统管理模式,档案管理系统也是在过去的十几年间一直都是业界内重点研发的系统。
2018年,廖娟娟在基于《基于JAVA的企业档案管理系统的设计与实现》中,系统使用了B/S的体系结构,Java开发语言、Oracle数据库以及MVC设计模式等主流技术。系统的登录界面(login.jsp)的具体实现由静态的JSP页面技术与JS技术来实现。实现的主要功能有:静态登录页面的显示和用户的输入的验证提交,以及部分的输入验证[3]。
2021年9月20日,宗诚,李静在《基于数据挖掘技术的B/S模式医院档案管理系统》中提出采用B/S结构,用比较前沿的电脑技术管理档案。其中,录入方法为addProfilInfo(),queryProfileInfo(),编辑方法为modifyProfileInfo(),删除方法为delProfileInfo(),为医院的医护人员提供了一个便于档案管理的平台,提供了收集,利用,传播等功能[2]。
国外的档案管理起步较早,档案管理系统也达到了一定高度,2019年2月25日美国国家档案局(NARA)发布区块链白皮书展示了截至2018年7月前区块链技术对档案管理的影响等相关方面的研究,如区块链上的电子档案真实完整传输和归档到国家档案馆,旨在帮助美国国家档案管理人员更好地理解区块链技术以及如何更好地应用在其机构的档案管理工作上[23]。2020年,印尼的Intan Permatasari等专家在《Blockchain Implementation to Verify Archives Integrity on Cilegon E-Archive》中为解决公众跨多地使用电子档案以及电子档案管理系统内数据伪造的问题,提出一个名为Cilegon1E-Archive(CEA)的电子档案管理系统,详细介绍了星际文件系统InterPlanetary1File1System(IPFS)分布式存储和区块链技术,以此提高印尼政府电子档案管理中的信息安全[26] 。
2020年,德国教育和研究部大数据中心的Thomas Renner等专家在《A blockchain-based framework to enhance data retention in cloud storages》中提到为了完善和记录电子档案的审计信息,提出一个名为Endolith的审计框架来防止电子文件被篡改它允许监控带注释的文件,并在区块链上存储有关文件更改防篡改的必要原数据。特别是一旦集成到现有存储系统中,它就在创建和修改过程中连续地散列所选文件。由此产生的散列、修改时间和用户将被持久地存储在区块链上。所以,该框架使用基于智能合约的区块链来验证电子档案完整性[25]。
第2章 相关技术
2.1 Spring Boot介绍
Spring Boot是一种全新的框架,是Spring开源组织下的子项目。其主要目的是使Spring应用程序的搭建和开发更加简单。和之前的Spring框架相比,Spring Boot简化了配置方法。同时,Spring Boot以Logback作为默认日志框架,但是不管是哪种日志框架,它都支持将配置文件输出到控制台或者文件中,奠定了Spring Boot领导地位,给开发人员提供了更加高效和便捷的开发体验。
2.2 Navicat以及MySQL数据库介绍
Navicat是一款程序员都特别喜欢的软件。Navicat支持管理和开发本地或远程的Mysql、SQL Server、Sqlite、Oracle和PostgreSQL数据库。它可以在Windows、MacOS和Linux三种操作系统上运行,并提供数据传输、数据同步、结构同步、导入、导出、备份、还原、报表创建工具和计划等功能,以协助管理数据。
MySQL是目前使用最广泛的数据库之一。相对于其他数据库,MySQL是免费开源的,占用的空间和内存都很小,并且查询数据的速度也特别快。所以选择MySQL数据库。
相较于其他关系型数据库,MySQL的优越之处在于:
(1)无需繁琐的操作。即使是大数据量也只需要一个目录就能够完成查询工作,不需要对整个表进行扫描和修改,操作简单方便。
(2)该系统表现出卓越的性能和稳定的服务,极少出现任何系统方面的故障。
(3)该软件不受版权限制,开源代码使用成本低廉,活跃度高,使用过程中遇到问题时能够快速解决。
2.3 B/S结构介绍
字母B代表浏览器,字母S代表服务器。这两个词都来自于英文。在程序设计中,B/S是一种最为常见的模式,它代表了“Browser/Server”的缩写。由于这种设计模式简单易懂,使得很多开发人员都喜欢使用它来进行系统编程,但是这样的模式并不适合于大规模的开发工作,需要有一定的技术经验才可以应用到实际的项目之中去。随着互联网的不断演进,B/S结构也在不断完善,随着Web的出现,一种新的网络结构模式随机浮现。它将用户和服务器之间的通信方式由点对点转变为基于连接的分布式网络传输。由于该模式实现了客户端的统一化,从而提高了开发效率,因此备受开发者的青睐,使得核心业务逻辑在服务端得以处理。该系统结构简单,使用起来十分方便。本系统采用B/S结构,使得用户只需在手机端或客户端安装浏览器,即可通过Web Server与数据库进行数据交互,从而实现简单易用的操作。
第3章 系统分析
3.1 可行性分析
3.1.1 技术可行性
本项目采用Java语言和MySQL数据库进行开发,使用IDEA开发者工具进行开发。在准备开发之前,需要在电脑上安装相应的软件和开发工具。因为在读大学的时候跟着老师一起做过差不多的项目,所以对这些软件和技术并不是很陌生。就算在敲代码的时候遇上不会的知识,也可以通过互联网或者同学朋友老师的帮助来解决这个问题。因此,本项目的开发在技术上是可行的。
3.1.2 操作可行性
本程序的设计需要使用到设备是电脑(笔记本或者台式电脑),电脑内的编写工具为:IDEA,JDK1.8环境,Navicat 15 for MySQL数据库等。
基于Java的人员档案管理系统主要是给企业提供方便的员工档案管理工作,这对小型企业而言是非常有意义的。通过本系统,企业可以提高管理效率并且保证不失误,从而为企业的发展和运营提供强有力的支持。在当今社会,这种基于技术手段的高效管理方式已经被广泛应用,因此该本系统在具体操作上是非常可行的。
3.1.3 经济可行性
基于Java的人员档案管理开发所使用的工具都是免费的,不需要额外的经济支出。
3.2 功能需求分析
当前企业管理中,大多数中小型企业还是在利用纸质档案的方法来存储员工的人事档案,这对企业的管理的效率是大大降低的,在本系统中,对员工和用户在档案和简历功能上做出了设置,以此对该员工或者用户的档案和简历一目了然,可以在线上办公,以此用来提高办公速度。面试者也可以直接线上查看自己是否被录取或被录取后的岗位以及薪资情况。
管理员包括注册登录、普通用户管理、员工管理、人事档案管理、部门管理、薪酬管理、人事调动管理、职务管理、培训管理、招聘信息管理、求职简历管理、邀请面试管理、录用信息管理、员工应聘管理、系统管理。管理员用例图如图3.1所示:
管理员 |
普通用户管理 |
注册登录 |
部门管理 |
人事档案管理 |
薪酬管理 |
员工管理 |
人事调动管理 |
职务管理 |
招聘信息管理 |
培训管理 |
员工应聘管理 |
求职简历管理 |
邀请面试管理 |
录用信息管理 |
系统管理 |
图3.1 管理员用例图 |
员工包括注册登录、个人中心、查看薪酬信息、查看培训信息、查看招聘信息、查看应聘信息、查看调动信息、查看公告信息的员工用例图如图3.2所示:
|
员工 |
个人中心 |
查看招聘信息 |
查看培训信息 |
查看调动信息 |
查看薪酬信息 |
查看公告信息 |
查看应聘信息 |
注册登录 |
图3.2 员工用例图 |
普通员工包括注册登录、个人中心、查看简历信息、查看面试信息、查看录用信息的普通用户用例图如图3.3所示:
个人中心 |
|
投递简历信息 |
查看录用信息 |
查看面试信息 |
注册登录 |
普通用户 |
图3.3 普通用户用例图 |
第4章 系统设计
4.1 系统功能模块设计
通过对功能的总结分析出人事档案管理系统具体功能模块包括:用户管理、人事档案管理、部门管理、人事调动管理、职务管理、薪酬管理、培训管理、招聘信息管理、求职简历管理、邀请面试管理、录用信息管理、员工应聘管理、系统管理,这几个功能模块组成,功能需求图如图4.1所示:
人事档案管理 |
部门管理 |
录用信息管理 |
用户管理 |
人事调动管理 |
邀请面试管理 |
职务管理 |
求职简历管理 |
薪酬管理 |
培训管理 |
招聘信息管理 |
系统管理 |
员工应聘管理 |
人事档案管理系统 |
图4.1 系统功能图
人事档案管理系统致力于管理企业员工的基本档案信息,用户可以通过查询员工的姓名或工号,直接获取指定员工的档案资料。该模块还具有一定的查询功能,用户只需在系统界面上输入自己需要的个人信息就能快速地找到相应的资料。员工档案的详细信息可供查看,一旦员工的某些信息发生变化,可以对其基本信息进行修改,也可以删除已离职员工的基本信息,并对其进行保密,以确保不会有其他企业泄露个人隐私。此外,对于新入职的员工,还可以添加其基本信息,以保证每位员工信息的真实性。
人事调动管理模块主要是对企业内部员工的一些正常职务调动,如果公司顺应形势增加了某些部门或者删掉了某些部门,可以把别的部门的员工临时调动过去,或者也可以把对当前工作不能很好的完成的员工调动到别的部门里面,也是相当方便的。
职务管理模块主要是针对部门下属的一些职务,例如IT部门的Java工程师,该模块可以增加或者删掉某些职务,例如,今年技术部门不需要Java工程师,然而对测试工程师的需求较大,所以可以删掉数据工程师的岗位从而增加测试工程师的岗位。
薪酬管理模块主要是针对员工的薪酬查看,让其员工来核对自己的标准工资是否正确,对不正确的可以进行修改,也可以通过员工的姓名来查看指定人员的工资,节约查找的时间。
培训管理模块主要是针对新入职的员工或者需要增加技能的老员工展开的模块,该模块可以通知员工培训的地点,主题还有大概内容,同时,还可以对其备注,方便了领导的管理需求,就不需要对需要培训的人一步步的通知了,节省时间。
招聘信息管理模块主要是发布一些企业所需求的岗位,为方便管理,对所需求的岗位进行了岗位编号,同时也有岗位名称,负责招聘的联系方式和工作邮箱,同时,也说明了需要的人数,管理员可以对其进行详细的编辑,人数招满之后可以删除某些岗位,也可以通过岗位编号来特定的查找对应的岗位。
求职简历管理模块针对来企业应聘者的简历管理,包括应聘者的账号,姓名,院校,专业,期望薪资等详细信息,对其简历筛选合格的也可以邀请来公司面试。
邀请面试管理模块主要是针对初筛通过的人,告诉用户面试地点,时间,让其按照约定好的时间和地点来面试。
录用信息管理模块可以查看面试通过的应聘者的入职部门以及职务,同时对不考虑入职的人员进行删除,也可以根据账号和姓名来查看特定的人有没有通过面试。
4.2 数据库设计
4.2.1 数据库概念结构设计
数据库的概念结构设计是一种将用户需求抽象为信息结构(即概念模型)的过程,该模型能够全面反映实体之间的相互关系,并且易于理解,是一个真实反映现实世界的模型,
其中各部分信息实体图如图4.2-4.12所示:
员工 |
||
密码 |
||
员工工号 |
||
图4.2 员工实体图 |
||
员工姓名 |
||
部门 |
||
职务 |
||
入职时间 |
||
头像 |
||
邮箱 |
||
手机号 |
||
头像 |
||
密码 |
||
普通用户 |
||
性别 |
||
用户账号 |
||
图4.3 普通用户实体图 |
||
|