员工档案管理信息系统的设计与实现 毕业设计-附源码00979

  

随着公司规模的扩大和业务范围的增加,山东音旭国际贸易有限公司的员工数量和档案数量逐渐增加,传统手工管理档案的方式已经不能满足日常工作需求。因此,开发一套员工档案管理信息系统,能够提高工作效率,减少人力成本,确保档案信息的安全性和完整性,已经成为公司迫切需要解决的问题。本山东音旭国际贸易有限公司员工档案管理信息系统的开发采取Java语言,基于SpringBoot构建高效稳定的API接口,配合MySQL等关系型数据库存储结构化数据。此外,系统设计充分考虑了高可用性、扩展性和备份策略,确保系统长期稳定运行,全方位提升文件管理的效率。

关键词:SpringBoot;员工档案管理信息系统;Java;MySQL

Abstract

With the expansion of the company's scale and the expansion of its business scope, the number of employees and archives of Shandong Yinxu International Trade Co., Ltd. is gradually increasing. The traditional manual management of archives can no longer meet the daily work needs. Therefore, developing an employee file management information system that can improve work efficiency, reduce labor costs, and ensure the security and integrity of file information has become an urgent problem that companies need to solve.

Keywords: SpringBoot; Employee file management information system; Java; MySQL

  

摘  要

1 绪论

1.1 研究背景

1.2 研究意义

1.3 研究现状

1.4 论文章节安排

2 相关技术介绍

2.1 Java语言

2.2 MySQL数据库

2.3 SpringBoot框架

2.4 本章小结

3 系统分析

3.1 可行性分析

3.1.1 技术可行性分析

3.1.2 经济可行性分析

3.1.3 运行可行性分析

3.2 系统流程分析

3.2.1 数据新增流程

3.2.2 数据删除流程

3.3 系统功能分析

3.3.1 功能性分析

3.3.2 非功能性分析

3.4 系统用例分析

3.5本章小结

4 总体设计

4.1 系统功能模块设计

4.1.1整体功能模块设计

4.2 数据库设计

4.2.1 数据库概念结构设计

4.2.2 数据库逻辑结构设计

4.3本章小结

5 系统详细设计与实现

5.1登录功能模块

5.1.1 系统登录界面

5.2系统用户功能模块

5.2.1 档案借阅管理界面

5.2.2 个人信息界面

5.2.3 修改密码界面

5.3管理员功能模块

5.3.1 后台首页界面

5.3.2 系统用户界面

5.3.3 档案分类管理界面

5.3.4 档案柜信息管理界面

5.3.5 档案信息管理界面

5.3.5 档案借阅管理界面

6系统测试

6.1测试目的

6.2测试过程

6.3测试结果

总结与展望

参考文献

致 谢

1 绪论

1.1 研究背景

随着山东音旭国际贸易有限公司规模的不断扩大和业务范围的增加,公司面临着员工数量和档案数量逐渐增加的挑战。传统的手工管理档案方式已经无法满足公司日常工作的需要,因此,迫切需要开发一套能够更高效管理员工档案的信息系统。通过该系统能够提高工作效率,降低人力成本,并确保档案信息的安全性和完整性。本山东音旭国际贸易有限公司员工档案管理信息系统的开发采取Java语言,基于SpringBoot构建高效稳定的API接口,配合MySQL等关系型数据库存储结构化数据。此外,系统设计充分考虑了高可用性、扩展性和备份策略,确保系统长期稳定运行,全方位提升文件管理的效率。

1.2 研究意义

员工档案管理信息系统的设计与实现对山东音旭国际贸易有限公司具有重要意义。首先,该系统可以实现对员工档案信息的分类、存储、检索、借阅和管理,使得员工档案管理工作更加便捷高效。其次,系统设定了不同权限的用户和管理员,可以确保档案信息的安全性,防止信息泄露。再者,档案借阅管理功能可以使得员工需要借阅档案时更加方便快捷。总体来说,设计和实现这样一套系统可以提升公司内部信息管理的水平,促进公司管理工作的现代化和规范化,有助于提升公司的整体竞争力并实现可持续发展。

1.3 研究现状

目前,国内外对于企业档案管理系统的研究和应用已经取得了显著进展。国内外许多公司和机构都在不断探索和实践档案管理系统的开发和应用。

在国外,一些先进的企业已经开发出了高效的员工档案管理系统,这些系统通常采用先进的信息技术和数据库管理技术,能够实现员工档案的快速录入、查询和管理。这些系统通常具有良好的用户界面和友好的操作体验,能够满足企业日常工作的需要。

在国内,一些大型企业和高校也在积极研发和应用员工档案管理系统。这些系统通常结合了国内外先进的技术和管理理念,能够更好地适应国内企业的实际需求。同时,一些国内的科研机构也在积极开展相关研究,推动员工档案管理系统的发展和应用。

总的来说,国内外对于员工档案管理系统的研究和应用都在不断深化和拓展,为企业提供了更多选择和参考。随着信息技术的不断发展和进步,相信员工档案管理系统的应用将会越来越普遍,为企业的发展和管理提供更加有效的支持。

1.4 论文章节安排

本文共有七章,如下所示。

第一章概述了山东音旭国际贸易有限公司员工档案管理信息系统的研究背景与意义;精炼地总结了研究现状,最后给出了论文的组成结构。

第二章简要概述了本文所用的开发技术和工具。

第三章简要对系统各业务流程进行需求分析、可行性分析。

第四章对山东音旭国际贸易有限公司员工档案管理信息系统进行设计。

第五章对山东音旭国际贸易有限公司员工档案管理信息系统进行实现,并贴出相关页面截图,语言描述出具体功能实现的操作方法。

第六章对山东音旭国际贸易有限公司员工档案管理信息系统采用测试用例的方式来对一些主要功能模块测试,最后得出测试结果。

第七章总结与展望。

2 相关技术介绍

2.1 Java语言

Java编程语言是一种面向对象的高级编程语言,以其简单、可移植、安全和高性能等特点在软件开发领域广泛应用。通过支持类、对象、继承、多态等面向对象概念,Java提供了结构化的编程方式,使代码更易读、维护和重用。其可移植性得益于Java虚拟机(JVM),使得Java程序可以在不同平台上运行,只需编写一次代码。Java注重安全性,提供了字节码验证、异常处理和访问控制等安全机制,确保程序的稳定和安全。此外,Java还拥有丰富的类库和框架,覆盖了各个领域,如图形界面、数据库操作和企业级应用。总而言之,Java作为一门成熟且强大的编程语言,在软件开发中发挥着重要作用,帮助开发者轻松构建可靠、可移植和安全的应用程序。

2.2 MySQL数据库

MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),其稳定性、可靠性和卓越性能使其成为众多应用程序的首选数据库。MySQL支持标准SQL语法,并提供丰富的功能和特性,如事务处理、触发器和存储过程等,以满足开发者对数据管理和操作的需求。MySQL经过多次的更新,功能层面已经非常的丰富和完善了,从MySQL4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的MySQL支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常使用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷。

针对本文中设计的员工档案管理信息系统在实际的实现过程中,最终选择MySQL数据库的主要原因在于在用户的应用系统应用及开发的过程中会存在大量的数据库比较频繁的操作,而且数据的安全性要求也是非常的高。综合这些因素,最终选择安全性系数比较高的MySQL来对员工档案管理信息系统后台数据进行存储操作。

数据库管理系统的总体结构图如下图所示。

图2-1 数据库组成结构

2.3 SpringBoot框架

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。

2.4 本章小结

整个山东音旭国际贸易有限公司员工档案管理信息系统通过Java语言,基于SpringBoot构建高效稳定的API接口,配合MySQL,充分考虑了可用性、扩展性、可备份,确保系统长期稳定运行,具有界面友好、操作简单、数据安全等特点。

3 系统分析

3.1 可行性分析

3.1.1 技术可行性分析

系统用Java技术来实现动态的页面,嵌入低依赖性的设计模式,具有广泛的库和工具生态系统,可以满足项目的需求。SpringBoot作为一个成熟的开发框架,常作为数据源较简单的web项目的框架,能够快速开发和部署山东音旭国际贸易有限公司员工档案管理信息系统所需的功能和性能要求。此外,配合MySQL等关系型数据库存储结构化数据,整个系统的运行效率大大提升。因此,在技术层面上,该项目是可行的。

3.1.2 经济可行性分析

开发本山东音旭国际贸易有限公司员工档案管理信息系统的技术都是可以从网上直接免费下载,不用花一分钱,而且系统的源代码都是自己进行设计开发的,不需要额外的成本,如果后期想要进行运营,只要把配置到服务器上,花费服务器的租赁费用,在使用中可以进行增加广告收益,因此在经济方面是可行的。因此,在经济层面上,该项目是可行的。

3.1.3 运行可行性分析

本系统是在服务器的基础上开发的,系统开发成功以后,用户无需指导便可自己上手进行操作。系统一经开发测试后,在计算机移动客户端能上网的情况下,只需在浏览器里完成所有可用操作,也无需配置复杂的使用和运行环境,只需一个网址便可进入系统。因此,在运行层面上,该项目是可行的。

3.2 系统流程分析

系统流程是用一些特定的符合和线条来进行演示用户在使用系统时的过程,在进行系统分析的时候,业务流程可以帮助开发人员更好的理解业务,发现错误,完善系统。

3.2.1 数据新增流程

用户成功登入系统后就能够实现增加数据的操作,增加数据的编号由系统生成,用户不能随意填写,除了编号以外,其他增加信息用户自己填写,填写后的信息经过系统验证,验证通过后即可完成数据新增,数据新增的流程图如下图2-1所示。

图2-1  数据新增流程图

3.2.2 数据删除流程

如果系统里面存在一些没有用的数据,相关的管理人员还可以对这些数据进行删除,数据删除时流程图如下图2-2所示。

图2-2  数据删除流程图

3.3 系统功能分析

3.3.1 功能性分析

根据山东音旭国际贸易有限公司员工档案管理信息系统的角色需求分析,可以划分为系统用户和管理员两大模块。具体功能说明如下:

系统用户模块:

  1. 登录:系统用户账号密码由管理员添加,可使用添加的账号密码进行登录,使用系统功能,并对个人信息和密码进行管理
  2. 档案借阅管理:系统用户可查看所有档案借阅信息详情(借阅用户、姓名、主题、档案名称、借阅原因、审核状态、审核回复),进行查阅和添加操作,支持姓名、档案名称、审核状态搜索,可。
  3. 个人信息:系统用户可对个人信息进行管控,查看个人信息详情内容(头像、状态、用户名、用户组、邮箱),可修改包括头像、昵称、邮箱等信息。
  4. 修改密码:系统用户可对修改密码进行管控,修改密码信息,修改成功之后需使用新密码进行登录。

管理员模块:

  1. 登录:管理员账号密码由系统生成,可使用账号密码进行登录,使用系统功能,并对个人信息和密码进行管理。
  2. 后台首页:管理员登录系统后台后,首先进入后台首页界面,可查看档案信息统计信息数据分析图表。
  3. 系统用户:管理员可对用户和管理员等用户信息进行管控和查看其信息详情,进行增改删查操作;用户账号密码信息由管理员添加。
  4. 档案分类管理:管理员可查看所有档案分类信息详情,进行增改删查操作,支持档案类型搜索。
  5. 档案柜信息管理:管理员可查看所有档案柜信息详情(档案柜编号、档案柜名称、位置、状态、负责人、存放档案),进行增改删查操作,支持档案柜编号、档案柜名称、状态搜索。
  6. 档案信息管理:管理员可查看所有档案信息详情(档案编号、档案名称、存放位置、存档时间、档案类型、档案备注),进行查询和删除操作,支持档案编号、档案名称搜索。
  7. 档案借阅管理:管理员可查看所有档案借阅信息详情(借阅用户、姓名、主题、档案名称、借阅原因、审核状态、审核回复),进行增改删查操作,支持姓名、档案名称、审核状态搜索,可审核档案借阅信息。

3.3.2 非功能性分析

山东音旭国际贸易有限公司员工档案管理信息系统的非功能性需求指该系统的智的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体如下:

性能:山东音旭国际贸易有限公司员工档案管理信息系统应具备良好的性能,能够快速响应用户请求和处理大量并发操作。系统需要进行性能测试和优化,确保在高负载和高并发情况下仍能保持稳定和高效的运行。

可靠性:山东音旭国际贸易有限公司员工档案管理信息系统应具备高度可靠性,能够持续稳定地运行,并且能够自动恢复故障或异常状态。系统需要进行容错处理、错误处理和异常处理,以确保数据的完整性和可用性。

安全性:山东音旭国际贸易有限公司员工档案管理信息系统应具备良好的安全性,保护用户个人信息和敏感数据的安全。系统需要采用合适的身份验证和授权机制,以及加密技术来保护数据的传输和存储安全。同时,要注意防范常见的安全攻击,如跨站脚本(XSS)、跨站请求伪造(CSRF)等。

可扩展性:山东音旭国际贸易有限公司员工档案管理信息系统应具备良好的可扩展性,能够根据业务需求进行灵活的扩展和变更。系统架构和设计应考虑到未来的业务扩展,采用模块化和可插拔的方式,方便新增功能和模块的集成。

可维护性:山东音旭国际贸易有限公司员工档案管理信息系统应具备良好的可维护性,使得开发团队能够快速定位问题并进行修复、更新。代码结构清晰、注释明确,并遵循一致的编码规范。此外,系统应提供适当的日志记录和监控机制,以便及时发现和解决潜在的问题。

用户体验:山东音旭国际贸易有限公司员工档案管理信息系统应提供良好的用户体验,保证界面简洁直观、操作流畅。系统的响应时间应尽量缩短,页面加载速度要快,交互过程要流畅,以提升用户满意度和使用体验。

可移植性:山东音旭国际贸易有限公司员工档案管理信息系统应具备良好的可移植性,能够在不同的操作系统和硬件环境中运行。SpringBoot的跨平台特性和自包含的部署方式,有助于系统的移植和部署。

3.4 系统用例分析

通过3.3功能的分析,得出了本山东音旭国际贸易有限公司员工档案管理信息系统的用例图:

系统用户角色用例如图3-3所示。

图3-3 山东音旭国际贸易有限公司员工档案管理信息系统系统用户角色用例图

管理员角色用例如图3-4所示。

图3-4 山东音旭国际贸易有限公司员工档案管理信息系统管理员角色用例图

3.5本章小结

本章主要通过对山东音旭国际贸易有限公司员工档案管理信息系统的可行性分析、功能需求分析、系统用例分析、系统流程分析,确定整个山东音旭国际贸易有限公司员工档案管理信息系统要实现的功能。同时也为山东音旭国际贸易有限公司员工档案管理信息系统的代码实现和测试提供了标准。

4 总体设计

本章主要讨论的内容包括山东音旭国际贸易有限公司员工档案管理信息系统的功能模块设计、数据库系统设计。

4.1 系统功能模块设计

4.1.1整体功能模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本山东音旭国际贸易有限公司员工档案管理信息系统中的用例。那么接下来就要开始对本山东音旭国际贸易有限公司员工档案管理信息系统的架构、主要功能和数据库开始进行设计。山东音旭国际贸易有限公司员工档案管理信息系统根据前面章节的需求分析得出,其总体设计模块图如图4-1所示。

图4-1 山东音旭国际贸易有限公司员工档案管理信息系统功能模块图

4.2 数据库设计

数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。

4.2.1 数据库概念结构设计

下面是整个山东音旭国际贸易有限公司员工档案管理信息系统中主要的数据库表总E-R实体关系图。

图4-6 山东音旭国际贸易有限公司员工档案管理信息系统总E-R关系图

4.2.2 数据库逻辑结构设计

通过上一小节中山东音旭国际贸易有限公司员工档案管理信息系统中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。

表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

用户编号:

表archive_borrowing (档案借阅)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

archive_borrowing_id

int

10

0

N

Y

档案借阅ID

2

borrowing_users

int

10

0

Y

N

0

借阅用户

3

name

varchar

64

0

Y

N

姓名

4

theme

varchar

64

0

Y

N

主题

5

file_names

varchar

64

0

Y

N

档案名称

6

reason_for_borrowing

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

更新时间

表archive_information (档案信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

archive_information_id

int

10

0

N

Y

档案信息ID

2

archive_number

varchar

64

0

Y

N

档案编号

3

file_names

varchar

64

0

Y

N

档案名称

4

storage_location

varchar

64

0

Y

N

存放位置

5

archive_time

date

10

0

Y

N

存档时间

6

archive_type

varchar

64

0

Y

N

档案类型

7

archive_notes

text

65535

0

Y

N

档案备注

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表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

更新时间:

表cabinet_information (档案柜信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cabinet_information_id

int

10

0

N

Y

档案柜信息ID

2

cabinet_number

varchar

64

0

Y

N

档案柜编号

3

cabinet_name

varchar

64

0

Y

N

档案柜名称

4

position

varchar

64

0

Y

N

位置

5

state

varchar

64

0

Y

N

状态

6

responsible_person

varchar

64

0

Y

N

负责人

7

storing_archives

text

65535

0

Y

N

存放档案

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表classification_of_documents (档案分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

classification_of_documents_id

int

10

0

N

Y

档案分类ID

2

archive_type

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

更新时间

表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:

表system_users (系统用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

system_users_id

int

10

0

N

Y

系统用户ID

2

name

varchar

64

0

Y

N

姓名

3

gender

varchar

64

0

Y

N

性别

4

contact_number

varchar

64

0

Y

N

联系电话

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

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.3本章小结

整个山东音旭国际贸易有限公司员工档案管理信息系统的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。

5 系统详细设计与实现

山东音旭国际贸易有限公司员工档案管理信息系统的详细设计与实现主要是根据前面的山东音旭国际贸易有限公司员工档案管理信息系统的需求分析和山东音旭国际贸易有限公司员工档案管理信息系统的总体设计来设计页面并实现业务逻辑。主要从山东音旭国际贸易有限公司员工档案管理信息系统界面实现、业务逻辑实现这两部分进行介绍。

5.1登录功能模块

5.1.1 系统登录界面

山东音旭国际贸易有限公司员工档案管理信息系统的登录界面设计简洁明了。管理员、用户可以在登录界面上输入自己的账号,并填写与账号对应的密码。通过点击“登录”按钮,用户可以完成登录操作。如果用户忘记密码,登录界面提供了相应的“忘记密码”链接,方便找回或重置密码。同时,登录界面也可能包含一个注册链接,以便新用户可以直接跳转到注册界面进行账号注册。通过这样的设计,山东音旭国际贸易有限公司员工档案管理信息系统的登录界面旨在提供用户友好、便捷的登录体验,确保用户能够安全、快速地进入系统,用户登录界面如下图所示。

图5-1系统登录界面图

登录关键代码如下:

 /**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            Duration duration = Duration.ofSeconds(7200L);

            redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

    }

5.2系统用户功能模块

5.2.1 档案借阅管理界面

系统用户可查看所有档案借阅信息详情(借阅用户、姓名、主题、档案名称、借阅原因、审核状态、审核回复),进行查阅和添加操作,支持姓名、档案名称、审核状态搜索,可。界面如下图所示。

图5-2 档案借阅管理界面图

档案借阅管理添加界面如下图所示。

图5-3 档案借阅管理添加界面图

5.2.2 个人信息界面

系统用户可对个人信息进行管控,查看个人信息详情内容(头像、状态、用户名、用户组、邮箱),可修改包括头像、昵称、邮箱等信息。界面如下图所示。

图5-4 个人信息界面图

5.2.3 修改密码界面

系统用户可对修改密码进行管控,修改密码信息,修改成功之后需使用新密码进行登录。界面如下图所示。

图5-5 修改密码界面图

5.3管理员功能模块

5.3.1 后台首页界面

管理员登录系统后台后,首先进入后台首页界面,可查看档案信息统计信息数据分析图表。界面如下图所示。

图5-6 后台首页界面图

5.3.2 系统用户界面

管理员可对用户和管理员等用户信息进行管控和查看其信息详情,进行增改删查操作;用户账号密码信息由管理员添加。界面如下图所示。

图5-7 系统用户添加界面图

添加关键代码:

 @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

    }

5.3.3 档案分类管理界面

管理员可查看所有档案分类信息详情,进行增改删查操作,支持档案类型搜索。界面如下图所示。

图5-8 档案分类管理界面图

5.3.4 档案柜信息管理界面

管理员可查看所有档案柜信息详情(档案柜编号、档案柜名称、位置、状态、负责人、存放档案),进行增改删查操作,支持档案柜编号、档案柜名称、状态搜索。界面如下图所示。

图5-9 档案柜信息管理添加界面图

5.3.5 档案信息管理界面

管理员可查看所有档案信息详情(档案编号、档案名称、存放位置、存档时间、档案类型、档案备注),进行查询和删除操作,支持档案编号、档案名称搜索索。界面如下图所示。

图5-10 档案信息管理界面图

5.3.5 档案借阅管理界面

管理员可查看所有档案信息详情(档案编号、档案名称、存放位置、存档时间、档案类型、档案备注),进行查询和删除操作,支持档案编号、档案名称搜索索。界面如下图所示。

图5-11 档案借阅管理详情审核界面图

6系统测试

6.1测试目的

在对该系统进行完详细设计和编码之后,就要对 基于Java的幼教管理系统的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。

6.2测试过程

在软件的测试过程中,通常测试人员需要针对不同的功能模块设计多种测试用例。通过测试用例能够及时发现代码业务逻辑上是否与真实的业务逻辑相对应,及时发现代码上或逻辑上的缺陷,以此来来完善系统,提高软件产品的质量,使软件具有良好的用户体验。

(1)用户登录测试

用户登录功能测试用例如下表所示。

表6-1 登录测试用例

测试用例编号

YL_01

测试用例名称

系统使用者登录

测试用例描述

登录者输入用户名、密码和验证码

系统入口

浏览器

步骤

预期结果

实际结果

输入正确的用户名、密码

提示“登录成功”,并进入系统

预期结果

输入错误的用户名、密码

提示“登录失败”,并返回登录界面

预期结果

不输入用户名、密码

提示“请输入完整”

预期结果

(2)创建数据测试 

在系统中,创建功能也是基础功能之一,因此创建功能的测试很有代表性。在此章节主要列举在创建时各种情况下系统结果的测试。由于系统涉及创建功能操作过多,因此将多处统称创建功能。

创建数据用例如下表所示。

表6-2 创建数据测试用例

测试用例编号

YL_02

测试用例名称

系统使用者进行创建数据

测试用例描述

使用者输入要创建的数据

系统入口

浏览器

步骤

预期结果

实际结果

输入完整并且格式正确的数据

提示“创建成功”,并显示所有数据

预期结果

核心位置数据但非必要位置不输入数据

提示“创建成功”,并显示所有数据

预期结果

核心数据位置不输入数据

提示“创建失败”

预期结果

(3)修改数据测试 

在系统中,修改功能是系统主要实现功能,因此修改功能的测试很有代表性。在此章节主要列举在修改时各种情况下系统结果的测试。由于系统涉及修改功能操作过多,因此将多处数据表记录修改和状态修改统称修改功能。

修改数据用例如下表所示。

表6-3 修改数据测试用例

测试用例编号

YL_03

测试用例名称

系统使用者进行修改数据

测试用例描述

使用者对可修改的数据项进行修改

系统入口

浏览器

步骤

预期结果

实际结果

将现有数据修改成正确的数据

提示“修改成功”,并显示所有数据

预期结果

将现有数据修改成错误的数据

提示“修改失败”

预期结果

(4)删除数据测试 

在系统中,会存在不少已经过期或不需要的数据,因此删除功能的测试很有代表性。在此章节主要列举在删除时各种情况下系统结果的测试。

删除数据用例如下表所示。

表6-4 删除数据测试用例

测试用例编号

YL_04

测试用例名称

系统使用者进行删除数据

测试用例描述

全部删除以及输入关键词删除

系统入口

浏览器

步骤

预期结果

实际结果

在可删除的界面选择所有数据进行全部删除

显示是否确认删除,确认后删除成功

预期结果

在可删除的界面选择部分数据进行

显示是否确认删除,确认后删除成功

预期结果

没有选中任何数据

显示删除失败

预期结果

(5)查询数据测试 

在系统中,查询功能是使用系统使用最多也是最基础的功能,因此查询功能的测试很有代表性。在此章节主要列举在查询时各种情况下系统结果的测试。

查询数据用例如下表所示。

表6-5 查询数据测试用例

测试用例编号

YL_05

测试用例名称

系统使用者进行查询数据

测试用例描述

全部查询以及输入关键词查询

系统入口

浏览器

步骤

预期结果

实际结果

界面自动查询全部

显示对应所有记录

预期结果

输入已存在且能匹配成功的关键字

显示所查询到的数据

预期结果

输入不存在的关键字

显示数据界面为空

预期结果

6.3测试结果

在本次测试的过程主要针对用户登录和所有功能下的添加操作,修改操作、删除操作和查询操作,并以真实数据一一进行相关功能项目的输入,最终能够保证每个项目涉及的功能都是能够正常运行,因此能够保证本次设计的,已实现的功能能够正常运行并且相关数据库的信息也同样保证正确。经过对此系统的测试,得出该系统足以满足用户日常需求,在功能项目和操作等方面也能满足操作员对于其他用户的管理。但是,还有很多功能有待添加,这个系统仅能满足大部分的需求,还需要对此系统的功能更进一步的完善,这样使用起来才能更加的完美。

总结与展望

  通过Java语言、Springboot框架、和MySQL数据库等各个相关技术的运用终于完成了这个项目设计,本文所研究开发的山东音旭国际贸易有限公司员工档案管理信息系统能够更加公平与包容和便捷地满足用户的使用需求,最终实现了最初的开发初衷和方向。通过掌握Java语言、Springboot框架和MySQL等各个技术,对于整个系统开发工作来说极其重要。经过努力付出和精心设计,本文实现的员工档案管理信息系统具有很多的优势,能够稳定运行,满足系统使用用户的各个需求。在对系统内的各个需求和每个部件进行了较为详细的分析,并对其采取了针对性的设计方案,运行实现了用户登录、后台首页、系统用户、档案分类管理、档案柜信息管理、档案信息管理、档案借阅管理、个人信息、修改密码等多个功能。经过最终测试,能够确保该系统能够正常并流畅运行,因此建议将其作为一个山东音旭国际贸易有限公司员工档案管理信息系统。

Java技术在该系统开发的过程中被广泛采用,Java技术的代码编写比较简单且易懂,并且不受平台和技术的各种限制,拥有很出色的面向对象的特性,所以说在技术上已经十分成熟。利用Java技术来进行支撑系统的运行,能够使系统实现每一种功能。在本次系统的设计编写过程中,我们面临着许多挑战,但是我们得益于老师和同学们的支持,最终经过我们的努力成功地实现了这一项重要的任务。

山东音旭国际贸易有限公司员工档案管理信息系统在设计与实现过程中取得了一定的成果,但仍有进一步的改进和发展空间。未来我们将持续努力,不断提升系统的功能和性能,为用户提供更好的使用体验。

参考文献

[1]何冠熠,白旭东,陈晓翔.高职院校档案数字化管理的信息安全问题研究[J].北京工业职业技术学院学报,2024,23(02):121-124.

[2]陈红.数字化档案管理信息系统在医院档案管理中的应用[J].办公自动化,2024,29(02):70-72.

[3]孙超.医院档案管理信息系统的设计与实现[J].办公自动化,2024,29(01):70-72.

[4]孟思思.浅谈档案管理中计算机技术的应用[J].信息记录材料,2024,25(01):35-37.DOI:10.16009/j.cnki.cn13-1295/tq.2024.01.012.

[5]吴伶琳.基于SpringBoot的客户关系管理系统设计与实现[J].无线互联科技,2023,20(24):60-62.

[6]王绍锋,张桂金.基于数字化档案管理系统的医院档案管理探讨[J].现代医院,2023,23(11):1743-1745.

[7]黄赛英.基于Springboot的医院档案管理系统设计[J].集成电路应用,2023,40(11):384-385.DOI:10.19339/j.issn.1674-2583.2023.11.176.

[8]石博年.基于管理信息系统的图书档案管理策略[J].中国报业,2023,(20):136-137.DOI:10.13854/j.cnki.cni.2023.20.052.

[9]蔡钰汐.企业档案管理信息系统的设计与实现[J].信息记录材料,2023,24(09):87-89+92.DOI:10.16009/j.cnki.cn13-1295/tq.2023.09.002.

[10]姜珊珊.关于档案信息化建设的探索研究[J].山东档案,2023,(04):51-52.

[11]徐灏.数字经济时代企业电子档案信息安全风险与对策研究[J].兰台内外,2023,(20):1-3.

[12]李琴,崔名扬,钱奕文,等.基于SpringBoot的研究生学术档案管理系统开发[J].电脑知识与技术,2023,19(18):46-48+51.DOI:10.14004/j.cnki.ckt.2023.0900.

[13]齐开林.档案管理信息系统建设应注意的几个问题[J].陕西档案,2023,(01):55-56.

[14]乔赟鸽凌.基于B/S结构和JAVA编程技术的高校档案管理系统设计[J].无线互联科技,2023,19(02):52-54.

[15]Yang Y .Design and Implementation of Student Information Management System Based on Springboot[J].Advances in Computer, Signals and Systems,2022,6(6):

[16]刘明清.学校人事档案管理信息系统建设的探讨[J].山东档案,2022,(04):51-52.

[17]罗虹.人力资源管理与档案管理信息系统构建及应用探讨[J].黑龙江人力资源和社会保障,2022,(14):152-154.

[18]Hejing W .Commerce Middle Office Management System Based on Springboot[J].International Journal of Advanced Network, Monitoring and Controls,2022,7(2):32-45.

[19]Cheng F .Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework[J].Advances in Educational Technology and Psychology,2021,5(2):

[20]周阳东.供电企业人事档案管理信息系统的设计与实现[D].电子科技大学,2021.DOI:10.27005/d.cnki.gdzku.2021.003384.

致 谢

在本文的最后,我要对许多人表示诚挚的感谢,他们为山东音旭国际贸易有限公司员工档案管理信息系统的研发和完成做出了重要的贡献。首先,我要感谢我的导师,您给予了我悉心的指导和支持,在选题和研究过程中提供了宝贵的意见和建议。您的专业知识和严谨态度使我受益匪浅,让我能够顺利地完成毕业设计。其次,我要感谢我的同学和朋友们,你们在我写作和排版过程中给予了热情的帮助和鼓励。与你们一起度过的大学生活是我宝贵的回忆,你们的友谊让我感到无比温暖和快乐。

此外,我也要感谢那些为我们提供参考和指导的学者和专家们。他们的研究成果为我们的论文提供了宝贵的指导,使我们能够更好地理解问题和展开思考。

最后,我要感谢我的家人和爱人,你们一直以来对我无条件的支持和理解让我能够专注于学业。你们的鼓励和陪伴是我坚持不懈的动力。

在这段时间里,我收获了很多宝贵的经验和知识。尽管我的能力有限,但我会继续努力去完善这篇论文,并且真诚地希望各位老师和同学们能够给予宝贵的指导与意见。

最后,再次向所有支持和帮助过我的人表示深深的感谢!我会将所学所得用于实践,为社会做出自己的贡献。

点赞+收藏+关注 → 私信领取本源代码、数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值