1、 By 学号 24080100124毕业设计题 目:基于 WEB 的企业人事管理系统的设计与开发姓 名: 江 慧 系 别: 机 电 系 班 级: N 计算机 08-1F 专 业: 计算机科学与技术 指导老师: 黄 向 目录【内容摘要】【关键词】1 绪论2 企业人事管理系统介绍3 系统总体设计4 数据库设计5 系统的主要模块的功能介绍6 系统调研基于 WEB 企业人事管理系统的设计与开发摘要由于计算机技术的飞速发展,数据库技术作为数据管理的一个有效的手段,在各行各业中得到越来越广泛的应用。因此,本文围绕一个“企业人事管理系统”程序的设计和应用系统的开发课题为背景,详细介绍了以 ASP.NET 和
2、 SQL SERVER 为语言编写管理信息系统的过程。该程序通过 ASP.NET 和 ADO.NET 数据对象来实现 ASP.NET 前台与后台SQL SERVER 数据库的连接,并具有典型的数据库应用系统扥特征,完成了系统设计、系统分析和测试。管理系统的开发不仅是一个应用程序编写的过程,更重要的是在系统分析和设计阶段By 所做的工作。该程序在设计过程中严格遵循软件工程学的方法,用分阶段的生命周期计划严格管理,并主要讲述了程序的总体设计、详细设计阶段,对程序进行需求迭代,不断修正和改进,利用 SQL SERVER 的强大数据库功能,直到形成一个完善的系统。优美、秀丽的界面,方便实用的查询与维护
3、功能共同构成了“企业人事管理系统” 。关键词:人事管理 第一章 绪论随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业的人事管理势在必行。对于大中型企业来说,利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件;计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。不同的企业具有不同的人事管理制度,这就决定了不同的企业需要不同的人事管理系统。国外研究现状:国外专家学者对人
4、事管理系统的研究起步比较早,发达国家的企业非常注重自身人事管理系统的开发。特别是一些跨国公司,更不惜花费大量的人力和物力来开发相应的人事管理系统,他们通过建立一个多信息数据流和业务流的开发性系统实现真正意义上的人事管理目标,挑选和留住最佳人才,同时不断提高这些人才的工作效益。发展趋势:目前,我国企业对于人事管理系统的应用基本上还处于初级阶段,主要表现在应用范围比较窄、水平比较差和效果不理想等方面。虽然目前存在这些问题,但很多企业还是根据自身的条件和需求,开始实施应用人事管理系统,以加强和深化人事管理工作。所以说,采用人事管理系统能够为用户提供充足的信息和快捷的查询手段,而实施一套既有国际化管理
5、理念,又能够满足中国特殊的人事管理环境的管理信息系统,则是实现高效的人事管理的一种重要途径,能够使人事管理都能专注于人力资源的发展和规划,并大幅提升工作效率和水平。第二章 开发工具和关键技术2.1 开发工具开发工具:VS2010 和 SQL Server 企业管理器运行环境:1客户端:支持浏览器皆可2服务器:Windows Server 2000 及以上版本数 据 库:sqlserver20082.2 关键技术以及具体使用第三章 系统调研及可行性分析3.1 系统调研第四章 系统设计By 1.1 系统目标设计通过一个企业人事管理系统,使企业的人事管理工作系统化、规范化、自动化,从而达到提高企业人
6、事管理效率的目的。1.2 开发设计思想本系统的开发设计思想:1、 尽量采用企业现 有软硬件环境及先进的管理系统开发方案,从而达到充分利用公司现有资源,提高系统开发水平和应用效果的目的:2、系统应符合企业人事管理的规定,满足公司日常员工管理的工作需要,并达到操作过程中的直观、方便、 实用、安全等要求;3、系统采用模块化程序设计方法,即便于系统功能的各种组合修改,又便于未参与开发的技术维护人员补充、维护;4、系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。1.3 开发和运行环境选择开发工具:Visual FoxPro6.0运行环境:Windows 9x、Windo
7、ws NT 或 Windows 2000。1.4 系统功能分析、密码设 置:每个操作员均有自己的密码,可以防止非本系统人员进入本系统;每个人的权限不一致,故可以防止越权操作。、权限设 置:设置每个人的权限,使个人有个人的操作范围,不 能超出自己的范围操作。一般只有系统管理员可以进行权限设置。 、初始化:将计算机中保留的上一次操作的结果清除,调用基本数据以备重新 查询、更新、统计、输 出等更多的执行。、档案更新:为了存放职工人事档案的全部数据,本系统将每一 名职工的档案分为人事卡片、家庭成员和社会关系分别存放。档案 更新包括对各种表的记录修改、删除、添加等操作。、档案查询 :可以按姓名、部门或任
8、意条件查询个人和一部分人 的情况。、档案统计 :包括统计文化程度、技术职务、政治面貌、年龄、 工资等。、档案输 出:输出个人档案、全体档案、人事卡片、单位名 册、团员名册到屏幕或打印机上。、其他操作:包括修改密码、设置权限等。、退出:可以存盘退出或直接退出。By 1.5系统功能模块设计在系统功能分析的基础上,考虑 Visual FoxPro6.0 程序编制点,得到如图 1-1 所示的系统功能模块图。 欢迎界面输入密码 修改密码主界面初 档 档 档 档 其 退始 案 案 案 案 他化 查 更 统 输 操询 新 计 出 作 出档案统计统 统 统 统 统 统计 计 计 计 计 计 年 文 技 政 民
9、 工龄 化 术 治 族 资程 职 面 婚 度 务 貌 姻 档案输出个 全 职 打 打 打人 体 工 印 印 印档 档 基 人 单 团案 案 本 事 位 员输 输 信 卡 名 名出 出 息 片 册 册其他操作By 权 修 页 打 打 关限 改 面 印 于设 密 设 设 本置 码 置 置 印 系统保存退出退出直接退出图 1-1 系统功能模块1.6 人事管理软件和企业中其他系统的关系1. 与培训管理系统的接口如果一个企业同时具有这两个系统,这两个系统之间应该现如图 1-2 所示的数据交流和借口。人事管理 员工岗位信息、人事 调动 培训管理系统软件 系统软件学员出勤情况、学 员成绩、 员 工培训图 1
10、-2 和培训管理系统的数据接口2. 与全企业信息管理系统的接口企业人事管理系统是全企业信息管理系统的一个有机组成部分。在可能的情况下,人事管理系统模块可以作为全企业管理系统的一个模块,可以直接被调用。第五章 数据库设计数据库应用系统的开发过程中,数据库的结构设计是一个非常重要的环节。数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生重要影响,好的数据库结构设计会减小数据库的存储量、提高数据库的完整性和一致性,使系统具有较快的响应速度,简化基于此数据库的应用程序的实现。在数据库系统开始设计的时候,应该尽量考虑全面,尤其应该仔细考虑用户的各种需求,避免浪费不必要的人力和物力。2.1 数据
11、库需求分析By 数据库需求分析是数据库结构设计的第一个阶段,也是非常重要的一个环节。在这个阶段主要收集基本数据、数据结构以及数据处理的流程,组 成一份详细的数据字典,为以后进一步设计打好基础。在仔细调查企业员工人事管理过程的基础上,我们得到本系统处理的数据流程,如图 2-1 所示。 查询要求查询结果系统维护 用户设置 企业人事 统计要求 一般用户人员 管理系统 统计结果 表单维护 图 2-1 数据流程图针对本实例,通过对企业员工人事管理的内容和数据流程分析,设计的数据项和数据结构如下:1、人事卡片(员工卡号、所属部门、姓名、性别、现任职务、出生年月、民族、籍贯、政治面貌、职称、文化程度、健康状
12、况、家庭出身、本人成分、婚姻状况、参加工作时间、 进单位时间、工资、各种补贴、家庭住址、年龄、 备注、部门编号)2、家庭成员(员工卡号、部门、姓名、 成员姓名、 与本人联系、出生年月、婚姻状况、文化程度、政治面貌、工作单位、职务工种、工 资、经济来源)3、社会关系 (员工卡号、部门、姓名、关系姓名、与本人联系、政治面貌、工作单位、 职务 工种、 备注)4、用户密码校验表(用户名、用户密码、 权限等级)有了上面的数据结构、数据项和数据流程、就能进行下面的数据库设计。2.2 数据库概念结构设计这一设计阶段是在需求分析的基础上,设计出能够满足用户的各种实体,以及它们之间的关系,为后面的逻辑结构设计打
13、下基础。本实例根据上面的设计规划出的实体有:人事卡片实体、家庭成员实体、社会关系实体。实体和实体之间的关系 E-R 图如图 2-2 所示。 员工卡号 所属部门 姓名 年龄 备注人事卡 拥 有 社会关系By 包 含员 部 性 职 备工 务卡 门 名 工 注家庭成员 种员工卡号 部 门 经济来源 图 2-2 各实体之间关系2.3 数据库逻辑结构设计需要将上面的数据库概念结构转化为 Visual FoxPro6.0 数据系统所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。企业人事管理系统数据库中各个表格的设计结果如下面的几
14、个表格所示。每个表格表示在数据库中的一个表。表-1 为人事卡片表。表-1 人事卡片表列名 数据类型 可否为空 说明PER_ID CHARACTER(6) NOT NULL 员工号(主键)DEPT CHARACTER(20) NULL 所属部门NAME CHARACTER(8) NULL 员工姓名SEX CHARACTER(2) NULL 性别HEADSHIP CHARACTER(10) NULL 现任职务BIRTHDAY DATE NULL 出生年月RACIAL CHARACTER(4) NULL 民族NATIVEPLACE CHARACTER(20) NULL 籍贯POLITY CHARAC
15、TER(4) NULL 政治面貌PAR CHARACTER(8) NULL 职称EDUCATED CHARACTER(8) NULL 文化程度HEALTH CHARACTER(4) NULL 健康状况BACKGROUND CHARACTER(4) NULL 家庭出身STATUS CHARACTER(4) NULL 本人成分MARRIAGE CHARACTER(4) NULL 婚姻状况BEGTIME DATA NULL 开始工作时间COMTIME DATA NULL 进本单位时间SALARY NUMBERIC(6) NULL 工资By ALLOWANDE NUMBER(3) NULL 各种津贴A
16、DDRESS CHARACTER(20) NULL 家庭住址AGE CHARACTER(2) NULL 年龄REMARK CHARACTER(20) NULL 备注DEP_ID_ NUMBERIC(1) NULL 部门编号表 2-2 为家庭成员表格。表 2-2 家庭成员表格列 名 数据类型 可否为空 说 明PER-ID CHARACTER(6) NOT NULL 员工号(外部键) ,指向人事卡片中的 PER-IDDEPT CHARACTER(20) NULL 所属部门(外部键) ,指向人事卡片中的DEPTNAME CHARACTER(8) NULL 员工姓名 NAME-1 CHARACTER(
17、8) NULL 成员姓名RELATION CHARACTER(4) NULL 与本人关系BIRTHDAY DATA NULL 出生年月MARRIAGE CHARACTER(4) NULL 婚姻状况EDUCATED CHARACTER(4) NULL 文化程度POLITY CHARACTER(4) NULL 政治面貌FACTORY CHARACTER(20) NULL 工作单位TYPE CHARACTER(10) NULL 职务工种SALARY NUMERIC(6) NULL 工资POCKETBOOK CHARACTER(10) NULL 经济来源表 2-3 为社会关系情况表 表 2-3 社会关
18、系情况表列 名 数据类型 可否为空 说 明PER_ID CHARACTER(6) NOT NULL 员工号(外部键) ,指向人事卡片中的PER_IDDEPT CHARACTER(20) NULL 向所属部门(外部键) ,指向人事卡片中的DEPT.NAME CHARACTER(8) NULL 员工姓名NAME_2 CHARACTER(8) NULL 关系姓名RELATION CHARACTER(4) NULL 与本人联系POLITY CHARACTER(4) NULL 政治面貌FACTORY CHARACTER(20) NULL 工作单位TYPE CHARACTER(10) NULL 职务工种R
19、EMARK CHARACTER(20) NULL 备注第六章 编译By 参考书目1 徐卓群 张乃孝等.数据结构.北京:高等教育出版社,2 王利数据库基础与应用北京:中央广播电视大学出版社出版,3 陈景艳管理信息系 统北京:中国铁道出版社, 附:部分代码set multilocks onset multilocks on语句将设置可以进行多个纪录锁定的配置=cursorsetprop(buffering,3)do casecase append1=1thisform.onoff=1append blankcase append1=2thisform.onoff=2case append1=3th
20、isform.onoff=3thisform.txtper-id.setfocus()endcaseyn=6, 则进入 if 语句,执行 tablerevte(.f.),配合新缓冲区进行对应的记录还原操作。thisform.release 将主表单释放,返回上一层表单。若在消息窗口中选择“否” ,则不进行记录的还原操作,但同样释放主表单。 “保存删除”按钮 中的代码:result=tableupdate(.f.)if result=.t.do casecase thisform.onoff=1?chr(7)=messagebox(“增加新记录成功!” ,48。“信息窗口” )case this
21、form.onoff=2deletepackif!empty(filter()By set filter toendif ?chr(7)=messagebox(“增加新记录成功!”,48。 “信息窗口” )thisform.refreshcase thisform.onoff=3?chr(7)=messagebox(“修改成功!”。48。 “信息窗口 ”)mand2.enabled=.f.将控件“Command2”(“Caption”属性为“ 查询”) 置为“ 不可用”mand3.enabled=.f.将控件“Command2”(“Caption”属性为“清除 查询条件”) 置为不可用mand
22、4.enabled=.f.将控件“command4”(“Caption”属性为“显 示查询条件”) 置为不可用thisform.pageframe1.page1.fy1.enabled=.f.将该表单的“pageframe1” 控件中“page1” 页上的“Fy1” 控件置为不可用在控件“command1”的( “Caption”属性为“输入查询条件”)do form polity打开表单“polity”在控件“Command7”(“Caption”属性为“ 退出” )的“Click” 事件中添加代码如下:thisiform.releaseif I=0thisform.label1.fontsize=22thisform.label2.fontsize=24thisform.label1.forecolor=16711935thisform.label2 forecolor.=65535I=1j=j+1elsethisform.label1.fontsize=24thisform.label2.fontsize=22thisform.label2. forecolor =16711935thisform.label1. forecolor =65535