1、。数据库课程设计报告题 目:人 事 管 理 系 统 学生姓名: 夏翠玉 学 号: 200817010102 专业班级: 计科08101班 同组姓名: 谷泽田 王国策 周梁 指导教师: 陈潇潇 设计时间: 2010.8.30-2010.9.5 指导老师意见:评定成绩: 签名: 日期: 目 录前言21 系统概述21.1现状描述21.2系统目标32 系统分析42.1系统需求42.1.1系统的可行性研究42.1.2营运可行性52.1.3技术可行性52.1.4经济可行性52.2数据流程分析62.3业务分析62.3.1业务流程描述63 系统设计73.1模块结构设计73.2功能设计73.2.1系统功能模块详
2、细描述83.2.2系统功能模块图83.4数据库设计93.4.1数据库建表代码93.4.2数据库表123.4.2概念模型设计143.4.3局部E-R图153.4.4总体E-R图174 系统实现184.1详细设计实现184.2系统测试24收获和体会27参考文献28前言随着计算机技术的飞速发展,计算机已深入到各个领域,并且形成了功能强大、覆盖全球的信息传输网络。各个领域都向系统化、规范化、自动化的方向发展,使得工作效率、工作成绩和生活水平都日益提高。人事管理是很多厂矿、公司、个体事业单位所须的,人事信息管理系统包括对人事信息的统计、查询、更新、打印输出等,如果靠人,工作量将很大,若公司人数有几万甚至
3、更多,人工统计将变得不可想象,仅一些简单的操作便可及时、准确地通过计算机获得需要的信息。计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。不同的企业具有不同的人事管理制度,这就决定了不同的企业需要不同的人事管理系统。 经过分析,我们使用SQL Server 2005 和C#开发工具。系统能够提供对人事信息输入、查询、编辑以及工资设定、查询、修改、算出工资发放各项合计数据;可自主设定条件从而达到对工
4、资数据的多角度查询功能;方便导入、导出数据及输出报表。财务部门人员以管理员身份登录,对本系统的可登录人员进行管理;实现了财务部门对本单位工资发放系统的集中管理,保证了系统的安全性。1 系统概述1.1现状描述21世纪以计算机为主体的高新技术群体已经将触角深入到国家经济的方方面面。在市场经济的大环境下,越来越多的人士逐渐认识到计算机技术进行各类管理,交流的便捷。尤为突出的是各个中小企业,教育机构等的人事管理在计算机上的实现。然而如何利用先进的管理手段,提高人事的管理水平,是每一个机构所面临的重要课题。面临的问题有:人事管理广泛,管理内容复杂,平时需要耗费大量的人力和物力。为了解决这些复杂的难题,就
5、必须有一套科学,高效,严密,实用的人事管理系统。实现此目标的主要途径就是采用现代计算机管理系统来进行管理,提供规范,统一的服务,它在管理系统中的应用不仅可以简化,规范各机构的日常操作,而且可以使企业人事管理更加方便,简单,快捷,清晰,从而减轻工作人员的劳动强度,减少企业的财政消耗。计算机管理系统的应用是各个企业迈向现代化企业的标志,必将成为各个企业实现现代化管理的不可缺少的手段。1.2系统目标人事管理系统可以应用于支持企业完成人事管理工作,有如下三个方面的目标:1.支持企业实现规范化管理;2.支持企业高效率完成人事管理的日常业务,包括新部门的增加及员工加入时人事档案的建立,员工职务变动、辞退、
6、退休的记录及员工信息的查询和修改等;3.支持企业进行人事管理及相关方面的科学决策并在系统开发总任务的基础上进行该系统的方案设计论证,需要实现以下功能:1)部门信息:a 建立部门的基本信息表,包括:部门编号、部门名称、联系电话、联系地址、部门负责人等。b 部门信息的增加,删除,修改。c 部门系的记录和管理等。2)员工信息a建立员工基本信息表,包括:员工号、姓名、性别、家庭地址、联系电话、当前状态等;b.员工人事变动的记录和管理;c.员工信息的查询和修改。在实现系统基本功能的同时,还要求系统能够录入人事的基本资料,在操作上能够完成诸如添加、删除、修改、按各种条件进行查询、新用户的设置及密码修改等方
7、面的工作,基本满足人事日常业务的需要。人事管理信息系统主要包含员工基本信息,工作情况,学历,职位情况等各方面信息,内容比较简单。同时还综合了其他系统的功能,总结归纳出所需现有的功能。主要是为人事信息进行服务,对员工职位的变动、员工资料的查询,统计修改等功能。总体上说具有编辑、查询、员工管理等功能。设计的指导思想是一切为用户着想,界面美观大方,操作尽量简单明了,而且作为一个使用的应用程序要有良好的容错性,在用户出现错误操作时能尽量及时地给出警告,以便用户及时改正,使其支持企业实现规范化的管理;支持企业高效率地完成劳动人事管理的日常业务;支持企业进行劳动人事管理及其相关方面的科学决策。人事管理系统
8、是现代企业管理工作不可缺少的一部分,是适应现代企业制度需求、推动企业劳动人事管理走向科学化、规范化的必要条件。人事管理系统在现实生活中有很强的实用性,只要设计出一个合理、实用的人事系统,可根据不同的单位的具体使用情况稍加修改,就可以把它应用到实际管理工作中。 2 系统分析2.1系统需求2.1.1系统的可行性研究可行性分析是在用户的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,
9、对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是在对系统目标和环境精心分析的基础上,从技术可行性、经济可行性和营运可行性三个方面对本系统进行可行性研究。2.1.2营运可行性 由于本系统知识面向机关和事业单位内人事信息管理人员和在职人员开发的信息管理系统,尽管这些人员可能没有使用过类似的系统,但是以Windows的友好界面和本系统良好的安全性设置,可以是人事信息管理员在专业人员的指导帮助下迅速掌握系统的操作方法。同时,用户也可以根据我们编写的详细的“用户操作说明书”,来学习正确的操作本系统。2.1.3技术可行性开发的软件可行性从目前流行的数据库开发管理软件来看,对于有关数据库的信息管
10、理系统,用基于visual basic6.0的构架开发B/S结构,无疑是实际应用中最适合的一种解决方案。 开发的硬件可行性本系统对计算机的硬件环境有一定的要求,对计算机的操作系统、内存、主频、外设等都有最低要求,如果低于这个要求将影响到本系统的正常运行。2.1.4经济可行性 机关和事业单位的人事信息管理目前还完全以传统的人工管理方式进行管理,耗时多,效率低下并且极容易出现错误。由于认为失误而造成有形和无形的经济损失时间层出不穷,我们也无法估算出所造成损失的总额。而利用计算机来实现人事管理以成为适应当今人事管理的方式。开发一套能满足人事信息管理的软件是十分必要的,实现人事管理的自动化,在减少由于
11、认为失误而造成损失的同时,也可以是认识信息管理部门减少许多费用支出,如实现自动化管理后可以精简人员,减少工资支出等。由上述三方面的分析可以看出,本系统的开发时机已经成熟,从多种角度考虑开发此系统都是可行的,并且也是十分必要的。2.2数据流程分析数据流程分析是用以描述系统的逻辑模型,可以综合地反映出信息在系统中的使用、加工处理、传递、存储的整体情况。数据流程分析就是将系统结构化进行分析,它抽象地描述了系统数据处理的情况,比较概括的表达各个处理的详细内容,因此还要对数据流程中出现的数据流和处理等做进一步的补充说明,这就是数据字典和变换逻辑说明。 本人事管理系统,的数据流程大致可用如下数据流程图表示
12、: 登录管理员员工管理部门管理档案管理工资管理会计员人事主管假条信息系统数据流程图2.3业务分析2.3.1业务流程描述该系统包括管理员对部门、员工以及相关考勤等信息的操作,首先,管理人员登陆进入系统,选择要进行的操作,包括对部门信息的插入、更新、修改、删除、查询,以及对员工信息进行增删改查,进而对奖罚、工资、考评等信息进行增删改查,然后实现对部门员工部分信息的统计及修改,操作员亦可对自己的信息进行操作,管理员对系统的操作都将被记录。3 系统设计3.1模块结构设计 人事资源管理系统是一个典型的数据库应用程序,由启动窗体、登录模块、系统主界面、系统管理模块、信息设置模块、人事管理模块、考勤管理模块
13、等组成,具体的功能模块如下:1、 系统管理模块该模块的主要功能是单位信息、管理员设置、更改密码、重新登录。2、 信息设置模块该模块主要功能是对部门信息、员工信息、用户信息、工种类型、职称类型、文化程度、政治面貌、民族类型等进行设置。3、 人事管理人事管理模块主要功能是新员工登记、应聘登记、员工调动、员工离职、合同管理、应聘信息浏览、员工信息浏览。4、 考勤管理考勤管理模块主要是:设置员工的考勤信息、生成生成报表、考勤档案浏览等。3.2功能设计系统主要功能分为以下六个模块:人员管理、部门设置、职务设置、员工考勤管理、工资管理、系统管理。经过分工合作,我所负责实现的是部门管理及其他相关部门,具体功
14、能描述如下。3.2.1系统功能模块详细描述3.2.2.1部门管理 部门新增:通过数据库的链接实现新增部门的操作。 部门更新:对部门信息的增删查改后部门信息的更新实现。部门删除:对部门信息模块的删除操作的实现。部门属性设置:设置部门基本属性,如:联系电话、联系地址、部门编号、部门名称、部门负责人等等。通过部门的管理,将员工信息链接在相应所属部门信息中,实现其人事管理的全面性。3.2.2.2系统管理对系统、管理员等一些操作,包括基础信息设置、系统管理、操作日志管理、操作员管理、备份恢复数据、初始化数据库、。基础信息设置:对部门、职位、职称、奖惩规则和权限组的设置管理,及其各项目的增删查改。系统管理
15、:对系统本身的一种设置。操作日志管理:记录管理员对数据的操作信息。操作员管理:管理员基本信息的管理,及其增删改的功能。备份恢复数据:可对员工资料数据进行备份,并在必要的时候进行还原。初始化数据库:对整个数据库资料初始化的操作。3.2.2系统功能模块图添加部门信息部门信息管理查询部门信息部门信息报表添加员工信息员工信息管理查询员工信息人事资源管理系统员工信息报表添加用户信息用户信息管理查询用户信息用户信息报表考勤规则考勤管理假别管理请假记录3.4数据库设计3.4.1数据库建表代码1.Tb_attendece_result(考勤结果)表if exists (select * from dbo.sy
16、sobjects where id = object_id(Ndbo.Tb_attendece_result) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.Tb_attendece_resultGOCREATE TABLE dbo.Tb_attendece_result (A_ID int IDENTITY (1001, 1) NOT NULL ,E_ID char (7) COLLATE Chinese_PRC_CI_AS NOT NULL ,A_WorkTime int NULL ,A_Onwork1 datetime N
17、ULL ,A_Onwork2 datetime NULL ,A_Offwork1 datetime NULL ,A_Offwork2 datetime NULL ) ON PRIMARYGO2.Tb-attendece-rule(考勤规则)表if exists (select * from dbo.sysobjects where id = object_id(Ndbo.Tb_attendece_rule) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.Tb_attendece_ruleGOCREATE TABLE dbo.Tb
18、_attendece_rule (Onwork_Ahead char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,Onwork_Normal char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,Offwork_Delay char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,Offwork_Normal char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON PRIMARYGO3.Tb-department(部门管理)表CREATE T
19、ABLE dbo.Tb_department (D_ID char (3) COLLATE Chinese_PRC_CI_AS NOT NULL ,D_Name char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,D_Tel char (11) COLLATE Chinese_PRC_CI_AS NOT NULL ,D_Address char (100) COLLATE Chinese_PRC_CI_AS NULL ,D_Chief char (10) COLLATE Chinese_PRC_CI_AS NULL ,D_Belong char (10)
20、 COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGO4. Tb-employee(员工管理)表if exists (select * from dbo.sysobjects where id = object_id(Ndbo.Tb_employee) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.Tb_employeeGOCREATE TABLE dbo.Tb_employee (E_ID char (7) COLLATE Chinese_PRC_CI_AS NOT NULL ,E_Nam
21、e nvarchar (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,E_Sex nvarchar (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,E_Birth nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,E_Tel nvarchar (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,E_Address nvarchar (255) COLLATE Chinese_PRC_CI_AS NOT NULL ,E_Intro nvarchar (255
22、) COLLATE Chinese_PRC_CI_AS NULL ,E_Picurl nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,D_Name nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGO5.Tb-job-kind(工种管理)表if exists (select * from dbo.sysobjects where id = object_id(Ndbo.Tb_job_kind) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop
23、table dbo.Tb_job_kindGOCREATE TABLE dbo.Tb_job_kind (J_ID char (4) COLLATE Chinese_PRC_CI_AS NOT NULL ,J_Name char (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,J_Property char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,J_Onwork1 char (10) COLLATE Chinese_PRC_CI_AS NULL ,J_Onwork2 char (10) COLLATE Chinese
24、_PRC_CI_AS NULL ,J_Offwork1 char (10) COLLATE Chinese_PRC_CI_AS NULL ,J_Offwork2 char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGO6.Tb-lever-kind(假别管理)表CREATE TABLE dbo.Tb_leaver_kind (L_ID char (6) COLLATE Chinese_PRC_CI_AS NOT NULL ,L_Kind char (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,L_IsSa
25、lary_Not char (2) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON PRIMARYGO7.Tb-lever-recordrest(请假记录)表if exists (select * from dbo.sysobjects where id = object_id(Ndbo.Tb_leaver_recordrest) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.Tb_leaver_recordrestGOCREATE TABLE dbo.Tb_leaver_recordrest (
26、ID int IDENTITY (1, 1) NOT NULL ,E_Name char (7) COLLATE Chinese_PRC_CI_AS NOT NULL ,L_Kind char (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,L_Reason nchar (200) COLLATE Chinese_PRC_CI_AS NULL ,L_Agreer char (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,L_StartTime nvarchar (50) COLLATE Chinese_PRC_CI_AS NOT
27、 NULL ,L_EndTime nvarchar (50) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON PRIMARYGO8.Tb-order-job(登记管理)表CREATE TABLE dbo.Tb_Order_Job (E_ID char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,Order_Time datetime NOT NULL ,J_ID char (4) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON PRIMARYGO9. Tb-user-login(用户管理)表C
28、REATE TABLE dbo.Tb_User_Login (ID char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,userName char (20) COLLATE Chinese_PRC_CI_AS NULL ,userPass char (16) COLLATE Chinese_PRC_CI_AS NULL ,userRole char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGO3.4.2数据库表表1 Tb_attendece_result(考勤结果)列名数据类型是否为空备注A_IDi
29、nt否考勤编号E_IDchar(7)否员工编号A_WorkTimeint是总工时A_Onwork1datetime是 上班时间一A_Onwork2datetime是上班时间二A_Offwork1datetime是下班时间一A_Offwork2datetime是下班时间二表2 Tb-attendece-rule(考勤规则)列名数值型号是否为空备注Onwork_Aheadchar(10)否上班时间一Onwork_Normalchar(10)否下班时间一Offwork_Delaychar(10)否上班时间二Offwork_Normalchar(10)否下班时间二表3 Tb-department(部门
30、管理)列名数值型号是否为空备注D_IDchar(3)否部门编号D_Namechar(10)否部门名称D_Telchar(11)否联系电话D_Addresschar(100)是联系地址D_Chiefchar(10)是负责人D_Belongchar(10)是所属部门表4 Tb-employee(员工管理)列名数值型号是否为空备注E_IDchar(7)否员工编号E_Namenvarchar(50)否员工姓名E_Sexnvarchar(50)否员工性别E_Birthnvarchar(50)是出生年月E_Telnvarchar(50)否联系电话E_Addressnvarchar(255)否联系地址E_I
31、ntronvarchar(255)是个人简介E_Picurlnvarchar(50)是 员工图像D_Namenvarchar(50)是部门名称表5 Tb-job-kind(工种管理)列名数值型号是否为空备注J_IDchar(4)否班种编号J_Namechar(12)否班种名称J_Propertychar(10)否班种性质J_Onwork1char(10)是上班时间一J_Onwork2char(10)是上班时间二J_Offwork1char(10)是下班时间一J_Offwork2char(10)是下班时间二表6 Tb-lever-kind(假别管理)列名数值型号是否为空备注L_IDchar(6)
32、否类型编号L_Kindchar(12)否请假类型L_IsSalary_Notchar(2)否是否带薪表7 Tb-lever-recordrest(请假记录)列名数值型号是否为空备注IDint否编号E_Namechar(7)否员工姓名L_Kindchar(12)否请假类型L_Reasonnchar(200)是请假缘由L_Agreerchar(8)否是否同意L_StartTimenvarchar(50)否开始时间L_EndTimenvarchar(50)否结束时间表8 Tb-order-job(登记管理)列名数值型号是否为空备注E_IDchar(10)否员工编号Order_Timedatetime
33、否登记时间J_IDchar(4)否班种编号表9 Tb-user-login(用户管理)列名数值型号是否为空备注IDchar(10)否编号userNamechar(20)是用户姓名userPasschar(16)是用户密码userRolechar(10)是用户角色3.4.2概念模型设计概念性数据模型关心的是如何完整、正确地反映客观实际情况,并不关心在数据库中如何实现。这种数据模式能真实地反应用户要求的实际情况,是一种容易被人们理解的直观的数据库结构模式。同时也是一种相对稳定统一的数据模式,一般情况下很少变动。概念性数据在用户和设计者之间建立了桥梁,是设计数据库结构的基础。概念设计中自顶向下的实体
34、分析方法,即常用的实体联系模型(简称E-R模型),对具体数据进行抽象加工,将实体集合抽象成实体类型。用实体间联系反映现实世界事物间的内在联系。E-R模型是建立概念性数据模型的有力工具。3.4.3局部E-R图部门部门编号部门名称联系电话联系地址负责人所属部门图1 部门E-R图员工编号联系电话员工性别出生年月联系地址个人简介员工图像部门名称员工员工姓名图2 员工E-R图工种班种名称班种编号上班时间一上班时间二下班时间一下班时间二班种性质图3 工种E-R图假别请假类型类型编号是否带薪图4 假别E-R图用户用户编号用户姓名用户角色用户密码图5 用户E-R图3.4.4总体E-R图部门用户员工假别工种联系
35、地址联系电话编号名称负责人所属部门登录登录属于申请选择员工头像个人简介联系电话联系地址出生年月角色密码姓名编号编号部门名称性别姓名下班时间一是否带薪编号类型编号上班时间一名称班种性质上班时间二下班时间二4 系统实现4.1详细设计实现程序部分源代码1、Add_Depart(增加部门信息)using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using Syste
36、m.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class WebFiles_Department_Add_Depart : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void btn_add_Click(object sender, EventAr
37、gs e) if (tb_id.Text.Trim() = ) Response.Write(alert(部门编号不能为空); return; if (tb_name.Text.Trim() = ) Response.Write(alert(部门名称不能为空); return; if (tb_tel.Text.Trim() = ) Response.Write(alert(联系电话不能为空); return; if (tb_address.Text.Trim() = ) Response.Write(alert(联系地址不能为空); return; if (tb_chief.Text.Trim
38、() = ) Response.Write(alert(负责人不能为空); return; if (tb_belong.Text.Trim() = ) Response.Write(alert(所属部门不能为空); return; department Add_depart = new department(); Add_depart.Insert(tb_id.Text, tb_name.Text,tb_tel.Text, tb_address.Text,tb_chief.Text,tb_belong.Text); Response.Redirect(/WebFiles/Department/
39、List_Depart.aspx); 2、Display_Depart(更新部门信息)using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using
40、 System.Data.SqlClient;public partial class WebFiles_Department_View_Depart : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) string id = RequestD_ID; string name = RequestD_Name; SessionD_ID = id; SessionD_Name = name; Bond(); private void Bond() string id = (string)SessionD_ID; string sql = select * from Tb_department where D_ID= + id + ; string connstr = ConfigurationManager.ConnectionStringsMispersonalc