考勤管理系统的设计与实现.docx
《考勤管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《考勤管理系统的设计与实现.docx(26页珍藏版)》请在冰豆网上搜索。
考勤管理系统的设计与实现
考勤管理系统的设计与实现
系院信息工程学院
学科门类工学
专业计算机科学与技术
学号************
姓名苏菊
指导教师杨海军
2015年5月10日
摘要
随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事考勤管理势在必行。
本系统结合企业实际考勤管理制度,经过实际的需求分析,采用功能强大的VisualC#作为开发工具,开发出来的企业考勤管理系统。
整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成日常的考勤操作,包括企业信息管理,员工签到管理,用户管理,考勤信息管理,查询信息管理等工作。
经过实际使用证明,本文所设计的系统可以满足企业进行日常的员工考勤管理方面的需要。
本课题采用C#+ASP.net架构开发考勤管理系统。
后台数据使用SQLServer,前台开发工具使用VisualC#。
我们设计的数据库系统能够实现员工管理,上班时间设置,考勤管理,考勤统计。
该系统基本上满足了用户在考勤管理方面的需求,用户界面友好。
其功能在系统内部有源代码直接完成,用户只需按系统要求输入即可操作。
关键词:
考勤管理;VisualC#;ASP.NET;SQLServer数据库
Abstract
Withtherapiddevelopmentofcomputertechnology,computersinbusinessmanagementapplicationstothepopularizationofcomputeruseattendanceofenterprisesandpersonnelmanagementisimperativethesystemcombinestheactualattendanceenterprisemanagementsystem,throughanalysisoftheactualdemandbythepowerfulVisualC#asadevelopmenttool,developedbytheEnterpriseAttendanceManagementSystem.
Theentiresystemfromthelinewiththesimple,user-friendly,flexible,practicalandsafetyrequirements,thecompletionofday-to-dayoperationoftheattendance,includingenterpriseinformationmanagement,employeeattendancemanagement,usermanagement,timeandattendanceinformationmanagement,informationmanagementjobinquiries.Afterproofofactualuse,thepapersystemdesignedtomeetthebusinessday-to-daymanagementofstaffattendancerequired.
ThistopicusestheC#+ASP.NETFrameworkdevelopmenttimeandattendancemanagementsystem.TextualresearchontheNETFrameworkdevelopmentmanagementsystem.DatausingSQLServerinthebackground,foregrounddevelopmenttoolusingVisualC#.Wedesignedadatabasemanagementsystemtoachievestaff,worktime,attendance,attendancestatistics.Thesystembasicallymeettheneedsofusersintermsofattendancemanagement,userfriendlyinterface.Itsfunctioninthesourcecodedirectlyinsidethesystemiscomplete,userssimplypressenteryoucanmanipulatethesystemrequirements.
Keyword:
checksattendancethemanagement;VisualC#;ASP.NET;SQLServerdatabase
1绪论
计算机已成为我们在学习和工作当中不可缺少的一部分,当今社会计算机已被应用于许多领域,计算机之所以如此流行的原因主要就是,它可以代替人工进行许多的复杂的劳动,还可以大大提高人们的工作效力、并且还可以为之减少许多人力与物力。
这给人们的生活带来许多便利。
所以,在以后的社会里,计算机将成为社会中的主流。
企业对员工提供一考勤管理系统,以便于对员工的基本情况、员工的上下班情况和员工工资信息进行透明化、准确化管理。
目前部分中小型企业的考勤管理水平还处于底下水平,依然停留在靠人工去记录考勤情况的基础上,这样的考勤方式已经给不少企业带来了不必要的麻烦,因为它不仅浪费了许多的人力,人工记录还容易造成疏漏,甚至可能存在考勤监管人员的导致考勤不平等情况。
在当今信息时代,这种传统的管理方法必然被计算机为基础的信息管理所取代。
本文希望能用所学的知识设计一个较有效的考勤管理系统。
1.1课题背景
日前企业考勤管理系统在实际开发和应用中尚存在很多问题,我国众多的企业都是采用传统的手工方式记录企业员工每日的出勤情况。
这种方式繁琐易错,准确性、透明度、实时性差,受人为因素影响过大,增加了企业的人力资源成本。
同时使用传统人工记录考勤管理容易出现疏漏,甚至可能存在考勤监管人员因人情导致考勤不平等的情况,造成企业员工存在侥幸心理,无法解决代考、脱岗的问题,不利于企业的人员管理。
现在,计算机辅助管理已在我国的各行各业得到了广泛地应用,但总的来说,计算机在我国管理中的应用,还处于初级阶段,尽管近两年发展较快,但还需要不断地探索和研究。
1.2课题意义
当今社会信息化已经成为一种潮流,信息技术革命的发展正在促使工业资本经济向信息经济、知识经济转变。
而利用计算机技术,通讯技术等现代化的信息技术手段来实现企业信息化建设与新型现代化管理,更是企业不可避免的生存竞争所要面对的当务之急。
随着现代科技的进步,利用信息和计算机技术来进行企业员工考勤的管理也成为现代化企业运作必不可少的一部分。
现代企业员工人数的激增与员工的频繁变动,使得企业的考勤统计管理工作日益繁杂,传统的企业考勤管理方法很难保证数据的准确与实时。
与此同时,计算机技术飞速发展,计算机在企业管理中应用逐渐普及,利用计算机实现企业职工考勤管理势在必行。
计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。
考勤管理是企业信息管理的重要部分,面对大量的企业信息,采用人力处理将浪费大量的时间、人力和物力,而且统计数据麻烦。
一个企业对其职工的正常上下班、延时工作及加班工作进行考勤,通过报表的形式输出,合理调整员工工作安排,用计算机对考勤数据进行统计分析处理,得到我们所需要的各种统计报表和考勤原始数据。
方便了企业对员工的管理如今的企业的管理者,拥有一个良好的企业管理信息系统,可加强职工的管理,增强企业的管理,对企业的发展有着一定的促进作用。
因此,开发一个合适的、高质量的企业考勤管理系统进行企业员工的考勤管理,对企业的长远发展有重大的意义。
开发一个界面友好,易于操作的考勤管理软件进行自动化处理变得十分重要,这正是本系统开发的目的和意义。
通过此考勤管理系统的开发锻炼了学生的实际动手能力,对以后的学习和工作能力的培养也具有重要意义。
现在利用计算机来管理考勤工作,大大降低了工作人员的工作量,提高了工作效率,使原本复杂枯燥无味的工作变的简单轻松。
计算机技术,特别是数据库技术的发展。
为企业建立管理信息系统,甚至对改变管理思想起着不可估量的作用。
使用考勤管理系统,管理者可以快速记录公司全体员工当日的出勤状况,并可按月份统计员工出勤、出差、请假状况及正常时间。
实践证明信息技术已在企业的管理层面扮演越来越重要的角色。
因此对这方面的研究是必要的,它将推动我国企业的发展和考勤管理信息处理的现代化。
1.3毕业设计的内容与任务
本课题的主要要内容是:
对企业的员工上班的基本信息的考勤管理系统,主要任务是让企业的考勤方面信息系统化、规范化和自动化。
本系统基本涵盖了企业考勤管理的主要需求,员工上班情况信息管理(员工打卡的查询、修改、添加)、部门情况(部门信息的添加、保存、删除)等,设置系统用户登陆功能,即时对系统数据进行安全设置与保护、友好的用户界面,业务操作简单,进入系统即能使用,操作快捷、方便,易懂易会。
本系统可运用于中小型的企业考勤管理。
在本课题中以中小型企业的考勤管理业务为依托,结合管理的理论,设计并开发一个基于网络环境的企业考勤管理系统。
其具体工作如下:
首先,以某企业对员工考勤的要求为基础,分析企业在考勤管理这一方面的业务流程,通过网络和专业书籍收集有关企业考勤系统的第一手资料,确定建设企业考勤管理系统的目标和主要功能需求。
其次,在确立系统的目标和主要功能需求的基础上,提出这个考勤管理系统的设计方案和设计原则,合理安排开发进度,设计各个功能模块等等。
最后,进行具体的系统开发,实现了功能模块相应的功能,达到系统的目标最终完成的功能需求,对系统进行模块集成、测试和性能分析。
2系统开发相关技术
2.1VisualC#简介
C#(读作Csharp)是微软开发的一种面向对象的编程语言,是微软.NET开发环境的重要组成部分。
而MicrosoftVisualC#2005是微软开发的C#编程集成开发环境,它是为生成在.NETFramework上运行的多种应用程序而设计的。
C#的特点有语法更简单、容易学习、支持跨平台、功能强大、面向对象且避免了多继承、现代快速应用开发的功能、语言的兼容和协作交互性,对C++的继承且类型安全。
C#凭借它的许多创新,在保持C样式语言的表示形式和优美的同时,实现了应用程序的快速开发。
[5]
VisualS包含VisualC#,这是通过功能齐全的代码编辑器、项目模板、设计器、代码向导、功能强大且易于使用的调试器以及其他工具实现的。
通过.NETFramework类库,可以访问多种操作系统服务和其他有用的精心设计的类,这些类可显著加快开发周期。
2.2ASP.net简介
ASP.net是M的一部分,它提供了一个统一的Web开发模型以及应用程序所需的各种服务。
[1]ASP.net的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有ASP应用程序中逐渐添加ASP.net随时增强ASP应用程序的功能。
ASP.net是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
另外,任何ASP.net应用程序都可以使用整个.NETFramework。
微软为ASP.net设计了这样一些策略:
易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。
ASP.net的性能
ASP.net提供了高效率、易控制、语言支持、稳定的性能、优秀的升级性、更快速的开发、更简便的管理、全新的语言以及网络服务。
贯穿整个ASP.net的主题就是把用户大部分的琐碎工作由系统自动化了。
[7]
2.3SQLServer数据库简介
SQL是StructureQueryLanguage(结构化查询语言)的缩写,它是一标准的数据库查询语言,最早是由IBM公司1970年开发出来,后来经由美国ANSI协会采用做为数据库的查询(Query)、删除(Delete)、增加(Append)、修改(Update)等处理的标准计算机语言格式。
SQL语言是以接近英语语法的格式设计出来适用于数据库运行的一种计算机语言,所以学习起来比较容易。
SQL语言本身不是一个很完整的编程语言,如它不支持界面编程等。
[8]一般它与其他编程语言(如VB、VC和C#等)结合起来使用。
本课题所运用的数据库是SQLServer2005
Microsoft SQLServer2005是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。
SQLServer2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序SQLServer2005特性概况。
3考勤管理系统应用需求分析与数据库设计
3.1可行性分析
在决定开发考勤管理系统应用之前,首先要做好系统开发的可行性分析。
可行性分析的任务是确定该系统开发是否必要和可行。
建设企业考勤管理系统的必要性取决于需求的迫切性和实现的可行性。
从以下几个方面认真进行研究,从而为确定系统开发的决策提供科学依据。
(1)经济可行性:
在管理方面,可以利用计算机实现企业中员工的考勤管理,避免了人为因素造成的考勤记录失真,采用考勤管理系统使得考勤管理工作变得快捷简单。
强大的数据库管理功能,减轻了考勤统计工作的劳动强度,提高了考勤的精确度。
在维护方面,维护数据和数据库也比较简单。
(2)技术上可行性:
技术上的可行性分析所考虑采用的硬件和软件技术能满足用户提出的要求(如计算机的容量、速度等)。
此外,因本系统难度不大,所涉及的范围只限于企业员工的考勤管理,所以在技术上已达到开发该系统的能力。
综上所述,为了提高企业工作效率、保证企业员工考勤的管理质量、快速而且准确地为企业制定好的经营方针与决策,我选择了制作考勤管理系统。
3.2系统需求的概述
由于本系统是考勤管理的系统,它是直接面向终端用户,因此它的开发方法是应该有区别于传统方法学的一种快速、灵活、交互式的模式。
使用计算机对员工考勤进行管理,具有检索迅速、查询方便、保密性好以及成本低的优点。
应该使用现代化的手段来提高管理和服务水平。
3.2.1系统需求分析
功能需求:
认证用户:
系统在连接数据库前需对用户进行认证。
如果认证通过、执行连接。
对非法用户则拒绝执行操作并关闭程序。
设置上下班时间:
系统应能由用户打卡设置上下班时间,并能根据此时间来判断员工是否迟到或早退。
部门信息情况:
可以查询各部门的信息,能够对新到员工进行部门的分配,如果该企业有新增部门,可以进行部门的添加。
统计出勤状况:
系统能够按用户指定的时间范围对员工的出勤状况进行统计,列出详细的统计结果,其中需包含迟到、早退、请假、出差和旷工次数。
并提供检索功能,使能够对单个员工的出勤统计结果进行查询。
添加删除员工:
系统需能够对员工进行添加或者删除操作。
并能够对新增的员工进行正常的记录,统计和查询操作。
3.2.2系统概要设计
系统功能分析:
系统开发的总体任务是通过用户对员工每日出勤状况的记录以及事先设置好的出勤判断时间按指定时间段统计出所有员工的出勤状况,并提供各种检索功能供用户查询。
主要功能如下:
(1)员工上班的登记。
上下班时间的设定,根据员工的打卡情况来进行管理。
(2)员工每日考勤的情况记录。
(3)部门信息的记录。
(4)节假日时间的记录。
3.3系统需求模型
为了让用户更好的了解本系统的功能结构,用图来看其系统的功能构架。
由项目管理器进行统一的管理,由主程序进入系统,由主程序调出用户登录界面。
登录成功后调出应用系统的主菜单,由主菜单调出各个表单界面。
整个系统的结构要紧凑、简洁;功能明确、完整。
考勤管理系统的总体功能流程图如下:
3.4数据库的设计
3.4.1数据库需求分析
数据库在一个信息管理系统中占有非常重要的地位,合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
[4]
考勤管理系统的需求具体体现在各种信息的修改、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。
通过上述系统功能分析,针对企业的考勤管理系统的需求,总结出如下的需求信息。
员工在上下班期间打卡,考勤监管人员可以通过打卡情况查看员工的考勤情况,并且与员工的工资情况直接挂钩。
所有设计如下数据项和数据结构。
用户登录,包括数据项:
用户名、密码。
基本信息,包括数据项:
部门信息管理、员工信息管理等。
考勤设置,包括数据项:
节假日列表、增加节假日等。
统计报表,包括数据项:
查询统计、每日统计列表等。
打卡,包括数据项:
打卡操作。
得到上面的数据项和数据结构以后,就可以设计出能够满足企业管理的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
这些实体用图来表示更直观可见。
ER图如下:
图3.2E-R图
3.4.2数据库表设计
本系统包括七个表,企业部门表(Adept,见3-1表),活动表(attAction,见3-2表),员工信息表(Employee,见3-3表),节假日信息表(Holiday,见3-4表),管理员登录表(ManagerInfo,见3-5表),考勤状态表(State,见3-6表),工作时间表(WorkTime,见3-7表),公司名称表(company,见3-8表)。
一般企业都有好几个甚至十几个部门,然而每个部门在企业中都有不同的功能,因此我们需要根据部门的具体需求,给每个部门不同的编号和名称来区分它们的不同工作任务。
其数据表如下:
表3-1企业部门表(Adept)
字段名称
数据类型
字段长度
备注
adeptID
char
10
企业部门的ID,主键
adeptname
nvarchar
20
企业部门名称
adeptDes
nvarchar
255
部门描述
comID
char
10
公司ID
考勤管理是系统的核心,企业也是通过考勤来管理员工,让大家有一个统一的上班下班时间,因此需要员工上下班时打卡来记录员工的考勤。
因此需要一个考勤管理表,具体数据表如下:
表3-2活动表(attAction)
字段名称
数据类型
字段大小
备注
actionID
int
8
员工号,主键
Employeeid
char
10
员工名称
firsttime
datetime
20
早签到时间
lasttime
datetime
20
晚签到时间
stateID
char
20
所在部门
description
nvarchar
100
说明
员工信息表是用于记录员工编号,员工所在部门,员工入职时间,员工姓名等信息的表。
其具体数据表如下:
表3-3员工信息表(Employee)
字段名称
数据类型
字段大小
备注
EmployeeID
char
20
员工号,主键
EmployeeName
nvarchar
20
员工姓名
adeptID
char
10
企业部门号
Sex
char
2
性别
phone
nvarchar
20
电话
JoinTime
datetime
20
加入时间
number
nvarchar
20
身份证号
节假日是员工休息的日子,而节假日表则是记录员工休息时间的表。
其具体数据信息如下:
表3-4节假日信息表(Holiday)
字段名称
数据类型
字段大小
备注
HolidayID
char
10
假日ID,主键
HolidayName
nvarchar
255
假日名称
FirstTime
datetime
20
起始时间
LastTime
datetime
20
结束时间
这里的管理员,即管理考勤的员工,该员工可以通过登录系统看到所有员工的上下班记录,然后算出员工上班时间。
而管理考勤的不一定是一个人,因此有一个管理员用户,可以查看其他员工考勤信息。
管理员用户的具体数据信息如下表:
表3-5管理员登录表(ManagerInfo)
字段名称
数据类型
字段大小
备注
ManagerID
char
10
管理员的ID,主键
Loginame
nvarchar
20
登录名
Loginpwd
nvarchar
20
登录密码
comID
char
10
公司的ID
考勤状态表是用于记录员工是否准时上下班情况,它包括迟到、早退、旷到等其他没有来上班的各种情况,其相关的数据表如下表:
表3-6考勤状态表(State)
字段名称
数据类型
字段大小
备注
stateID
char
10
考勤的ID
statename
nvarchar
10
考勤的名称
工作时间表是指员工在早上上班前的某一个时间段内打卡,算是准时上班,之后的时间打卡则是按旷到或是迟到,晚上下班时也有一个打卡的上限,在这个时间限制之前打卡离开则按早退记录。
根据早上和晚上的打卡时间最后有一个每天的工作时间统计。
其具体数据表如下表:
表3-7工作时间表(WorkTime)
字段名称
数据类型
字段大小
备注
ID
char
8
编号,主键
toptime
datetime
20
早签区间(上)
Undertime
datetime
11
早签区间(下)
Wstime
datetime
255
晚签区间
limtime
int
8
旷工时限
公司名称表是记录公司名称及地址信息,在用户登录时选择该公司名称,其具体数据表如下表:
表3-8公司名称表(company)
字段名称
数据类型
字段大小
备注
comID
char
10
公司的ID,主键
comName
nvarchar
20
公司名称
comDec
nvarchar
255
公司地址
4系统的设计及其表单
4.1数据库的连接
在VisualStudio2008中,用ASP.net作为开发工具,用SQLServer2005作为后台数据库,数据库连接的核心代码在Web.config中,其代码如下所示: