《企业员工信息管理系统word资料40页.doc》由会员分享,可在线阅读,更多相关《企业员工信息管理系统word资料40页.doc(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流企业员工信息管理系统【精品文档】第 32 页本科毕业设计说明书企业员工信息管理系统的设计与实现EMPLOYEE INFORMATION MANAGEMENT SYSTEM DESIGN AND IMPLEMENTATION 学院(部):专业班级: 学生姓名: 指导教师: 2012年 5月25日企业员工信息管理系统的设计与实现摘要现今互联网发展越来越迅速,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。因此在信息化科技飞速发展的今天,借助于电脑,通过员工信息管理系统管理各部门职工,能为企业人力资源的管理者提
2、供人性化的服务。同时也能为企业的员工提供一定的方便。本系统具有多方面特点:系统功能完备,用户使用方便简捷,人性化的用户界面,安全保密设置齐全,大大减少了操作人员和用户的工作负担,提高了企业员工信息管理的工作效率和企业的信息化的水平。本论文从员工信息管理系统的初步调查开始,详细介绍员工信息管系统的需求分析和数据流程分析,并进行了系统总体结构设计、数据结构和数据库设计、输入输出设计等。 关键词:J2EE,Mysql,struts2,企业员工信息管理EMPLOYEE INFORMATION MANAGEMENT SYSTEM DESIGN AND IMPLEMENTATION ABSTRACT No
3、wadays, the Internet development is fast, bringing peoples work and life tremendous convenience with efficiently.Therefore, the rapid development of technology of information technology today, through the use of computers, employee information management system to manage the various departments and
4、workers, to provide personalized service for corporate human resources managers.Also provides a convenience for the employees of the enterprise. This system has a various characteristics:The system function is complete, using conveniently, the customer interface humanization, the safety keeps secret
5、 a constitution well-found, reduced an operation the work of the personnel and customer burden consumedly.Raise the work efficiency of the business enterprise information management and the information-based level of the business enterprise. Papers from personnel management information system, the p
6、reliminary survey began detailed introduction of human resource management information system requirements analysis, and data flow analysis, and a system overall structure design, data structure and database design, input/output design, etc.KEYWORDS:J2EE, Mysql,struts2,Employee information managemen
7、t目录摘要IABSTRACTII1 绪论11.1 课题来源11.2 研究目的11.3 研究意义22 方案论证32.1 可行性要求32.1.1 经济可行性32.1.2 技术可行性32.2 需求分析92.2.1 系统用户92.2.2 系统功能需求103 系统设计113.1 系统架构设计113.2 系统功能模块设计113.2.1 登录页面113.2.2 模块分析123.3 业务实体设计163.4 设计域模型163.5 设计数据模型174 网站前台的设计194.1 网站登录界面的设计194.2 员工信息管理界面设计204.3 部门管理页面设计224.4员工工资管理设计244.5 员工考勤管理设计244
8、.6 用户密码修改模块的设计264.7 退出系统模块的设计265 网站模块功能的实现275.1 用户登录实现275.2 员工信息管理模块实现285.3 部门管理模块的实现315.4 工资管理模块的实现335.5 考情管理模块的实现335.6 系统管理模块的实现356 软件测试366.1 模块测试366.2 集成测试36结论38参考文献39致谢401 绪论随着计算机技术、网络技术和信息技术的发展,现在办公系统更趋于系统化、科学化和网络化。网络办公自动化系统是计算机技术和网络迅速发展的一个办公应用解决方案,它的主要目的是实现信息交流和信息共享,提供协同工作的手段,提高办公的效率,让人们从繁琐的有纸
9、办公中解脱出来。现在许多的机关单位的员工信息管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。本系统就是基于本企业的员工信息管理而设计的,是对企业的员工信息资料进行管理,为人事管理人员提供了一套操作简单、使用可靠、界面友好、易于管理和使用的处理工具。本系统对人事各种数据进行统一处理,避免数据存取、数据处理的重复,提高工作效率,减少了系统数据处理的复杂性。本系统不仅使学院人事管理人员从繁重的工作中解脱出来,而且提高了人事管理的效率,提高了人事管理的科学性,方便了用户查询、管理人员进行管理。
10、在已跨入21世纪的今天,各个大中型企业,乃至小型企业都趋向于电子化智能化管理,不在止步于账本和笔,通过各种各样的软件管理系统,加快了企业的人员信息管理,同时也减轻了人们的工作压力。1.1 课题来源随着科学技术的发展企业公司已经迈入智能化、网络化,越来越多的事件都是通过网络来处理,所以一个应用于企业员工信息管理的软件也是越来越重要。通过这个软件可以很简单的对企业的员工基本信息资料、部门信息和员工考勤来管理,很大程度的提高了企业的人事管理的办事效率,同时也减轻了企业的工作压力。近年来网络盛行,丰富的内容加上绚丽的页面,具有丰富的多媒体表现与互动特点,毋庸置疑, 网站已成为最吸引人的也最有效的信息传
11、递手段和方式。1.2 研究目的为企业提供一个能够方便的管理员工信息的软件,可以实现公司对员工以及部门信息的操作,同时能够在此次的设计中有一个良好的锻炼过程。立志于为满足企业的需要,站在企业人事部门的角度考虑,完成此次设计。1.3 研究意义做一个企业员工信息管理系统,就是为了满足企业需求所定制的,所以他首先要做的是满足最基本得员工信息的增删改查,在此基础上进行功能的扩展,其次是部门管理,工资管理等等。一个正规性企业都希望自己的员工管理非常合理,如此复杂性的操作如果通过人手动的写,会非常的麻烦。基于这一点考虑到设计一个管理类型的软件,来解决这个繁琐的问题,方便与企业的工作管理以及一些制度的规定。在
12、企业中,员工信息管理工作是非常重要的一项工作,它负责整个企业的日常人事安排,员工的人事管理等。高效的人事管理可以提高企业的市场竞争力,使企业具有更强的凝聚力和活力。为此,提高员工管理工作的效率,设计一套员工信息管理系统具有实际应用意义。2 方案论证2.1 可行性要求开发任何一个基于计算机的系统都会受到时间和资源的限制。因此在开发软件项目之前,必须根据可利用的时间和资源等条件进行可行性研究。可行性研究工作的主要任务不是研究如何解决问题,而是要用最小的代价在最短的时间内确定该项目是否具有开发的可行性。可行性研究主要包括经济可行性研究,技术可行性研究,运行、操作可行性研究,法律可行性研究和开发方案的
13、选择。典型的可行性研究应从以下几步进行。(1)复查初步分析结果。对系统初步的分析结果和报告书进行复查,改正含糊或不确切的叙述,重新确定系统目标与规模,清晰地描述对系统的所有约束条件。(2)研究现有的条件。找出其基本功能和基本信息,指出其缺点或局限性。(3)导出新系统高层逻辑模型。用某种图形工具导出系统高层逻辑模型,并与现有系统进行比较。(4)导出新系统的高层物理解法,提出多个供选择的解决方案,并对每一个方案的经济可行性、技术可行性、运行和操作可行性等进行分析比较。(5)推荐建议的方案。如果系统分析员人为之得开发,则应指出开发的价值、推荐方案的理由,并为推荐的系统草拟一份开发计划,并提交可行性研
14、究报告等全部文档。若分析员认为不值得开发,也应拿出充分的理由。(6)评审、复审和决策。可行性研究最后要通过技术评审和管理复审,开发方和客户方或使用部门负责人根据成本-效益分析等各项可行性研究的结论决策是否继续这项工程。而对于我的这次毕业设计来说可行性研究就是主要从两个方面考虑,一是经济可行性研究;二是自身的软件开发技术水平,即技术可行性研究。2.1.1 经济可行性开发一个本系统的开发可以解决企业人事管理遇到的耗费大量资金和人力,管理内容繁复,而且容易丢失的问题。本系统的开发周期为2个月,耗费资金较少,且实用价值很高,各类企事业单位及学校等部门都可以使用。2.1.2 技术可行性1、Mysql数据
15、库Mysql是一个快速、多线程、多用户的SQL数据库服务器, 其出现虽然只有短短的数年时间,但凭借着“开放源代码”的东风,它从众多数据库中脱颖而出,成为PHP的首选数据库。相比较其他数据库而言,Mysql可以称得上是目前运行速度最快的Sql语言数据库。除了具有其他数据库所不具备的功能和选择之外,Mysql数据库是一种完全免费的产品,用户可以直接从网上下载数据库,用于个人或商业用途,而不必支付任何费用,这也是我选择用Mysql数据库的主要原因,除此之外还具有以下主要特点:(1)Mysql的核心程序采用完全的多线程编程。线程是轻量级的进程,它可以灵活地为用户提供服务,而不过多地占用系统资源。用多线
16、程和C语言实现的Mysql能容易充分利用CPU。(2)Mysql可运行在不同的操作系统下。简单地说,Mysql可以支持Windows95/98/NT/2000以及UNIX、Linux等多种操作平台。这意味着在一个操作系统中实现的应用可以很方便地移植到其他操作系统下。(3)Mysql有一个非常灵活而且安全的权限和口令系统。当客户与Mysql服务器连接时,他们之间的所有口令传送被加密,而且Mysql支持主机认证。(4)Mysql支持大型的数据库。虽然对于用PHP编写的网页来说只要能够存放上百条以上的记录数据就足够了,但Mysql可以方便地支持上千条记录的数据库。作为一个开放源代码的数据库,Mysq
17、l可以针对不同的应用进行相应的修改。(5)Mysql拥有一个非常快速而且稳定的基于线程的内存分配系统,可以持续使用而不必担心其稳定性。事实上,Mysql的稳定性足以应付一个超大规模的数据库。2、开发技术的选择1)J2EE(1)简化结构J2EE平台支持简化的、基于组件开发模型,由于J2EE基于Java编程语言和J2SE平台,它提供了编写一次,随处运行的可移植性,遵循J2EE标准的所有服务器都支持该模型。EJB组件使编写应用程序更为简单。尽管EJB体系结构复杂,但应用程序开发人员一般都必再编写访问系统服务的代码,EJB容器会实现系统级的服务,例如,事务、安全性等。另外,J2EE还支持异构环境。基于
18、J2EE的应用程序不依赖任何特定操作系统、中间件或硬件,因此,设计合理的基于J2EE的程序只需开发一次就可以部署到各种平台,这在典型的异构企业算环境中是十分关键的。J2EE标准还允许客户订购与J2EE兼容的第三方的现成组件,把其部署到异构环境中,节省了由自己制订整个方案所需的费用。(2)提高开发效率由于组件技术的使用,可以按照开发人员的技能对应用程序开发进行分工,并行开发,提供整体开发效率。例如:图形设计师创建JSP模板,商业逻辑由该领域的专家完成,JSP页面和EJB由Java工程师完成,应用程序的装配和部署由团队中其他的成员完成,其中许多工作可以同时进行,有助于加速应用程序的开发。(3)可移
19、植性强除了Java语言固有的可移植性外,EJB体系结构在Bean和支持该Bean的容器之间提供了一套标准化的应用程序编程接口,这使开发人员能够将Bean从一种操作环境移植到另一种操作环境,而无需重新编写其源代码。(4)重用性好由于在EJB模型中,各个软件组件都是严格分离的,因此,可以从现有的软件组件装配出服务器端应用程序,这与从现有的JavaBean可以装配出客户端应用程序一样,使软件能够重用。(5)易于维护基于组件的设计简化了应用程序的维护。由于组件可以被独立地更新和替代,通过更新应用程序中特定的组件,新的功能可以被很容易地增加。(6)可伸缩性企业必须要选择一种服务器端平台,以便满足那些在它
20、们系统上进行商业动作大批新客户。基于J2EE平台的应用程序可被部署到各种操作系统上,例如,可被部署到高端UNIX或其他的大型机系统上。J2EE领域的供应商提供了更为广泛的负载平衡策略,能消除系统中的瓶颈,允许多台服务器集成部署,实现可高度伸缩的系统,满足未来商业应用的需要。(7)被广泛接受主要的IT供应用商都采纳EJB体系结构,不同供应商的产品只要符合EJB体系结构,就都是可互操作的。(8)保护投资由于企业必须适应新的商业需求,充分利用现有的企业信息系统投资,而不是重新制定,全盘更新方案就变得尤为重要,这样,一个以渐进的(而不是激进的,全盘否定的)方式建立在现有系统之上的服务器平台是大多数公司
21、所希望的。J2EE架构可以充分利用用户有的投资,通过允许将现有的信息系统和资产“包裹”在J2EE应用程序中,不要求客户更换现有技术。事实上,在关系数据库中存储数据的企业,已经有了一套已具雏形的实体Bean,正等着通过EJB外壳去访问。这之所以成为可能,主要是因为J2EE拥有广泛的业界支持和一些重要的“企业计算”领域供应商的参与,每一个供应商都对现有的客户提供了不用废弃自己已有投资的升级途径。由于基于J2EE平台的产品几乎能够在任何操作系统和硬件运行,现有的操作系统和硬件也能被保留使用。2)MVC模式模型视图控制器(MVC)是Xerox PARC在八十年代为编程语言Smalltalk80发明的一
22、种软件设计模式,至今已被广泛使用。最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP 的开发者的欢迎。MVC模式的好处各施其职,互不干涉。在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码。网页设计人员可以进行开发视图层中的JSP,对业务熟悉的开发人员可开发业务层,而其它开发人员可开发控制层。有利于组件的重用分层后更有利于组件的重用。如控制层可独立成一个能用的组件,视图层也可做成通用的操作界面。MVC(Model-View-Controller)应用程序结构被用来分析
23、分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。MVC结构提供了一种按功能对各种对象进行分割的方法(这些对象是用来维护和表现数据的),其目的是为了将各对象间的耦合程度减至最小。MVC结构本来是为了将传统的输入(input)、处理(processing)、输出(output)任务运用到图形化用户交互模型中而设计的。但是,将这些概念运用于基于Web的企业级多层应用领域也是很适合的。在MVC结构中,模型(Model)代表应用程序的数据(data)和用于控制访问和修改这些数据的业务规则(business rule)。通常模型被用来作为对现实世界中一个处理
24、过程的软件近似,当定义一个模型时,可以采用一般的简单的建模技术。当模型发生改变时,它会通知视图(View),并且为视提供查询模型相关状态的能力。同时,它也为控制器(Controller)提供访问封装在模型内部的应用程序功能的能力。一个视图(View)用来组织模型的内容。它从模型那里获得数据并指定这些数据如何表现。当模型变化时,视负责维持数据表现的一致性。视同时将用户要求告知控制器(Controller)。控制器(Controller)定义了应用程序的行为;它负责对来自视的用户要求进行解释,并把这些要求映射成相应的行为,这些行为由模型负责实现。在独立运行的GUI客户端,用户要求可能是一些鼠标单击
25、或是菜单选择操作。在一个Web应用程序中,它们的表现形式可能是一些来自客户端的GET或POST的HTTP请求。模型所实现的行为包括处理业务和修改模型的状态。根据用户要求和模型行为的结果,控制器选择一个视作为对用户请求的应答。通常一组相关功能集对应一个控制器。(1)各施其职,互不干涉在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码。假如业务发生了变化,如在取文章时可能webmaster把一些文章作了无效标志,不能直接把所有文章取出来,只能取出有效的文章,这时业务就发生了改变。再设想一下,如果这个业务逻辑在100个页面中都要
26、用到,那么MVC模式就体现了它的灵活性。我们可以不更改任何JSP,只要更改model层中的相应类中的SQL语句即可。(2)有利于开发中的分工在MVC模式中,由于按层把系统开,那么就能更好的实现开发中的分工。网页设计人员可以进行开发视图层中的JSP,对业务熟悉的开发人员可开发业务层,而其它开发人员可开发控制层。(3)有利于组件的重用分层后更有利于组件的重用。如控制层可独立成一个能用的组件,视力层也可做成通用的操作界面。3)struts2框架的使用此次程序中主要的是引入了Struts2和hibernate框架。传统的java web应用程序是采用jsp+servlet+javabean来实现的,这
27、种模式实现了最基本的MVC分层,使得程序结构分为几层,有负责显示的jsp、负责流程逻辑控制的servlet、负责数据封装的javabean。但是这种结构仍然存在问题:如jsp页面中需要使用符号嵌入很多的java代码,造成页面结构混乱,servlet和javabean负责了大量的跳转和运算工作,耦合紧密,程序复用度低等等。于是便是首先出来了Struts。而Struts 2是Struts的下一代产品,是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心
28、,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2只有很小的变化。Struts2使用了WebWork的设计核心,而不是Struts1的设计核心。Struts2中大量使用拦截器来处理用户的请求,从而允许用户的业务逻辑控制器与Servlet API分离。Struts2 框架由3个部分组成:核心控制器(FilterDispatcher)、业务控制器和用户实现的业务逻辑组件。核心控制器(Filt
29、erDispatcher)是Struts2框架的核心控制器,该控制器作为一个filter运行在web应用,它负责拦截所有的用户请求,当用户请求到达时,该Filter会过滤用户请求;业务控制器组件就是用户实现Action类的实例;JavaEE应用里的模型组件,通常指系统的业务逻辑组件,而隐藏在系统的业务逻辑组件下面的可能还包含Dao、领域对象等组件,这也就是Struts2的模型组件,同时Struts2能使用JSP、FreeMarker、Velocity等作为视图技术。Struts 2框架的大致处理流程如下:(1)浏览器发送请求,例如请求/mypage.action、/reports/myrepo
30、rt.pdf等。(2) Control中的核心控制器FilterDispatcher根据请求调用相应的业务逻辑控制器(Action)。(3)回调Action中的execute()方法,并在方法体内调用业务逻辑组件来处理请求(Model)。既可以是将数据保存到数据库,也可以从数据库中检索信息。实际上,因为Action只是一个控制器,它会调用业务逻辑组件来处理用户的请求。(4)返回响应,通过execute方法将信息返回到FilterDispatcher。(5)查找响应,FilterDispatcher根据配置查找响应的是什么信息如:SUCCESS、ERROR,将跳转到哪个jsp页面。(6)响应用户
31、(jsp-客户浏览器端显示)。 4)Hibernate的使用Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。减低各个模块之间的耦合性。5)Spring的使用Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创
32、建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。传统J2EE应用的开发效率低,应用服务器厂商对各种技术的支持并没有真正统一,导致J2EE的应用没有真正实现Write Once及Run Anywhere的承诺。Spring作为开源的中间件,独立于各种应用服务器,甚至无须应用服务器的支持,也能提供应用服务器的功能,如声明式事务、事务处理等。Spring致力于J2EE应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说Spring是企
33、业应用开发的“一站式”选择,并贯穿表现层、业务层及持久层。然而,Spring并不想取代那些已有的框架,而是与它们无缝地整合。3、 开发工具Myeclipse的选择Eclipse 是一个IDE(Integrated Developing Environment),而这个IDE是允许安装第三方开发的插件来使自身的功能得到扩展和增强的,而Myeclipse就是其中的一种有名的插件集之一,MyEclipse将开发者常用到的一些有用的插件都集合起来,但它是收费的。Eclipse是一个开放源代码,基于Java的可扩张的开发平台,多数人都是将Eclipse作为Java的集成开发环境使用,虽然Eclipse使
34、用Java开发:但Eclipse不仅仅局限于Java开发,还可用于其它语言的开发,如C/C+;Eclipse是一个框架和一组服务,它通过各种插件来构建开发环境,因此只要提供支持C/C+ 插件便能进行相应语言的开发。MyEclipse为Eclipse提供了一个大量私有和开源的Java工具的集合,这解决了各种开源工具的不一致和缺点。NitroX是一个繁杂而强大的加速Java Web应用开发的工具,还包含了一个强大且能够编译所有JSP和Struts Web应用的工具AppXRay。这些工具解析Java和XML配置文件。MyEclipse的实际价值来自包含的发布包中的大量的工具。如CCS/JS/HTM
35、L/XML的编辑器,帮助创建EJB和Struts项目的向导并产生项目的所有主要的组件如action/session bean/form等。还包含编辑Hibernate配置文件和执行SQL语句的工具。 2.2 需求分析从一个企业的角度来设计这个网站,首先要了解用户需要什么,从这一点出发来把这个软件的内容填充起来。在满足用户的基础上对网站功能的一个丰富化,每当做完一个功能就站在客户的立场对功能进行评测,如果有需要改善的地方,则在慢慢的进行完善。本软件主要是对企业的员工进行的一种管理,人员的工资,所属部门,考勤进行统一的管理。这里涉及到的不同的公司里面可能所需要的赏罚制度不一样所以就没有更多的进行。
36、本系统就是一个架构原型,在此功能上可以更加的完善和美化。2.2.1 系统用户本系统有定义了两个用户,普通用户,管理员,不同用户能够执行的功能是不一样的,普通用户只能查看自己的信息,管理员可以对每个员工的信息,部门信息进行增删改查操作。2.2.2 系统功能需求(1)用户登录用户在登录系统的时候首先是进入系统的登录界面,前面接受的用户名,密码以及所属身份权限去后台进行验证,如果用户名不存在返回登录页面,如果存在用户名则就验证密码,如果密码也存在就成功跳转到菜单页面,如果密码错误则返回登录页面,并提示相应信息。(2) 系统功能分析本系统主要是考虑对公司人员的一个管理,从基本功能出发,首先是员工,其次
37、是部门,再者是考勤,最后是工资。还有一个系统功能是用户来自己修改自己的登录密码。员工:满足添加一个员工,对员工的增删改查等操作。在这里也可以对员工的身份权限和职位进行管理。在这里当添加一个员工的时候就为其分配了身份权限,以及记录了所对应的职位。每个员工在建立的时候都默认的为其分配了一个相应的用户名和密码,用户名就是为其分配的员工编号,密码开始默认为6个0。员工添加了以后,员工可以去系统用户管理界面对自己的密码进行修改以防止有人冒用。部门:考虑到一个公司里面的部门可能是因为一些事情的原因,因而进行了某些变动,通过这里可以对部门进行修改。考勤:公司里面难免少不了员工的迟到,缺勤等诸多事情,在这个时
38、候考虑人事部此时要了解信息,并且对人员在进行合理的分配要做出一定统筹安排。工资:不同的员工根据能力的不同因而给的报酬也相应的不同,从这里入手对员工工资进行一个管理。3 系统设计3.1 系统架构设计我把整个系统划分为四大块,视图层,控制层,业务层,持久化层。视图层主要负责向用户显示或者向后台传递数据,而控制层则是实现对前台数据传来的值进行判断和控制,通过与业务层之间的接口来实现数据的传入和传输,之间的通过单一接口来降低模块之间的耦合性。从而方便与代码的修改和后期的功能添加。3.2 系统功能模块设计 系统功能模块划分如图3-1所示,主要分为员工信息管理页面、部门管理页面、考勤页面、工资页面和系统管
39、理页面。 企业员工信息查询系统系统管理 考 勤部门管理员工工资管理员工信息管理考勤查看考勤登记员工工资查询登陆密码修改部门添加部门查找员工添加员工查找图3-1 企业员工信息管理系统功能模块图3.2.1 登录页面登录成功后进入主菜单页面,失败则返回登录页面,并且提示错误信息。页面根据登录人员的权限进入不同主菜单页面,只有管理员才能进行更多的操作,而普通用户只能进行少部分的操作。具体流程如图3-2所示。 开 始 登 录 N 验 证 Y 根据不同的权限进入不同菜单页面图3-2 系统登录流程图3.2.2 模块分析1、员工信息管理设计管理员可以对员工进行增删改查的操作,而普通用户只能进行查询。如图3-3
40、所示。全部员工信息查看 管理员用户 员工信息管理模块员工信息修改员工信息删除员工信息添加自身信息查看 普通用户图3-3 员工信息管理功能模块关系图(1)增加用户页面对员工的基本信息进行添加,员工的基本信息如图3-4所示。 职员编号职员姓名 民族 性别家庭地址文化程度婚姻状况 职工基本信息固定电话出生日期 手机部门号入职时间图3-4 员工基本信息E-R图(2)员工信息查看可以查看员工的信息,对员工的信息作相应的修改,并且能删除员工信息。 具体流程如图3-5所示。员工查找 详细查看 员工查看 员工信息管理员工信息修改员工信息删除图3-5 员工查看流程图2、部门管理设计只有管理员才能对部门进行进行增
41、删改查的操作。具体的部门信息如图3-6所示。 部门编号部门电话部门名部门经理设立时间 部门信息图3-6 部门信息E-R图部门的查看流程如图3-7所示。部门查找 部门查看部门信息修改 部门管理部门删除图3-7 部门查询流程图3、 系统用户信息这里不管管理员还是普通员工都可以修改自己的登录密码。密码修改流程如图3-8所示。 密码修改输入旧密码和新密码 修改成功 返回登录页面图3-8 用户密码修改流程图4、考勤页面设计只有管理员有对员工迟到,早退,缺勤考勤登记的权限,普通员工的只有请假的权限考勤进行增查改。如图3-9所示。员工考勤查询 管理员用户 考勤管理模块 员工考勤登记 自身考勤查看 普通用户
42、请 假 图3-9 考勤管理功能模块关系图5、 工资管理这个功能只有管理员才能够使用。本系统已经制定了赏罚制度,就是迟到扣除多少钱,早退扣除多少钱,等如此类的赏罚,本系统根据不同的职位设定的基础工资不同,在原有的基础工资上进行了进行赏罚。对赏罚制度设定了一个算法,用来计算每个员工的工资。3.3 业务实体设计业务实体在内存中表现为实体域对象,在数据库中表现为关系数据。实现业务实体包括以下内容:(1) 设计域模型,创建域模型实体对象。(2) 设计数据模型。3.4 设计域模型企业员工信息管理中用到的实体包括员工信息表(worker)、登录信息(login)、部门信息(department)、职位(jo
43、b)、员工职位(staffjob)、考勤(duty)。具体含义如下。员工信息表(worker):是一个员工信息的实体,包含的属性主要有员工姓名(workerName)、员工编号(workerCd)、民族(nation)、电话(telephone)、家庭电话(hometelephone)、家庭住址(address)、文化程度(educational)、婚姻状况(marriage)、出生年月(birthday)、性别(sex)、部门编号(deptcd)、入职时间(stime)。登录(login)实体内容如下:员工登录账号(useId),员工姓名(useName)、员工登录密码(usePasswor
44、d)、员工权限(use_flg)。部门信息(department)实体的内容如下:部门编号(deptId)、部门名(deptname)、部门经理(deptmanage)、部门电话(telephone)、设立时间(deptime)。职位(job)实体如下:职位id(managecd)、职位名(manage_name)、薪水(job_salary)。员工职位(staffjob)实体如下:员工编号(staffcd)、职位编号(managecd)。考勤(duty)实体如下:id(dutyId)、员工编号(workerCd)、员工姓名(workerName)、开始时间(duty_time1)、结束时间(
45、duty_time2)、部门编号(deptId)、考勤状态(duty_type)。3.5 设计数据模型员工信息表(worker)、登录信息(login)、部门信息(department)、职位(job)、员工职位(staffjob)、考勤(duty)、在数据库中都有相对应的表。下面就详细说明各个表之间的关系,以及表所对应的属性。员工表(worker)见表3-1。表3-1 worker员工表 字段说明列名字段属性null键值员工编号workerCdvarchar(50)nopk员工名workerNamevarchar(50)no电话hometelephonevarchar(50)no手机tele
46、phonevarchar(50)no家庭住址addressvarchar(50)no性别sexvarchar(50)no民族nationvarchar(50)no出身年月日birthdayvarchar(50)no文化程度educationalvarchar(50)no婚姻状况marriagevarchar(50)no入职时间stimevarchar(50)no部门编号deptcdvarchar(50)noFk登录表(login)见表3-2,其中包括登录id,员工帐号,员工密码。表3-2登录表 字段说明列名字段属性null键值员工登录账号useIdvarchar(50)nopk员工姓名useNamevarchar(50)no员工登录密码 usePasswordvarchar(50)no员工权限use_flgvarchar(50)no部门表(de