《基于web的人事管理系统的设计与实现本科毕业(设计)论文.doc》由会员分享,可在线阅读,更多相关《基于web的人事管理系统的设计与实现本科毕业(设计)论文.doc(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、编号:本科毕业设计基于web的易团队人事管理系统的设计与实现院 系:信息工程学院姓 名:*学 号:*专 业:软件工程年 级:2011级指导教师:*职 称:*完成日期:2015年5月摘 要互联网的到来给传统人事管理带来了机遇与挑战,给传统的人事管理方式带来了冲击,如何有效进行人事管理、提高办事效率,是目前企业管理的一个新课题。本文在易团队人事管理的基础上,从该企业需求着手,采用SSH框架及JSP技术进行系统设计,主要完成以下工作:在需求分析的基础上完成了系统的详细设计,并给出相关设计图表;后台数据库管理系统使用MySQL,在数据库设计阶段,完成了人事管理系统的数据库设计,给出了具体的概念设计、逻
2、辑设计,设计了系统所需的表以及建立了各个表之间的关系;前台使用SSH+JSP技术对系统主要功能模块进行设计实现,Struts作为系统的整体基础架构,处理易团队用户数据的处理过程。Spring负责易团队系统的业务管理,为系统的Action类提供业务接口,封装持久层的DAO,同时起到解耦的作用。Hiberante处理易团队后台数据库管理,完成数据库操作。系统的设计与实现,为易团队的人事管理带来了便利和实惠,使得易团队人事管理快捷、高效、安全。关键词:人事管理系统;B/S;MySQL;SSHIAbstractThe advent of the Internet to the traditional
3、personnel management brought opportunities and challenges, and has an impact on the traditional personnel management, how to effectively carry out personnel management, improve work efficiency, is a new subject of enterprise management at present.On the basis of the easy team personnel management, f
4、rom the enterprise needs, the use of SSH framework and JSP technology system design, mainly to complete the following work: On the basis of the analysis of the needs of the system to complete the detailed design, and gives the relevant design chart; The backstage database management system mysql, in
5、 the database design stage, the completion of the personnel management system database design, gives the specific conceptual design, logical design design system of tables and the establishment of the relationship between tables;The main function of the system is the design and implementation of the
6、 main functional modules of the system, Struts is the whole infrastructure of the system, and the processing of the data of the easy team users is processed by SSH+JSP. Spring is responsible for the business management of the easy team system, provides the service interface for the system Action cla
7、ss, and the DAO of the packaging persistence layer, and also plays the role of decoupling. Hiberante manages the background database management of the team, and completes the database operation.The design and implementation of the system has brought convenience and benefits for the personnel managem
8、ent of the easy team, which makes the personnel management of the easy team fast, efficient and safe.Key words: Personnel file management system; B/S; MySQL; SSHII目 录1 绪 论11.1 课题研究背景11.2 课题研究现状11.3 主要研究内容11.4 文档结构22 相关技术32.1 开发技术32.1.1 B/S简介32.1.2 J2EE概述32.1.3 JSP技术32.1.4 SSH三大框架整合42.2 开发环境42.2.1 开发
9、工具42.2.2 数据库52.2.3 服务器53 系统需求分析63.1 系统可行性分析63.1.1 经济可行性分析63.1.2 技术可行性分析63.1.3 运行可行性分析63.2 系统功能需求分析63.2.1 系统功能概述63.2.2 数据流图74 系统设计134.1 系统运行环境134.2 总体设计134.2.1 系统设计目标134.2.2 系统总体结构设计134.2.3 系统模块结构设计134.3 详细设计184.3.1 系统管理模块184.3.2 部门管理模块194.3.3 招聘管理模块194.3.4 培训管理模块204.3.5 人事管理模块214.3.6 考勤管理模块224.3.7 工
10、资管理模块234.3.8 批量管理模块244.3.9 统计管理模块254.4 数据库设计264.4.1 设计原则264.4.2 数据库概念设计264.4.3 数据库逻辑设计304.4.4 数据库物理设计314.4.5 数据库安全性设计345 系统实现355.1 登陆界面实现355.2 系统管理模块实现355.2.1 用户管理模块实现355.2.2 职位管理模块实现365.3 部门管理模块实现375.4 人事管理模块实现385.5 招聘管理模块实现395.6 培训管理模块实现405.7 考勤管理模块实现415.8 工资管理模块实现415.9 批量管理模块实现425.10 统计管理模块实现436
11、系统测试456.1 软件测试介绍456.2 测试方法456.3 测试用例456.3.1 功能测试456.3.2 安全测试467 总结48参考文献49致 谢50V绪 论1 绪 论1.1 课题研究背景目前,随着现代信息技术的发展,人类正向着信息时代迈进,人们已经开始重视开发、利用信息资源,“信息化”已经成为一个国家和社会经济发战的一个环节,1986年2月国务院批准建设国家经济信息系统,各行各业应用计算机的热情普遍高涨1。人们为了追求高效益,计算机已经蔓延到社会生活和经济发展的各个领域,当今社会人们的时间观念越来越强,对企业、公司的人事管理而言,系统软件为他们带来了很大的便利,系统软件可以为管理人员
12、和员工提供可靠的人事档案存储和方便的查询手段,以往人们使用传统的人工的方式管理人事档案,这种管理方式有许多缺点2。科技的不断提高和发展,使用计算机的优点也很快的突显出来,对人事信息管理而言,相对于手工管理来说,有很多的优点,比如:快速查找、安全性高、存储方便、快捷管理、保存时间长、成本低等。公司、企业人事档案管理的效率因为这些优点得到了很大地提高3。所以为易团队开发一套人事管理系统已经迫在眉睫。1.2 课题研究现状随着互联网的迅速发展,企业管理信息系统软件也随之快速发展起来。先进的管理信息系统体系早已在世界发达国家建立起了,对社会经济的发展产生深远的影响4。通过对部分中小型企业、团队等人事管理
13、情况的调查,了解到目前中小型企业、团队等对人事管理仍处在传统的管理阶段,例如,易团队还在使用传统的人工的方式管理人事档案,这种管理方式存在许多缺点,随着互联网的发展,为易团队开发一个人事管理系统已经迫在眉睫,人事管理系统能够使管理人员更加方便的管理团队,对现代化企事业单位来说,人事管理系统软件是不可缺少的部分。1.3 主要研究内容该系统主要内容包括以下几个方面:系统管理主要是对用户和职位进行管理,系统管理员可以实现添加,删除和修改功能;而职位管理可以实现对职位的添加、删除和修改。部门管理包括对本企业的部门进行添加、查看和删除部门操作以及添加子部门、删除子部门。人事管理主要实现添加员工基本信息、
14、员工离职、离职管理、删除员工的信息和修改员工的信息,离职管理又可以对员工进行复职,以及通过名字、职位和部门查看员工的信息。招聘管理主要对应聘人员进行查看、录入、删除。工资管理是对企业员工的工资信息进行管理,不仅可以添加、删除和查看,还可以通过姓名和年月来查询员工的工资信息。考勤管理主要实现对企业员工的考勤,表现给出一些奖励或惩罚,进行对员工的添加、删除和查看以及修改。培训管理操作主要是对员工培训信息的记录,可以对培训信息进行记录、删除、查看和修改。批量管理:主要对员工信息和招聘人员的信息进行批量导入数据库。统计管理模块可以通过柱状图反应一年的财务支出情况。1.4 文档结构第一章简述了人事管理系
15、统的研究背景,研究现状以及研究内容。第二章展示了本课题所使用到的关键技术,B/S结构,J2EE平台概述,JSP技术,SSH框架各自的作用以及整合,以及开发环境的介绍。第三章对易团队人事管理系统做出需求分析,通过对系统的各个模块的需求分析,画出各个模块的数据流图以及总数据流图。第四章对易团队人事管理系统做出了设计,其中包括了系统的运行环境、系统总体设计、系统的详细设计和系统的数据库概念设计即E-R图、数据库逻辑结构设计、物理设计和数据库安全设计。第五章详细叙述了易团队人事管理系统的实现,给出了系统业务控制的主要代码,并且介绍了主要功能实现的截图。第六章是对易团队人事管理系统的测试,包括对软件测试
16、的介绍和测试用例的设计,主要使用黑盒测试。第七章是对易团队人事管理系统的总结。2相关技术2 相关技术2.1 开发技术2.1.1 B/S简介B/S结构即浏览器和服务器结构,B/S是随着互联网技术而兴起的,相对于C/S结构,是一种变化或者改进的结构,在B/S结构下,用户是通过操作浏览器访问连接来实现,少数事务逻辑在前端实现,但是主要事务逻辑还是在服务器端实现5。这样使客户端电脑载荷降低,维护系统的成本与升级系统的成本和工作量也减少,从而使用户的总体成本和工作量降低6。2.1.2 J2EE概述目前,Java 2平台有3个版本,分别是用于创建服务器应用程序和服务的Java 2平台企业版(J2EE)、J
17、ava 2平台Micro版(J2ME)用于小型设备和智能卡和Java 2平台标准版(J2SE)用于桌面系统,J2EE是简化企业系统的开发、发布和进行管理相关的复杂问题的体系结构,它利用的是Java 2平台;也就是说J2EE技术是以Java 2平台的标准版为核心,J2EE具备了标准版中的众多优点,并且对这些优点进行了巩固,例如“一次编写、到处运行”的优点、方便进行存取数据库的JDBC API技术以及能够在互联网应用中保护数据的安全模式等等7。2.1.3 JSP技术JSP(Java Server Pages)即Java服务器页面,其核心是一个简化的Servlet设计,它是由Sun公司倡导、许多公司
18、参与一起建立的一种动态网页技术标准,JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段和JSP标签,从而形成JSP文件,后缀名为.jsp,用JSP开发的Web应用可以在Linux操作系统上运行,也能在Windows等其他操作系统上运行,它具有跨平台的优点8。JSP实现了HTML语法中的Java扩张,JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览9。JSP技术使用Java编程语言编写类XML的标签和Java程序段,来封装产生动态网页的处理逻辑,网页还能通过JSP标签和Java程序段访问存在于服务端
19、的资源的应用逻辑,JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易,JSP是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来10。JSP技术是以Servlet为基础,有些时候,大型的Web应用程序的开发需要 Servlet技术和JSP技术结合来完成,JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。2.1.4 SSH三大框架整合SSH 即Struts2+Spring+Hibernate,是一个集成框架,SSH框架是开源框架,所以在目前是比较流行的Web框架之一。
20、集成SSH框架的系统从职责上分为三层:表示层、业务逻辑层和数据持久层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序,其中使用Struts2来处理表现层,它作为整个系统的基础架构,主要是来控制业务进行跳转,然后利用Hibernate框架来对持久层提供支持,最后Spring框架做管理,对Struts2框架和Hibernate框架进行管理11。SSH框架的基本业务流程是: 在表示层中,首先用户通过JSP页面实现交互,主要进行接收请求和传送响应,然后根据配置文件(struts-config.xml)将ActionServlet接收到的请求委派给相应的Action处理;在业务
21、层中,主要是利用Spring IOC技术,主要是向Action提供业务模型组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,同时进行事务处理、提供缓冲池等容器组件以提升系统性能和保证数据的完整性;而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果12。SSH集成框架具有很多优点,例如将视图、控制器与模型进行彻底分离,而且又可以将业务逻辑层与持久层的进行分离,这样的好处是,前端的变化,对模型层的影响非常小,并且数据库的变化对前端的展示没有影响,这样极大地提高了Web系统的可复用性,而且由于各个层之间耦合度很小,有利于团队成员进行合作
22、,使Web系统开发效率大大提到13。2.2 开发环境2.2.1 开发工具易团队人事管理系统采用的开发工具是MyEclipse10.0版本,MyEclipse是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发,MyEclipse的功能很强大,支持也十分广泛,尤其是对各种开源产品的支持相当不错,MyEclipse可以支持Java Servlet,AJAX,JSP,SSH,JDBC数据库链接工具等多项功能,可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属Eclipse开发工具14。2.2.2 数据库易团队人
23、事管理系统采用的数据库系统是MySQL5.0,MySQL属于关系型数据库管理系统;在WEB应用方面,MySQL是最好的关系数据库管理系统应用软件之一,MySQL又属于关联数据库管理系统,关联数据库将数据保存在不同的表中,这样可以增加数据的访问速度并提高了操作的灵活性,MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL数据库管理系统具有体积很小、访问速度快和成本低的优点,尤其是开放源码的特点,它成为中小型企业Web系统软件开发的福音15。2.2.3 服务器易团队人事管理系统采用的Web服务器是Tomcat6.0,Tomcat 服务器是一个免费的开放源代码的Web 应用服务
24、器,属于轻量级应用服务器,它适用于中小型系统和并发访问用户不是很多的场合,是中小型企业的首要选择16。48系统需求分析3 系统需求分析3.1 系统可行性分析3.1.1 经济可行性分析易团队的人事信息管理目前还完全以传统的人工管理方式进行人事信息管理,工作效率低下并且很容易出现差错,由于失误而造成的经济损失很多,这对企业造成了不必要的经济损失,而利用计算机来实现人事管理已成为适应当今人事管理的方式,开发一套能满足易团队人事信息管理的软件是十分必要的,实现人事信息管理的自动化,不仅可以减少由于失误而造成损失,也可以使人事信息管理部门减少许多费用支出。由上述几方面的分析可以看出,易团队人事管理系统的
25、开发时机已经成熟,从多种角度考虑开发此系统在经济上是可行的。3.1.2 技术可行性分析易团队人事管理系统选择了目前很流行的SSH框架来进行设计,使用免费开源的MySQL数据库管理系统进行数据存储,以及使用免费的Tomcat服务器,所以在技术方面是可行的。3.1.3 运行可行性分析本系统具有良好的操作界面。系统功能、显示内容简单明了。操作者不必具有专业的计算机知识,更不需要进行专门的计算机培训,只要经过短时间的操作,就可以很快掌握并熟练使用管理系统软件,可以加快易团队的人事信息管理,提高管理者工作效率。3.2 系统功能需求分析3.2.1 系统功能概述易团队人事管理系统分为九个模块,各模块功能如下
26、:系统管理:包括用户管理和职位管理,系统管理员可以实现添加,删除和编辑用户的功能;而职位管理可以实现对职位的添加、编辑和删除。部门管理:包括对本企业的部门进行添加、删除部门操作以及添加子部门、删除子部门的功能。人事管理:包括实现添加员工基本信息、编辑员工的信息、对员工进行离职和复职管理、查看员工基本信息,通过名字、职位和部门查看员工的信息。招聘管理:主要涉及到的角色是招聘人员,可以实现对招聘人员进行查看、录用、编辑和删除的功能。工资管理:是对企业中的正式员工的工资进行管理,可以单独添加、一键添加、删除、按姓名和年月进行查询。考勤管理:实现对员工的考勤管理,对考勤信息进行添加、编辑、查看以及删除
27、。培训管理:主要是对企业的员工进行培训情况的记录,可以实现对培训的添加、删除、编辑和查看。批量管理:主要实现对正式员工信息的批量添加和招聘人员信息的批量添加。统计管理:主要是对企业支出的情况通过柱状图的方式呈现出来。3.2.2 数据流图数据流图英文缩写DFD,它是用来描绘数据流从输入移动到输出的过程中所经历的变换,以图形的方式呈现出数据流从输入到输出的移动变换过程17。通过对系统需求的调查分析,细化软件功能,把系统划分为九个模块,具体数据流如图3-1。图3-1 顶层数据流图系统管理模块包含用户管理模块和职位管理模块,在用户管理模块,管理员在页面输入用户的添加、删除、编辑等信息,然后提交,由系统
28、进行处理,最后将处理的结果返回给管理员;在职位管理模块,管理员在页面输入职位的添加、删除、编辑等信息,然后提交,由系统进行处理,最后将处理的结果返回给管理员;系统管理模块二层数据流图如图3-2。图3-2 系统管理模块二层数据流图部门管理模块包含部门添加、查询和删除,在添加部门时,管理员在页面输入添加部门的相关信息,然后提交,由系统进行处理,将添加结果存入数据库,最后将添加的结果显示给管理员;查询部门时,管理员输入查询信息,然后提交,系统从后台数据库读取查询结果,然后返回给管理员;删除部门时,系统根据提交的部门信息从后台数据库删除该部门;部门管理模块二层数据流图如图3-3。图3-3 部门管理模块
29、二层数据流图人事管理模块,人事查询时,管理员输入查询信息,然后提交,由系统从后台数据库查出结果反馈给管理员;在人事添加时,管理员输入添加信息,然后提交,系统将信息添加到数据库;在人事编辑时,管理员输入编辑信息,由系统调用后台数据库来更新人事信息;在离职管理时,管理员可以选择离职人员,然后选择复职或删除条件,提交信息,由系统后台进行操作;人事管理模块二层数据流图如图3-4。图3-4 人事管理模块二层数据流图招聘管理模块,管理员可以输入要添加的应聘者信息,然后由系统的添加模块把信息添加到数据库;管理员可以选择应聘者进行录用操作,然后系统根据提交结果经应聘者添加到员工组中,同时删除该应聘者;管理员还
30、可以输入查询、编辑或删除等信息,然后提交,由系统进行相应处理,将结果返回给管理员;招聘管理模块二层数据流图如图3-5。图3-5 招聘管理模块二层数据流图工资管理模块,在添加工资时,管理员输入要添加工资的信息,提交信息,系统将添加结果添加到数据库;在查询工资时,管理员输入查询条件,然后系统根据条件从数据库查询,最后将结果返回给管理员;在删除工资时,管理员选中要删除的员工工资,然后提交到系统,最后从数据库删除工资;工资模块二层数据流图如图3-6。图3-6 工资模块二层数据流图考勤管理模块,在添加考勤信息时,管理员输入要添加员工的考勤的信息,提交信息,系统将添加结果添加到数据库;在查询考勤信息时,管
31、理员输入查询条件,然后系统根据条件从数据库查询,最后将结果返回给管理员;在删除考勤信息时,管理员选中要删除的员工考勤信息,然后提交到系统,最后从数据库删除考勤信息;在编辑考勤信息时,管理员输入要修改员工的考勤的信息,提交信息,系统将添加结果添加到数据库;考勤管理模块二层数据流图如图3-7。图3-7 考勤管理模块二层数据流图培训管理模块,在添加培训信息时,管理员输入要添加的培训的信息,提交信息,系统将添加结果添加到数据库;在查询培训信息时,管理员输入查询条件,然后系统根据条件从数据库查询,最后将结果返回给管理员;在删除培训信息时,管理员选中要删除的培训信息,然后提交到系统,最后从数据库删除培训信
32、息;在编辑培训信息时,管理员输入要修改培训的信息,提交信息,系统将添加结果添加到数据库;培训管理模块二层数据流图如图3-8。图3-8 培训管理模块二层数据流图批量管理模块,在导入员工信息时,管理员选择要添加的文件信息,然后提交,由系统对文件里的信息进行解析,最后添加到数据库;在导入应聘者信息时,管理员选择要添加的文件信息,然后提交,由系统对文件里的信息进行解析,最后添加到数据库;批量管理模块二层数据流图如图3-9。图3-9 批量管理模块二层数据流图统计管理模块,管理员输入要查询的年份,然后提交,系统根据提交的年份从数据库来查询支出情况,最后将查询结果以柱状图的形式显示给管理员;统计管理模块二层
33、数据流图如图3-10。图3-10 统计管理模块二层数据流图3.2.3 小结这一小节主要介绍了系统的主要功能和数据流图,一个清晰的数据流图可以满足用户管理决策活动中的信息需求、作为系统分析人员和用户进行交流的有效手段、清晰表达数据流的情况,并且有利于系统建模。数据流图在结构化开发方法中的功能需求分析阶段必不可少的。系统设计4 系统设计4.1 系统运行环境(1) PC一台;(2) 操作系统:Windows/Linux;(3) 数据库:MySQL5.0;(4) 服务器:Tomcat6.0;(5) JDK版本:JDK1.7.0_25;(6) 开发工具:Myecplise10.0。4.2 总体设计4.2
34、.1 系统设计目标开发一套能满足易团队人事信息管理的软件系统,实现人事管理的自动化,在减少由于失误而造成损失的同时,也可以使企业减少许多费用支出,提高办事效率。4.2.2 系统总体结构设计易团队人事管理系统的总体结构分为九大块,它们分别是:系统管理,部门管理,人事管理,招聘管理,工资管理,批量管理,统计管理。系统的总体结构图如图4-1。图4-1 系统的总体结构图4.2.3 系统模块结构设计系统管理模块:包括用户管理和职位管理,在用户管理模块中系统管理员可以添加用户,删除和编辑用户的用户信息;而职位管理可以实现对职位的添加、编辑和删除。如图4-2。图4-2 系统管理模块结构图部门管理:对企业的部
35、门进行添加部门、删除部门操作以及添加子部门、删除子部门的功能。如图4-3。 图4-3 部门管理模块结构图人事管理:实现添加员工基本信息、编辑员工的信息、对员工进行离职和复职管理、查看员工基本信息,通过名字、职位和部门查看员工的信息,复职管理又包括对员工进行复职和删除功能。如图4-4。图4-4 人事管理模块结构图招聘管理:可以实现对应聘人员的信息查看、录用、编辑和删除功能。如图4-5。图4-5 招聘管理模块结构设计工资管理:是对企业中的正式员工的工资进行管理,可以单独添加、一键添加、删除、按姓名和年月进行查询。如图4-6。图4-6 工资管理模块结构图考勤管理:实现对企业员工的考勤管理,对员工考勤
36、信息进行添加、编辑、查看以及删除。如图4-7。图4-7 考勤管理模块结构图培训管理:主要是对企业的员工进行培训情况的记录,可以实现对培训信息的添加、删除、编辑和查看。如图4-8。图4-8 培训管理模块结构图批量管理:主要实现对正式员工信息的批量添加和应聘人员信息的批量添加。如图4-9。图4-9 批量管理模块结构图统计管理:主要是对企业支出的情况通过柱状图的形式呈现出来。便于了解每个月的支出情况。如图4-10。图4-10 统计管理模块结构图4.3 详细设计详细设计主要是对各个模块的详细设计算法通过流程图的方式呈现出来。下面就对各个模块进行详细设计。4.3.1 系统管理模块系统管理模块包含用户管理
37、模块和职位管理模块,在用户管理模块,管理员可以查看用户,可以添加、编辑和删除用户;在职位管理模块,管理员可以查看职位,可以添加、编辑和删除职位。在进行删除操作时,会提示管理员是否删除相应的用户和职位。具体的流程图如图4-11。图4-11 系统管理模块流程图4.3.2 部门管理模块部门管理模块是对企业的部门进行管理,包括查看部门、添加部门、添加子部门和删除部门。在添加子部门时要先选中父部门;如果删除的部门中有子部门,需要先删除子部门才能再删除该部门。在进行删除操作时,会提示管理员是否删除该部门。具体的工作流程如图4-12。 图4-12 部门管理模块流程图4.3.3 招聘管理模块招聘管理模块主要是
38、对应聘人员的管理,包括应聘者的查看、添加、录用、编辑和删除。在进行录用操作时,会提示管理员是否录用该应聘者以及让管理员选择部门,选择应聘者所属的部门后,录用的应聘者会自动添加到人事管理模块,而招聘管理模块会自动删除该应聘者。在进行删除操作时,会提示管理员是否删除该应聘者。具体的流程如图4-13。 图4-13 招聘管理模块流程图4.3.4 培训管理模块培训管理模块主要对企业员工的培训信息进行存档记录,包括培训信息查看、培训信息添加、培训信息编辑和培训信息删除。在进行删除操作时,会提示管理员是否删除该培训信息。具体的流程如图4-14。图4-14 培训管理模块流程图4.3.5 人事管理模块人事管理模
39、块是该系统的重要组成部分。包括查看所有人事信息、离职管理模块、人事添加、人事编辑和通过姓名、职位和部门查看人事信息。在离职管理模块中可以对员工进行复职和删除操作,并在操作时可以给出相应提示;在进行按姓名、部门和职位查询时,相应的员工姓名、部门和职位都已经从数据库搜索出来,管理员只用进行选择,然后查询即可,不用手动输入,提高了效率。具体的操作流程如图4-15。 图4-15 人事管理模块流程图4.3.6 考勤管理模块考勤管理模块主要对企业员工的考勤信息进行存档记录,包括考勤信息查看、考勤信息添加、考勤信息编辑和考勤信息删除。在进行删除操作时,会提示管理员是否删除该考勤信息。具体的流程如图4-16。
40、 图4-16 考勤管理模块流程图4.3.7 工资管理模块工资管理模块主要对企业员工的工资信息进行存档记录,包括工资信息查看、工资信息添加、一键添加所有员工工资、按姓名和年月查询工资和工资信息删除。在进行删除操作时,会提示管理员是否删除该工资信息。具体的流程如图4-17。 图4-17 工资管理模块流程图4.3.8 批量管理模块批量管理模块主要是对员工信息和应聘人员信息进行批量导入数据库,方便管理员,提高工作效率,在进行选取添加文件时,要注意只能添加Excel格式的文件,否侧不能进行添加,另外,Excel文件中每一列的项目要和数据库的对应,否则也不能添加成功。具体流程如图4-18。 图4-18 批
41、量管理模块流程图4.3.9 统计管理模块统计管理模块主要是对企业每年财务支出以柱状图的形式进行统计,方便管理员了解企业每年各个月份的支出情况,便于管理企业。具体的流程如图4-19。 图4-19 统计管理模块流程图4.4 数据库设计数据库设计是系统开发和实现的重要组成部分,数据库设计的好坏与否,对系统的操作有很大地影响,直接影响系统的查询、增加、删除等功能。4.4.1 设计原则(1) 所有名称都采用英文,且准确无误。(2) 每个表必须有主键,一般的主键都是自动编号的。(3) 主键与对应的外键名字要一致。(4) 字段命名为表名+字段名,如article_id,采用小写加下划线完成。(5) 表与表之
42、间的关联默认采用id实现。(6) 日期采用varchar。布尔值采用bit类型,数据是true和false。(7) 如删除一行会同时牵涉到两个表,就按照顺序使用代码来完成。(8) 表与表的关联是发生在一对多或多对多的情况下,一对一就用一个表。4.4.2 数据库概念设计在概念结构设计阶段,设计人员从用户需求的观点出发对数据进行建模,产生一个独立于计算机硬件和DBMS的概念模型。概念模型是抽象的,它是设计人员与用户交流的工具,因此要求概念模型简单、清晰、易于理解,同时还应具备较强的语义表达能力,可以直接表达用户的各种需求,并易于向数据模型的转换18。概念模型的表示方法有很多,该系统用的是:用实体-
43、联系方法(Entity Relationship Approach)来表示概念模型,即E-R图。 (1) 员工(员工ID,姓名,性别,年龄,学历,职位,地址,电话,邮箱,QQ,部门ID,部门名称,员工类型,出生日期,入职时间)实体对应的属性如图4-20。图4-20 员工实体属性(2) 用户(用户ID,账号,密码)实体对应的属性如图4-21。图4-21 用户实体属性(3) 职位(职位ID,名称,基本工资)实体对应的属性如图4-22。图4-22 职位实体属性(4) 工资(工资ID,员工ID,月份,基本工资,奖励,惩罚,工龄费,个人所得税,实发工资)实体对应的属性如图4-23。 图4-23 工资实体
44、属性(5) 部门(部门ID,名称,部门描述,父部门ID)实体对应的属性如图4-24。 图4-24 部门实体属性(6) 考勤(考勤ID,日期,项目,属性,备注,金额,员工ID,员工姓名)实体对应的属性如图4-25。图4-25 考勤实体属性(7) 培训(培训ID,培训人员,宗旨,内容,时间,地点,参加人员)实体对应的属性如图4-26。图4-26 培训实体属性(8) 系统的总体E-R图如图4-27。图4-27 系统总体E-R图4.4.3 数据库逻辑设计该设计以数据库概念设计中的E-R图为主要依据,设计出相关的关系模式,具体关系模型如下:(加下划线的表示为主码)员工(员工ID,姓名,性别,年龄,学历,
45、职位,地址,电话,邮箱,QQ,部门ID,部门名称,员工类型,出生日期,入职时间)。用户(用户ID,账号,密码)。职位(职位ID,名称,基本工资)。工资(工资ID,员工ID,月份,基本工资,奖励,惩罚,工龄费,个人所得税,实发工资)。部门(部门ID,名称,部门描述,父部门ID)。考勤(考勤ID,日期,项目,属性,备注,金额,员工ID,员工姓名)。培训(培训ID,培训人员,宗旨,内容,时间,地点,参加人员)。“管理”关系模式:管理(用户ID,管理对象ID)。“参加”关系模式:参加(员工ID,培训ID,培训内容)。“录用”关系模式:录用(应聘者ID,员工ID,姓名)。“对应”关系模式:对应(工资ID
46、,考勤ID,奖罚金额)。员工和部门的“属于”关系模式:属于(员工ID,部门ID,部门名称,员工姓名)。员工和职位的“属于”关系模式:属于(员工ID,职位ID,职位名称,员工姓名)。员工和工资的“具有”关系模式:具有(员工ID,工资ID,员工姓名,实发工资)。员工和考勤的“具有”关系模式:具有(员工ID,考勤ID,员工姓名)。 4.4.4 数据库物理设计数据库物理设计主要就是根据选用的数据库设计相应的表结构。易团队人事管理系统所需的表如表4-1。表4-1 系统所需表表名描述t_admin用户表:存储管理员信息t_gongzi工资表:存储工资信息t_kaoqin考勤表:存储考勤信息t_organization部门表:存储部门信息t_peixun培训表:存储培训信息t_qiyexinxi企业信息表:存储企业信息t_yuangong员工表:存储员工信息t_zhiwei职位表:存储职位信息用户表的设计如表4-2。表4-2 用户表(t_admin)字段名类型长度是否为空是否主键描述user_idint11否是用户ID,自动编号user_namevarchar50否否用户账号