华锋企业人事管理系统.docx
《华锋企业人事管理系统.docx》由会员分享,可在线阅读,更多相关《华锋企业人事管理系统.docx(39页珍藏版)》请在冰豆网上搜索。
华锋企业人事管理系统
设计(论文)题目:
华峰企业人事管理系统
摘要
本系统可以实现对人事信息的高效率管理。
开发该系统主要的阶段包括:
需求分析阶段、系统分析阶段、系统设计阶段、编码阶段、系统测试阶段。
通过前期的需求分析和系统分析,最终确定该系统包含5种角色:
普通员工、人事部成员、部门经理、总经理、系统维护人员。
人事部成员角色主要实现的功能有:
员工管理,部门管理,请假管理,考勤管理,加班管理,薪资管理,安全管理,留言管理;普通员工角色主要实现的功能有:
查询自己的资料,查询、申请自己的加班,查询自己的考勤信息,查询、申请自己的请假,留言;部门经理角色主要实现的功能有:
查询下属的员工资料,查询、审核下属的加班,查询、审核下属的请假,查询下属的考勤,查询下属的薪资,修改登录密码;总经理角色主要实现查询的功能;系统维护人员角色主要实现的功能有:
备份、还原数据库,事件管理。
关键词:
人事部门人事管理系统ASP.NET技术
目录
第一章概述1
1.1系统开发的背景1
1.2系统开发的目的1
1.3系统发展现状2
第二章系统开发的相关技术3
第三章人事管理系统的系统分析6
3.1可行性分析6
3.1.1技术可行性分析6
3.1.2经济可行性分析6
3.1.3社会可行性分析6
3.2需求分析6
3.3系统功能分析7
3.4系统功能结构图8
3.5系统登录流程图9
第四章数据库设计10
4.1数据库概要设计10
4.2数据表设计13
第五章模块功能设计17
第六章总结25
致谢27
参考文献28
附录29
第一章概述
针对传统纯手工方式管理人事信息的成本高、低效率的弊端,本课题选择开发一个人事管理系统,提高人事信息的管理效率。
同时,有助于本人了解企业的业务需求,提高本人的系统设计的思想和应用专业知识的能力。
1.1系统开发的背景
随着企业竞争的加剧和互联网技术的发展,信息化的管理方式越来越受到企业的追捧。
根据企业的需要,可以开发满足不同用途的信息系统。
事务处理系统支持公司的操作级的工作;办公自动化系统支持知识级的工作;更高级的系统包括管理信息系统和决策支持系统。
本课题选择开发一个人事管理系统,用信息化的管理方式取代原来传统纯手工的管理方式。
该系统可以提高企业管理人力资源的效率,能够有效的降低企业管理人力资源的成本。
本课题要求在VisualStudio2008开发环境下,采用面向对象的程序设计语言,使用ASP.NET技术,ADO.NET数据库访问技术,开发一个人事管理系统。
1.2系统开发的目的
本课题选择开发一个人事管理系统。
一方面,可以将所学到的专业技术应用到项目的实际开发中,熟悉具体的业务,开发满足企业现实需求的管理信息系统。
另一方面,通过开发本系统,可以提高企业管理人事信息的效率,降低企业的管理成本。
在开发过程中需要独自熟悉企业的人事方面的资料,了解企业的管理模式,同时开发该系统需要综合的使用数据库设计、数据库访问技术、网站设计等技术。
通过开发真实的项目不仅能够熟悉企业真实的业务需求,而且可以提高自己的设计思想和技术水平。
人事管理系统给企业带来管理上的便利,尤其是随着企业的业务的扩大和企业人员规模的扩大,企业对管理信息系统的需求与日俱增。
通过开发该人事管理系统,利用该系统的信息化管理方式取代原来的纯手工的管理方式,帮助企业提高管理效率。
极大的减轻了人事部门对企业员工的资料、考勤、加班、薪资、请假管理的压力。
1.3系统发展现状
现在很多企业还是采用纯手工的方式实现对员工、部门、请假、加班、考勤、业绩的管理,但随着企业的业务规模、人员规模不断扩大,人事部门的压力变得越来越大,工作负荷日趋繁重。
人事部门需要对本月员工的请假、出勤情况进行统计、记录,根据员工的考勤和请假情况,来结算每位员工的薪资,因此非常麻烦。
有时,由于请假条、出勤记录丢失、有误,导致薪资结算有误,因此造成人事纠纷。
影响了工作人员的工作的热情。
随着人员的增多,员工之间的相互了解也变得较为困难。
每年年底,公司都要依据去年设定的业绩目标,对每位员工进行业绩考评。
业绩目标填写在打印出来的表格中,而且在人事部存档,因此,到年底考评时,经理、员工对去年设定的目标印象不深,评定的针对性也就差强人意,所有这一切都与公司的迅速发展不相协调,业务流程的手工操作严重阻碍了企业的发展。
针对这种现状,企业需要拥有一套完整的人事管理系统帮助企业提高管理人事信息的效率,降低管理成本,所以开发此类系统是由一定的实用价值和市场前景的。
第二章系统开发的相关技术
本系统是在.NET平台下开发的Web人事管理系统,本系统主要应用到的技术包括ASP.NET技术、ADO.NET数据库访问技术。
开发本系统需要掌握一种面向对象的程序设计语言,如:
C#或VB。
需要熟悉ASP.NET、ADO.NET等相关技术。
2.1.NET平台介绍
.NET是微软新开发的一种WebServices策略性软件的应用平台,其.NET技术提高快速建立、部署和管理,使用连接加强WebServices解决方案的安全性。
以CLR为基础,支持多种语言的开发,可以使开发人员快速的建立应用程序,而且不用考虑开发者熟悉那种程序设计语言,大大提高了开发者的生产力。
.NET的核心概念来自于Internet与操作系统,让网络本身成为操作系统的基础,程序开发人员通过应用程序与Internet进行连接;在用户方面,摆脱了硬件的限制,用户可以通过各种终端(如:
PC、WindowsMobile等),方便自由的存取数据,不受时间和地域的限制。
开发人员通过.NET平台提供的技术,可以依照不同的方法开发建立应用程序,通过WebService的订阅方式来取代传统主机管理,让IT人员可以专注于提高企业的商业价值,给企业创造更大的商业竞争力。
.NET平台对企业而言,彻底改变了用户与计算机的互动方式。
让商业应用程序、顾客与员工之间形成互动,提高了企业的生产力,同时高效率的管理方式也给企业带来了很好的效益。
2.2C#语言介绍
C#是一种简单、灵活而又功能强大的程序设计语言,它使得程序员能够快速开发多种应用程序。
由于采用了面向对象程序设计思想,适合开发普通的应用程序或是大型的商业软件。
使用C#设计的组件能够方便的转换成XMLWebService,并且可以被互联网上的程序调用。
C#语言集成了C和C++的优点,并在此基础上进行了改善,使语言更加的简化。
C#同时摒弃了其他编程语言中的一些复杂性和缺陷,使得没有编程基础的程序员能有效地减少开发过程的错误。
C#具有面向对象程序设计语言所应有的特征:
封装、继承、多态。
通过面向对象的强大功能,C#使程序员的开发项目的效率显著提高,缩短了应用程序的开发周期,使用面向对象的设计思想,开发的应用程序拥有很高的可维护性、可扩展性、灵活性、可重用性。
C#对网络中结构化数据传送的标准—XML提供了很好的支持,程序员能够利用C#结构方便的开发XMLWebService,有效的处理网络中的各种数据。
2.3ADO.NET介绍
ADO.NET是为Microsoft.NETFramework编程人员提供数据访问服务的对象模型。
ADO.NET包含了.NETFramework数据源、执行查询命令以及存储、操作和更新数据。
ADO.NET提供连接的模型和断开连接的模型:
连接的模型使得能使用数据提供程序连接到数据库并对数据库运行SQL命令,命令运行结果后将关闭和数据库之间的连接。
运行命令时,数据库连接保持打开状态;断开连接的模型使得能为来自数据源的数据创建内存的缓存,然后与数据源断开连接。
可以在缓存中查看、修改或删除数据,然后在于数据源再次建立连接时将更改内容合并至数据源。
ADO.NET的类分为两部分:
数据提供程序(DataProvider)和数据集(DataSet),前者用于同真实数据进行沟通,后者用于表示真实的数据。
这两个组成部分都与应用程序(如Web应用程序和Windows应用程序)进行交互。
2.4ASP.NET介绍
ASP.NET是一种动态网页技术,可以开发Web应用程序。
ASP.NET建立在.NETFramwork上,可以在服务器上生成功能强大的Web应用程序。
Web应用程序通常是由一些页面和程序组成。
在ASP.NET中使用的网页一般被称为”Web窗体”。
.NETFramwork3.5加强了ASP.NET和VisualWebDeveloper的网络应用程序的开发功能。
在ASP.NET的加强功能部分,包括:
支持Ajax技术的网站设计,通过在页面上添加ScriptManager控件和UpdatePanel控件来设计AJAX的ASP.NET2.0网页,让网页不用Reload就能够以异步的方式完成更新;LINQ语句支持,可利用LinqDataSource控件,经由ASP.NET数据源控件结构,方便Web开发人员应用LINQ;全新的ListView控件结合了现有数据控件的诸多优势,对重复数据的显示与处理能力强大,并且提供高弹性的客制化UI显示方式。
使用ASP.NET开发的Web窗体应用程序要最终要部署到IIS,IIS是InternetInformationServices的缩写,他是微软公司主推的Web服务器,IIS可以容易地运行动态内容和开发基于Web的应用程序,ASP.NET页面需要在IIS中运行。
2.5SQL介绍
SQL是与关系数据库交互的标准语言。
SQL包括数据定义语言(DDL)、数据控制语言(DCL)和数据操作语言(DML)。
数据定义语言允许用户创建、修改、或删除数据库、表、关系和约束等。
数据控制语言用于控制对数据库的访问。
数据操作语言包含允许用户在数据库中执行创建、查询、更新或删除数据的操作。
2.6HTML介绍
HTML是一种超文本标记语言,它的英文全称是HyperTextMarkUpLanguage, 中文叫做”超文本标记语言”,是WWW的描述语言,在Web服务器中的信息组织和操作都要依靠HTML完成。
HTML主要是运用标记使文件达到预期的效果。
通过浏览器来识别,并将HTML文件翻译成可以识别的信息,安装一定的格式将这些被标记语言标识的文件显示在屏幕上,即所见到的网页。
HTML是建立网页的规范或标准,一个Web页面就是一个HTML文档。
第三章人事管理系统的系统分析
本系统的系统分析主要包含:
需求分析、可行性分析、系统功能分析,同时需要设计出系统的功能结构图和系统的程序流程图。
3.1可行性分析
3.1.1技术可行性分析
本系统的开发需要安装VisualStudio2008、SQLServer2008数据库,需要熟悉C#或VB程序设计语言,熟悉ADO.NET数据库访问技术和ASP.NET。
由于大学期间学习过上述课程,本人熟悉C#程序设计语言,对SQLServer2008数据库有一定的使用经验,能够编写添加、修改、删除、查询的SQL脚本,并能使用ADO.NET数据库访问技术,具有一定的开发系统的基础,所以技术上是可行的。
3.1.2经济可行性分析
本系统投入使用后,可以降低企业管理人事信息的成本,开发该系统不仅成本远远低于企业原来的纯手工的管理成本,而且可以给企业带来很好的综合效益。
3.1.3社会可行性分析
本系统投入使用后,只需要简单的培训就可以很方便的操作了。
信息化的管理方式可以取代原来的纯手工的管理方式,随着企业业务规模和员工规模的扩大,该系统的高效性、灵活性的优势将进一步显现出来。
该系统可以方便员工的加班申请和请假申请,高效的实现人事部门加班、请假的审核。
人事部门管理员工、加班、考勤、薪资等信息变得非常的方便。
3.2需求分析
通过与企业的实际接触和沟通,确定本系统的模块主要包含:
员工管理、部门管理、请假管理、加班管理、考勤管理、薪资管理、留言管理、安全管理。
通过实际调查,要求本系统主要包含以下的功能:
由于用户的计算机知识普遍不高、要求系统具有良好的人机界面;方便人事部门审核员工的加班申请和请假申请,支持多条件和模糊查询员工的请假、加班、考勤、薪资等信息;方便普通员工的请假和加班申请,方便员工查询个人的请假、加班、考勤、薪资等信息;方便部门经理查询本部门的人请假、加班、考勤、薪资等信息;系统需要提供留言的功能,方便员工间的相互了解;出于安全性考虑,要求系统提供数据库的备份和还原功能。
3.3系统功能分析
本系统包含5种角色:
普通员工、部门经理、人事部成员、系统维护人员、总经理。
本系统中普通员工角色主要实现的功能:
(1)员工资料模块:
查询自己的资料。
(2)考勤管理模块:
查询自己的考勤记录。
(3)请假管理模块:
提交、查询、修改自己的请假申请。
(4)加班管理模块:
提交、查询、修改自己的加班申请。
(5)薪资管理模块:
查询自己的薪资。
(6)安全管理模块:
修改自己的登录密码。
本系统中部门经理角色主要实现的功能:
(1)员工资料模块:
查询本部门员工资料。
(2)考勤管理模块:
查询、汇总本部门员工的考勤记录。
(3)请假管理模块:
查询本部门员工的请假记录,审核本部门员工的请假申请。
(4)加班管理模块:
查询本部门员工的加班记录,审核本部门员工的加班申请。
(5)薪资管理模块:
查询、打印本部门员工的薪资。
(6)安全管理模块:
修改自己的登录密码。
本系统中人事部成员角色主要实现的功能:
(1)员工资料模块:
添加、修改、删除员工资料;上传照片;打印员工。
(2)部门管理模块:
添加、修改、删除部门。
(3)考勤管理模块:
修改、删除考勤记录。
(4)请假管理模块:
查询员工请假记录,审核员工的请假申请。
(5)加班管理模块:
查询员工加班记录,审核员工的加班申请。
(6)薪资管理模块:
查询员工薪资,打印员工的薪资单。
(7)安全管理模块:
修改自己的登录密码。
(8)留言管理模块:
发表、回复、删除留言。
本系统中总经理角色主要实现的功能:
(1)员工资料模块:
查询全体员工资料。
(2)考勤管理模块:
查询、汇总全体员工的考勤记录。
(3)请假管理模块:
查询全体员工的请假记录,审核全体员工的请假申请。
(4)加班管理模块:
查询全体员工员工的加班记录,审核全体员工的加班申请。
(5)薪资管理模块:
查询、打印本部门员工的薪资。
(6)安全管理模块:
修改自己的登录密码。
本系统中维护人员角色主要实现的功能 :
(1)安全管理模块:
修改自己的登录密码,事件管理,备份数据库、还原数据库。
3.4系统功能结构图
本系统主要包含的模块有:
员工管理模块、部门管理模块、请假管理模块、加班管理模块、考勤管理模块、薪资管理模块、安全管理模块、留言管理模块。
系统功能结构图,如图3.1所示:
图3.1系统功能结构图
普通员工实现的功能主要包含:
查询个人信息;请假申请、查询个人请假信息;加申请、查询个人加班信息;查询个人考勤信息;查询个人薪资信息;修改密码。
查看、回复留言。
普通员工角色的功能结构图见图3.2:
3.5系统登录流程图
本系统主要包含以下的使用者角色:
普通员工、部门经理、人事部成员、系统维护员、总经理。
登录成功后,普通员工进入普通员工主界面,人事部成员角色进入人事部成员主界面,总经理进入总经理主界面,系统维护人员进入系统维护人员主界面。
系统登录流程图见图3.3:
图3.3登录流程图
第四章数据库设计
数据库设计是本系统开发的一个核心部分,数据库设计需要满足规范,本系统的数据库设计主要包括:
数据库概要设计和数据表设计。
4.1数据库概要设计
4.1.1系统E-R图
根据以上章节的对本系统所作的需求分析以及系统功能结构的确定,规划出满足用户需求的实体以及实体之间的关系图
。
本系统规划出的数据库实体对象分别为员工实体、部门实体、请假实体、加班实体、考勤实体、留言实体、系统事件实体。
系统E-R图,如图4.1所示:
图4.1系统E-R图
4.1.2实体图
本系统的实体包括:
员工实体、部门实体、请假实体、加班实体、薪资实体、考勤实体、发帖实体、回帖实体。
本系统部分实体图如下所示。
(1)员工实体主要属性包括:
人员编号、姓名、职务、部门编号等。
员工实体图,如图4.2所示:
图4.2员工实体图
(2)考勤实体主要包含的属性包括:
考勤编号、员工编号、刷卡时间、刷卡日期等。
考勤实体 图,如图4.3所示:
图4.3考勤实体图
(3)薪资实体主要包含的属性包括:
薪资编号、固定薪资、员工编号、绩效薪资、发工资时间等。
薪资实体 图,如图4.4所示:
图4.4薪资实体图
(7)系统事件实体主要属性包括:
事件编号、事件摘要、员工编号等。
系统事件实体 图,如图4.5所示:
图4.5系统事件实体图
(8)发帖实体主要属性包括:
帖子编号、帖子内容、发帖时间等。
发帖实体图,如图4.6所示:
图4.6发帖实体图
4.2数据表设计
本系统主要包含的表有:
员工表、部门表、考勤表、加班表、薪资表、请假表、事件表、发帖表、回帖表。
(1)员工表(Employee)用于存储员工的基本信息,表中的字段包括:
员工编号、员工姓名、性别、身份证等,表的结构如表4.1所示。
表4.1员工表
序号
字段名
含义
类型
长度
允许空
约束
1
EmployeeID
人员编号
Int
notnull
PRIMARYKEY
2
EmployeeName
姓名
nvarchar
50
notnull
3
Sex
性别
nchar
1
null
CHECK
4
MarrageState
婚姻状况
nvarchar
10
null
6
PoliticsAppearance
政治面貌
nvarchar
`5
null
7
IdentificationCard
身份证
nchar
18
null
8
BirthPlace
籍贯
nvarchar
10
null
9
Nation
民族
nvarchar
10
null
9
HouseHold
户口
nchar
2
null
10
Birthday
出生日期
nchar
10
null
11
Address
地址
nvarchar
50
null
12
Post
邮编
nchar
6
null
13
EducationLevel
学历
nvarchar
5
null
14
Major
专业
nvarchar
10
null
15
College
毕业院校
nvarchar
20
null
16
ComputerLevel
电脑水平
nvarchar
5
null
17
LoginName
登录名
nvarhcar
50
notnull
18
LoginPwd
登录密码
nvarchar
100
notnull
19
IndividualEmail
个人邮箱
nvarchar
100
null
20
Phone
电话
nchar
11
notnull
21
Photo
个人照片
nvarchar
100
null
22
DepartmentID
部门编号
int
null
FOREIGNKEY
23
HireDate
何时工作
nchar
10
notnull
DEFAULT
24
Job
职务
nvarchar
20
null
DEFAULT
25
Title
职称
nvarchar
20
null
26
WorkYear
工龄
tinyint
null
27
RoleID
角色编号
int
null
(2)本系统中部门表(Department)用于存储部门的基本信息,表的字段包括:
部门编号、部门名称、修改日期。
表的结构如表4.2所示。
表4.2部门表
序号
字段名
含义
类型
长度
允许空
约束
1
DeparmentID
部门编号
Int
notnull
PRIMARYKEY
2
DeptName
部门名称
Nvarchar
50
notnull
UNIQUE
3
ModifiedDate
修改日期
Datetime
notnull
DEFAULT
(3)本系统中请假表(Leave)用于存储请假信息,表的字段包括:
请假编号、职工编号、请假开始时间、请假结束时间、请假理由等,表的结构如表4.3所示。
表4.3请假表
序号
字段名称
含义
类型
长度
允许空
约束条件
1
LeaveID
请假编号
Int
notnull
PRIMARYKEY
2
EmployeeID
职工编号
Int
notnull
FOREIGNKEY
3
StartTime
请假开始时间
Datetime
notnull
4
EndTime
请假结束时间
Datetime
notnull
5
Reason
请假理由
Nvarchar
350
Null
6
ApproveState
请假批准状态
Nvarchar
5
notnull
7
IsCancel
是否取消申请
Nchar
1
Null
8
ModifiedDate
修改日期
Datetime
notnull
(4)本系统中考勤表(Attend)用于存储考勤信息,表的字段包括:
考勤编号、员工编号、员工刷卡日期、员工刷卡时间、考勤类型、修改日期,表的结构如表4.4所示。
表4.4考勤表
序号
字段名
含义
类型
长度
允许空
约束
1
AttendID
考勤编号
Int
notnull
PRIMARYKEY
2
EmployeeID
员工编号
Int
notnull
FOREIGNKEY
3
SwipeCardDate
员工刷卡日期
Smalldatetime
Null
4
SwipeCardTime
员工刷卡时间
Time
7
Null
5
AttendType
考勤类型
Nvarchar
5
notnull
6
ModifiedDate
修改日期
Datetime
notnull
DEFAULT
(5)本系统中加班表(Overtime)用于存储加班信息,表的字段包括:
加班编号、员工编号、加班开始时间、加班结束时间、加班折算方式等,表的结构如表4.5所示。
序号
字段名
含义
类型
长度
允许空
约束
1
OvertimeID
加班编号
Int
notnull
PRIMARYKEY
2
EmployeeID
员工编号
Int
notnull
FOREIGNKEY
3
ApplyDate
加班时间
datetime
notnull
4
StartTim