资源描述
毕业设计(论文、作业)
毕业设计(论文、作业)题目:
组织人事信息管理系统
目 录
内容摘要 1
ABSTRACT 2
文献综述 3
第一章 绪论 4
一、 课题背景 4
二、人事管理系统的发展和现状 5
三、 系统开发平台简介 5
(一)软件工程概述 6
(二)开发工具ASP.NET 6
(三)数据库SQL Server 2000简介 7
第二章 系统需求分析 8
一、可行性分析 8
二、系统功能分析 9
三、 数据流程图 9
第三章 系统设计与数据库设计 11
一、业务流程 11
二、功能模块设计 12
三、数据结构设计 12
四、概念模型 (E-R) 14
五、系统数据库DB_Mispersonal 16
第四章 系统模块实现 18
一、系统总框图 18
二、模块实现 19
(一) 登陆界面实现 19
(二) 基本信息管理模块 22
(三)部门信息管理模块 24
(五)用户管理模块 32
第五章 系统测试 34
一、软件测试方法的描述 34
二、功能模块测试 35
第六章 系统维护 35
一、维护的内容 35
二、维护的类型 36
参考文献: 36
致谢 37
2
组织人事信息管理系统的设计与实现
内容摘要:人事管理是企业信息管理的重要部分,面对大量的人事信息,人事部门采用人力处理将浪费大量的时间、人力和物力,且数据的准确性低。因此,开发一个界面友好,易于操作的人事管理软件进行自动化处理变得十分重要,这正是本系统开发的目的和意义。本文介绍了人事管理系统的开发过程。论文详尽论述了从需求分析、系统分析、概要设计、详细设计以及测试的整个开发过程。
本系统使用基于.NET Framework(.NET框架)的ASP.NET为开发工具,C#为主要设计语言,在数据存取上,使用最新的ADO.NET数据存取技术来实现对SQL数据库的操作,使用Session对象进行Web页之间的数据传递。
关键字:ASP.NET ADO.NET 组织人事管理系统 SQL数据库
47
47
ABSTRACT
The personnel management is an importance of the business enterprise information management part, face a great deal of personnel information, the personnel section adoption the manpower processing will waste a great deal of time, manpower and material resourceses, and the accuracy of the data is low.Therefore, develop an interface amity, be easy to the personnel of the operation management software to carry on the automation processing's become very important, this is exactly this system development of the purpose and the meaning.This text introduced the development process of the personal management.The thesis discussed in details analytical from the need, system analysis, essentials design, detailed design, and test.
This system usage according to in order to develop the tool, the ASP.NET of the .NET Framework(frame of.NET), C# for main design language.Access in the data up, use the latest ADO.NET data access technique to carry out the operation toward the database of SQL.The data that uses the object of Session to carry on the of Web page deliver.
Key words ASP.NET; ADO.NET; Personal management system; SQL database
文献综述
人事管理系统是一个现代化的企业在竞争中立于不败之地的必要部分,它能够为查询人事信息提供充足的信息和快捷的查询手段。一直以来使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难,而且容易丢失。自20世纪50年代将计算机引入数据处理以来,历经管理信息系统发展的各个阶段。一方面是信息技术应用的迅猛发展,另一方面,许多管理信息系统在耗费了大量的人力、物力、财力之后夭折了,或者根本没有实现原定系统开发目标,或者根本没有实现原系统的开发目标,而把计算机用作了打字机。这是长期以来困惑着人们的一大问题。现在人们日益深刻认识到,把信息技术应用与应用环境分离是办不到的,管理信息系统根本不仅是技术系统,而且是社会系统。
组织人事信息管理系统的设计与实现
第一章 绪论
一、 课题背景
随着时代的进步,社会生产力高速发展,新技术层出不穷信息量急剧膨胀,整个人类社会已成为信息化的社会,人们对信息和数据的利用和处理已经进入自动化、网络化和社会化的阶段。如在查找文件资料、处理银行帐目、仓库管理、科研生产等方面,无不需要利用大量的信息资源。因此,如何有效地进行数据信息的管理和利用,已经成为人们普遍关注的课题。
管理信息系统(Management Information System,缩写MIS)是一种“人机系统”,它以特定的模式支持一个组织内各级组织机构之间的通讯,对信息资源进行综合开发,管理和利用,实现对该组织的有效管理。它通过对数据的加工处理,及时为管理与决策分析提供信息。其特点有:
l 数据全部存储于计算机系统中;
l 用户使用简单、操作方便、查询速度快;
l 有极强的人-机对话功能;
l 能直接从计算机系统中提供决策所需的参考信息。
管理信息系统基本框架如图所示:
管理信息系统基本框
二、人事管理系统的发展和现状
人事管理系统主要经过了以下三个发展阶段:
(一)人事管理系统最早产生于20世纪60年代末期。由于当时计算机技术已经进入实用阶段,同时大型企业用手工来计算和发放薪资既费时费力又非常容易出差错,为了解决这个矛盾,第一代的人事管理系统应运而生。当时由于技术条件和需求的限制,用户非常少,而且那种系统充其量也只不过是一种自动计算薪资的工具,几乎没有报表生成功能和薪资数据分析功能。
(二)第二代的人事管理系统出现于20世纪70年代末。由于计算机技术的飞速发展,为人事管理系统的阶段性发展提供了可能。它基本上解决了第一代系统的主要缺陷,对非财务的人事管理信息和薪资的历史信息都给予了考虑,其报表生成和薪资数据分析功能也都有了较大的改善。但这一代的系统主要是由计算机专业人员开发研制的,未能系统地考虑人事管理的需求和理念。
(三)人事管理系统的革命性变革出现在20世纪90年代末。第三代人事管理系统的特点是从人事管理的角度出发,用集中的数据库将几乎所有与人事管理相关的数据(如薪资福利、招聘、培训、职位管理、绩效管理、岗位描述、个人信息和历史资料)统一管理起来,形成了集成的信息源。友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得人事管理人员得以摆脱繁重的日常工作。
现有的单位人事管理系统完成的主要功能有:
●有关单位员工各种信息的输入,包括员工基本信息、所在部门、工作信息和工作简历等。
●员工各种信息的查询
●员工各种信息的修改
●考勤信息的输入等
●考勤信息的查询
●考勤信息的修改
●员工工作评价信息的输入
●员工工作评价信息的查询
●员工工作评价信息的修改等
三、 系统开发平台简介
本系统是按照软件工程学的过程使用ASP.NET为开发工具,SQL server 为后台数据库进行开发的。
(一)软件工程概述
软件工程是指导计算机软件开发和维护的一门工程学科。
1、它采用工程的概念、原理、技术和方法来开发和维护软件;
2、它将管理技术与当前经过时间考验的而证明是正确的技术方法结合来;
3、它强调使用生存周期方法学和结构分析和结构技术;
4、经过人们长期的努力探索,围绕着实现软件优质高产这个目标,从技术到管理两个方面做了大量的努力,逐渐形成了"软件工程学"这一新的学科。
(二)开发工具ASP.NET
作为Microsoft的最新建立动态Web网站的工具,ASP.NET相对于ASP和JSP在改变原始的Web编程方式方面有了长足的长进。它的代码与页面分离技术(CodeBehind)以及完善的Web服务器控件为程序员提供了一个更加符合传统编程的Web服务器端开发方式。下面对ASP.NET这个开发工具做一个基本的了解:
1、基本概念
ADO.NET并非是ADO的下一代,它只是在.NET Framework中负责不同数据源之间的数据存储。它是一个全新的架构,能支持非连接状态数据的处理。
ADOConnection:相当于ASP中的数据库Connection;
ADOCommand:相当于ASP中的数据库Command;
DataView:相当于ASP的ADO记录集RecordSet;
DataSet:多个数据表的集合;
2、NameSpace(名字空间)的使用
要使用ASP.NET的数据库功能,不可能离开名字空间NameSpace的使用。如果你要使用ASP.NET的数据库功能,你就必须先引用相应的名字空间。
名字空间的具体使用如下:
<%@ Import NameSpace=”名字空间”%>
举例:
<%@ Import NameSpace=”System.Data”%>
应该注意一点,以上代码必须在页面顶端。
3、ASP.NET中数据库的使用样板
private string connstr;
private SqlConnection Sqlconn;
private SqlCommand Sqlcmd;
private SqlDataAdapter Sqladpter;
private DataSet ds;
private SqlDataReader Sqlreader;
connstr = ConfigurationManager.ConnectionStrings["Mispersonalconn"].ConnectionString;
Sqlconn = new SqlConnection(connstr);
Sqlcmd = new SqlCommand();
Sqladpter = new SqlDataAdapter();
ds = new DataSet();
Sqlcmd.Connection = Sqlconn;
Sqlconn.Open();
Sqlcmd.ExecuteNonQuery();
(三)数据库SQL Server 2000简介
SQL Server2000是微软公司推出的基于RDBMS(关系数据库管理系统)技术的数据库。它与ORACLE、SYBASE相比,有着安装方便、使用简单的优点,而且在性价比上有着其它数据库无法企及的优势。在我国,采用WINDOWS NT作为局域网操作系统的占不小比例,而从技术角度来说,同DB2结合大型机一样,SQL Server同WINDOWS NT紧密的结合在一起。能很好的处理部门级的数据。作为SQL Server 系列中的新版本,SQL Server2000增强了很多功能,服务器性能主要有:新数据类型、数据仓库、分布式查询和更新、动态锁定、通过MICROSOFT代理服务器访问SQL Server、新的安全模型、XML支持等;管理性能增强有:数据转换服务工具(DTS)、管理控制台(企业管理器)、WEB助手向导等。SQL Server 2000所具有的将关系数据库管理系统(RDBMS)扩展为虚拟的对象数据库管理系统(ODBMS)的能力,使SQL Server2000成为当今应用于Intranet、Internet及其externet中最具综合性的数据库开发环境。SQL SERVER 的执行性能非常高,运行速度非常快,并非常容易使用,是一个非常棒的数据库。
第二章 系统需求分析
一、可行性分析
可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
(一)技术可行性:
本系统使用的是ASP.NET+SQL SERVER实现的。可以自由使用人事信息、部门信息;赋予用户权限,根据需要灵活使用功能模块。可以提供给各种人事信息。本系统通过使用现有的技术是能实现的。
(二)经济可行性:
计算机已成为单位管理工作中的重要设备,每个单位、每个部门都有不同程度的计算机应用。在硬件方面,无需单独购买计算机,只需利用目前已有的计算机即可,并附有打印机等设备,所以从硬件方面上完全可行。在软件上,由于人事管理工作不同于其它行业的管理工作,找软件开发单位单独开发软件所需费用太高,至少需要几千元,并且实用性不强,日后的维护等问题也不易解决。而由我们自己研究开发一套适合实际需要的管理软件,既可节资金,也便于日常维护。
人事管理信息系统并不需要特别高的配置,编写管理信息系统的软件在市面上也十分便宜。因此,我认为它的制作在经济上是可行的。
(三)操作可行性:
现代计算机飞速的发展使得本系统具有良好的操作界面。简单直接的操作界面,具有较强的人机对话能力,支持多种汉字输入方式,其适应性强,显示内容简单明了,使操作者不必具有较高的计算机专业知识,也不必进行专门培训,稍一接触就可以上手进行所有操作。
二、系统功能分析
人事管理系统是一种当前绝大多数单位都已经采用人事管理系统来管理单位人事的软件。这就使得各个单位都期望开发出一个适合与自己单位的人事管理系统,从而优化人事管理,这就是本人事管理系统需要完成的功能。本系统的主要功能有:
(一)部门信息管理
可以查看部门信息。通过用户登陆时进行权限过滤后,如果是管理员,则对部门信息进行增、查、删、改操作。如果是一般用户登陆,则只能有查看部门的相关信息,无增、删、改功能。
(二)员工信息管理
管理员可以通过此模块的功能对员工的工资信息进行录入、编辑、删除,方便工资的管理;一般用户只可以根据各种信息查询员工信息情况。
(三)考勤管理
管理员在考勤模块中可以对单位员工的考勤事宜进行查询、编辑、添加和删除,而单位的一般人员则只可以查询并且添加考勤情况。
(四)系统管理
管理员对普通用户有编辑、查看、删除和添加的功能,一般用户可以通过两种方法来获得访问系统的权限:一是通过自己注册,二是通过管理员添加。
三、 数据流程图
数据流图描绘了系统信息流和数据从输入移动到输出的过程中所经受的变换。系统的数据流图如下图1所示:
系统详细的数据流程图如下图2---图5所示:
(一)部门基本信息管理
(二)员工信息管理
(三)考勤信息管理
(四)系统用户管理
第三章 系统设计与数据库设计
一、业务流程
组织人事部负责单位劳动、人事等业务,负责单位本部有关劳动、人事管理制度的制订和执行,劳动合同、培训、考核、保险、福利、人力资源开发等工作,并协助单位法人做好劳动人事工作,了解系统上下劳动人事工作。
人事管理系统的业务流程图如下图6所示:
二、功能模块设计
单位人事管理系统是单位办公自动化系统的一个子系统,目的是为了提高单位人事管理工作的效率。通过这样的系统,可以做到单位人事信息的规范管理和快速的查询,从而减少管理方面的工作量,推动了单位的信息化建设的进程。系统的基本功能模块如图7所示:
图7
三、数据结构设计
(一)逻辑结构设计
1、基本表:[部门表]—表名:Tb_department
字段
数据类型
描述
D_ID(主键)
char(3)
用户ID号
D_Name
char(10)
部门名称
D_Tel
char(11)
部门电话
D_Address
char(100)
部门地址
D_Chief
char(10)
部门负责人
D_Belong
char(10)
所属部门
2、基本表:[员工表]—表名:Tb_employee
字段
数据类型
描述
E_ID(主键)
char(7)
员工ID
E_Name
nvarchar(50)
员工姓名
E_Sex
nvarchar(50)
性别
E_Birth
nvarchar(50)
出生日期
E_Tel
nvarchar(50)
联系电话
E_Address
nvarchar(255)
联系地址
E_Intro
nvarchar(255)
自我介绍
E_Picurl
nvarchar(50)
头像URL
3、基本表:[假别表]—表名:Tb_leaver_kind
字段
数据类型
描述
L_ID(主键)
char(6)
假别Id
L_Kind
char(12)
假别
L_IsSalary_Not
char(2)
是否带薪
4、基本表:[请假记录表]-表名:Tb_leaver_recordrest
字段
数据类型
描述
ID(主键)
int
请假Id号
E_Name
char(7)
请假人
L_Kind
char(12)
请假类别
L_Reason
nchar(200)
请假原因
L_Agreer
char(8)
批准人
L_StartTime
nvarchar(50)
开始时间
L_EndTime
nvarchar(50)
到期时间
5、基本表:[用户表]—表名:Tb_User_Login
字段
数据类型
描述
ID(主键)
char(6)
用户ID
userName
char(12)
用户名
userPass
char(16)
用户密码
userRole
char(10)
用户角色
(二)数据结构与程序的关系
数据结构是数据的各个元素之间的逻辑关系的一种表示。因为信息的结构总要影响最终的过程设计,所以在软件结构的设计中,数据结构与程序结构同等重要,而且它们可以在不同的抽象层次上表示。
四、概念模型 (E-R)
E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图表示。实体是用户工作环境中所涉及的事务,属性是对实体特征的描述。
(一)模型中的实体相当于实体集、一个表,而不是单个实体或表中的一行。实体用矩形框表示,实体名称标注在矩形框内。用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型。
(二)属性是实体的性质。用椭圆框表示,与实体之间用一条线相连,关键属性项加下划线。
(三)各子系统模块中主键相同的字段之间存在着相互关联的关系。在程序中实现对他们的完整性和一致性控制。
本系统的实体有:员工信息实体,工资实体,员工考勤实体,员工奖惩实体,部门实体和用户实体。实体描述E-R图如下:
员工考勤信息
部门
员工信息
事件
图8 系统实体关系图
员工信息
编号
姓名
头像
所属部门
联系地址
联系电话
性别
出生年月
图9 员工实体E-R图
部门
名称
联系地址
联系方式
负责人
所属部门
编号
图10 部门实体 E-R图
员工考勤
结束时间
考勤对象
开始时间:
备注
假别
负责人
请假理由
图11 考勤表实体E-R图
奖惩事由
日期
金额
员工奖惩
图12 奖惩实体E-R图
用户
密码
用户名
图13 用户实体E-R图
五、系统数据库DB_Mispersonal
用SQL Server新建一个名为DB_Mispersonal的数据库,存放位置在系统database子目录下。数据库的表情况如下图3.10所示:
图14 数据库DB_Mispersonal的表结构
如图14所示数据库DB_Mispersonal中包含了5个用户表,他们分别是:Tb_department, Tb_employee, Tb_leaver_kind, Tb_leaver_recordrest, Tb_User_Login,也就是部门信息表,员工信息表,假别表,员工考勤表和用户表。
第四章 系统模块实现
一、系统总框图
为了能很好得实现系统各个模块的功能,我们必须首先了解整个系统的整体框架,这样也对系统的信息处理顺序情况有个很好的把握。系统的总体框架如图1所示:
(图1 系统总框图)
二、模块实现
(一) 登陆界面实现
用户登录所需的用户名和密码在用户信息表中已经建立,用户信息由用户注册设置,超级管理员由系统投入使用者设置一个初始值。由于用户信息需要从数据库中读取,需要和数据库进行连接,所以登录界面使用default.aspx作为登陆界面.此登陆界面的实现使用了 ASP.NET 的 IF 判断语句实现的登陆界面如图所示:
用户登陆输入
重新输入
不正确
用户名称或密码错误,登陆失败!
判断用户名和密码
正确
进入系统
图2 IF判断语句
(图3 系统登陆界面)
实现登陆界面的主要代码如下:
if (TxtUser.Text.Trim() == "")
{
Response.Write("<script>alert('登录名不能为空')</script>");
return;
}
user userLogin = new user();
bool isok = false;
if (rb_admin.Checked)
{
string sql = "select * from Tb_User_Login where isnull(userName,'')='" + TxtUser.Text.Trim() + "' and isnull(userPass,'')='" + TxtPwd.Text.Trim() + "'and isnull(userRole,'')='" + rb_admin.Text+ "'";
SqlDataReader myReader = userLogin.Login(sql);
if (myReader.Read())
{
Session["Name"] = myReader["userName"].ToString().Trim();//保存用户名称
Session["Pass"] = myReader["userPass"].ToString().Trim();//保存用户密码
Session["Role"] = myReader["userRole"].ToString().Trim();//保存用户权限. isok = true;
}
myReader.Close();
}
else
{
string sql = "select * from Tb_User_Login where isnull(userName,'')='" + TxtUser.Text.Trim() + "' and isnull(userPass,'')='" + TxtPwd.Text.Trim() + "'and isnull(userRole,'')='" + rb_user.Text+ "'";
SqlDataReader myReader = userLogin.Login(sql);
if (myReader.Read())
{
Session["Name"] = myReader["userName"].ToString().Trim();//保存用户名称
Session["Pass"] = myReader["userPass"].ToString().Trim();//保存用户密码
Session["Role"] = myReader["userRole"].ToString().Trim();//保存用户权限. isok = true;
}
myReader.Close();
}
if (!isok)
{
lbMessage.Text = "用户名称或密码错误,登陆失败!";
return;
}
else
{
Response.Redirect("Index.aspx");
}
(二) 基本信息管理模块
该模块的作用是查看最基本的人事信息。通过用户登陆时进行权限过滤后,如果是管理员,则进行对单位人事管理后台进行管理,即是对单位个部门人员的信息进行增、查、删、改操作。如果是一般用户登陆,则只能有查看用户自己和单位其他人的相关信息,无增、删、改功能。该模块连接的数据库表如下图所示:
图4 员工基本信息表)
(图5 基本信息管理界面)
实现该模块功能的关键代码如下:
if ((string)Session["Name"] != "")
{
if ((string)Session["role"] == "管理员")
{
string id = (string)Session["E_ID"];
string sql = "update [Tb_employee] set E_Name='"
+ TxtName.Text.Trim() + "',E_Sex='"
+ Sex.SelectedValue + "',E_Birth='"
+ TxtBirth.Text + "',E_Tel='"
+ TxtTel.Text.Trim() + "',E_Address='"
+ TxtAddress.Text.Trim() + "',D_Name='"
+Agreer.SelectedValue + "',E_Intro='"
+ TxtIntro.Text.Trim() + "',E_Picurl='"
+ picurl.SelectedValue + "'"+"where E_ID='"
+TxtID.Text.Trim()+ "'";
string connstr = ConfigurationManager.ConnectionStrings["Mispersonalconn"].ConnectionString;
SqlConnection Sqlconn = new SqlConnection(connstr);
Sqlconn.Open();
SqlCommand sc = new SqlCommand(sql, Sqlconn);
sc.ExecuteNonQuery();
lbMessage.Text = "您已成功更新1条记录!";
Sqlconn.Close();
}
else
{
Response.Write("<script>alert('只有管理员才可以进行此操作!')</script>");
}
}
else
{
Response.Redirect("Default.aspx"); ;
}
(三)部门信息管理模块
管理员可以通过此模块的功能对单位的部门信息进行录入、编辑、删除;一般用户只可以根据各种信息查询单位部门情况。该模块连接的数据库表如下图所示:
(图6 部门表)
(图7 部门管理界面)
1.添加部门:管理员将单位的部门信息录入数据库,以便可以实现部门信息的添加和查询,其主要的实现代码如下。
if ((string)Session["Name"] != "")
{
//判断是否为管理员
if ((string)Session["role"] == "管理员")
{
if (tb_id.Text.Trim() == "")
{
Response.Write("<script>alert('部门编号不能为空')</script>");
return;
}
if (tb_name.Text.Trim() == "")
{
Response.Write("<script>alert('部门名称不能为空')</script>");
return;
}
if (tb_tel.Text.Trim() == "")
{
Response.Write("<script>alert('联系电话不能为空')</script>");
return;
}
if (tb_address.Text.Trim() == "")
{
Response.Write("<script>alert('联系地址不能为空')</script>");
return;
}
if (tb_chief.Text.Trim() == "")
{
Response.Write("<script>alert('负责人不能为空')</script>");
return;
}
if (tb_belong.Text.Trim() == "")
{
Response.Write("<script>alert('所属部门不能为空')</script>");
return;
}
department Add_depart = new department();
//异常
展开阅读全文