版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、企业员工管理系统开发The Development of Enterprise EmployeeManagement System目 录 TOC o 1-3 u 摘 要 PAGEREF _Toc172774149 h IABSTRACT PAGEREF _Toc172774150 h II第1章 绪论 PAGEREF _Toc172774151 h 11.1 开发背景及意义 PAGEREF _Toc172774152 h 11.2 开发工具简介 PAGEREF _Toc172774153 h 1第2章 系统分析 PAGEREF _Toc172774154 h 32.1 系统需求分析 PAGER
2、EF _Toc172774155 h 32.2 系统处理流程分析 PAGEREF _Toc172774156 h 42.3 系统平安性分析 PAGEREF _Toc172774157 h 5第3章 系统设计 PAGEREF _Toc172774158 h 73.1 系统各模块功能设计 PAGEREF _Toc172774159 h 73.2 数据库概念结构设计 PAGEREF _Toc172774160 h 93.3 数据库表的设计 PAGEREF _Toc172774161 h 9第4章 系统实现 PAGEREF _Toc172774162 h 124.1 数据库连接的实现 PAGEREF
3、_Toc172774163 h 124.1.1 数据库根本操作的实现 PAGEREF _Toc172774164 h 144.1.2 存储过程的实现 PAGEREF _Toc172774165 h 144.2 主要模块的实现 PAGEREF _Toc172774166 h 164.2.1 人事管理模块的实现 PAGEREF _Toc172774167 h 174.2.2 招聘管理模块的实现 PAGEREF _Toc172774168 h 194.2.3 信息统计分析模块的实现 PAGEREF _Toc172774169 h 204.2.4 数据库维护模块的实现 PAGEREF _Toc1727
4、74170 h 21结 论 PAGEREF _Toc172774171 h 22参考文献 PAGEREF _Toc172774172 h 23摘 要随着企业规模的扩大,企业员工管理的任务越来越重,仅仅依靠人工管理已经变的不可能,迫切需要借助计算机来进行管理。企业员工管理系统就是一个为适应当前各个企业对员工管理的迫切需求而设计开发的软件系统。该系统能极大地方便管理员的工作,提高企业的工作效率。本系统主要包括八大管理模块,分别是管理员登录管理,组织管理,人事管理,招聘管理,合同管理,培训开展管理,保险福利管理和数据库维护管理。在开发本系统的过程中按照软件工程的步骤:首先进行需求分析确定该系统的功能
5、,然后对系统进行功能模块划分,接着分析设计数据库,最后完成系统的详细设计与编码实现。本文首先介绍了该系统的开发背景和开发环境,其次介绍了系统的需求分析,处理流程分析以及平安性分析,接着介绍了数据库的概念结构设计和数据库表的设计,最后详细说明了人事管理模块,招聘管理模块,统计分析模块和数据库维护模块等主要模块的实现。关键词 招聘管理,数据库维护,合同管理,人事管理ABSTRACTWith the expansion of enterprise scale, the task of employee management has become increasingly important, it
6、is urgent to use computer to copy with the work of employee management, which is impossible to depend on only artificial management. Enterprise employee management system is developed to adapt to the pressing requirements of various enterprises in employee management. This system can greatly facilit
7、ate the work of managers and improve enterprise efficiency. The system consists mainly of eight modules, which are administrator login management, organization management, personnel management, recruitment management, contract management, training management, insurance management and database mainte
8、nance management. According to the process of software engineering, firstly, we carry out the requirements analysis to define the functions of the system, secondly, design function modules, then analyze and design the database, finally, implements detailed design and coding . In this essay, first, i
9、t introduces the development background and development environment of the system, second, it introduces the requirement analysis, process analysis, security analysis of the system, then, it introduces the concept structure design of the database and the design of table, finally it details the reali
10、zation of modules including personnel management module, recruitment management module, statistical analysis module ,database maintenance module , and so on. Keywords recruitment management,database maintenance,contract management,personnel management第1章 绪论企业员工管理是非常重要的一项工作,本系统是一个为适应当前企业对员工管理的迫切需求而设计
11、开发的软件系统,通过该系统管理者可以把大局部繁琐的工作交由计算机来处理,从而提高企业的工作效率。1.1 开发背景及意义企业员工管理系统是一个面向企业管理人员,为其提供效劳的综合信息管理系统。随着企业规模的扩大,人力资源管理的工作量大大加重,通过人工来管理不但低效而且容易出错,甚至变的不太可能。当今,计算机技术和网络技术日新月异,计算机已深入到社会的各个领域,为人们所利用,人力资源管理者急迫希望能够将大局部繁琐的工作交由计算机来处理,从而减轻工作压力并提高工作效率。本系统就是为适应当前企业对员工管理的迫切需求而设计开发的软件系统,通过该系统,管理者可以轻松的完成相关的日常工作。计算机的普及进一步
12、加快了企业员工管理系统的产生,企业员工管理系统的出现将会对企业的开展产生深刻的影响,企业的员工管理将会变的更加简单而高效。 开发工具简介本系统的开发环境是Microsoft Visual Studio 2005,所用开发语言是C#,所用数据库是SQL Server 2000,在开发中用到的关键技术是ADO.NET技术,下面是对这些开发软件及技术的介绍。Visual Studio 2005提供了包括设计、编码、编译调试、数据库连接操作等根本功能和基于开放架构的效劳器组件开发平台、企业开发工具和应用程序重新发布工具以及性能评测报告等高级功能。基于以上优点,开发人员使用此工具开发系统可以享受高效率的
13、开发环境。C#.Net就是该环境下使用C#语言开发系统的一个开发平台。C#是从C和C+演变而来的一种简单的、完全面向对象的和类型平安的新型程序设计语言。C#几乎综合了目前所有高级语言的优点,主要特点是语法简洁;完全的面向对象;与web的紧密结合;完全的平安性和错误处理;易于使用的版本处理技术;很好的灵活性和兼容性,因此C#是一种不错的软件开发语言,本系统选择C#语言作为开发语言。SQL Server 2000作为后台的数据管理系统,与其他数据库管理系统相比,它的主要特点是真正的客户机/效劳器体系结构;图形化用户界面,使系统管理和数据库管理更加简单;丰富的编程接口工具,特别是提供了存储过程和触发
14、器等。结合该系统的设计要求和数据库框架的特点,SQL Server是一个理想的选择,它很好的满足了数据处理的要求,具有较强的平安性且易于使用。ADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。在ADO.NET中,可以使用多种.NET Framwork数据提供程序来访问数据源。这些数据提供程序包括SQL 通过支持对数据的松偶合访问,既减少了与数据库的活动连接数目,又减少了多个用户争用数据库效劳器上有限资源的可能性,从而实现了最大程度的数据共享。ADO.NET的主要特点有:易于编程、实现过程简单、网络流量少以
15、及应用程序前端和数据源之间需要的层数少等。第2章 系统分析 分析是设计的前提,分析在整个系统的开发过程中具有举足轻重的地位,对系统的需求分析应与实际要求相一致,这样的分析才是正确和合理的,根据正确的分析才能设计出合理的有实用价值的系统。本章主要对该系统的需求,处理流程以及平安性等进行分析。 系统需求分析随着经济的迅速开展,企业的规模越来越大,企业的管理也越来越复杂,组织机构越来越庞大,组织的划分也越来越细,对企业各组织部门的管理以及各部门内部各职务的管理变的十分复杂,需要借助于计算机来进行管理。企业人员数量的增多,对员工的管理也是一项繁重的工作,不仅要对员工的根本信息进行管理,还要对员工的动态
16、信息进行管理,例如调动信息,离职信息等,企业应对员工的这些动态信息及时的进行登记,只有合理的对员工进行管理,企业才能有条不紊的运行。进入企业的员工要与企业签订合同,合同管理关系到员工和企业双方的利益,因而需要进行认真的管理。为了企业扩展的需要,需要招聘新的人才,为企业注入新的血液,所以招聘信息以及应聘人员的信息的管理也相当重要。经济迅猛开展,竞争日趋剧烈,企业为了能在竞争中立于不败之地,对员工的素质提出更高的要求,因而企业需要定期对员工进行培训,以便员工能更好的掌握新知识、新技术,提高工作效率,培训管理就是对企业开展的培训进行规划管理。此外,为了进一步调发动工的积极性,适当的发放福利也是必要的
17、,所以对福利的管理也是必不可少的。考虑到对系统的平安控制,需要对登录该系统的管理员进行验证,因此涉及到对系统管理员的管理,综上分析,该系统应具备管理员登录管理功能,组织管理功能,人事管理功能,合同管理功能,招聘管理功能以及福利管理功能等。根据以上分析,可得系统的功能模块划分,系统功能模块图如图2-1所示。图2-1 系统功能模块图系统功能模块图展示了该系统的模块划分,是系统总体功能的初步分析概括。管理员登录后,可以在主控界面查看统计分析信息,使用帮助信息,通过查看使用帮助信息可以了解系统操作的考前须知以及一些具体操作的使用说明,熟悉系统的操作标准后,管理员可以对组织管理,人事管理,招聘管理,合同
18、管理,培训开展管理,保险福利管理等模块进行相应的操作,从而实现对各个模块的管理。2.2 系统处理流程分析该系统的处理流程是首先管理员在登录界面输入自己的用户名和密码,经系统验证身份合法后进入该系统,然后管理员可以选择以下操作,包括系统设置,数据库维护,查看统计分析信息,查看使用帮助,人事管理,招聘管理,合同管理,培训管理,保险福利管理以及组织管理。其中人事管理是对员工根本信息进行管理,主要包括员工的档案信息,调动信息,奖惩信息以及离复职信息,合同管理是对员工的合同信息进行管理,培训管理是对员工所参加的培训进行管理,保险福利管理是对员工享受的保险福利信息统一进行管理,招聘管理是对企业的招聘信息以
19、及员工的面试情况信息进行管理,数据库维护主要包括数据库备份和数据库复原,系统设置是指合法管理员进入系统后可以根据需要更改用户以及修改用户口令,统计分析信息是对所有员工的根本信息,包括性别,年龄,部门,职务,婚姻状况,政治面貌等,以及奖惩信息进行汇总统计,然后用数字的形式显示出来。系统处理流程图如图2-2所示。图2-2 系统流程图2.3 系统平安性分析系统平安主要涉及数据库数据的平安性、保密性、完整性和数据库恢复等控制,下面是关于系统对外平安和数据库恢复等方面的分析。系统对外平安主要是为了防止非系统用户窃取、更改或破坏系统数据。为了防止非法用户进入系统破坏数据,系统可以通过身份验证来增加平安,其
20、方法是由系统提供一定的方式让用户标识自己的身份,系统内部记录着所有合法用户的标识,每次用户登录系统时,由系统进行验证核实,通过验证后才有权使用该系统,本系统就是使用身份验证的方法来对登录该系统的用户进行控制,登录时,根据用户输入的用户名和口令从administrator表中查找匹配的记录,假设匹配成功,那么说明是合法用户,成功登录该系统。假设匹配失败,那么提示密码错误,需重新输入再次验证,如果连续三次输入错误,那么无权登录该系统,登录失败。数据平安的另一点就是数据不受破坏或破坏后能够恢复,这一点的最好防范措施是经常进行数据库备份。数据的完整性主要是保证数据信息的一致性。造成数据不一致的原因主要
21、是用户修改数据时只修改了一个表的数据,而与该数据相关联的表的数据并没有得到更新,当再次访问该条数据时就会出错。所以为了保证数据的完整性必须保证修改数据时,与其相关联的所有表的数据都要更新。本系统为了防止非法数据进入数据库,严格控制管理员的输入错误,只有符合数据库设计要求的数据才能进出数据库,为了防止系统崩溃所带来数据丧失,系统管理员可以对数据库进行维护,包括数据库的备份和复原,每次在使用该系统的过程中,假设对数据库有所更新,那么在使用后可以对数据库进行备份,这样就可以在一些数据破坏的情况下,通过复原数据库恢复丧失或破坏的数据。另外,本系统对数据库所进行的操作全部封装到类中,合法管理员在用户界面
22、输入信息,经过判断,正确无误后,通过调用类中的接口函数来完成对数据库的操作,简单实现了对数据库信息的隐藏。经分析,本系统有些表之间需要进行关联,为了保证数据的一致性,在修改数据时,需要对多个表进行修改,例如当删除员工档案时,就要删除与该员工相关的所有信息,这样就要对多个表中的数据同时进行删除。第3章 系统设计企业员工管理系统的设计主要包括系统各模块功能的设计以及数据库表的设计与说明,数据库结构设计的好坏将直接影响系统的效率,好的数据库结构设计会减少数据的储存量,增强数据的平安性,完整性和一致性,使系统具有相对好的性能。企业员工管理系统在设计数据库时应尽量全面考虑企业的各种需求,以防止不合理的设
23、计。3.1 系统各模块功能设计管理员登录模块:为了维护系统的平安,对登录系统的管理员进行验证,每个管理员可以通过自己的用户名和口令登录系统,只有当用户名和密码都正确时,才能成功登录,否那么系统拒绝该用户进入系统,此外,为了保密性的需要,管理员可以更改自己的口令。组织管理模块:其中包括部门职能说明和职务说明,为了更好的对企业各个部门进行说明,通过部门职能说明可以对各部门的根本信息以及部门职能进行管理,职务说明是对员工工作责任、任职资格等的描述,主要包括对职务的根本信息和各职务职责的说明。人事管理模块:该模块包括人事档案管理,人员升迁管理,员工奖惩管理以及员工离复职管理,人事档案管理是对员工的根本
24、信息进行管理,其中包括查询员工的档案信息,增加员工档案,修改员工档案,删除员工档案,人员升迁管理对员工的调动信息进行管理,可以查询,增加,修改,删除员工的调动信息,员工奖惩管理是对员工的业绩进行登记,是企业对员工进行考核的依据,通过奖惩管理可以查询,增加,修改,删除一些员工的奖惩信息,员工离复职管理是对企业裁撤人员,员工辞职以及由于特殊原因员工离职情况下的信息描述,通过离复职管理可以查询,增加,修改,删除员工的离职根本信息。合同管理:该模块是对与该企业签约的员工的合同信息进行管理,可以查询,添加,修改,删除员工的合同信息。合同管理关系企业和员工双方的利益,合理的管理可以让企业防止很多麻烦。招聘
25、管理:该模块包括招聘信息管理,应聘人员信息管理,应聘人员面试信息管理,后备人才信息管理,其中招聘信息管理是对该企业发布的招聘信息进行查询,增加,删除,修改,应聘人员信息管理可以查询,增加,删除,修改应聘人员的信息,应聘人员面试信息是对所有应聘人员的考试信息进行登记,查询,修改和删除。培训开展管理:该模块包括培训机构管理,培训课程管理,员工培训信息管理,培训机构管理是对培训单位的信息进行查询,增加,删除和修改,培训课程管理可以查询培训课程的根本信息,增加培训课程,删除培训课程,修改培训课程信息,员工培训信息管理是对公司员工进行的培训进行查询,添加,修改,删除。保险福利管理:该模块包括保险福利信息
26、管理,员工保险福利记录管理,其中保险福利信息管理是对公司发布的保险福利信息进行查询、添加、修改和删除。员工保险福利记录管理是对该公司员工享受的保险福利进行查询、添加、修改和删除。统计分析:主要是对该企业员工的根本信息按类统计分析以及对员工的奖惩信息的统计分析,按类分析包括按性别,按年龄,按学历,按专业,按职务等进行统计,通过按类分析可以了解该企业的根本状况,所存在的一些问题以及开展该企业的关键所在,对员工的奖惩信息进行分析主要是统计员工的获奖次数和受处分的次数。依据此,企业可以对员工的业绩进行考核,也是提拔员工的一个重要因素。数据库维护:包括数据库备份和复原,通过数据库备份可以备份该系统的数据
27、库,这样就可以防止数据库数据破坏或丧失的情况下影响系统的使用,通过复原数据库可以把数据库恢复到破坏前的状态。通过对数据库的维护可以提高系统的平安性和可靠性。根据以上对系统各模块功能的分析设计,可知管理员通过身份验证进入该系统后,主要的工作是维护系统数据库,可以查询、添加、修改、删除系统数据库表中的信息。3.2 数据库概念结构设计概念结构设计就是将需求分析得到的用户需求抽象为信息结构,概念结构的设计方法是构建E-R图,E-R模型是将现实世界的信息统一用属性、实体以及它们之间的联系来描述。系统E-R图如图3-2所示。图3-2 系统E-R图在该E-R图中,实体包括员工、档案、部门、职务、招聘、培训、
28、保险福利和合同,每个员工都有一份自己的档案,每个员工只能属于一个部门,每个部门可以包含多个职务,一些员工可以担任多个职务,每个员工可以参加屡次培训,也可以享受很多保险福利,企业员工主要来源于招聘,每个员工可以和企业签订多份合同。3.3 数据库表的设计本系统采用Microsoft SQL Server 2000数据库。首先创立了一个名为humanresource的数据库,根据需要我们一共设计了17个表来实现各模块的功能。数据库一些主要表的说明如表3-1所示。表3-1 主要数据库表的说明表名含义Administrator该表用于存储管理员的信息,包括用户名和密码两个字段人事档案该表用于存储企业员工
29、的档案信息奖惩管理该表用于存储企业员工的奖励和处分信息员工升迁管理该表用于存储员工的调动信息招聘信息表该表主要用于存储企业的招聘信息应聘人员面试情况表该表记录应聘人员的面试情况合同管理该表存放与企业签约的员工的合同信息员工培训记录表该表记录企业员工所接受的培训信息员工保险福利记录该表存放企业员工所享受的保险福利情况数据库表的定义应尽量标准,以防止存在的各种操作异常,改善完整性、一致性和存储效率。合理的表设计至关重要,尤其是主要字段的属性一定要设计的合理,不然就会出现各种操作异常,例如要把某一字段设置成主键,就要考虑该字段是否能唯一的标志一条记录,如果不合理,就会影响用户的使用,还有对一些字段数
30、据类型的设置要与实际相符合,对一些能说明实体主要特征的字段应设置成不允许为空,下面是对局部数据库表的详细描述,主要详细说明了每个表所含字段数以及各字段的一些属性等。人事档案表主要字段的详细定义如图3-3所示。图3-3 人事档案表人事档案表是对员工的根本信息的说明,主要包括员工编号、员工姓名、性别、所属部门和职务等字段,员工编号是员工的唯一标识,不允许重复,所属部门是指员工隶属于哪个部门,职务是员工在该企业所担任的职务。员工培训记录表各字段的详细定义如图3-4所示。图3-4 员工培训记录表 员工培训记录表是对员工所参加的培训进行登记,该表主要包括编号、员工编号、课程编号、培训机构、培训结果等字段
31、,编号是记录的唯一标识,由系统自动生成,课程编号是培训课程的唯一编号,该字段与数据库表培训课程的课程编号相对应,培训机构是培训的主办单位名称,该字段与数据库表培训机构的培训机构名称相对应,培训结果是对员工参加培训的结果评定。应聘人员面试情况表各字段的详细定义如图3-5所示。图3-5 应聘人员面试情况表表应聘人员面试情况表是对应聘人员的面试情况的说明,主要字段有编号、应聘人姓名、应聘岗位、公司面试官、考试结果等,编号是记录的唯一标识,由系统自动生成,应聘岗位与数据库表招聘信息中的招聘岗位相对应,公司面试官是负责面试的监考人员,考试结果是对应聘人员考试的最终评定,是企业录用员工的依据。第4章 系统
32、实现企业员工管理系统的实现主要包括数据库连接的实现,各模块界面的实现以及详细代码的编写,该系统的实现是基于以上的分析,先实现各个模块,最后通过主界面把各模块连接起来。4.1 数据库连接的实现本系统与SQL Server 2000数据库进行连接需要一些数据操作对象,下面是对ADO.NET中使用SQL Server 2000数据库进行数据操作的常用对象的说明。SqlConnection 对象:要和数据库交互,必须使用SqlConnection对象连接该数据库。连接字符串需指明数据库效劳器、数据库名字、用户名、密码,和连接数据库所需要的其它参数。SqlConnection对象会被SqlCommand
33、对象使用,这样SqlCommand对象就能够知道是在哪个数据库上面执行命令。 SqlCommand 对象:使用SqlCommand对象来发送SQL语句给数据库。SqlCommand对象使用SqlConnection对象来指出与哪个数据库进行连接。使用SqlCommand对象可以直接执行SQL命令。SqlDataReader对象:SqlDataReader对象获得从SqlCommand对象的SELECT语句得到的结果。利用该对象的read()方法可以按照一定的顺序从数据流中读取数据。 DataSet对象:DataSet对象包括多个DataTable对象,而DataTable包含列和行,就像数据库
34、中的表。DataSet对象支持与数据库效劳器断开的情况下来进行数据操作。SqlDataAdapter对象:有些时候使用的数据主要是只读的,并且很少需要将其改变更新到数据库。SqlDataAdapter通过Fill()方法将数据表填充到客户端的DataSet对象中,然后就可以和数据库效劳器断开连接了。假设需要更新数据库可以通过为DataSet中的每一个DataTable对象都定义SqlDataAdapter对象,这样你对DataSet的更新就会通过SqlDataAdapter的Update方法更新到数据库中。系统首次加载需要翻开效劳资源管理器,先创立数据连接,与数据库humamresource建
35、立连接,然后添加数据源,使用向导配置完数据集后,自动生成连接字符串humanresourceConnectionString,该连接字符串具体定义如下:humanresourceConnectionString=“Initial Catalog=humanresource;DataSource=localhost;IntegratedSecurity=SSPI;其中“Initial Catalog指定要连接的数据库名,“Data Source是指提供SQL Server的效劳器,“Integrated Security“指定使用Windows集成平安身份验证。实现数据库连接的代码封装在Base
36、Class类中,在实现各模块的过程中假设需要连接数据库,就调用BaseClass类中连接数据库的接口函数,该接口函数的主要代码如下:public static SqlConnection getconn()String connstr=Properties.Settings.Default.humanresourceConnectionString;/获取连接字符串SqlConnection conn = new SqlConnection(connstr);/新建SqlConnection对象return conn;/返回SqlConnection对象BaseClass类中局部静态变量的说明
37、如下。public static string error = ;/存储用户对数据库进行操作所产生的异常信息public static string sno =;/存储所选择员工的员工编号public static string snm =;/存储所选择员工的员工姓名public static string dep =;/存储所选择员工所在的部门名称BaseClass类中定义的这些静态变量主要用于在页面之间传送数据,当一个页面需要另一个页面提供的信息时,就可以把信息保存在这些变量中,然后在另一个页面获取变量中保存的信息,本系统中因为数据库很多表之间有关联,所以需要页面之间传送数据。实现方法就是
38、通过在BaseClass中定义静态变量来保存要传递到另一个页面的数据。 数据库根本操作的实现数据库的根本操作有查询、添加、修改和删除,查询就是从数据库中查找与给定条件相匹配的记录,添加是向数据库表中插入一条记录,修改是更新数据库表与给定条件相匹配的记录,删除是从数据库表中去掉符合删除条件的记录,要想对数据库执行这些操作,首先需连接数据库,其次执行SQL语句,假设执行无误,那么操作成功。本系统对数据库的所有操作都封装在类BaseClass中, BaseClass类中实现查询操作的接口函数的主要代码如下:public static bool searchOperate(string dno)Sql
39、Connection conn =BaseClass.getconn();/获得连接数据库的SqlConnection对象string sql = select * from 部门说明 where 部门编号= + dno + ;/查询部门编号为dno的记录的sql语句实现SqlCommand cmd=new SqlCommand(sql, conn);/新建SqlCommand对象conn.Open();/翻开连接SqlDataReader dr = cmd.ExecuteReader();/用SqlDataReader对象存取查询的结果,然后利用该对象的read()方法读取查询的结果该函数是
40、对数据库表“部门说明执行查询操作的具体编码实现,searchOperate()的功能是查找表“部门说明 中部门编号为dno的记录。形参dno可以通过用户在界面输入获得。实现在数据库中插入、修改、删除一条记录的操作与上面的代码相似,只是sql语句不同,在SQL语言中插入用关键字INSERT,修改用关键字UPDATE,删除用DELETE。 存储过程的实现在管理员登录模块的实现中定义了两个存储过程,分别是Admini和SelectAlluserNamefromadministrator。Admini用于验证管理员的用户名和口令是否正确,SelectAlluserNamefromadministrat
41、or用于从数据库表administrator中查询所有的用户名。使用存储过程可以提高执行效率。存储过程Admimi的定义如下:ALTER PROCEDURE Admini(Uname varchar(20),Pwd char(10)ASselect Uname,Pwd from administrator where (Uname=Uname)and(Pwd=Pwd)RETURN存储过程Admin的功能是从表administrator中查找用户名和密码分别等于管理员在界面上输入的用户名和口令的记录,参数Uname和Pwd分别接受用户输入的用户名和口令,假设存在那么查找成功,否那么返回空,该存储
42、过程可以判断管理员的用户名和口令是否正确。存储过程SelectAlluserNamefromadministrator的定义如下:ALTER PROCEDURE SelectAlluserNamefromadministratorASSelect Uname from administratorRETURN该存储过程的功能是从数据表administrator中查询所有的用户名,登录界面上的控件comBox1与该存储过程绑定,运行时显示表中所有的用户名。这两个存储过程的具体使用是在登录界面中,下面是对它们使用的说明。登录局部界面如图4-1所示。图4-1 登录局部界面 控件comboBox1与存储
43、过程SelectAlluserNamefromadministrator绑定的主要代码实现如下:private void 登录_Load(object sender, EventArgs e)selectAlluserNamefromadministratorTableAdapter1.Fill (this.humanresourceDataSet1.SelectAlluserNamefromadministrator);/利用selectAlluserNamefromadministratorTableAdapter1把表administrator所有的用户名填充到该存储过程中comboBo
44、x1.DataSource= humanresourceDataSet1.SelectAlluserNamefromadministrator; /设置控件comboBox1的数据源为该存储过程comboBox1.DisplayMember=humanresourceDataSet1.SelectAlluserNamefromadministrator.UnameColumn.ColumnName;/设置控件comboBox1显示该存储过程用户名字段的所有用户名点击登录按钮,系统使用存储过程Admin对管理员身份进行验证的主要代码如下。private void 登录_Click(object
45、sender, EventArgs e)this.adminiTableAdapter1.Fill(this.humanresourceDataSet1;Admini,this boBox1.Text.Trim(),this.textBox2.Text.Trim();/该代码的功能是把登录系统的管理员输入的用户名和口令添加到存储过Admini中进行验证if (this.humanresourceDataSet1.Admini.Count = 0)/查找不成功count+;/变量count记录失败的次数,初始化为0,每次验证不成功count值加1,当count值等于3,认为该用户是非法用户,退出
46、系统。4.2 主要模块的实现该局部详细描述了系统主要模块的实现,包括人事管理模块,招聘管理模块,信息统计分析模块和数据库维护模块的详细实现,主要模块的实现具有一定的代表性,也是该系统实现思想的表达。下面详细描述各模块界面的设计实现和局部主要代码。 人事管理模块的实现组织管理,人事管理,合同管理,保险福利管理等模块的实现思想相似,首先界面设计风格一致,其次具体功能实现大致相同,在每个模块中使用菜单栏控件来控制整个界面的操作,用DataGridView控件与某个数据源绑定来显示数据库表中的记录。人事管理模块界面的总体布局如图4-2所示。图4-2 人事管理界面在该界面上,DataGridView控件
47、与数据集humanresourceDataSet中的表“人事档案绑定,实现绑定的代码如下:人事档案TableAdapter.Fill(this.humanresourceDataSet.人事档案); 其余的控件,如textBox控件,comBox控件和PictureBox控件分别与人事档案表中的对应的字段绑定,例如PictureBox控件与该表的“照片“字段进行绑定的实现代码如下:照片PictureBox.DataBindings.Add(Image, 人事档案BindingSource, 照片, true);在界面上“快速查找“主要是进行模糊查询,当用户输入查询条件后,就会看到随着用户输入的
48、变化,DataGridView控件中的记录在变化,因为DataGridView控件显示符合查询条件的数据库表中的记录。具体实现是在textBoxchanged事件中添加代码,首先获得用户输入的信息,然后把输入信息作为模糊查询的条件,从DataGridView控件绑定的数据源中过滤出符合模糊查询条件的记录,显示在DataGridView控件中,假定字符串str是模糊查询的条件,那么对数据源BindingSource中的字段Name进行模糊查询的实现代码可以这样写:BindingSource.Filter=Name like+str+%;/实现模糊查询更新数据库的操作可以通过先对数据集更新,然后把
49、对数据集中表的处理结果更新到数据库中,这种方式是在无状态方式下进行的数据操作,也即利用SqlDataAdapter的Fill方法将数据表填充到客户端DataSet数据集中,填充后与SQL效劳器的连接就断开了,用户可以在自己的机器上对DataSet中数据表进行查询、插入、修改和删除等操作,当操作完毕后,如果需要更新数据库,就利用SqlDataAdapter的Update方法把DataSet中数据表的处理结果更新到相应的数据库中。本系统一些局部用到了在无状态方式下进行数据操作,例如在人事管理界面上点击保存菜单项可以把数据集humanresourceDataSet中“人事档案“表中插入或修改的信息保
50、存到数据库humanresource中,主要代码实现是:private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)SqlConnection conn = BaseClass.getconn(); /与数据库humanresource建立连接SqlDataAdapter adapter = new SqlDataAdapter(select * from 人事档案, conn);/新建SqlDataAdapter对象,利用该对象管理对表人事档案的操作SqlCommandBuilder builder = new SqlC
51、ommandBuilder(adapter);/新建SqlCommandBuilder对象,利用该对象生成对数据库的操作命令adapter.InsertCommand=builder.GetInsertCommand();/使用adapter对象的InsertCommand属性为数据库提供插入命令adapter.UpdateCommand=builder.GetUpdateCommand();/使用adapter对象的UpdateCommand属性为数据库提供修改命令 adapter.Update(this.humanresourceDataSet.人事档案);/利用adapter对象的Upd
52、ate()方法将对数据集humanresourceDataSet操作结果更新到数据库中由于很多数据库表都和人事档案表关联,例如员工培训记录表,合同管理表,员工保险福利记录表,员工奖惩管理表,人员升迁管理表和员工离复职管理表等都和“人事档案“表关联,其表中的字段员工编号、员工姓名、所属部门和职务必须从“人事档案“表选择,为了保证对数据库操作遵照参照完整性的原那么,所以在删除员工档案时,就必须同时删除该员工对应的培训记录、合同信息、保险福利记录、奖惩记录、调动记录、离复职记录等,该删除操作是在与数据库保持连接的情况下直接对数据库表“人事档案进行操作,删除后数据库表“人事档案已经更改,所以需要使用“
53、人事档案TableAdapter对象重新把数据库表“人事档案填充到数据集中,然后更新DataGridView控件,显示最新信息,主要代码有:this.人事档案TableAdapter.Fill(humanresourceDataSet.人事档案);/该代码的功能是使用“人事档案TableAdapter对象重新把数据库表“人事档案填充到数据集humanresourceDataSet中dataGridView1.Update();/更新控件dataGridView1,显示数据集中最新的“人事档案表的信息。4.2.2 招聘管理模块的实现招聘管理的界面显示如图4-3所示。图4-3 招聘管理界面因为很多
54、数据库表有关联,所以为了维护数据库的参照完整性,一些表的字段值必须来自于已经存在的数据库表的记录,如图中所示的应聘人员信息中的应聘岗位字段的值与招聘信息表中的招聘岗位字段的值相一致,为了防止用户输入错误,所以不允许用户输入应聘岗位字段的值,必须从招聘信息表中选择记录,具体操作是:如图4-3所示,点击查看按钮,出现“招聘信息子窗体,在该窗体中用一个DataGridView控件显示招聘信息表中的所有记录,用户可以选择一条记录,点击选择按钮把选种记录“招聘岗位字段的值记录下来,然后赋值给主窗体中“应聘岗位字段对应的值。这样就可以保证对数据库进行操作时遵照参照完整性的原那么。点击“选择按钮把选种记录的
55、值保存在BaseClass类中定义的静态变量中,赋值语句是: BaseClass.str1 = this.dataGridView1.CurrentRow.Cells0.Value.ToString();4.2.3 信息统计分析模块的实现信息统计分析包括对企业员工的根本信息按类统计和对奖惩信息表中每个员工的获奖次数以及受处分的次数进行统计,根本信息的按类统计主要是对人事档案表的分类查询,然后将统计的结果绑定到 DataGridView控件中显示。对员工奖惩信息的统计是通过对奖惩信息表中的记录进行按条件分组查询,将分组查询的结果绑定到 DataGridView控件中的显示效果如图4-4所示。图4
56、-4 奖惩统计界面实现分组查询的主要代码有:private void 信息统计分析_Load(object sender, EventArgs e)SqlConnection conn = BaseClass.getconn();/与数据库humanresource建立连接string sql = select 员工编号,count(*) as 处分次数 from 奖惩管理 where 奖惩=处分 group by 员工编号 order by 处分次数 asc;/实现分组查询的SQL语句,group by员工编号是将查询的结果按员工编号分组,order by 处分次数 asc是将查询的结果按处
57、分次数递增的顺序排列,count(*) as 处分次数是记录每个员工的处分次数SqlDataAdapter dr1 = new SqlDataAdapter(sql,conn);/新建SqlDataAdapter对象,利用该对象管理查询结果DataSet dataset = new DataSet();/新建dataset对象,用于把查询的结果装入该数据集中dr1.Fill(dataset, table1);/对象dr1把查询的结果放到表table1中,然后填充到数据集dataset中this.dataGridView2.DataSource = dataset.Tables0;/ 用data
58、GridView2与dataset中的table1绑定,查询的结果显示到dataGridView2控件中4.2.4 数据库维护模块的实现数据库维护包括对数据库进行备份和复原,备分数据库是为了防止系统崩溃所带来的一系列问题,数据库数据的丧失或者一些数据被破坏等等,这些问题将会影响企业的正常运行,尤其是一些重要信息的丧失将会使企业处于瘫痪状态,数据库备份可以很好的处理这些问题,合理的对数据库进行备份可以在系统出故障时通过对备份文件的复原而把系统恢复到出故障前的状态,有效的增加了系统的平安性和可靠性。对数据库进行备份的主要代码有:private void button2_Click(object s
59、ender, EventArgs e)SqlConnection conn=BaseClass.getconn();/新建SqlConnection对象String path= this.textBox1.Text.Trim()/获取备份文件要保存的路径String sql=BACKUP DATABASE humanresourceTODISK=+path+;/备份数据库humanresource的SQL语句SqlCommand command1 = new SqlCommand(sql, conn);/新建SqlCommand对象,执行SQL语句conn.Open();/翻开连接comman
60、d1.ExecuteNonQuery();/执行备份conn.Close();/关闭连接结 论本文主要介绍了企业员工管理系统开发的根本过程,包括系统的需求分析,系统功能模块的分析设计,数据库设计,具体模块的实现等内容。为了能做好这次毕业设计,我查询了很多相关的资料,认真的分析,整个系统的开发根本遵循软件工程中系统开发流程,做到模块化分析、模块化设计以及代码编写的模块化,通过这次毕业设计,我对企业员工管理系统的功能有了更深的了解,在分析设计的过程中,系统分析从不够完善到根本实现,数据库设计从不合理到根本合理,文档从不标准到标准,经历了一个漫长而复杂的过程。通过对企业员工管理系统的分析、设计与实现
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育机构用车:汽车租赁合同协议
- 建筑工程改造合同范本
- 写字楼购置合同样本
- 能源管理合同书样本
- 宠物店文职人员聘用合同
- 体育工程承揽合同
- 科考研究山地租赁合同
- 商场厕所翻新合同样本
- 新生儿营养支持治疗
- 山西省大同市(2024年-2025年小学五年级语文)统编版小升初真题((上下)学期)试卷及答案
- 辽宁省葫芦岛市各县区乡镇行政村村庄村名居民村民委员会明细
- 植物种子的传播方式课件
- 电缆敷设施工方案及安全措施
- 百合干(食品安全企业标准)
- 肺血栓栓塞症临床路径(县级医院版)
- 国开成本会计第10章综合练习试题及答案
- 《西游记》-三打白骨精(剧本台词)精选
- T∕CSCS 012-2021 多高层建筑全螺栓连接装配式钢结构技术标准-(高清版)
- 充电站项目合作方案-高新
- 急诊科临床诊疗指南-技术操作规范更新版
- 精通版六年级上册小学英语 Unit 3 单元知识点小结
评论
0/150
提交评论