




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论1.1开发背景与意义过去的一年里,我国一直在提倡网络创业,吸引了一大群的创业者。然而,创业者对管理的认识还处于一个人工的阶段,他们还没有系统,伴随业务不断扩张,传统的系统不能满足需求,所以,就需完善的系统来对企业进行管理[1]。对于某些公司来说,现在还在使用的是人工方式,这种方式不仅会造成很多的人力和物力的消耗,对于查找也会造成很大的难度。此外,有些采用了HR系统公司,因为没有很好地保障其安全,造成了安全问题。所以,建立合理的体系显得尤为重要。本文以当前实际为背景,结合市场状况,开发了一套人力资源管理系统,它可以取代人工实现自动化,同时考虑了安全性,可以有效地保障公司信息的安全。目前,由于互联网技术不断发展,对人力资源管理系统的开发能够利用已有的资源,使其实现成为可能[3]。在网上做人事工作,不仅能提升工作的经验,还能提升工作的效率。目前流行的HRM模型主要有两种:B/S(Browser/server)架构这种系统结构可以降低资源成本,提高系统性能,因为它可以将大型系统切分成多个小型系统,分别运行在不同的计算机上,这样每个计算机的负荷就会减轻,同时还能提高系统的可靠性和可扩展性。对于B/S架构,它具有更广泛的应用范围,因为大多数计算机都配备了浏览器,所以用户只需要拥有浏览器就可以访问系统。此外,B/S架构中,应用逻辑通常集中在服务器端和中间件上实现,这样可以降低客户端的应用环境和配置要求,提高运行的可移植性。同时,还能够更好地支持可扩展性和高并发访问,提高系统的稳定性和安全性。C/S(Client/server)架构C/S架构,就是客户机和服务器结构,C/S架构的优点是可以实现高并发、高效率、高可靠性的业务处理,同时还可以根据需求进行灵活的配置和定制。该架构模式的缺点是需要独立的客户端和服务器软件,同时需要考虑安全性和数据传输的问题。此外,随着云计算和分布式计算技术的发展,C/S架构已经被一些新的架构模式所取代,比如B/S架构、微服务架构等。1.2国内外研究现状当前,在我国的市面上,有许多软件,它们基本覆盖了管理的所有领域,能够完成功能,这些软件一般都是采用网络式,具有较好的控制和较高的智能化[6]。高中华于2022年在《平台化转型中人力资源管理系统及其有效性:理论构建与分析》中,以“策略型HRM中的“能-动力-机遇”模式(AMO)为架构,讨论了“能-激励-授权”三大子系统在“能-激励-授权”中的“能-激励-授权”三大子系统的设计[7]。张军于2022年发表的《基于Java的企业人力资源管理系统的设计与实现》中,指出要从一个科学的视角出发,将招聘,工作职责,评价,工资福利,离职合约等与雇员有关信息,并将这些信息以统一,通用,易获取的形式储存在一个统一的中心数据库内,以便更好地为雇员提供信息[8]。在国外,MIS的应用起步较晚,其应用范围较广,但其应用范围较广。2021年,VazquezMarcial,SunyerAlbert发表的《AntecedentsofUserAcceptanceofElectronicHumanResourceManagementSystems(e-HRM)atSEAT》中指出,HRM可以从主观角度激发雇员的工作热情,使雇员的潜能得到最大限度的释放,从而增强雇员的竞争能力,给公司创造更多的价值,从而在某种意义上保证公司的战略目标得以顺利完成[9]。在2021年度,胡宾、麦肯锡、马永华、杨志明等人将《Theinfluenceofhumanresourcemanagementsystemsonemployeejobcrafting:Anintegratedcontentandprocessapproach》中,使用了“浏览器/服务器”体系结构,有效地完成了该体系结构中的各个模块的功能。其主要功能有:人员管理,岗位管理等。并且还有许多功能,有新加入职工的管理等[10]。系统开发技术的介绍2.1JAVA语言简介Java是种基于类、并发的程序设计语言,既吸取了C/C++中各个语言的长处,又去掉了很多令人费解的概念。在1996年,Sun推出了首个针对Java的开发软件套件JDK1.0,并在当年九月,使用Java技术创建了83,000个Web页面。十月,为Java平台推出了首款立即编译程序。Java主要特征是:简洁、分布式、可靠、可移植等。Java程序具有很大的移植性,并且具有很高的安全性,可以以多种方法移植到其它程序,并且与不同系统相兼容,这是一种十分罕见的优点。同时,Java还有强大的安全机制,包括类加载器、字节代码验证器和安全管理器等,可以保证程序的安全性。Java还是一种面向对象的语言,支持封装、继承和多态等特性,这使得Java程序易于设计、开发和维护。Java有很多种开发工具可供开发者选择,其中比较流行的包括Eclipse、NetBeans和IntelliJIDEA等。这些工具包括代码编辑器、编译器、调试器和其他开发工具,总而言之,Java开发工具有很多种,每个开发者都可以根据自身需求选择适合自己的开发工具。但是无论选择哪种开发工具,都需要熟悉其使用方法,从而提高工作效率和质量。Java在Web开发中也有着广泛的应用。JavaServlet和JavaServerPages(JSP)是用于Web应用程序开发的技术,可以创建动态Web页面、Web应用程序和Web服务。在企业级应用程序中,Java也是非常受欢迎的开发语言之一,特别是在JavaEE平台上。JavaEE提供了一系列的API和服务,包括JavaPersistenceAPI、JavaMessageService、JavaTransactionAPI等,用于开发和部署企业级应用程序。当然,Java也有一些缺点。Java应用程序在运行时需要虚拟机,这会带来一些额外的开销。此外,Java代码也要比一些其他语言的代码长。总的来说,Java是一种非常流行和实用的编程语言,它具有许多优点和广泛的应用领域。对于开发人员来说,学习Java的优势就在于可以轻松地开发各种应用程序和系统,并且能够在不同平台上运行,因此其应用十分广泛。2.2MyEclipse简介MyEclipse具有广泛的适用范围,兼容性很高,而且具有非常强大的功能。它是一个Eclipse插件集合,一般适用于JAVA和J2EE系统研发,支持JDBC,Hibernate,AJAX等在市场上可以找到的包括所有信息库链接工具和主流Eclipse产品研发工具。MyEclipse是业界众所周知的一种研发工具,而这个系统也将其用于研发。MyEclipse基于Eclipse的IDE。MyEclipse除了能够改善操作性能,在集成了服务器之后,它还能够为我们提供更多的支持,比如在开发数据库以及应用J2EE。MyEclipse是一个非常完善的函数,它可以为J2EE整合所需的界面,这样就可以实现编码,测试,调试和发布。可以对JSP、HTML、SQL等进行有效的支援。Eclipse是一个非常好的软件开发工具,它可以极大地提升软件的开发效率。在Eclipse中,能够对set和get的方法进行自动增加,使用Eclipse中的增加就可以对某些重要的功能能够进行标注。而且,还能实现对构造器的自动化创建。在Eclipse中,您能够手工地对Tomcat和JDK进行配置,也可以通过Eclipse来执行Web应用。Eclipse经常被用作JavaWeb编程的一个工具,Java中,把它和一个数据库相连,然后把它和一个对应集成在一起。2.3JSP简介JSP是以达到页面的动态效果为目的的跨平台网页技术,它与ASP相似,均在HTML中将一些相关代码利用语言引擎进行运行,可以与操作员进行互动,便于操作员的操作。JSP技术拥有许多优势,它不需要考虑所使用对象,只需要一次完成编码,它就可以在各个地方进行应用。此外,JSP技术还拥有更好的稳定性与安全性,能够保证多个对象使用,它可以在任一平台中设计研发,并对系统进行设置和界面扩展。此外,还提供了其自身的强有力功能,而且能够从许多不同的管道中自由获取。JSP有以下优势:技术公开:JSP技术建立在彼此相分离的基础上,它的支撑源于专业化的和各种各样的工具包,由系统的构件以及信息的研发人员所提供。而ASP则在很大程度上依靠MICROSOFT来实现。平台与服务端之间相互分离:由JSP撰写的程序可以按照Java的句法来执行。因此,JSP可以在不同的WEB系统上运行,并且可以从不同的研发者那里获得不同的工具箱。开源:从1995开始,SUN公司采用开源的方式与世界JSP协会进行了JSP技术与标准的研发与修订。JSP标签的扩展性:通过JSP技术,研发人员可以对标签进行扩展性的提升,从而可以更好地发挥XML标签技术的优势,降低对脚本语言依靠度。JSP的跨平台特性:因为JSP是一个在伺服器上执行的指令码,所以它能够在Unix,linux,window等环境下执行。在此,我使用了当前JSP受欢迎的MVC框架(ModelViewController),它是一种能够将程序逻辑层与视图层分开进行研发,并且由控制层进行联系的一种研发模式。2.4MySQL数据库概念和特点MySQL的架构是基于客户端/服务器端模型。MySQL服务器包括一个或多个进程,其中最重要的是mysqld守护程序,它是MySQL的核心。客户端应用程序可以通过各种方法与MySQL服务器通信,最常见的是使用MySQL提供的命令行客户端程序或通过编程接口,如ODBC和JDBC等。MySQL使用SQL(结构化查询语言)作为其主要的查询语言,这是一种标准的关系型数据库管理语言。SQL语言可用于检索、插入、更新和删除数据库中的数据。MySQL还提供了许多其他功能,如事务、外键、索引等,使得数据管理更加强大和灵活。MySQL具有以下几个优点:高性能:MySQL是一个被广泛测试和优化过的数据库管理系统,其查询速度和性能非常高。可靠性:MySQL拥有一套完整的事务管理机制和崩溃恢复能力,可以降低数据丢失的风险。稳定性:MySQL的开发者致力于提高软件的稳定性,因此MySQL的稳定性非常高。可扩展性:MySQL的可扩展性非常好,可以支持高流量的网站和应用程序。安全性:MySQL可以使用基于角色的安全模型,可以确保数据的安全。第3章系统分析3.1功能需求分析该系统主要包含了员工信息,打卡信息等。表3.1功能需求列表编号功能名称功能描述输入内容输出内容1员工信息管理员工信息的增删改查员工信息的相关信息员工信息列表2打卡信息管理打卡信息的增删改查打卡信息相关信息打卡信息列表3薪资发放管理薪资发放的增删改查薪资发放信息薪资发放列表4公司类型管理公司类型的增删改查公司类型的相关信息打卡信息列表5部门岗位管理部门岗位的增删改查部门岗位相关信息部门岗位列表6登录注册管理管理员或员工的登录注册登录注册信息登录注册成功或失败7报表统计管理管理员或员工导出或打印系统中的信息导出或打印报表系统信息列表8数据信息管理备份系统中的数据数据备份系统数据列表3.2业务流程分析总体业务流程图如图3.1所示:打卡信息添加打卡信息添加薪资发放添加薪资发放信息薪资发放查询员工信息添加员工信息查询打卡信息查询打卡信息管理系统用户管理员工信息用户信息用户打卡信息管理员图3.1总体业务流程图整体业务流程:可以先对自己的账户进行注册,然后在审核合格之后,使用正确的数据登陆系统,查看员工信息、打卡信息等信息,从而展开管理工作。用户在登陆后,可以查询各种信息。这个后台是被管理员所利用的,在登陆页面中,管理员将自己的账户和密码与数据库的身份进行比对,在经过了认证之后,将会登陆到管理员主页上,这样就能够对系统的用户管理、员工信息等进行操作。3.3数据流程分析HRM按照所设计的每个业务,采取了一步一步精炼的方式,所绘制的每个部分,每个层次的数据流图如下:3.3.10层数据流图无论是员工还是管理员,都可以从登陆页面上登陆,如图3.2所示:用户用户系统输出输入管理员输出输入输入输出数据库图3.20层数据流图系统以的输入值为基础,对该用户所扮演的是何种角色进行了判定,然后将其跳出到对应的页面,在这个过程中,用户可以在系统中对其操作,这时,数据流会向数据库中心,并执行对应sql语句,并将结果反馈页面上。3.3.21层数据流图1层为系统的详细数据流图,如图3.3所示:管理员管理员登录信息D4薪资发放表F4输入信息P0用户登录F4输出信息P0用户登录用户登录信息P8薪资发放P7薪资发放D3打卡信息表F3输入信息P5打卡信息D2员工信息表F2输入信息F2输出信息P4员工信息P3员工信息F3输出信息P6打卡信息P4信息匹配管理管理管理查询查询查询图3.31层数据流图在1级数据流图中,数据实体包含了管理员数据,过程包含了打卡信息管理、薪资发放管理、员工信息管理等模块。
第4章系统设计4.1系统设计思想在进行设计时,必须使用JAVA语言来进行实现,首先要阅读相关的书箱要对项目开发过程有一个清楚的想法,从版面所用的html的知识,到sql语法,到JAVA代码标准化,都要充分的准备[17]。在MVC架构下,实现了一个完整的系统:要实现mvc理念,把项目分成三层,光把视图和逻辑分开是远远不行的,由于没有把数据库逻辑分开,也没把低耦合思想落实到实践中,在更改时,要修改很多的代码,而且维护非常的困难,这样就不能满足现在的要求,所以mvc应当分成5层,即以下5层[18]。1.视图(html/jsp):可以被使用者看到资讯,以及资料资讯的开头与结尾。2.控制级(servlet/action):控制级不需要对所有的服务进行处理,也不需要对其进行操作,只是为了对过程进行控制,完成跳跃函数,仅通过对Service级的结果进行跳跃函数的调用来完成跳跃函数,其逻辑更加倾向于视图级,并为视图级提供服务[19]。3.Service:主要负责对业务逻辑进行管理,是控制层与DAO之间的一个过渡层次,它按照DAO的反馈信息对各种业务逻辑进行管理,然后把这些管理信息反馈到控制层。4.DAO:主要是用来解决不同类型的数据库逻辑,其中包含了对数据库的CRUD、对不同类型的程序/功能进行了存储,并为用户提供了一个访问数据库的界面,这些都是DAO的功能。5.DataModel(DataModel):专用于将数据源模式(JavaBean/DTO)进行包装,其自身并不对数据库进行任何操作,仅为DAO层对数据进行访问提供一个接口。从上到下的顺序是:视图、控制、服务、DAO、数据模型。4.2系统总体设计登录模块可以供管理员和员工一起使用,系统包含了:系统用户管理、员工信息管理、打卡信息管理、薪资发放管理、公司类型管理等模块。系统核心功能结构图如图4.1所示:图4.1系统核心功能结构图4.3系统功能模块设计系统登陆:使用者只需在电脑上键入相应的使用者名称及口令即可完成登陆。系统使用者管理:当管理员登录本系统时,拥有对本系统的全部权限。更改密码:系统中的每一个用户都可以更改密码,但更改后必须再次登陆。员工信息管理:有相关权限的使用者可以对员工信息进行查、加、改、删,也能够对工号,密码等数个别操作,并对参数进行设定。打卡信息管理:具有相应权限的使用者可以对打卡信息进行进行查、加、改、删,也能够对编号,类型等数个别操作,并对参数进行设定。薪资发放管理:在相应的权限下,可以对薪资发放进行类型进行进行查、加、改、删,也能够对工号,金额等数个别操作,并对参数进行设定。公司类型管理:有相关的权限的使用者可以对公司类型进行查、加、改、删操作,也能够对类型等数个别操作,并对参数进行设定。部门岗位管理:具有相应的权限的使用者可以对部门岗位进行查、加、改、删操作,也能够对类型等数个别操作,并对参数进行设定。系统信息管理:有相关权限的使用者可以对系统的数据进行备份。报表统计管理:有相关权限的使用者可以将系统中的员工信息表、薪资表、部门岗位表等进行导出或打印。4.4数据库设计4.4.1概念模型在构建前,首先要对系统数据展开模型的分析,对其中的实体包括了什么样的属性,以及与实体之间的直接联系进行了设计,最后以系统的概念为依据,得出了如下的系统整体E-R图和实体属性图。员工信息包括工号,密码等数据,如图4.2所示:员工信息员工信息性别年龄部门岗位工号姓名照片文化程度基本月薪身份证学历公司名称密码手机民族图4.2员工信息实体-属性图打卡信息包含了打卡编号、打卡类型等,如图4.3所示:打卡信息打卡信息打卡时间工号姓名主键ID打卡编号添加时间打卡类型图4.3打卡信息实体-属性图薪资发放图包含了薪资编号、发放时间等,如图4.4所示:薪资发放薪资发放发放金额工号姓名薪资编号发放时间部门岗位公司名称基本月薪图4.4薪资发放实体-属性图公司类型包含了类型等数据项,如图4.5所示:公司类型公司类型类型添加时间主键ID图4.5公司类型实体-属性图部门岗位包含了类型等数据项,如图4.6所示:部门岗位部门岗位添加时间类型主键ID图4.6部门岗位实体-属性图系统总体E-R图如图4.7所示:图4.7系统E-R图4.4.2数据库表本系统的数据库设计囊括了这几个:数据逻辑结构设计,数据库概念结构设计和数据库物理结构设计。逻辑结构设计考虑了系统在使用过程中增、删、改、查一系列的速度,以及系统对于磁盘的储存的一些问题。物理结构的设计包括员工信息管理、打卡信息管理系统、薪资发放管理、公司类型管理等,明确了每个数据表的主键信息和空值处理。本系统的数据库设计根据目前存在的问题及需求,在MySQL上进行全方位的数据库设计,保证数据存储的可靠性和唯一性。人力资源管理系统包括以下表:表4.1管理用户表序号字段名称字段类型大小允许为空最大长度备注1IDint4否4主键ID2usernamevarchar20否50用户名3pwdvarchar20否50密码4cxvarchar20否50权限5addtimedatetime8否8添加时间表4.2公司类型序号字段名称字段类型大小允许为空最大长度备注1IDint4否8主键ID2leixingvarchar50否50类型3addtimedatetime8否8添加时间表4.3部门岗位表序号字段名称字段类型大小允许为空最大长度备注1IDint4否8主键ID2leixingvarchar50否50类型3addtimedatetime8否8添加时间表4.4员工信息表序号字段名称字段类型大小允许为空最大长度备注1IDint4否8主键ID2gonghaovarchar50是50工号3mimavarchar50否50密码4xingmingvarchar50否50姓名5xingbievarchar50是50性别6shenfenzhengvarchar50否50身份证7nianlingvarchar50否50年龄8gongsimingchengvarchar50是50公司名称9bumengangweivarchar50是50部门岗位10wenhuachengduvarchar50是50文化程度11minzuvarchar50是50民族12xuelivarchar50是50学历13jibenyuexinfloat10是10基本月薪14shoujivarchar50是50手机15zhaopianvarchar50是50照片16addtimedatetime8否8添加时间表4.5打卡信息表序号字段名称字段类型大小允许为空最大长度备注1IDint4否8主键ID2dakabianhaovarchar50是50打卡编号3dakaleixingvarchar50否50打卡类型4dakashijiandatetime8是8打卡时间5gonghaovarchar50是50工号6xingmingvarchar50是50姓名7addtimedatetime8否8添加时间表4.6薪资发放表序号字段名称字段类型大小允许为空最大长度备注1IDint4否8主键ID2xinzibianhaovarchar50是50薪资编号3fafangshijiandatetime8否8发放时间4fafangjinefloat10是10发放金额5gonghaovarchar50是50工号6xingmingvarchar50是50姓名7gongsimingchengvarchar50是50公司名称8bumengangweivarchar50是50部门岗位9jibenyuexinvarchar50是50基本月薪10addtimedatetime8否8添加时间
第5章系统的实现5.1实现环境说明运行环境包括硬件要求及软件要求如下表所示。硬件要求设备名称说明处理器英特尔酷睿I系列以上内存4GB,内存越大,速度越快硬盘300GB以上鼠标光电套件软件要求名称说明操作系统Windows7及以上应用软件Myeclipse图5.1硬件要求及软件要求5.2前台页面系统一共可以分为员工信息、打卡信息等多个模块。该体系在企业内部实现了企业内部的人事管理目标。使HRM体系具有可操作性。在前台的首页上,与管理员的注册网页整合在一起,当使用者完成了自己的注册资料之后,可以使用post的方法来提交表格,它会通过js来验证自己的表格,假如你的输入出现了问题,那么你就可以在这个界面上看到你的名字。如图5.2,图5.3所示:图5.2管理员系统主界面图5.3员工系统主界面在前台的首页上,与管理员的注册网页整合在一起,当使用者完成了自己的注册资料之后,可以使用post的方法来提交表格,它会通过js来验证自己的表格,假如你的输入出现了问题,那么你就可以在这个界面上看到你的名字。5.3登录模块要进行人员的管理,首先要进行人员的登陆,只有在登陆成功之后,人员信息、打卡信息、薪资发放、公司类型、部门岗位等才可以进行操作。登录流程如图5.4所示:图5.4登录模块流程图代码如下:publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{response.setContentType("text/html"); PrintWriterout=response.getWriter(); Stringac=request.getParameter("ac"); if(ac==null)ac=""; CommDAOdao=newCommDAO(); Stringdate=Info.getDateStr(); Stringtoday=date.substring(0,10); Stringtomonth=date.substring(0,7); if(ac.equals("login")) { Stringusername=request.getParameter("username"); Stringpassword=request.getParameter("pwd1"); Stringutype=request.getParameter("cx"); Stringpagerandom=request.getParameter("pagerandom")==null?"":request.getParameter("pagerandom"); Stringrandom=(String)request.getSession().getAttribute("random"); if(!pagerandom.equals(random)&&request.getParameter("a")!=null) { request.setAttribute("random",""); go("/index.jsp",request,response); } else{ Stringsql1=""; if(utype.equals("管理员")){sql1="select*fromalluserswhereusername='"+username+"'andpwd='"+password+"'";} if(utype.equals("员工")){sql1="select*fromyuangongxinxiwheregonghao='"+username+"'andmima='"+password+"'";} List<HashMap>userlist1=dao.select(sql1); if(userlist1.size()==1) { request.getSession().setAttribute("username",username); if(utype.equals("管理员")){ request.getSession().setAttribute("cx",userlist1.get(0).get("cx")); } else { request.getSession().setAttribute("cx",utype); } gor("index.jsp",request,response); }else{ request.setAttribute("error",""); go("/index.jsp",request,response); }如图5.5所示:图5.5用户登录界面5.4员工信息管理为管理员操作顺畅,在本系统中,应当添加一个员工信息模块,来协助进行整理,从而提高工作效率。在信息之后,应当包括工号,密码等数据项的增、删、改、查。员工信息流程如图5.6所示:图5.6员工信息模块流程图代码如下:<%Stringid=request.getParameter("id");HashMapext=newHashMap();newCommDAO().update(request,response,"yuangongxinxi",ext,true,false,"");HashMapmmm=newCommDAO().getmaps("gonghao",(String)request.getSession().getAttribute("username"),"yuangongxinxi");%><formaction="yuangongxinxi_updt2.jsp?f=f&id=<%=mmm.get("id")%>"method="post"name="form1"onsubmit="returncheckform();"><br><br>functiongow(){ document.location.href="yuangongxinxi_add.jsp?id=<%=id%>";}functionhsgxia2shxurxu(nstr,nwbk){ if(eval("form1."+nwbk).value.indexOf(nstr)>=0) { eval("form1."+nwbk).value=eval("form1."+nwbk).value.replace(nstr+";",""); } else { eval("form1."+nwbk).value=eval("form1."+nwbk).value+nstr+";"; }}</script><%HashMapext=newHashMap();if(request.getParameter("f")!=null){newCommDAO().insert(request,response,"yuangongxinxi",ext,true,false,"");如图5.7,图5.8所示:图5.7员工信息管理员界面图5.8员工信息员工页面5.5打卡信息管理为便于管理人员对打卡信息进行管理,在这个系统中加入一个打卡信息的功能,可以让管理人员事先整理好相关的资料,从而提高工作效率。每条打卡消息的背后都应当有打卡时间等数据项的增、减、改、查功能。打卡信息流程如图5.9所示:图5.9打卡信息模块流程图代码如下:%Stringid="";id=request.getParameter("id");HashMapmssdq=newCommDAO().getmaps("gonghao",(String)request.getSession().getAttribute("username"),"yuangongxinxi");Stringgonghao=""; Stringxingming=""; gonghao=(String)mssdq.get("gonghao"); xingming=(String)mssdq.get("xingming"); %>functionhsgxia2shxurxu(nstr,nwbk){ if(eval("form1."+nwbk).value.indexOf(nstr)>=0) { eval("form1."+nwbk).value=eval("form1."+nwbk).value.replace(nstr+";",""); } else { eval("form1."+nwbk).value=eval("form1."+nwbk).value+nstr+";"; }}</script><body><%Stringid=request.getParameter("id");HashMapext=newHashMap();在打卡时间部分点击下拉按钮,下拉表里有日历嵌入功能,在日历选择时间即可完成打卡。如图5.10,图5.11所示:图5.10员工打卡信息界面后台员工打卡信息界面如下图所示:图5.11员工打卡信息界面5.6薪资发放管理为了让管理员能够更好地进行工资发放,在本系统中,应当添加一个工资发放模块,以便管理员更好地规划数据,从而提高工作效率。每次操作之后都应当有薪资编号和发放时间的增、删、改、查功能。薪资发放流程如图5.12所示:图5.12薪资发放模块流程图代码如下:functionhsgxia2shxurxu(nstr,nwbk){ if(eval("form1."+nwbk).value.indexOf(nstr)>=0) { eval("form1."+nwbk).value=eval("form1."+nwbk).value.replace(nstr+";",""); } else { eval("form1."+nwbk).value=eval("form1."+nwbk).value+nstr+";"; }}</script><%HashMapext=newHashMap();if(request.getParameter("f")!=null){ext.put("iszf","否");newCommDAO().insert(request,response,"xinzifafang",ext,true,false,"");}%><% Stringid=request.getParameter("id"); HashMapm=newCommDAO().getmap(id,"xinzifafang");%><%Stringid=request.getParameter("id");HashMapext=newHashMap();newCommDAO().update(request,response,"xinzifafang",ext,true,false,"");HashMapmmm=newCommDAO().getmap(id,"xinzifafang");%>管理员和员工可以在薪资查询中点击“薪资详情”查看薪资的统计表,可以通过饼状图直观的看到自己每个月工资的构成部分。工资饼状图如图5.13所示: 图5.13薪资统计界面管理员和员工可以在薪资查询中点击“薪资详情”查看薪资的统计表,可以通过柱状图直观的看到自己一年中每个月的工资和工资起伏状况。柱状图如图5.14所示:图5.14薪资统计界面管理员进行薪资发放添加如图5.15所示:图5.15管理员添加薪资发放信息界面员工进行薪资发放信息查询界面如图5.16所示:图5.16员工薪资发放界面5.7公司类型管理为了让管理者能够更好地进行公司类型工作,在本系统中,应当添加公司类型模块来协助管理者预先对数据进行调度,从而提高工作效率。每一家公司的类别之后,应当有类别等资料项的增、减、改、查。公司类型流程图如图5.17所示:图5.17公司类型模块流程图代码如下:<%HashMapext=newHashMap();if(request.getParameter("f")!=null){newCommDAO().insert(request,response,"gongsileixing",ext,true,false,"");}%><% newCommDAO().delete(request,"gongsileixing");Stringurl="gongsileixing_list.jsp?1=1";Stringsql="select*fromgongsileixingwhere1=1"; if(request.getParameter("leixing")==""||request.getParameter("leixing")==null){}else{sql=sql+"andleixinglike'%"+request.getParameter("leixing")+"%'";}sql+="orderbyiddesc"; ArrayList<HashMap>list=PageManager.getPages(url,15,sql,request); inti=0; for(HashMapmap:list){ i++;%>公司类型的增删改查如图5.18,图5.19所示:图5.18公司类型界面图5.19公司类型界面5.8部门岗位管理为了让管理员能够更好地完成自己的工作,在系统中,应当添加一个部门岗位模块,来协助管理员预先规划好一系列的数据,从而提高工作效率。各部门的职务之后,应当有类型等数据项之增、删、改、查的功能。部门岗位流程如图5.20所示:5.20部门岗位模块流程图代码如下:<%HashMapext=newHashMap();if(request.getParameter("f")!=null){newCommDAO().insert(request,response,"bumengangwei",ext,true,false,"");}%><% newCommDAO().delete(request,"bumengangwei");Stringurl="bumengangwei_list.jsp?1=1";Stringsql="select*frombumengangweiwhere1=1";if(request.getParameter("leixing")==""||request.getParameter("leixing")==null){}else{sql=sql+"andleixinglike'%"+request.getParameter("leixing")+"%'";}sql+="orderbyiddesc"; ArrayList<HashMap>list=PageManager.getPages(url,15,sql,request); inti=0; for(HashMapmap:list){ i++; %><%Stringid=request.getParameter("id");HashMapext=newHashMap();newCommDAO().update(request,response,"bumengangwei",ext,true,false,"");HashMapmmm=newCommDAO().getmap(id,"bumengangwei");%>部门岗位的增删改查如图5.21,图5.22所示:图5.21
部门岗位界面图5.22部门岗位界面
5.9报表统计管理为了让管理者能够更好地进行数据统计,在本系统中,应当添加报表统计模块来协助管理者预先对数据进行统计,从而提高工作效率。报表统计流程如图5.23所示:图5.23部门岗位界面在系统中可以选择公司类型信息、部门岗位信息、打卡信息等点击导出Excel或打印按钮将数据进行导出。部门岗位报表导出如图5.24所示:图5.24报表导出界面公司类型报表导出如图5.24所示:图5.25报表导出界面薪资报表导出如图5.26所示:图5.26报表导出界面打卡信息打印界面如图5.27所示:图5.27报表导出界面员工信息打印界面如图5.28所示:图5.28报表导出界面5.10数据信息管理为了让管理者能够更好地对数据进行保护,在本系统中,应当添加数据信息模块来协助管理者对数据进行备份,从而提高数据的安全性。数据信息的流程如图5.29所示:图5.29数据信息流程图系统数据信息备份如图5.30所示:图5.30数据信息模块图第6章系统测试6.1测试目的测试可以估算出HR的风险,为其提供软件结果和风险评估信息[20]。在系统中,最重要的就是对用户注册、登录、页面跳转等功能进行测试。6.2系统测试方案测试遵循以HR为基础的使用程序,对系统的功能进行检查,这个测试是为了检查这个系统是否能够满足它的功能要求[21]。功能测试主要是为了验证该软件的整体性能和最终的效果,使该软件具有很强的通用性和良好的人机接口。6.3功能测试1.用户登录测试在使用“aaa”口令登陆,口令为空白或非“aaa”的情况下,弹出一个弹窗:“Username或Password”图6.1用户登录测试界面当用户以“aaa”用户名登录,密码为“aaa”时,欢迎你使用本系统!”2.主要功能测试依据黑盒测试的方法和步骤,对系统做了相关测试,主要功能测试用例如下表所示。表6.1主要功能测试用例模块操作步骤测试目的预期结果实际结果用户注册用户名文本框为空输入是否完整提示“请填写完整的信息”提示“请填写完整的信息”在密码文本框和确认密码文本中分别输“222222”和“333333”用户两次输入的密码是否一致提示“两次输入的密码不一致”提示“两次输入的密码不一致”密码修改原始密码若输入不正确原始密码是否正确提示“请输入原密码”提示“请输入原密码”部门岗位在部门岗位添加文本框中输入“经理”部门岗位添加是否成功提示“操作成功”提示“操作成功”在修改页面中修改某一员工的岗位部门岗位修改是否成功提示“修改成功”提示“修改成功”在部门岗位页面中删除某一员工的岗位部门岗位删除是否成功提示“删除成功”提示“删除成功”在部门岗位查询文本框中输入“经理”部门岗位查询是否成功提示“查询成功”提示“查询成功”公司类型在公司类型添加文本框中输入“文创公司”公司类型添加是否成功提示“操作成功”提示“操作成功”在修改页面修改某一公司的类型点击确认按钮公司类型修改是否成功提示“修改成功”提示“修改成功”在公司类型页面删除某一公司公司类型删除是否成功提示“删除成功”提示“删除成功”在公司类型查询文本框中输入“文创公司”公司类型查询是否成功提示“查询成功”提示“查询成功”员工信息在添加页面输入员工信息点击确认按钮员工信息添加是否成功提示“操作成功”提示“操作成功”在查询页面输入员工信息点击查询员工信息查询是否成功提示“查询成功”提示“查询成功”在修改页面修改员工信息点击确认按钮员工信息修改是否成功提示“修改成功”提示“修改成功”在员工信息页面点击某一员工的删除按钮员工信息删除是否成功提示“删除成功”提示“删除成功”打卡信息在打卡信息查询页面输入打卡编号点击查询打卡信息查询是否成功提示“查询成功”提示“查询成功”在修改页面修改某一员工打卡信息点击确认按钮打卡信息修改是否成功提示“修改成功”提示“修改成功”在删除页面删除某一员工打卡信息点击确认按钮打卡信息删除是否成功提示“删除成功”提示“删除成功”薪资发放在薪资发放添加页面输入信息点击确认按钮薪资发放添加是否成功提示“操作成功”提示“操作成功”在薪资发放查询页面输入薪资编号点击查询按钮薪资发放查询是否成功提示“查询成功”提示“查询成功”在修改页面修改某一员的薪资息发放点击确认按钮薪资发放修改是否成功提示“修改成功”提示“修改成功”在删除页面删除某一员工的薪资发放点击确认按钮薪资发放删除是否成功提示“删除成功”提示“删除成功”报表统计在系统中信息详情页面点击导出Excel按钮报表导出是否成功提示“导出成功”提示“导出成功”数据信息在数据信息页面点击备份按钮数据信息备份是否成功提示“备份成功”提示“备份成功”6.4测试结论该系统能够对不同的使用者进行精确的识别,可以顺利地以他们的身份登陆,能够快速地实现网页的切换。在适当的时间内,该系统可以从一页跳到另一页。该软件具有很强的弹跳能力,能够快速地实现弹跳功能。能够对该系统进行适当的模组分割。当使用者到达控制面板时,使用者会按照权限进行对应的操作。结论这次的毕业设计,让我体会到了这个过程的艰难,也让我有了一种强烈的成就感。本次毕业论文题目基于Java的人力资源管理系统,尽管目前人力资源管理系统已有许多比较成熟的案例,但是本人仍期望能在此基础上,以自身的努力来实现人力资源管理系统的研发,同时也望能取得一定的突破。该系统针对员工信息、打卡信息等模块,实现了系统的可操作性,并吸取了其它优秀系统长处。整个设计是按照需求分析-整体设计-细节设计-系统实施的全流程进行的。在需要分析的过程中,导师从查阅资料到提出问题,再到一一解答,都会为我提供大量的相关资料,对我的工作起到很大的作用。在整体设计的过程中,因为对系统的功能和软件有一定的认识,所以迅速的完成了用户的操作的设计。在具体的设计过程中,对各个模块分别进行了程序的编写和调试。最后,在测试的时候,导师们会对我的问题提出建议,并且会在测试的时候,及时地对我提出改进意见。不管怎样,这个方案让我受益匪浅。不过,这毕竟是一个起点。在每一个步骤中,我都意识到了将理论和实践的联系起来是多么的重要,同时也在这个过程中,我也意识到了许多缺陷,比如,有的时候,我缺少一种坚持不懈的精神,在做事情的时候,我不是那么的细心。在这次开发过程中,我深刻地认识到,作为一名优秀的开发者,必须要有一颗坚韧不拔的心。因此,我会时刻告诫自己继续前进。参考文献[1]高中华.平台化转型中人力资源管理系统及其有效性:理论构建与分析[J].中国人力资源开发,2022,(05):69-82.[2]张军.基于Java的企业人力资源管理系统的设计与实现[J].中国信息化,2022,(03):42-4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高标准厂房租赁安全生产及环境保护管理协议
- 餐饮公司股东投资收益分配合同
- 拆除工程安全责任及补偿协议范本
- 车辆租赁平台佣金分成合同
- 互联网教育代理记帐与课程资源整合合同
- 资源开发项目参股合作协议范本
- 产权拍卖合同范本
- 餐饮店拆伙退伙协议书(合同解除原因)
- 美食街特色餐饮摊位租赁及食品安全保障合同
- 特种矿产资源采矿权出让与科研开发合同
- 副舟骨损伤查房
- 女性领导力智慧树知到课后章节答案2023年下山东女子学院
- 冲压成型精密五金机构件生产QC工程图
- 工程量确认单范本
- 抖音直播运营团队薪酬绩效考核管理方案(直播带货团队薪酬绩效提成方案)
- 2022-2023学年辽宁省大连市沙河口区数学五下期末复习检测模拟试题含答案
- 2023年广东省珠海市经济技术开发区事业单位招聘(共500题含答案解析)高频考点题库参考模拟练习试卷
- 2023年国家开放大学(国开电大)《机电一体化系统设计基础》期末考试备考题库笔试+一平台机考
- 装修合同保密协议
- 安全设备设施与个人防护用品的使用和维护
- 110kV及以下输电线路钢管杆标准化设计
评论
0/150
提交评论