企业人事管理系统的设计与实现毕业设计.doc_第1页
企业人事管理系统的设计与实现毕业设计.doc_第2页
企业人事管理系统的设计与实现毕业设计.doc_第3页
企业人事管理系统的设计与实现毕业设计.doc_第4页
企业人事管理系统的设计与实现毕业设计.doc_第5页
免费预览已结束,剩余54页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕 业 设 计企业人事管理系统的设计与实现摘 要在改革深入和市场经济高速发展的今天,企业规模逐渐扩大,人员流动越加频繁,工作流程高度清晰,社会分工趋于精细,由此导致企业的人事信息变得更加庞大和复杂。因此,开发人事管理系统对任何企事业单位来说都极为重要。本系统基于C/S体系结构,开发环境使用Visual C+ 6.0和SQL Server 2000数据库管理系统,运用ADO技术实现对数据库的连接和操作,同时使用功能强大的微软基础类库MFC,使本应用程序执行代码更精简,执行速度更快。本系统在设置的三类用户权限:系统管理员、普通管理员和普通用户的基础上,构建了由系统用户管理、综合人事管理、考勤管理、考评管理和数据库管理这五个功能模块组成的企业人事管理系统,基本可以满足企业人事信息管理的需要。关键词:企业人事管理系统 Visual C+ SQL Server 2000 C/S 目 录1 前言12 选题背景12.1 课题的来源、目的、意义12.2 本课题在国内外发展概况22.3 课题的指导思想33 系统开发33.1 可行性分析33.2系统需求分析43.2.1 系统功能分析43.2.3 数据流分析53.2.4 数据字典73.3系统总体设计93.3.1系统总体结构设计93.3.2 系统数据库设计113.3.3 开发环境173.4 详细设计183.4.1 系统用户管理模块183.4.2 综合人事管理模块223.4.3考勤管理模块293.4.4 考评管理模块313.4.5 数据库管理模块323.4.6 界面设计343.5 系统维护353.5.1运行环境353.5.2系统维护364 系统应用364.1 系统功能简介364.2 系统运行与操作指南375 结束语37参 考 文 献39Abstract:40附 录41致 谢55仲恺农业工程学院毕业论文(设计)成绩评定表561 前言在改革深入和市场经济高速发展的今天,企业逐渐变得庞大起来;企业的人员流动越来越频繁,从而导致企业人事管理的信息量和信息类型越来越大;另外由于现代企业的工作流程越来越清晰,社会分工越来越精细,所以传统的人工处理方式已无法完成大量人员的信息分析和处理工作,它越来越不能适应现代企业人事管理的需要,甚至成为企业发展的制约因素。随着企事业单位信息化的不断深入,信息量的不断增多,要求有一种行之有效的方法来对这些海量信息进行高效、可靠、便捷的管理,以便企事业单位提高管理效率,节约管理成本,在一定程度上提高自身的经济效益。针对这种情况,企业人事管理系统应运而生,企事业单位依靠计算机的辅助管理,实现了对大量复杂的人事信息的高效、及时处理。企业人事管理系统满足了人们的工作需求,是任何企事业单位不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要。开发企业人事管理系统,提高人事管理工作效率,使管理科学化、系统化和规范化,意义重大。本企业人事管理系统主要解决由于企业人事信息量不断增加而难于管理的问题,目的是使企业在人事管理上做到数据的信息化、快速化。本系统分三类用户权限,系统管理员、普通管理员和普通用户。系统管理员系统默认只有一个(admin),且在后台数据库添加和编辑,它拥有对本系统的全部操作权限;普通管理员的操作权限由系统管理员控制,系统管理员在对普通管理员进行权限设定后,普通管理员才对系统拥有部分的操作权限;普通用户对系统只有浏览系统和查询信息的功能。在这三类用户权限的基础上,主体功能划分为五部分:系统用户管理、综合人事管理、考勤管理、考评管理和数据库管理。各个部分对应下面有不同的子功能。不同的用户类型实现对系统不同功能的操作,权限明确,功能相对专一。2 选题背景2.1 课题的来源、目的、意义计算机技术的飞速发展促使了各行各业信息化进程的推进,对基于数据库的信息管理系统(MIS)的需求量也不断增大。特别是在现代企业管理中,计算机的应用不断普及,涉及管理的各个环节,因此企业需要各种MIS的广泛应用, MIS改变了以往大量纸质资料存放和查找困难的状况,将人们从繁重的劳动中解放出来,同时也减少了人为错误的概率,将使信息处理专业化,并能提高信息的准确性和及时性。为与社会经济发展相适应,企业人事管理系统作为信息管理系统的一种,是现代企业管理工作中不可缺少的一部分,是适应现代企业制度要求,推动企业劳动人事管理走向科学化,规范化的必要条件。因为在改革深入和市场经济高速发展的今天,企业逐渐变得庞大起来;企业的人员流动越来越频繁,从而导致企业人事管理的信息量和信息类型越来越大;另外由于现代企业的工作流程越来越清晰,社会分工越来越精细,所以传统的人工处理方式无法完成大量人员的信息分析和处理工作,它越来越不能适应现代企业人事管理的需要。因此在这种情况下,企业人事管理系统应运而生,并且为现在各企业重视。2.2 本课题在国内外发展概况 作为国外管理信息系统(MIS)中优秀的ERP管理软件早在二十多年前就已经进入我国。到现在,我国建立MIS的企业接近50%。我国自己开发MIS也已有 十几年的历史了,至今仍是方兴未艾。1998年国内几十家财务软件公司,如金蝶、用友、浪潮国强、安易等发起了“向全面企业管理软件的进军”。客观的说,我国MIS的建立取得了一定的成绩,一批MIS正走向成熟,为我国企业的现代化发挥着应有的作用。传统的MIS应用平台主要采用C/S模式,随着Internet的普及应用,MIS应用平台将从C/S模式向B/S模式过度,但基于目前企业的结构和企业本身的安全性考虑,还是需要本企业封闭为一个局域网,所以在局域网应用领域C/S模式仍是占主导地位。从上世纪50年代至70年代,一些发达国家开始研究计算机技术在企业经营、管理、设计、制造等部门的应用,形成了一批分立的、单项应用系统。由于技术的限制,应用深度还有限,应用的宽度也是限于某个特定的领域。这个时期的应用更多地只能被称为计算机化,也就是用计算机代替人工处理数据等工作,而不是我们现在所说的信息化。80年代末,人们将生产活动中的销售、财务、成本、工程技术等主要环节与闭环MRP集成为一个系统,成为管理整个企业的一种综合性的制定计划的工具。它可使管理人员从复杂的事务中解脱出来,真正把精力放在提高管理水平上,去解决管理中的实质性问题。美国的Gartner Group公司在90年代初期提出“企业资源计划ERP”,它是一种新型的管理模式,而作为一种管理工具,它同时又是一套先进的计算机管理系统。此时,国外企业信息化趋于成熟,管理信息系统发展不断深入。其中优秀的ERP管理软件也进入了我国。到现在,我国建立MIS的企业接近50%。我国自己开发MIS也已有十几年的历史了,至今仍是方兴未艾。客观的说,我国MIS的建立取得了一定的成绩,一批国产MIS正走向成熟,为我国企业的现代化发挥着重要的作用。目前,我国企业人事管理正在不断发展,许多企业已经实现了人事信息的计算机管理,它可以协助企业各部门各单位科学、全面、高效地进行人事管理,具有检索迅速、查找方便、可靠性高、存储量大、保密性好、成本低等优点,而且能够提高企业人事资源管理的效率,大量节约企业的管理成本,提高企业的经济效益。但这些管理系统中有的是仅供某个部门使用,未能实现对整个企业信息的更高效、更可靠的管理,从而在一定程度上限制了企业自身的进步,阻碍了企业管理朝着科学化、规范化和信息化的发展,不利于我国企业同国际的接轨。同时,这些企业人事管理软件的开发大多是基于Delphi、VB、VFP等等,利用VC+开发的较少,而VC+进行数据库开发具有其突出的特点和优势。Visual C+是在C语言基础上发展起来的一种面向对象的可视化编程语言,是一个基于Windows操作系统的更为灵活、高集成的可视化集成开发工具。它可以使用功能强大的微软基础类库MFC,采用MFC编写的应用程序执行代码更少,执行速度更快,在不同平台上的移植也更容易。在MFC基础上配合Visual C+提供的AppWizard和ClassWizard工具可以使开发进程加快,效率提高。Visual C+还提供了多种数据库访问技术,具有简单性、可扩展性、访问速度快、数据源友好等特点,这些也是Visual C+开发数据库系统的优势所在。此外,由于Microsoft公司在操作系统市场上的垄断地位,用Visual C+开发出来的软件稳定性好、可移植性强,而且软件与硬件相互独立。2.3 课题的指导思想本论文阐述了基于Visual C+技术开发的企事业人事管理系统的架构与实现。1 综合各种人事管理系统的特点,各方面都从用户使用简单、方便的角度出发。2 从实际应用出发,以需求为根据,依照现有的企业结构设计,以增强实用性。3 系统充分考虑功能扩容性和技术升级性,适应当代信息技术高速发展的要求,以求得最佳效果。4 有机的结合计算机自动处理和人工处理。5 贯彻“实用、可靠、先进、高效、经济”的原则,以应用为向导,推进管理,按最优的方案进行设计实施。3 系统开发3.1 可行性分析1 经济可行性本系统使用SQL Server 2000数据库管理系统,前端开发环境采用Visual C+ 6.0,这两个软件价格低廉,容易购买。开发此系统并投入使用,成本低,经济效益高。因此,在经济上可行。 2 技术可行性本系统前台基于Visual C+ 6.0开发环境,后台数据库基于SQL Server 2000。Visual C+是一个功能强大的可视化软件开发工具,它由许多组件组成,包括编辑器、编译器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。Visual C+ 6.0源代码编辑器提供了自动语句完成功能,当编辑输入源程序时,它能自动显示当前对象的成员变量和成员函数,并指明函数的参数类型。它的程序调试器功能更强大,提供了诊断映射机制、无须重编译的调试、远程调试和实时调试等功能。Visual C+的联机帮助系统既能与集成开发环境有机的结合在一起,使得用户在编程时随机查询需要的内容,又能脱离集成开发环境而独立运行,并且用户还可以通过因特网获取实时的帮助信息和实例。Visual C+提供了多种数据库访问技术ODBC API、MFC ODBC、DAO、OLE DB、ADO等,它们各有自己的特点,但都提供了简单、灵活、访问速度快、可扩展性好的开发技术。OLE DB是VC开发数据库应用中的新技术,它基于COM接口。ADO技术是基于OLE DB的访问接口,它继承了OLE DB技术的优点,而且,ADO对OLE DB的接口作了封装,定义了ADO对象,使程序开发得到简化,ADO技术属于数据库访问的高层接口。SQL Server 2000是一个功能强大的数据库系统,是一个支持缩放、高性能的关系数据库管理系统。它完全基于服务器/客户机模式的特点使得许多公司和企业选择该产品作为新一代数据库管理系统。因此,从技术方面来说,开发此系统是可行的。3 操作可行性本系统界面简单大方,使用方便,操作简单,易于被用户接受。用户只需熟悉计算机操作,通过帮助文档对此系统的使用做简单地了解,即可方便使用,而且使用此系统可以减少大量的录入工作量,大大降低以前企业人事管理的烦琐程度。所以,从使用方面来说,此系统的开发是可行的。综上所述,本系统在经济上是合理的,在技术上是可行的,在操作上是方便的,具有较高的实用价值。3.2系统需求分析3.2.1 系统功能分析本企业人事管理系统分为系统用户管理,综合人事管理,考勤管理,考评管理和数据库管理等五个部分,主要实现对数据的添加、修改、删除,对员工信息的查询和考勤信息的统计等。系统需要三类操作权限:系统管理员admin,他拥有所有的操作权限;普通管理员和普通用户,其中,普通管理员由admin分配部分权限,可以添加、修改、删除等;普通用户只有浏览信息和查询信息的权限。权限层次图如下:图3.1 权限层次图本系统主要是对员工个人信息、考勤考评进行管理以及系统用户的管理,要求实现的功能如下:v 部门信息的管理:能够添加(同时还可以对其已有部门进行子部门的添加)、删除和修改部门信息。v 员工信息的管理:除了能够添加、删除、修改信息外,还应可以对员工的家庭情况、工作学习经历和培训情况进行设置和浏览;同时还需要有人事调动功能以实现员工在不同部门之间调动;系统的查询功能是必不可少的,则需要添加人事查询功能可以显示全部员工信息,可以根据部门名称、员工学历和员工姓名进行查询,并要求可以将查询出来的员工信息导出到Excel文档。v 日志管理:要求记录所有用户对本系统的操作情况以便系统维护和提高安全性。v 考勤管理:要求可以对员工进行考勤设置,加班、出差和请假等情况的添加和编辑;以及统计实现各个部门员工的月度考勤信息的汇总显示。v 考评管理:要求实现员工月度考评管理,根据时间和部门员工的选择,进行具体考评项目的设置,从而得到总体评价,供系统用户查看。v 数据库管理:要求实现对数据库的备份和恢复,以提高数据库的稳定性和安全性。v 系统功能:包括修改密码、退出系统、用户管理、权限设置。系统使用内置的登录用户,不允许修改用户名。3.2.3 数据流分析用户通过有效用户名和密码登录系统,系统调用用户表Users判断其用户身份,生成相应的操作权限;首先以系统管理员身份登录,添加部门信息,数据添加到部门信息表Departments中;只有部门添加了,才能进行系统员工的添加,员工信息添加到员工基本信息表Employees中;在部门有员工的基础上,对员工进行家庭成员信息、工作学习经历和培训经历的设置,数据分别对应后台数据库的Family表、Experience表和Train表;完成系统员工添加后,可进行人员调动、人事查询或员工考勤这些操作,这个几流程不分先后,互相独立。其中人员调动将员工从原部门调至另外一个部门,更新人员调动信息表;员工考勤操作是设置相关考勤信息,数据写入考勤表Checkin中;考勤设置完成后,即可统计考勤信息,以便系统用户查看;下面可以根据员工一个月的具体表现,对员工进行考评设置,设置员工考评信息首先要选择所在部门和考评月份,员工的考评数据添加进后台数据库Evaluation表;日志管理记录了用户对系统的所有操作,记录都保存在日志信息表Log中。系统数据流图如下所示: 图3.2 数据流图3.2.4 数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。一般说来,数据字典应该由对下列四类元素的定义组成:(1) 数据流(2) 数据流分量(3) 数据存储(4) 处理但是,对数据处理的定义用其他工具描述更方便,因此数据字典将主要由对数据的定义组成,这样做可以使数据字典的内容更单纯,形式更统一。除了数据定义之外,数据字典中还包括关于数据的一些其他信息。典型的情况是,在数据字典中记录数据的下列信息:一般信息,定义,使用特点,控制信息和分组信息。系统主要包括14张数据库表:员工基本信息表、部门信息表、员工家庭成员记录表、员工教育及工作经历记录表、员工培训记录表、人员调动信息表、员工考勤表、出差信息记录表、请假信息记录表、加班信息记录表、员工考评表、用户信息表、系统日志信息表和权限设置表。图3.3 数据字典3.3系统总体设计3.3.1系统总体结构设计企业人事管理系统实现了系统用户管理,综合人事管理,考勤管理,考评管理,数据库管理五大功能。系统总体框架图如下: 图3.4 系统功能模块图1 系统用户管理模块的主要功能包括:用户管理、修改密码、权限设置和退出系统。 用户管理此功能属系统管理员权限,主要有添加用户、密码复位和删除用户操作。系统管理员在这里添加普通管理员和普通用户,初始化密码都为888888;密码复位功能可以为忘记密码的用户还原初始密码。 修改密码系统合法用户以初始密码登录系统后,可修改各自的初始密码,以确保私有性和安全性,下次登录即使用新密码,且可随时更换。 权限设置此功能属系统管理员权限。系统管理员通过此功能实现操作权限的下放,将系统部分功能的操作管理权限指定给不同的普通管理员。权限可以下放,也可以收回。2 综合人事管理模块的主要功能包括:部门管理、员工管理、人员调动、人事查询和日志管理。 部门管理以树形结构的形式显示各个部门。在这里可以添加部门,也可以添加该部门的子部门,如部门信息添加错误可修改或删除。 员工管理主要包括员工的添加、修改和删除,员工添加后,还包括员工家庭成员、工作经历和培训经历的添加。添加员工时,首先要选择部门名称,即将要添加的员工的所属部门。员工初始添加时的状态有六种,分为:在职、兼职、试用、返聘、退休和离职。 人员调动此功能实现了员工在不同部门之间的调转。调转员工时,首先选定员工,然后选择一个新部门,且为该员工指定新任职务,完成员工调转,修改人员调动信息表,并更新员工基本信息表中该员工对应的部门信息。 人事查询为系统用户提供了查询员工基本信息的功能。此处设置了按部门、按学历和按姓名查询三种查询条件,可根据不同的部门、不同的学历和姓名来查询相应的员工信息,此处的查询条件为互斥的。同时可对该部门查询出来的所有员工信息导出Excel文档。另外,这里还有对系统所有部门进行人数统计的功能。 日志管理本系统是多用户应用程序,所以设置日志管理来记录系统日志,便于在系统被多用户错误操作的情况下能够查询到错误操作用户。本日志管理记录了所有系统用户对系统进行过的操作,包括登录信息,添加、编辑和删除记录信息等等。3 考勤管理模块的主要功能包括:上下班时间设置、考勤管理和考勤统计。 上下班时间设置可以设置员工的上下班时间,不同的季节时间设置不同。 考勤管理包括对员工的按日考勤和月度统计,还有员工的出差、加班和请假记录的设置,其中月度统计是根据员工的每日考勤来累计的。考勤员工时首先选择考勤日期,再选定某个部门的某位员工,按日考勤时所有考勤项的值(即天数)累计不能超过“1”,且每个考勤项目的值有“无”、“半天”和“一天”三种选择。 考勤统计根据员工每天的考勤情况,进行按月统计,统计出来的员工考勤情况可以导出到Excel文档显示。4 考评管理模块的主要功能是根据考勤情况对员工进行月度考评,可以作为奖金等的发放依据之一。5 数据库管理模块的主要功能是实现了对系统数据库的备份和恢复,可以选择不同的路径进行备份,方便用户备份不同的信息。6 界面的设计 使用动态链接库技术,美化界面,使界面友好、大方。3.3.2 系统数据库设计1)ER图本系统根据设计规划出的实体有:部门实体、员工实体、系统用户实体。各实体具体的描述ER图如下:图3.5 部门实体ER图 图3.6 员工实体ER图图3.7 系统用户实体ER图图3.8 总ER图2)企业人事管理系统的关系模型 部门信息(部门编号,部门名称,部门描述,上级部门) 员工信息(员工编号,姓名,性别,照片,出生日期, 籍贯,政治面貌,到岗日期,办公电话,民族,家庭地址手机号码,所在部门编号,职务,合同有效期,填表用户,填表日期,员工状态,工作证号,身份证号,档案所在地) 员工家庭成员信息(编号,员工编号,姓名,性别,年龄,与本人关系,工作单位) 教育工作经历信息(编号,开始日期,终止日期,单位名称,职务) 培训信息(编号,员工编号,培训方式,开始日期,结束日期,所学专业,培训单位,培训内容,培训费用,培训结果) 人员调动信息(编号,员工编号,原部门编号,新部门编号,职务,调动原因,调动日期) 加班信息(编号,员工编号,加班日期,加班时长) 出差信息(编号,员工编号,开始时间,结束时间,出差描述) 请假信息(编号,员工编号,开始时间,结束时间,请假原因) 系统日志信息(日志编号,事件发生日期,事件发生时间,事件类型,事件标题,事件内容,操作用户名) 用户信息(用户名,密码,用户类型) 权限信息表(用户名,人员调动权限,员工管理权限,考勤管理权限,考评管理权限)3)数据库表本系统主要使用了以下14张表表3.1 部门信息表(Departments)列值数据类型数据长度可否为空描述是否为主键Dep_Idint4NOT NULL部门编号是Dep_Namevarchar40NULL部门名称否Describevarchar40NULL部门职能描述否UpperIdint4NOT NULL上级部门编号否表3.2员工信息表(Employees)列值数据类型数据长度可否为空描述是否为主键Emp_Idint4NOT NULL部门编号是Emp_Namevarchar50NOT NULL姓名否Sexchar2NULL性别否Nationalityvarchar40NULL民族否Birthvarchar20NULL生日否Political_Partyvarchar40NULL政治面貌否Marital_Conditionvarchar20NULL婚姻状况否Culture_Levelvarchar40NULL文化程度否Family_Placevarchar60NULL籍贯否Id_Cardvarchar20NULL身份证号否BadgeIDvarchar40NULL工作证号否Office_phonevarchar30NULL办公电话否Mobilevarchar30NULL手机号否Files_Keep_Orgvarchar100NULL档案存放地否Hukouvarchar100NULL户口所在地否HireDatevarchar20NULL到岗日期否Dep_IdInt4NOT NULL所在部门编号否Positionvarchar40NULL工作岗位否Titlevarchar20NULL职务否Statetinyint1NOT NULL员工状态否Contract_Durationvarchar20NULL合同有效期否Memovarchar200NULL备注信息否Fillin_Personvarchar30NOT NULL填表用户否Fillin_Timevarchar20NOT NULL填表日期否表3.3员工家庭成员信息表(Family)列值数据类型数据长度可否为空描述是否为主键Idtinyint1NOT NULL编号是Emp_Idint4NOT NULL员工编号否Namevarchar50NOT NULL姓名否Sexchar2NULL性别否AgeTinyint1NULL年龄否Relationshipvarchar20NULL与本人关系否WorkingOrgvarchar40NULL工作单位否表3.4 教育和工作经历信息表(Experience)列值数据类型数据长度可否为空描述是否为主键Idtinyint1NOT NULL编号是Emp_Idint4NOT NULL员工编号否Start_Datedatetime8NOT NULL开始日期否End_Datedatetime8NOT NULL终止日期否Company_Orgvarchar50NULL单位名称否Titlevarchar20NULL职务否表3.5 培训信息表(Train)列值数据类型数据长度可否为空描述是否为主键Idtinyint1NOT NULL编号是Emp_Idint4NOT NULL员工编号否Wayvarchar40NOT NULL培训方式否Start_Datedatetime8NOT NULL开始日期否End_Datedatetime8NOT NULL终止日期否Company_Orgvarchar50NULL培训单位否Contentvarchar200NULL培训内容否Professionalvarchar50NULL所学专业否Costmoney8NULL培训费用否Resultvarchar40NULL培训结果否表3.6 人员调动信息表(DepTrans)列值数据类型数据长度可否为空描述是否为主键Idtinyint1NOT NULL编号是Emp_Idint4NOT NULL员工编号否OrgDepIdint4NOT NULL原部门编号否NewDepIdint4NOT NULL新部门编号否Titlevarchar50NULL职务否Reasonvarchar200NULL调动原因否TransDateDatetime8NULL调动日期否表3.7 加班信息记录表(Overtime)列值数据类型数据长度可否为空描述是否为主键Idtinyint1NOT NULL编号是Emp_Idint4NOT NULL员工编号否JDatedatetime8NOT NULL加班日期否JHournumeric9NOT NULL加班时长否表3.8 出差信息记录表(Out)列值数据类型数据长度可否为空描述是否为主键Idtinyint1NOT NULL编号是Emp_Idint4NOT NULL员工编号否Start_Datedatetime8NOT NULL开始日期否End_Datedatetime8NOT NULL结束日期否Describevarchar100NULL出差描述否表3.9 请假信息记录表(Leave)列值数据类型数据长度可否为空描述是否为主键Idtinyint1NOT NULL编号是Emp_Idint4NOT NULL员工编号否Start_Datedatetime8NOT NULL开始日期否End_Datedatetime8NOT NULL结束日期否Reasonvarchar50NULL请假原因否表3.10 考勤信息表(Checkin)列值数据类型数据长度可否为空描述是否为主键CheckDatechar10NOT NULL考勤月份是Emp_Idint4NOT NULL员工编号否qqDaysdatetime8NULL全勤天数否ccDaysdatetime8NULL出差天数否bjDaysdatetime8NULL病假天数否sjDaysdatetime8NULL事假天数否kgDaysdatetime8NULL旷工天数否fdxjDaysdatetime8NULL法定休假天数否nxjDaysdatetime8NULL年休假天数否dxjDaysdatetime8NULL倒休假天数否cdMinutestinyint1NULL迟到时间否ztMinutestinyint1NULL早退时间否ot1Daysdatetime8NULL一类加班天数否ot2Daysdatetime8NULL二类加班天数否ot3Daysdatetime8NULL三类加班天数否Memovarchar200NULL备注信息否表3.11 考评信息表(Evaluation)列值数据类型数据长度可否为空描述是否为主键EvaMonthchar10NOT NULL考评月份是Emp_Idint4NOT NULL员工编号否ztEvavarchar200NOT NULL总体评价否jlReasonvarchar200NULL奖励事由否jlAmountsmallint2NULL奖励金额否cfReasonvarchar200NULL处罚事由否cfAmountsmallint2NULL处罚金额否Memovarchar200NULL备注信息否表3.12 系统日志信息表(Log)列值数据类型数据长度可否为空描述是否为主键LogIdbigint8NOT NULL日志编号是LogDatechar10NOT NULL事件发生日期否LogTimechar10NOT NULL事件发生时间否LogTypetinyint1NOT NULL事件类型否Titlevarchar100NOT NULL事件标题否Bodyvarchar500NOT NULL事件内容否UserNamevarchar40NOT NULL操作用户名否表3.13 用户信息表(Users)列值数据类型数据长度可否为空描述是否为主键UserNamevarchar40NOT NULL用户名是Pwdvarchar40NOT NULL密码否User_Typetinyint1NOT NULL用户类型否表3.14 权限设置表(Privilege)列值数据类型数据长度可否为空描述是否为主键UserNamevarchar40NOT NULL用户名是PrivDepTransbit1NULL人员调动权限否PrivEmpbit1NULL员工管理权限否PrivCheckbit1NULL考勤管理权限否PrivEvabit1NULL考评管理权限4)数据库视图视图是从一个或几个基本表导出的表,是建立在实际存储数据的数据表之上的虚拟表格。视图是根据指定的条件对表进行查询得到的结果集,它限制了用户能看到和修改的数据,使用视图可以使查询变得简单。本系统在进行考勤月度统计时,使用了视图v_Sumcheck。使用视图进行统计,降低了SQL查询语句的复杂程度。CREATE VIEW v_SumCheck ASSELECT LEFT(dbo.Checkin.CheckDate, 7) AS CheckMonth, dbo.Employees.Emp_Name,SUM(dbo.Checkin.qqDays) AS Sumqq, SUM(dbo.Checkin.ccDays) AS SumCc,SUM(dbo.Checkin.bjDays) AS SumBj, SUM(dbo.Checkin.sjDays) AS SumSj,SUM(dbo.Checkin.kgDays) AS SumKg, SUM(dbo.Checkin.fdxjDays) AS SumFdxj,SUM(dbo.Checkin.nxjDays) AS SumNxj, SUM(dbo.Checkin.dxjDays) AS SumDxj,SUM(dbo.Checkin.cdMinutes) AS SumCd, SUM(dbo.Checkin.ztMinutes) AS SumZt,SUM(dbo.Checkin.ot1Days) AS SumOt1, SUM(dbo.Checkin.ot2ays) AS SumOt2,SUM(dbo.Checkin.ot3Days) AS SumOt3, dbo.Employees.Dep_IdFROM dbo.Checkin INNER JOINdbo.Employees ON dbo.Checkin.Emp_Id = dbo.Employees.Emp_IdGROUP BY LEFT(dbo.Checkin.CheckDate, 7), dbo.Employees.Emp_Name,dbo.Checkin.Emp_Id, dbo.Employees.Dep_Id3.3.3 开发环境系统采用Visual C+ 6.0和SQL Server 2000数据库进行开发,使用HTML Help WorkShop制作帮助文件。Visual C+作为一种面向对象的可视化编程工具,具有强大的功能和广泛的用户,是比较流行的数据库应用前端开发工具。VC的核心MFC类库已是事实上的业界标准,另外VC与Visual Studio中的其他可视化开发工具紧密集成,可用于开发非常专业的Windows、Web和企业级应用程序。微软公司不断努力以提高其编程语言产品的数据访问能力。ADO代表了提供数据访问的一条新途径,它通过把数据绑定ActiveX控件和ADODC(ADO Data Control,ADO数据控件)结合起来来实现。ADO可以独立地创建对象,成批进行更新,支持使用带有输入输出参数和返回值的存储过程。系统后台数据库使用SQL Server 2000,当SQL Server 2000安装完毕之后,就可以创建数据库PersonManager,并在该数据库中创建本系统所需的数据表。(1) 硬件条件:P4 CPU、256M RAM、40G硬盘以上的PC机; (2) 软件条件:Windows 2000 Server /NT/2003 Server/XP操作系统;基于SQL语言的数据库服务器系统;使用VC+语言开发。3.4 详细设计3.4.1 系统用户管理模块此模块的主要功能是:对系统的用户和密码进行管理和维护,不同类型的用户所拥有的功能不同。此模块主要实现了添加用户,修改密码和权限设置三部分功能。同时还有一个小功能:退出系统。“用户管理”窗口由系统默认管理员admin使用,admin使用此窗口添加和删除普通管理员和普通用户,并可以对用户密码进行初始密码复位。新添加的用户都有一个初始密码888888。“修改密码”窗口只对登录进入的当前用户修改其自身的密码,修改时要求输入旧密码,再输入新密码和确认密码,先对旧密码进行匹配,旧密码正确后,再对新密码和确认密码进行匹配,如果都匹配成功,则修改密码成功,修改后自动更新用户信息表Users。“权限设置”功能默认由系统管理员admin使用,他将系统权限分配给不同部门的普通管理员,从而实现权限下放。“退出系统”即退出本系统。另外,添加用户时,如果用户名是数据库中已存在的用户,系统会弹出“该用户已存在”的消息提示框,否则自动更新数据库。图3.9 系统用户管理模块图 用户管理-对系统添加和删除用户,可以对用户密码进行复位。此模块包含两个对话框,用户管理和添加用户。用户管理对话框主要使用了以下控件:DataList,Button,Ado Data。其中,DataList控件用来显示用户列表,ADO Data控件用来为DataList提供数据源,此处的数据源是用户信息表Users。DataList控件显示用户信息表中的用户名字段UserName。单击“密码复位”按钮,实现密码复位,恢复的默认密码是888888。 单击“添加”按钮,弹出添加用户对话框,它主要使用了Edit Box和Combo Box控件。其中,组合框控件Combo Box(可看作是一个编辑控件或静态控件与一个列表框的组合),用来显示用户类型。用户类型为普通管理员和普通用户。图3.10 用户管理界面 修改密码-对登录进入系统的用户进行密码修改。此模块主要使用Label、Edit Box和Button控件。程序首先对输入数据进行有效性检查,包括四方面内容:旧密码不能为空,新密码不能为空,新密码和确认密码必须相同,用户名和旧密码必须能通过身份验证。 图3.11 修改密码 权限设置-admin管理员给各个普通管理员分配系统使用权限。此模块主要使用了DataList、Ado Data、CheckBox等控件。其中,复选框(CheckBox)通过SetCheck成员函数来设置某一复选框的选中状态,通过GetCheck成员函数来获取某一复选框的选中状态,它的选项是非互斥的。只有admin用户有此模块的使用权限。在“用户列表”栏通过DataList控件显示用户表中的所有普通管理员的用户名,每次选择一位普通管理员,在“权限设置”栏为该管理员分配相应的权限。普通管理员登录系统后,除了拥有普通用户的操作权限外,还拥有admin为其分配的权限,如果该用户在使用过程中超越了自身权限,系统将不允许其使用,并弹出消息提示框“没有使用权限”。 图3.12 权限设置 登录界面设计此主要使用了Label、EditBox、Button、Picture等控件。其中Picture控件的使用,主要是使界面美观友好。用户进入系统前,必须先登录,要求输入用户名和登录密码。根据用户名判断用户进入系统后所拥有的操作权限,同时判断密码是否正确,才可进入系统。如果未输入用户名或密码将弹出消息提示信息“请输入用户名”或“请输入密码”。注:admin为默认系统管理员图3.13 登录 在系统用户管理模块设计中遇到的问题和解决方法1. Visual C+ 6.0怎样和SQL Server 2000数据库连接起来。解决方法:本系统使用ADO技术完成数据库的连接。步骤如下: 将ADO Data控件、DataList控件、DataCombo控件和DataGrid控件导入到工程中。以ADO Data控件的导入过程为例具体说明,其它控件的导入过程与ADO Data类似。在系统菜单中选择“工程”/“添加工程”/“Components and Controls”,打开“Components and Controls Gallery”对话框,双击“Registered ActiveX Controls”目录,双击选择“Microsoft ADO Data Control,version 6.0(OLEDB)”,确定后,打开“Confirm Classes”窗口,系统将在工程中自动添加ADO Data控件常用的类,确定即可,此时,在工具栏中新增了按钮,即ADO Data控件。 在用户管理对话框中添加ADO Data控件,设置ID为IDC_ADODC1,打开控件属性,选择“通用”选项卡,使用连接字符串,设置数据连接属性如下: Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=PersonManager;Data Source=CHINA-4A40A7DFC 设置RecordSource为Users。使用这一系列设置后,AdoData控件已经把数据库连接起来了,但它不显示数据库中的内容,使用DataList控件来显示数据。首先设置其属性BoundColumn为User_Type,ListField为UserName,RowSource为IDC_ADODC1,将两个控件绑定在一起。 如何实现对用户的密码复位功能。解决方法:将DataList控件的BoundColumn属性设置为User_Type字段,在单击“密码复位”按钮时,执行 OnResetButton()函数。 usr.SetPwd(“888888”);usr.sql_updatePwd(m_datalist.GetText();其中,m_datalist.GetBoundText()将返回选择用户的用户类型。3. 怎样在用户列表框单击用户,使其触发权限设置列表框中的复选框。解决方法:使用Ado Data设置数据源Users,DataList控件显示用户名。为DataList控件添加Click事件,单击用户列表中的用户时,触发权限设置列表框中的复选框。定义变量oriUser,用于保存上次选择的用户名。程序将从DataList控件中读取用户名,如果选择用户名与oriUser不同,则调用Save()函数保

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论