企业人事日志管理系统设计与实现.docx
《企业人事日志管理系统设计与实现.docx》由会员分享,可在线阅读,更多相关《企业人事日志管理系统设计与实现.docx(37页珍藏版)》请在冰豆网上搜索。
企业人事日志管理系统设计与实现
图书分类号:
密级:
毕业设计(论文)
论文题目
企业人事/日志管理系统的设计与实现
姓名
黄涛
学号
100331719
专业
计算机
指导教师
2011年
12月
25日
徐州工程学院学位论文原创性声明
(非学位论文不要)
本人郑重声明:
所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。
除文中已经注明引用或参考的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标注。
本人完全意识到本声明的法律结果由本人承担。
论文作者签名:
黄涛 日期:
2011年12月25日
徐州工程学院学位论文版权协议书
(非学位论文不要)
本人完全了解徐州工程学院关于收集、保存、使用学位论文的规定,即:
本校学生在学习期间所完成的学位论文的知识产权归徐州工程学院所拥有。
徐州工程学院有权保留并向国家有关部门或机构送交学位论文的纸本复印件和电子文档拷贝,允许论文被查阅和借阅。
徐州工程学院可以公布学位论文的全部或部分内容,可以将本学位论文的全部或部分内容提交至各类数据库进行发布和检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
论文作者签名:
黄涛导师签名:
日期:
2011年12月25日日期:
年月日
摘要
企业人事/日志管理系统主要用来管理员工档案信息、人事活动提醒和人事活动日志,它可以保存公司内部所有的人事活动资料,给用户提供高效的查询服务,并对人事活动日志进行查询分析。
良好的人事活动资料管理和人事活动日志管理,将给公司带来很多有价值的信息,为公司经营决策提供帮助。
本系统以ASP.NET2005.和SQLServer2005数据库作为开发平台,使用C#设计操作控件和编写操作程序,完成数据录入、修改、查询、删除等功能。
该系统对企业员工的信息进行统计和管理以帮助企业达到人事管理办公自动化、节约管理成本的目的,基本上能够满足现代企业对人事管理的需要。
关键词企业人事/日志管理系统,ASP.NET,C#,SQLServer2005
1引言
1.1课题研究的背景
在当今社会,互联网空前的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。
当前大量企业的人事管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏[5]。
企业员工信息管理是现代企业管理中的一个重要内容,随着时代发展科技进步,企业的规模也逐渐变得更加庞大。
在大型企业中,如何管理好企业内部员工的信息,已经成为企业管理中的一个重要环节。
在这种趋势下,设计开发一个企业人事/日志信息管理系统就显得非常重要。
1.2课题研究的目的与意义
人的管理是一切管理工作的核心。
员工代表一个企业的形象,因而人事管理机制设计的好坏,直接影响一个企业的成败[5]。
员工的档案管理是企业人事管理的基础,在企业员工普遍流失的今天,一个准确而及时的人事管理系统,有利于人事部门对员工流动进行分析、编制,为企业所需人员提供了保障[6]。
企业人事/日志管理系统重点涉及到企业管理工作中的薪资、考勤、调动、基本信息、部门管理、日志、总结等方面,并有简单的报表模块,把分散的企事职工信息实行统一,集中,规范的收集管理,建立分类编号管理,电脑存储查询以及防火,防潮,防蛀,防盗等现代化,专业化的管理系统,为企事业单位和职工解除后顾之忧。
1.3课题的可行性分析
1.3.1课题调研
(1)与实践活动和相关的文件和资料由教师提供,并由自己整理。
(2)本课题要求学生有熟练的ASP.NET2005开发能力,有较强的自学能力以及一定的数据库理论开发功底。
(3)具有对复杂表进行处理的能力。
(4)具体问题再做详细调查研究并与指导老师面谈。
1.3.2可行性分析
(1)社会可行性分析-----随着计算机的发展与普及,以及互联网技术的扩张,日常劳资人事管理必将实现无纸化办公,并且加入到公司内部的Intranet或者是Internet上去,实现数据的共享,这样有利于劳资人事信息在单位内部的查询,提高了数据资源的利用,并且能及时的得到更新,不需要像过去那样浪费大量的人力物力去进行抄写,提高了工作的效率。
(2)技术可行性分析-----VisualStudio.NET提供了一个统一的、紧密集成的可视化编程环境,简化了开发应用程序的过程,缩短了实用方法的时间。
利用VisualStudio.NET,可以非常轻松地创建具有自动伸缩能力的可靠的应用程序和组件。
而且微软的优秀成果C#语言保持了C/C++所特有的强大功能和控制能力。
与C++十分相似的模型和语法,具有与COM+服务完全的交互性和完全支持能力,能够轻松地迁移现有的代码。
数据库方面SQL2005已经可以满足中小型企业的数据要求,甚至有些大型企业都可以达到要求。
如今计算机普及程度日益推广,计算机配置日新月异,能承载此系统的机器就如办公的机器都可以达到要求。
所以说本系统具有技术可行性。
(3)经济可行性分析-----采用传统的手工输入方法,不仅工作繁琐而且需要人力输入多,记录容易出错,那样产生了成本高,效果差的弊病,对于一个企业的资料库建立是十分困难和麻烦的。
而采用这种系统所花费的成本,精力都远远低于手工,并且实用十分方便,更新也简易,每个部门只需一个人统一管理,对企业实现办公无纸化能起到很大的作用。
所以此系统经济可行性也具备了。
(4)管理可行性分析-----本系统采用了系统数据备份、恢复的功能,而且界面层次分明,一目了然,加上设计方面加入了人性化元素。
管理此系统并不难,易学易会。
1.4本人所做的工作
本人通过学习了ASP.NET程序设计(基于C#语言)、数据库搭建、软件工程等诸多相关教程以及构建网站所需技术的理论知识。
对于以下网页制作工具:
Dreamweaver、Flash以及图像处理工具Photoshop、Fireworks做了深入的学习,基本掌握其使用方法与技巧,为企业人事/日志管理系统的站点设计做好技术的支持。
并且对整个系统进行需求分析和可行性研究,论述了一个完整的丰富的Web版企业人事/日志管理系统的设计和实现方案。
在具体开发中,用ASP技术来实现基于Web的交互式系统,并将ASP技术与SQLServer数据库技术结合,熟练掌握SQLServer中数据库的建立、管理与维护。
最后企业管理员可通过浏览器登录到后台界面录入、修改、查询、删除企业内部相关的信息,而普通员工可在前台查询、添加、删除与自己相关的信息,并浏览企业发布的新闻。
此外,简单的操作界面和良好的互动性使整个系统能更好的为用户服务。
另外,为了增强系统的实用性,使之能尽量与实际的应用系统相吻合,本人对许多同类网站的内容、功能进行了分析与对比[9],吸取了它们的可取之处,并在借鉴前人经验的基础上有所创新,挖掘自己的独特之处,构建出一个专门针对企业管理人事、日志信息的实用管理系统[2]。
2系统解决方案
2.1相关技术
2.1.1VisualStudio.NET2005平台和C#语言介绍
VisualStudio.NET2005是一个功能强大、高效并且可扩展的编程环境。
有许多激动人心的新功能,它提供统一的集成开发环境,支持在同样的开发环境里用VisualBasic、VisualC++、VisualC#、VisualJ#和其他数十种编程语言,可以编写、调试和部署各种应用程序。
它充分展现了应用程序的开发潜能、并提供了生成应用程序的所需要的工具和技术。
这些应用程序给当今的企业、机构提供了强大的支持,为开发下一代以XMLWeb服务为中心的应用程序而设计,并推动下一代基于XMLWeb服务软件的发展,是有始以来功能最强大、最受欢迎的软件开发工具。
C#(发音为“CSharp”)语言源自C++,是一种面向对象的程序设计语言[4]。
它虽然是一种新语言,但却很难在这种语言中找到新的概念,其语法风格不仅源自C/C++家族,而且融合了VisualBasic的高效和C/C++强大,因此是微软为奠定其下一互联网霸主地位而打造的Microsoft.NET平台的主流语言。
依本人看来,优点不外乎以下两方面:
其一,对于花费很多时间学会C、C++语言的程序员来说,可以不必丢弃以前的知识,就可以使用这种新的语言开发程序,尽管C#中有一些新概念、新技术和新函数,但一般而言它的语言及其语法是跟C、C++类似的,而且对于用C++编写好的代码也可被重用,主要原因是C#具有调用已有代码和系统库中的库函数的机制;
其二,组件编程已经成为当今世界软件业面向下一代程序开发的一致选择,是90年代面向对象编程的深度发展。
C#生逢其时,占尽天时地利,“第一等的面向组件编程的支持”也决不是简单说说那么轻松。
实际上,组件特性已经深深植入C#语言的各个层面,可为是C#锐利(Sharp)之处。
2.1.2ASP.NET简介
ASP.NET是M的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本,它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。
ASP.NET可以用已编译的基于.NET环境的可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
另外,任何ASP.NET应用程序都可以使用整个.NETFramework,开发人员可以方便地获得这些技术,其中包括托管的公共语言运行库环境、类型安全、继承等等。
尽管ASP.NET沿袭了ASP的名称,不过在实质上已经完全超越了ASP,不再局限于VBScript或者JavaScript之类的脚本语言可以使用VB.NET、C#等编译型语言,支持Web窗体、.NET服务器控件和ADO.NET等高级特性。
客观上说,.NETFramework,尤其是其中的ASP.NET不失为Windows平台上Web开发技术的集大成者[8]。
因此,对于程序员来说,可以更方便地开发Web应用程序,这些是跟微软为ASP.NET设计的以下策略分不开的:
易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等。
2.1.3SQLServer2005简介
SQLServer2005是Microsoft公司2005年推出的SQLServer数据库管理系统[7],它是一个杰出的数据库平台,可用于大型联机事务处理、数据仓库以及电子商务等。
其特点有如下几点:
1.真正的客户机/服务器体系结构。
2.图形化用户界面。
3.丰富的编程接口工具。
4.SQLServer与WindowsNT完全集成。
5.具有很好的伸缩性。
6.对Web技术的支持。
7.SQLServer提供数据仓库功能。
2.2体系结构
2.2.1B/S系统介绍
B/S(browser/server,简称B/S)模式,即浏览器/服务器模式,它是基于Intranet的需求而出现并发展的[3]。
2.2.2Browser/Server模型工作步骤
B/S模型的工作步骤一般包括以下七步:
1.用户打开浏览器。
2.输入或自动启动主页的URL(UniformResourceLocator),浏览器生成一个HTTP请求并把它发给指定的Internet服务器。
3.服务器发回主页的HTML(HypertextMarkupLanguage)页面。
浏览器将其显示在屏幕上。
4.用户在主页面上进行操作(如:
点击、键入等)。
5.浏览器生成相应的HTTP要求,发送给相应的服务器。
6.服务器收到请求后,查看本站点是否拥有这个文档。
如果有,就将它放入响应信息中返回给浏览器。
7.浏览器收到响应,查看头文件的格式,判断能否直接显示。
否则,调用对应的帮助应用程序或外挂程序处理显示。
2.3系统技术平台
硬件:
WEB服务器1台、客户机若干台、网卡、集线器等。
软件:
WEB服务器为Windows2000及以上版本,安装有IIS。
客户机安装InternetExplorer或NetscapeCommunicator。
相关软件,如:
IE、SQLServer2005、VS.NET等等。
3系统设计说明
3.1系统分析
在本系统中,有两类用户:
超级管理员,普通用户。
两种不同的用户所具有的操作权限以及操作内容均不一样。
超级管理员负责公司内部消息(新闻)的发布,职工信息管理,部门信息管理,考勤管理,工资管理,日志管理,普通管理员管理,退出管理。
企业普通员工登陆网站后可以进行公司新闻浏;进行个人信息管理,包括对部门信息进行查询、编辑个人基本信息、修改登录密码、查看个人工资情况;进行日志管理,包括添加、编辑个人日志、添加、编辑个人总结;退出本系统。
根据上面的要求,从操作功能上可以分为两个类:
一个是通用操作,主要实现用户的注册、登录和修改密码等;另一种是为不同用户定制不同操作。
3.1.1通用操作
(1)注册----普通用户可以在系统上进行注册,超级管理员不可,但他登录系统后有权添加普通管理员。
(2)登录----每个用户都可以用自己的帐号及身份登录系统。
(3)修改密码----每个普通用户登录系统后可以修改密码。
3.1.2用户所具有功能
(1)超级管理员
职工管理:
管理员登录系统后可以进行新职员登记;实现对职员基本信息的查询和修改,只要输入员工编号,就可以查询到该员工的基本资料,也可以根据情况进行更新;浏览企业全体在职员工及任职情况。
部门管理:
管理员登录系统后可以实现部门的管理,可以添加新部门或新职位,并就不同职位设定员工的基本工资;可以对职员任职部门相关资料的查询、更新,只要输入员工编号,就可以查询到该员工的部门资料,也可以根据情况做出修改;可以进行职员调动信息的登记,在企业员工任职表下选择需要调动的员工,然后在弹出的员工调动登记界面中填写员工调动信息;对部门信息进行查询,选择要查询的部门编号,查询出该部门所有的的员工信息及任职情况,同时选择哪个员工,便会在下面显示他的简单基本信息。
考勤管理:
管理员登录系统后可以对职员请假请求进行审核,根据审核情况显示不同的审核结果,已通过的显示已通过,没通过的继续等待审核;可以对不同部门及不同的请假类型、缺勤类型显示相应员工请假、缺勤信息;实现对职员请假要求和缺勤信息登记。
工资管理:
管理员登录系统后,根据企业薪资制度和员工请假、缺勤情况,选择员工编号,根据后台代码实现,可自动显示相应员工基本工资和全勤奖金情况,并录入应扣工资,系统会计算出员工实际所得工资。
日志管理:
管理员登录系统后可以添加个人日志和总结,并查看到企业中所有的日志和总结信息,并可以进行相应的编辑和删除操作。
新闻管理:
管理员登录系统后发布企业内部各类新闻;当选择新闻类型和新闻标题时可进行精确查询和模糊查询,如果数据库中没有该类信息,就会出现提示说暂时没有该类新闻;也可以查看企业发布的所有新闻,并且进行编辑和删除。
管理员管理:
管理员登录系统后可以添加超级管理员和普通管理员,但只对普通管理员有编辑和删除功能。
退出管理:
用来管理员登录系统后退出该系统。
(2)企业普通员工
首页:
企业普通员工登录系统后,可以阅览到企业发布的所有新闻。
查看部门信息:
企业普通员工登录系统后,可以看到自己的部门任职信息和自己的调动信息,点击详细信息后可出现该用户的详细调动信息,如果该员工没有调动信息,系统通过判断后也会出现相应提示信息。
编辑个人信息:
企业普通员工登录系统后,系统会自动显示该员工相应个人基本信息,也可以根据个人情况进行完善信息。
修改密码:
企业普通员工登录系统后可以修改个人登录密码。
工资查询:
企业普通员工登录系统后可以看到自己的工资具体情况,如果工资信息企业还未发布就有提示说您本月工资还未公布。
日志管理:
企业普通员工登录系统后可以添加个人日志和总结,并查看到自己所有的日志和总结信息,并可以对其进行相应的编辑和删除操作。
退出管理:
用来普通员工登录系统后退出该系统。
(3)水晶报表
调用报表这个窗体,根据要求产生报表,流程如下:
1、创建数据集,为其连接数据库,添加需要的数据表
2、创建报表,为其连接数据源
3、窗体中添加CrystalReportViewer,设定数据源为上面的报表
4、编写相应代码。
3.2系统总体设计
在前面的系统功能分析中,将系统划分成若干个模块,如图3-1所示:
图3-1系统模块划分
3.3系统性能需求
实用性:
为企业管理提供方便,有效进行人事信息管理,尽量最大限度降低管理员日常管理工作量,提高工作质量和效率,优化资源,实现效益最大化。
操作简单:
本系统应该适用于不同水平的使用者,包括管理员和普通用户,同时系统不应太复杂和烦琐,因此要求系统的操作尽可能简单易行。
技术先进:
产品的系统设计和开发应紧跟着整个计算机发展潮流,采用当时最先进的设计思想,利用最新的开发技术和开发工具。
使系统能够无论在功能设计上,还是在技术实现上,都处于同行业的领先地位。
安装使用简便:
服务器端的安装简洁明了,客户机无需再装任何软件,通过浏览器就可以直接访问,可以直接接入Internet,无论您身在何处,只要您可以访问Internet都可以使用本系统。
适应性:
应该能广泛应用于不同类型的企业。
系统采用模块化设计,用户可以根据自己的实际情况自行组合,使系统在不同的硬件环境下都能得以应用。
代码可读性好:
文中的代码将尽可能简洁,易懂。
3.4数据库设计与实现
3.4.1数据模型
数据模型是对现实世界数据的抽象表示,其主要目的是规划具体事务处理使用到的数据,建立相应的数据库,保持与应用程序开发之间的简洁性,有利于数据库的规范化、性能优化以及数据的简洁性。
3.4.2E-R模型
E-R模型是数据进行第一层抽象的表示方法。
它的主要成分包括:
实体、联系和属性。
使用这三种成分,我们可以建立许多数据库应用系统的E-R模型[1]。
对于企业人事/日志管理系统中使用到的实体和属性可以定义如下:
员工基本信息(员工编号,姓名,籍贯,学历,专业,身份证号,婚否,政治面貌,图片路径)
员工任职情况(员工编号,任职部门编号,部门名称,职务,状态,入职日期,工作经验)
员工登录信息(员工编号,性别,出生年月,年龄,电话,住址,邮政编码,E-mail,登录密码)
企业部门信息(部门编号,部门名称,部门职务,基本工资)
员工调动信息(员工编号,姓名,原任职部门,原部门编号,原职务,调出日期,新任职部门,新部门编号,新职务,调入日期,备注)
请假信息(请假编号,员工编号,请假类型,请假天数,开始日期,结束日期,请假事由,登记人,登记时间,审核情况)
缺勤信息(缺勤编号,员工编号,缺勤类型,缺勤日期,登记人,登记时间)
工资信息(员工编号,基本工资,奖金,应扣工资,实发工资,发放时间)
企业新闻(新闻编号,新闻类型,标题,内容,发布人,发布时间)
日志信息(日志编号,日志主题,日志内容,明日计划)
日志发布信息(日志编号,发布人,发布时间)
总结信息(总结编号,本阶段开始时间,本阶段结束时间,总结内容,遗留问题,下周工作安排,备注)
总结发布信息(总结编号,发布人,发布时间)
管理员信息(管理员编号,姓名,密码,身份)
3.4.3联系定义
E-R模型的“联系”用于刻画实体之间的关联。
一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。
若有联系,进一步确定是1:
N,M:
N,还是1:
1等。
还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系等等。
本系统的部分实体与联系的E-R模型如图3-2所示:
图3-2系统E-R模型
例如,员工与部门之间详细的E-R模型如图3-3所示:
图3-3员工与部门之间的E-R模型
3.4.4数据表设计
经过数据库系统分析和逻辑设计后,数据库的结构已经非常清晰,剩下的就是用一种数据库软件实现这样的结构。
该系统采用SQLServer2005作为后台数据库进行存储所有与系统相关的数据。
根据系统功能需要主要包括以下数据表:
员工基本信息表(personnel),员工任职情况表(connection),员工登录数据表(land)、企业部门信息表(department)、员工调动数据表(trans)、请假登记表(holiday)、缺勤登记表(absence)、工资表(money)、新闻表(news)、日志表(logs)、日志发布信息表(conone)、总结表(summary)、总结发布信息表(contwo)、管理员表(managers)。
每个表与逻辑设计中一种的关系模式相对应。
下面是每个数据表中的属性,包括属性列的名称、数据类型、长度、是否可以为空和备注说明等内容。
(1)personnel表。
personnel表用来存储企业员工部分基本信息,使用员工编号作为主键,如表3-1所示:
表3-1personnel表
(2)connection表。
connection表用来存储员工任职信息,如表3-2所示:
表3-2connection表
(3)land表。
land表用来存储企业普通员工的登录信息和一些通讯信息,用员工编号作为主键,这样可以避免重复,如表3-3所示:
表3-3land表
(4)department表。
department表用于存储企业部门信息及根据不同职位规定员工基本工资,如表3-4所示:
表3-4department表
(5)trans表。
trans表用于存储员工基本调动信息,如表3-5所示:
表3-5trans表
(6)holiday表。
holiday表用来存放请假登记的信息,用请假编号作为主键,这样可以避免重复。
如表3-6所示:
表3-6holiday表
(7)absence表。
absence表用来存放缺勤登记的信息,用缺勤编号作为主键,这样可以避免重复。
如表3-7所示
表3-7absence表
(8)money表。
money表用来存放企业员工的工资情况信息,用员工编号作为主键,这样可以避免重复。
如表3-8所示:
表3-8money表
(9)news表。
news表用来存放企业公布的各种类型的新闻,用新闻编号作为主键,这样可以避免重复。
如表3-9所示:
表3-9news表
(10)logs表。
logs表用来存放管理员和企业普通员工的日志信息,用日志编号作为主键,这样可以避免重复。
如表3-10所示:
表3-10logs表
(11)conone表。
conone表用来存放日志与不同用户的联系信息,如表3-11所示:
表3-11conone表
(12)summary表。
summary表用来存放存放管理员和企业普通员工的总结信息,用总结编号作为主键,这样可以避免重复。
原理与logs表一样,图略。
(13)contwo表。
contwo表用来存放存放日志与不同用户的联系信息,原理与conone表一样,图略。
(14)mana