• 12.28 MB
  • 2022-05-17 13:17:34 发布

基于webkey平台考勤管理系统设计和实现

  • 70页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
学位论文原创性声明本人所提交的学位论文《基于WebKey平台的考勤管理系统的设计与实现》,是在导师的指导下,独立进行研究工作所取得的原创性成果。除文中己经注明引用的内容外,本论文不包含任何其他个人或集体己经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均己在文中标明。本声明的法律后果由本人承担。论文作者(签名):曳:选铷,;年厂月芗,目指导教师确认(签名).研听哆矽,三年乡月夕。日学位论文版权使用授权书本学位论文作者完全了解河北师范大学有权保留并向国家有关部门或机构送交学位论文的复印件和磁盘,允许论文被查阅和借阅。本人授权河北师范大学可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或其它复制手段保存、汇编学位论文。(保密的学位论文在——年解密后适用本授权书)论文作者(签名):鞑vote,年f月317日 摘要WebKey是河北省中信联信息技术有限公司设计研发的基于B/S架构的电子政务开发平台。它应用了基于角色的访问控制策略,拥有强大的组织机构管理和内容管理功能,具备丰富的二次开发接口,具有易扩展和平台无关性等优点,是一款优秀的定制平台开发工具。针对中国现代企业考勤管理的现状,本项目提出了以企业内网为依托,以WebKey为底层框架的企业考勤管理系统开发新模式。本文以x省中国人寿保险股份有限公司(简称:国寿)为实例,设计并实现了基于WebKey平台的考勤管理系统。本文的主要工作包含以下几个方面:’1.针对国寿提出的考勤管理需求,准确定位系统中上下班登记、异常考勤申诉、.请销假多级审批和考勤日历管理等主要功能。详细分析了其复杂的业务流程,选用UML对系统总体功能和业务流程进行建模,重点阐述了审批流程中涉及的多层级单位、部门与人员之间的关系。2.针对用户方提出的易于后期维护、业务可扩展性高以及良好的用户体验度等问题,本文详细设计了考勤管理、请销假管理、工作日志与计划管理和考勤日历管理四个子系统。设计重点包括:上下班登记、异常考勤申诉和请销假审批三个业务流程,满足用户l8种考勤管理和多种类型的请销假管理。操作简单,适于各级单位的员工使用。3.针对国寿的多层级组织管理架构,本系统采用基于WebKey平台的组织机构管理、内容管理和角色权限控制等模块进行二次开发,简化了开发流程。系统管理员只需简单操作,即可实现多级、多层次的复杂组织机构管理,提高了系统后期的可维护性。本系统采用jQuery技术实现了系统的动态Web页面浏览,使用户登录和考勤管理操作更为流畅。4.系统充分考虑到员工上下班等时段的高并发量,在部署时采用了l台数据库服务器,3台应用服务器,由其中l台应用服务器提供系统访问量的分流服务,使得整个系统达到负载均衡。该系统现已正式应用于国寿省、市、县三级约180个单位,可同时满足6000余员工上下班考勤登记以及请销假等考勤管理。经测试,系统展现了良好的响应速度及稳定性,提升了企业的业务处理效率。 IV关键词:WebKey平台SSH架构角色基于角色的访问控制审批流程 AbstractWebKeyisane.governmentdevelopmentplatformbasedonB/SstructureWhichisdesignedbyUniwinInformationTechnologyCo.,Ltdin.HebeiProvince.Itisanexcellentcustomplatformdevelopmenttoolapplyingrole—basedaccesscontrolpolicywithapowerfulmanagementstructureofcontentmanagementcapabilitiesandawealthofsecondarydevelopmentinterface.ItiseasytOexpandandirrelevanttoplatformindependenceInaccordancewiththecurrentattendancemanagementstatusofmodernenterprises,thisprojectproposesanewmodelofenterpriseattendancemanagementsystem.ItisbasedontheenterprisenetworkandemploysWebKeyastheunderlyingframework.TakingChinaLifeInsuranceCo.,Ltd.XBranch(CL),thispaperdesignedandimplementedtheattendancemanagementsystemonthebasisofWebKeyplatform.Thispapermainlyincludesthefollowingaspects:1.AccordingtotheattendancemanagementneedsofCL,itfirstaccuratelydefinedthemajorfunctionsofthesystem.ItmainlyincludestOandfromworkregistration,abnormalattendancerepresentations,multi—levelapprovalsystemofaskingforleaveandterminatingleaveandattendancecalendarmanagement.Afteradetailedanalysisofitscomplexbusinessprocesses,itselectsUMLtomodeltheoverallfunctionandbusinessprocessofthesystem,specificallyillustratingtherelationshipsbetweenthemulti—levelunits,departmentsandpersonnelinvolvedintheapprovalprocess.2.Fortheproblemofafter—saleeasymaintenance,highscalabilityandgooduserexperiencedegrees,thispaperdesignedfoursubsystemsofattendancemanagement,askingforleaveandterminatingleavemanagement,worklogandplanningmanagementandattendancecalendarmanagementindetail.Itfocusesonthreebusinessprocessofworkregistration,abnormalattendanceappealandleaveapproval.Asitcanmeettheusers’18attendancemanagementandvariouskindsofleavemanagementwithitseasyoperation,thissystemissuitableforemployeesofallunitstouse3.AstoCL’Smultiple—levelstructuremanagement,thissystemadoptedmanyWebKey—basedmodelssuchasstructuremanagement,contentsmanagementandroleaccessV controlmanagementtoconductsecondarydevelopmentwhichsimplifiedthedevelopmentprocedure.Thesystemadministratorcanrealizemultistageandmulti-levelcomplexorganizationmanagementwithonlysimpleoperation,thusimprovingthemaintainabilityofthesysteminthelateperiod.ForthissystemadoptsjQuerytechnologytoachievethedynamicWebpagebrowsing,itmakestheusers’moresmoothly.109inandattendancemanagementoperation4.Fullyconsideringthehighconcurrencyofthestaffduringtherushhour,weuseonedatabaseserverandthreeapplicationservers,inwhichoneapplicationserverprovidesthesystemoftrafficdistributionservices,makingthewholesystemachieveloadbalancing.Thissystemhasbeenformallyappliedinabout180unitsofprovince.cityandcountylevelsofCL.Itcansatisfytoandfromworkattendanceregistrationandleavemanagementofmorethan6000staffatthesametime.Aftertesting,thesystemhasshowedgoodresponsespeedandstability.ItgreatlyimprovedtheefficiencyofenterprisebusinessprocessKeywords:WebKeyplatform,SSHStructure,Role-baseaccesscontrol,ApprovalprocessVl 目录摘要⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯IIIAbstract...................................................................................................................................................,...........V录⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..viil绪{仑⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.11.1项目背景及意义⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯11.2国内外发展现状⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一21.2.1电子政务国内外发展现状⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.21.2.2考勤管理系统国内外发展现状⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.31.3论文组织结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯42相关技术⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯62.1SSH框架概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯62.1.1Struts概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯62.1.2Spring概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯72.1.3Hibernate概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯82.2jQuery框架概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..92.3WebKey平台概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯102.3.1WebKey平台架构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯102.3.2WebKey平台特征⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯112.4基于WebKey平台的考勤管理系统的优势⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯152.5本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯163系统需求分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯173.1系统建设目标⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.173.2系统角色分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯173.3系统用例描述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯~203.4系统总体功能需求⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一243.4.1考勤管理子系统⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯253.4.2请销假管理子系统⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯263.4_3工作日志与计划管理子系统⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.27V11 3.4.4考勤日历管理子系统⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.293.5本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯294系统详细设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯304.1系统架构设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯304.2数据库设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯304.2.1数据库设计原则⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯304.2.2概念模型设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.3l4.2.3逻辑模型设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯324.2.4物理模型设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。..⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯334.3系统主要业务处理流程设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯404.3.1异常考勤申诉审批模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.404.3.2请假审批模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.424.4本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯455系统实现、部署与测试⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯465.1系统开发及运行环境⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯465.1.1系统开发环境⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯:⋯⋯⋯⋯⋯一465.1.2系统运行环境⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯465.2系统整合架构的配置⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯475.2.1Struts和Spring整合⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯475.2.2Spring和Hibernate整合⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯485.3系统实现⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一495.3.1多层级组织机构管理的实现⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.495.3.2系统主要功能的实现⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.495.4系统部署⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯545.5系统性能测试⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一555.6本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.566结论与展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一576.1总结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一576.2展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯57参考文献⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯59VIll 致谢⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯62攻读学位期间取得的科研成果清单⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯63lX 1绪论1.1项目背景及意义电子政务(e.Government)是政府部门利用信息化技术,冲破时间和空间的约束,将政府管理、服务业务以及企业管理、营销业务等通过精简、优化、整合后在现代化网络平台上得以实现。目前,已经成为世界各国政府公共管理、企业管理中创新改革的战略性抉择⋯。然而电子政务项目在建设和运行维护与管理过程中依然存在许多问题,主要包括以下几点12】:(1)立项管理。在立项管理过程中存在的主要问题是电子政务项目的审批业务不够细化,这就注定了很多项目在后期使用和运维的失败。主要体现在需求分析不清楚、建设目标不明确、项目建设实施的技术水平考虑不全面以及应用条件不充分等方面。由于以上问题,导致项目在建设过程中不断变换目标,后期使用过程中不断投入资金进行变更或升级。造成这种局面的主要原因是缺少细化有效的立项审批决策体系。(2)建设管理。在建设管理过程中存在的主要问题是对项目的统筹力度不足,缺乏有效、统一的项目建设统筹机制是造成这些问题的根本原因。主要体现在数据库重复建设、相关联的业务流程不衔接、同类用户所使用的系统无法整合等方面。(3)系统运行维护管理。目前主要问题是管理水平不高,具体体现在管理手段欠缺、运维外包缺乏有效管理和运维经费控制不足等方面。以上问题不仅困扰着电子政务的发展,而且对我国政府加快转变职能、加强公共管理和服务、提高企业效益和工作效率、促进社会经济的快速发展产生不利影响。目前,企业正向信息化管理方向迈进,能够稳步发展的前提是拥有强大的人力资源管理作后盾,其中员工考勤管理是人力资源管理的核心组成部分,信息化管理考勤己成为企业经营战略工作中的关键因素。传统的考勤管理由于很多人为因素导致考勤统计不公正、不全面、透明度低。因此以中小型企业的考勤管理业务为背景,结合科学管理的理论,设计并开发一个信息化考勤管理系统。针对中国现代企业考勤管理的现状,本项目提出了以企业内网为依托,以WebKey电子政务平台为底层框架的企业考勤管理系统开发新模式。本文以X省中国人寿保险股份有限公司(简称:国寿)为实例,设计并实现了基于WebKey平台的考勤管 理系统。1.2国内外发展现状1.2.1电子政务国内外发展现状越来越多的国家开始注重电子政务的发展,其中包含两方面的原因131:(1)政府在社会中作为信息量最大的拥有者和处理者,如果充分利用现代化信息技术,可以使政府处理业务的有效工作率得到极大地提高,为建设一个勤政、廉洁和有现代活力的服务型政府奠定了基础。(2)为建设一个更好地为社会公众和企业服务的政府提供了很好的机会,使公众可以便捷的参与到政府的各项制度、决策的制定过程中,实现服务于民的目标美国电子政务的基本框架可概括为如下几点【4】:(1)建立基于公众的政府运作项目,系统会自动处理所有的跨部门申请事项;(2)为增强标准化和交互性,采用提供共同获取信息的方法、统一的信息技术工具和服务措施,使得政府各部门均可共享信息,降低了某部门对信息技术个性化的需求;(3)促使政府面对公众服务,实现一次登录便可享受政府的各项服务以及获取政府的各类信息。英国建立电子政务有如下原则f5】:(1)为公众提供多种可以选择的服务方式。公众可以选择传统的政府服务还是电子信息化的传送政府服务:(2)为获取公众的信任,政府遵守相关法律法规,保证收集信息过程的正当性和发布信息内容的准确性;(3)建立电子信息化单一窗口,将政府各部门连接在一起,为公众提供便捷的政府服务通道,保证24小时全天候服务:(4)将政府各部门组织机构问的资源共享、功能重组,以简化系统,能有效降低政府的财政支出:(5)利用现代信息化技术提高行政效率,以满足快速回应公众的需求:(6)为保证电子环境的安全和可靠性,采取相关的安全机制。在我国,为提升企业效益和工作效率以及政府部门的信息化管理水平,信息化建设已经成为产业结构升级的重要环节。在《2006.2020年中国信息化战略发展规划》中明确提出:到2010年基本建成覆盖全国的统一的电子政务网络,建立信息资源公开和共享机制。我国的政务信息化进程大致分为三个阶段【5I:第一阶段:是个人办公工具软件阶段,该阶段以桌面文字处理工具为典型,利用计算机应用,提高了个人的工作效率;第二阶段:是C/S体系结构应用阶段,该阶段主要基于关系型数据库技术,基本实现了部门间的数据和公文处理等自动化:第三阶段:是符合Internet/Intranet技术标准的平台应用阶 段,该阶段在技术提升的前提下,应用范围目前己扩展到行业、系统内部,甚至跨系统,实现了极大的拓展。在市场经济不断发展和公共事务管理效率不断提升的现状下,信息化建设高速发展。然而政府在信息化建设过程中,由于各部门职能需求不同,并且各类业务系统的开发没有统一的技术标准,因此这些异构系统就形成了~个个的“信息孤岛”161,导致各系统之问难以兼容,信息资源无法共享,各部门问无法实现连通。这样不但造成人力、财力和时间的浪费,而且还造成大量信息资源的浪费。经过长时间的探索和研究,发现J2EE规范可以很好的解决信息孤岛的问题,越来越多的电子政务平台基于J2EE(Java2EnterpriseEdition)进行开发。J2EE是由SUN公司和各国主流厂商共同制订的业界相关技术的规范,凡是基于此标准创建的应用程序都可运行其上l71。J2EE为应用服务器的实现提供了具有标准化、易扩展和互操作等特点的完整的底层框架,提高了应用的可操作性和灵活性,降低了应用整合的风险和代价,有效保护了用户的投资。目前J2EE的发展趋势逐渐呈现为以下几点18】:(1)逐渐向套件化发展。由于各应用服务器产品的基本功能现己呈现出相似性的特征,为提升自身的竞争优势,各厂商逐渐将关注重点转变为增强应用产品的增值服务以及提高自身的使用性能。(2)增加了对SOA的支持。伴随着WebServices标准的发布,并大量应用于工具和产品中。这种面向服务的架构已经作为下一代Web服务的技术架构受到越来越多的关注和应用,各种迹象表明SOA架构的理念已经趋于成熟,可以进入全面实施的阶段。(3)向企业业务领域发展,着重关注企业的业务流程。根据行业内部不同的业务流程开发不同的信息产品,例如:SCM,ERP,CRM等。如果再遵循统一的应用服务器架构标准,这些产品只需关注于各自领域的业务流程需求即可,解决了企业后期添加使用的各类信息产品之间无法兼容的窘境。综上所述,应用服务器正向越来越宽广的领域发展,基于J2EE架构的屯子政务平台可以满足各个行业业务上的需要,可以满足政府、企业全天候的运作,可以保留现存,o的IT资产,可以支持异构环境,使开发变的简单、快捷,是现代电子政务平台建设的理想选择。1.2.2考勤管理系统国内外发展现状为深入分析研究考勤管理系统,柏德瑞(Bodrean)和布罗德里克(Broderlic)曾针 对《财富》杂志上全球500强企业实施考勤管理情况进行深入调查,发现其中大多数企业都已经运用现代化信息技术对员工的个人资料、考勤信息、考勤统计和请销假等进行管理,可见考勤管理系统对提升企业竞争力有很大的助推力。诺伊等人提出了使用统一的应用服务器架构标准,通过系统重组、业务流程再造等来提升考勤管理职能的适用和有效性。国内以陈朝晖、吴相林、李健等人为代表,也对考勤管理系统进行了大量分析。陈朝晖提出了基于业务流程控制的考勤管理系统模型,提出了考勤管理的新架构;吴相林提出了基于统一建模语言(UML)的考勤管理系统的建模和开发理论;李健研究了考勤管理社会共享系统等I引。在对大量考勤管理系统进行深入调研分析后,发现目前考勤管理项目建设在管理和集成方面存在以下问题lIol:(1)缺乏科学化、智能化的管理。目前现存的考勤管理系统在信息统计和管理方面的技术己趋于成熟,但在科学化、智能化管理方面没有将先进的管理思想、清晰的审批流程和评价分析机制融入其中,仍存在一定的缺陷。(2)不同时期开发的系统集成困难。目前企业管理信息化过程无法实现一步到位,一般都是分阶段、分单位、分部门完成的。例如:企业先期引进了客户关系管理系统,一段时间后又引进了薪酬管理系统,随后建立了考勤管理系统,然而这些系统并非全部由同一个开发团队负责开发的,其使用的开发标准和平台未必相同,问题就随之产生了:各信息管理系统是独立的,因此难以实现信息的相互交流和数据的共享,导致企业的信息无法完全集中管理,增加了员工的工作量,降低了企业的运作效率。因此,系统集成与后期业务拓展是考勤管理系统的开发过程中必须考虑的问题。1.3论文组织结构本篇论文共包括六个章节,具体研究内容和章节安排如下:第一章,阐述了基于WebKey平台的企业考勤管理系统的开发背景和意义,以及电子政务平台和考勤管理系统在国内外的发展现状,并说明了课题研究目标和论文的组织结构。第二章,引入了Struts、Spring、Hibernate等开发框架以及相关技术,分别论述了其优势和特点。对WebKey平台的架构和特征进行概述,并阐述了基于WebKey平台的考勤管理系统的优势。4 第三章,根据用户的需求对系统进行详细分析,采用UML语言针对系统的角色功能进行用例和业务流程的建模。第四章,基于考勤管理系统的需求分析,对其进行详细设计。主要包括系统的总体架构设计,数据库的设计原则,数据库概念模型、逻辑模型和物理模型的设计,以及各功能模块和业务处理流程的设计。第五章,阐述了系统的开发及运行环境、基于WebKey架构的配置以及系统的部署、实现和性能测试。第六章,总结了本课题的主要研究工作,并对系统的应用前景进行分析和展望。 2.1SSH框架概述2.1.1Struts概述2相关技术Struts是Apache软件基金会赞助的项目,是基于MVC分离思想的产品,体系结构如图2.1所示。状态查询模型封装应用程序状态..响应状态查询·虚用程序功能通知视图改变状态改变通知改变梢攒篓求⋯图卜定义淼融解析模型选择视图卜幸㈨,篇:三:j。乩蠛毳黧篙·⋯求糊,鬻鬻两发送用户请求给控制器.‘用户请求付川7,裂!I翟!::篡挚炎圳I允许控制器选择视图地¨叫川1刚阢凹图2.1Struts体系结构图由ActionServlet(中央控制器)的Servlet充当控制器(Controller)角色,获得用户的请求后,根据struts.config.xml配置文件调度模型(Model)、视图(View)、控制器之间对应逻辑关系,反馈View的请求,通过ActionForm对象封装数据,在Model和View间交互使用㈨’21。Struts框架的运行流程如图2.2所示。6 旱j\臣Systeml,ogin.JspI巨ActionServletOperatorLo,ginActionl—Opera亟torLog徊inForm叵Busin季essO回bjectciiejtI.用户枣送请求、:|_———————T—————]!:望!!塑查塑鍪型生!!!!!!生!、::;3.用』’·请求映射至喃应Acti。。。::I——————————1I4.调用ActionFmlmtll数据IIP—————————————————————_I:5,调用业务逻辑!:竺:!!兰::兰::■7I6.更新ACtionFOFinftl数据II一⋯I—————————————d7.返回ActionFmwaltJ7II∈————————————1:8.Acti。nFOFWSI"d弗向响应、isp负面:F9.产0:响陵视网If目圆圆网同图2.2Struts运行流程图用户提出请求,由ActionSm,vlet类负责接收,并将用户请求信息封装到ActionForm类中,根据ActionMapping组件找到用户请求的Action,将封装好的ActionForm类传给Action,然后由Action类调用相关的业务逻辑,通过ActionForward组件找到用户的请求页面,最后将运行结果产生的响应视图反馈给用户Illl。2.1.2Spring概述Spring是由RodJohnson创建的一个开源框架。它是为解决企业级应用程序开发的复杂性而创建的,且可以实现应用开发的可测试性和松耦合性等特征。Spring具有以下主要特点㈣:(1)轻量级开源框架:从大小上来说,整个Spring框架可以打成一个2.5MB的Jar包。从应用开发来说,一个复杂的应用只需使用简单的组件配置就可实现,Spring提供了许多功能,开发人员的关注点只需放在应用逻辑上。Spring框架中,应用中的对象通过XML文件进行配置。(2)依赖注入:使用依赖注入(DI)来实现非侵入式工作方式,是一种松耦合技术。(3)面向切面:支持面向切面编程,允许通过分离业务逻辑与系统服务进行内聚性开发,增强了业务逻辑独立性。 (4)容器:由于Spring管理着应用对象的生命周期和配置,配置它们之间的关联关系。Spring框架主要分为七大模块‘141,如图2.3所示。ORM映射模块提供对Hibernate、JDO、和IbatiS的支持Web模块包含Web上下文和其它Web任务+士圭。.:竺鞣棼丢。审垃包含上A下pp文li模ca块ti。。支持DAo与JDBc和事务c。蒜ext容器和食美服务及验证功能SpriI]gMVC框架包含Web控制器与视图和国际化功能Spt’ing的核心模块包含核心容器和支持的工具类图2.3Spring框架体系架构图Spring框架各模块的主要功能:(1)核心容器(SpringCore)模块。为Spring框架提供核心功能,作为Spring整体框架的基础,提供基于依赖注入的构件组装机制,通过控制反转可以成功的将应用程序的配置和依赖性规范与实际的应用程序代码进行分离:(2)上下文(SpringContexl)模块。位于Core模块的上层,通过配置文件为Spring框架提供上下文信息;(3)SpringDAO模块。提供了JDBC抽象层结构和数据库访问控制工具,便于管理各种异常处理和错误消息,降低了开发时异常代码的编写数量;(4)SpringORM模块。提供了对Hibernate、JDO等ORM框架的支持:(5)SpringAOP模块。提供了面向方面的编程,以动态织入的方式提高开发效率,降低系统复杂性,提升了系统的可扩展性和复用性:(6)Sp]。ingWeb模块。Web上下文模块位于上下文模块的上层,提供简化了将请求参数绑定到域对象和处理多部分请求的任务:(7)SpringMVC框架。通过策略接口,MVC框架变为高度可配置的,且支持无需绑定到特定J2EE服务的可重用业务和数据访问对象|15】。综上所述,Spring使用JavaBean完成以前只能由EJB完成的事情,简化了企业应用开发过程,采用SpringMVC框架在各个方面表现的都是很出色的,符合我们的基本需求。2.1.3Hibernate概述Hibernate是采用ORM映射机制进行持久层数据开发的工具,提供数据缓冲以及数据查询等功能。为实现通过HibernateAPI进行数据库访问的目的,Hibernate将SQL操 作完全封装为对象化操作,无需关心底层数据库操作。有效的节省和对象持久化有关的JDBC代码工作量。在实际项目开发中,使用Hibernate作为数据持久层框架,通过Hibernate配置和ORM映射等配置文件来处理具体的数据库操作【16】。Hibernate框架体系架构如图2.4所不。ApplicatiOR二二一二持久化对象:■~l|ibernate}1ibel’nateflt,嗣0RM映身JDatabaSe图2.4Hibel‘hate框架体系架构图Hibernate启动后的具体工作流程如图2.5所示。』i通过hibernate.cfg.xml文竹r11的山Session丈侧刨建实物操作接口扁动Hibel’natemapping节点配置,加载.hbm.xmlh’3nsaction的个实tv0文什至?丈-Ncfgflansacti011tx=s.beginjiTl"ansaction0构建Configmlation实例,初始化构建一个Sessiont:actOlv实例0该实例变量ConfigurationSessiOliI?actor.x’通过Session接口提供的各种方法cfg=Configm‘ation.configtn’e0sf=cfg.bui1dSessionFactm—Y0操作对数据摩进行访问l‘l脚jbel实ma例te.。篇∥牛至该thSessionFact01’Y丈例创建连接提交数据库操作结果tx.COllllllit0Sessions=sf.openSession00关闭Session连接s.close0图2.5Hibernate的工作流程图2.2jQuery框架概述jQuery框架是继prototype后的优秀JavaScript框架,其核心理念是“Writeless,domore”。为开发人员提供了~种精巧、便捷、高效的编程方法,轻松实现“富客户端”的动态Web页面。据统计,在世界前1000个访问最多的网站中,有超过55%在使用jQuery【171。jQuery框架的优势主要体现在以下几个方面118】: (1)实现业务逻辑层和表示层的分离。将jQuery代码单独形成一个js文件,改变了以往在开发项目时将程序代码和HTML标记编写在同一页面的弊端,使开发人员的思路更清晰,降低了开发难度。(2)兼容所有的主流浏览器。jQuery屏蔽了浏览器的差异性,彻底解决了为测试浏览器兼容性问题而大量编写代码的弊端。(3)网页浏览更流畅。传统的动态网页在客户端向服务器传送数据后,服务器将整个页面返回给客户端,则整个页面都需要刷新,使得网速受到很大影响。而jQuery可以实现局部页面与服务器进行交互,减轻了服务器负担,提高了页面浏览的流畅性,提升了用户的体验感。(4)jQuery插件功能十分完善。用户可以简单地使用jQuery提供的特性插件使网页功能更加强大,使用起来更加方便。2.3WebKey平台概述2.3.1WebKey平台架构WebKey平台基于B/S体系架构,客户端为浏览器,服务器端为应用服务器和数据库服务器,业务处理逻辑放在应用服务器,系统的数据存放于数据服务器。WebKey平台包含不同风格的个性化库,满足不同用户的使用习惯;包括安全管理、内容管理、组织机构管理、用户角色管理和网上调查等多个系统管理平台,满足不同企事业单位的使用需求;包含详尽的WebKey对象模型的APl,便于用户了解和使用。WebKey平台总体框架如图2.6所示:10 PC浏览器WebKey平台个风性表格风格个性化个化不性设层WebKey的内容解析和分解系化置库统管▲管理符合WebKey内定XMLSchema标准的XMI.串理厂、/_、基WebKey的内容复合(服务端脚本程序)吾于盯召应安标内组用留网盟智信其界浏用全题容织户言上占能窘、它面口If片逻管机角管调登短采插应见辑理构色理查录信编件管提用器层理醒管的▲理吾WebKey核·GAPI脚本函数库u叮界一~一一竺bK!睦模型API⋯⋯⋯面一完全的WebKey对象模型的API▲外部数据接口(XML、ODBC、JDBC、DCOM、0LEDB、ADSI等),人,—————、//1,nIdpI、毫列/邮竺∥囊哆产习l⋯~I)嘤琚咧 WebKey平台提供了功能强大的组织机构管理功能,可支持无限级别的单位、部门树,各级单位、部门可以进行分别管理。(2)内容管理系统(ContentManagementSystem)。WebKey平台提供了丰富的内容管理功能,可以实现无限级别栏目的管理和文档的在线编辑、信息发布、审核等。主要功能如下:◇栏目管理:支持无限级栏目管理,每个栏目可以指定是否需要审核。如果需要审核,则用户需要提交申请,在审核通过后用户才可以看到相关的信息:对于不需要信息审核的栏目,一旦信息发布,则所有用户登录后都可以看到。◇栏目权限:对于每个栏目可以设置访问权限、管理权限和审核权限,只有拥有相应权限的用户才可以看到相应的内容,实现了信息展现的个性化。夺信息发布:提供功能强大的在线编辑功能,可以设定信息是否共享发布到其它栏目,可以设定信息发布的失效时间等。◇信息审核:对于需要审核的栏目,必须经过具有审核权限的用户审核通过后才能发布到外网,被授权审核员角色的用户可以对信息进行通过、退稿、保存待发布、删除等操作。(3)二次开发接口◇DAO层接口设计:DAO层的作用是操作数据库,每一个接口对应的数据库中的一个表,可以被多个Service调用。DAO层接口中所有的方法都与数据库的“增、删、改、查”操作相联系,所有的DAO层都必须继承BaseDAO,且实现自身的泛型类。令Service层接口设计:Service层是每个模块逻辑处理,实现自身业务需求的位置。Service层中的每一个方法的声明都来源于页面功能的具体需求。因此所有的Service层的实现类都必须创建各自的接口,并继承BaseService的泛型类;同时,将公共的接口抽象到BaseService中,并为这个抽象类定义一个调用DAO层的方法,在Service层的实现类中都要实现getDAO()这个方法。虽然整个定义Service层接口的过程稍显复杂,但为后期的开发奠定基础,是提高效率的有利保证。BaseService公共接口除了通用的增、删、改、查以外,还包括批量删除、条件查询、分页显示等公共业务实现服务层。(4)日志审计系统提供完善的日志记录和日志审计功能,保证管理人员的所有操作都在日志里有12 相关记录,以备对相关人员的管理操作进行审计。系统目志管理主要功能包括:◇管理曰志:记录操作人员的管理操作。◇运行日志:记录运行过程中产生的运行过程记录,便于程序人员进行错误跟踪,可以通过配置的方式,设置输出运行目志的级别。◇日志审计:操作时间、操作人员、来源IP地址、管理摘要信息一目了然,可以按任意时间段查询。(5)事务管理在事务管理方面,WebKey平台使用Spring基于注解的事务配置方式,即通过@Transactional对需要事务增强的Service层的Bean接口,实现类或方法进行标注,在容器中配置基于注解的事务增强驱动,即可启用基于注解的声明式事务。基于@Transactional注解的配置拥有一组普适性很强的默认事务属性㈣,可以直接使用默认值:◇事务传播行为:PROPAGArIONREQUIRED;◇事务隔离级别:ISOLATIONDEFAULT:◇读写事务属性:读/写事务;◇超时时间:依赖于底层的事务系统的默认值:◇回滚设置:任何运行期异常引发回滚,任何检查型异常不会引发回滚。当然,针对特定型业务也可以手工设置属性覆盖默认值完成事务管理的工作。(6)页面静态化技术WebKey平台使用的页面静态化技术,是使用纯Java编写的基于模板生成文本的工具。FreeMarker允许JavaServlet保持图形设计同应用程序逻辑的分离,通过在模板中密封HTML来完成。模板语言直观且编译器速度快,输出速度几乎接近静态HTML页面的速度。FreeMarker模板文件主要包括以下的3个部分。◇文本:直接输出的内容。◇注释:格式是<捍一⋯一>,不会被输出。◇插值:即格式为${⋯)或撑{⋯)的部分,将数据模型从后台查出来的信息输出。一般情况下要显示的数据信息是由Java进行收集,然后由FreeMarker生成对应的页面,通过模板显示信息,如图2.7所示。 图2.7FreeMarker模板图FreeMarker的特点⋯:◇通用性强:FreeMarker是轻量级的模板载入器,可以嵌入到产品中去而不需要Servlet环境,可以作为插件应用于系统中。并且FreeMarker可以生成不同的信息格式,例如:html、rtf.xml、Java等。◇模板语言强大:FreeMarker中有很多常用指令,例如if/else/elseif、include、import等。可以定义或修改变量的值,也可以使用表达式来指定值。◇通用的数据模型:Java对象将FreeMarker通过插件的方式进行封装,以变量的形式呈现在模板中。◇为Web做准备:支持JSP标记库,可以使页面设计人员和程序开发人员有效分离,达到合理分工,缩短开发时间。◇强大的XML处理能力:有特定的指令<#recurse>和<#visit>对XML树进行递归遍历。(7)基于角色的访问控制(Role—BaseAccessControl,RBAC)策略RBAC策略是目前公认的解决大中型企业的统一资源访问控制和越权使用资源的有效方法【221。限制访问主体(用户、进程、服务等)对访问客体(文件、系统等)的访问权限,实现保证系统、文件安全性的目的。传统用户权限管理不能提供对一组用户的权限配置,而RBAC模型在用户和权限之问增加了角色层,先将权限配置给角色,再为用户分配角色I:31,如图2.8所示。14<∥>:,二≥哆\,/7\..一/(a)传统用户权限管理 厂丙芦、、[一。厂磊琶’、j[s,Q/f衰面’、、\~一/’j\~一/‘。j、~.一/(b)基于角色的用户权限管理图2.8传统用户,权限管理和基于角色的用户权限管理的模型对比图WebKey平台对权限的管理就是基于RBAC策略,包含用户(users)、角色(roles)、目标(objects)、操作(operations)、许可权(permissions)五个基本数据元素‘2引。角色是一个权限组,当一个角色被指定给一个用户时,此用户就拥有了该角色所包含的所有权限。用户无法直接拥有权限,只有通过被赋予角色来获得。会话Sessions是用户与激活的角色集合之间的映射‘25I,如图2.9所示。⋯J1]户角也分配伯色许可分配用户(uA)角色(PA)"P1——~一⋯r_\与J1j户关联的、、/’Sesslon会话集合\_会话▲激活的角色图2.9RBAC模型图WebKey平台中采用RBAC策略,根据企业组织机构中不同职位以及职位之间的上下级关系,为用户划分角色,功能模块的操作权限通过用户被授予的角色来获取。一旦用户被授予了某个角色,该用户便自动拥有了该角色所包含的权限,利用用户角色控制用户权限。这样不仅提高了权限管理的安全等级,而且简化了用户与权限之间复杂关系的管理【761。2.4基于WebKey平台的考勤管理系统的优势在WebKey电子政务平台基础上开发考勤管理系统有如下优势:(1)定制开发周期短开发内容:传统项目的开发往往是根据客户的具体需求进行开发,许多功能需要全新开发,导致开发内容过多:WebKey平台为满足通用性,根据政府、企业的通用需求设计了基本功能。因此,只需结合用户特殊性需求,在此基础上进行定制开发,减少了开发内容。 开发工具:传统的项目开发往往由于大量的编码工作延长了开发周期;而WebKey平台是一款很好的软件平台定制开发工具,在其基础上能够快速构建应用,节省了开发时间。(2)定制开发成本低传统的项目开发由于开发周期长,造成开发成本高:而基于WebKey平台的开发周期短,开发人员只需了解WebKey平台的二次开发接口及相关技术,便可在其基础上做二次开发,有效降低了开发成本。(3)定制开发风险小传统的项目开发涉及大量的代码,发生错误的几率较大;而WebKey平台是较为完善的应用系统,基于WebKey进行开发,有效降低了错误率。(4)后期升级和维护轻松传统的项目开发后期升级和维护与项目实施方绑定的十分紧密,受软件开发商牵制较大;而WebKey平台不仅后期升级简便,而且拥有功能强大的后台管理,维护起来非常轻松。综上所述,基于WebKey平台的考勤管理系统的开发周期短、成本低、风险小、后期升级和维护轻松,是一个很好的选择。2.5本章小结本章首先概述了Struts、Spring、Hibernate三种框架各自的优势,以及系统所使用的底层框架WebKey平台的架构和特征,最后论述了基于WebKey平台的考勤管理系统的优势。16 3系统需求分析3.1系统建设目标中国人寿保险(集团)公司及其子公司构成了我国最大的商业保险集团,是全球市值最大的上市寿险公司。X省中国人寿保险股份有限公司(国寿)是中国人寿保险(集团)公司的子公司。建设国寿考勤管理系统,能够弥补目前公司省、市、县约180个分公司的多层级组织机构设置管理与信息化考勤管理方面的欠缺,为公司提供更清晰、更简洁、更高效的组织机构设置和考勤管理方式。利用公司内部专网,覆盖包括省、市、县在内的多级机构,满足全省约6000余员工的日常使用。项目需要实现各类组织机构管理以及各类岗位上的员工日常考勤的信息化管理,对基本的考勤数据进行分类汇总,同时培养员工制定工作计划和工作总结的习惯。为适应全省多层级组织机构和各类岗位员工的使用习惯,项目需要提供了人性化、灵活性的操作方式。建设考勤管理系统需要解决如下关键问题:(1)采用B/S架构实现,用户希望系统可以通过公司内部网络,使用浏览器登陆即可进行操作;(2)需要提供操作高效、便捷的支持省、市、县多级组织机构设置管理的功能:(3)需要具备安全且操作灵活的用户角色权限管理功能;(4)实现跨省、市、县多层级请销假审批和异常考勤申诉流程:(5)满足承载11个地市约160个县180个分公司的6000余员工在特定时间段的高并发量,使系统达到负载均衡。3.2系统角色分析考勤管理系统的基础用户具有流动性的特点,因此对用户权限的管理需求应具备动态性,因为不同角色的用户对系统具有不同的操作权限,随着角色的变化,对应的权限也随之变化。在实际工作过程中,用户对功能模块的使用权限与其职位密切相关,即位于某个职位的任何人,都应具有与其工作相关的系统管理权限【27郐1。国寿考勤管理系统对权限的管理是基于WebKey平台的角色的访问控制策略。一个角色就是一个权限组,在该系统中对用户进行角色授权有两种方式,分别是: ◇按角色授权:一个用户可以被赋予多个角色,一个角色也可以同时赋予给多个用户;◇按部门授权:一个用户只能属于一个部门,对部门授权后,本部门下所有用户自动拥有相应的权限,不需要再做二次授权。通过对系统总体功能模块的需求分析,依据系统的人员组织结构关系划分用户的角色,系统中主要涉及:员工、二级部员工、二级部经理、省部门副经理、省部门经理、省副总经理、省总经理、市部门副经理、市部门经理、市副总经理、市总经理、县副经理、县经理、日历管理员、人力资源部领导和系统管理员等16种角色。系统人员组织结构关系如图3.1所示。省总经理省副总经理市总经理一省丽:J茎嚣’。莆面惹疆面一藏一一=一._-一一..=二===二二=一:一一—一一二-一=⋯二一一省部门副经理市部门经理县副经理员工‘蓄三磊氟缢逦‘_市葡i彳吾j磋趣责i一省二级部员工员工图3.1系统人员组织结构关系图(1)员工:凡是公司的员工都拥有该角色,使用系统管理员分配的用户名和密码进行登录,可以进行考勤登记、考勤查询、对异常考勤进行申诉、查询申诉信息、提交请假申请、查询请假信息和领导审批结果、填写工作日志和计划以及查询领导点评。(2)省二级部员工:和员工角色拥有的权限相同。(3)系统管理员:拥有该角色的员工,负责给公司所有员工分配系统登录的用户名和密码,设置管理公司组织机构,维护系统安全稳定的运行。对系统中的用户权限设定并管理。 (4)日历管理员:拥有该角色的员工,为其所在层级的公司设定多套考勤日历,考勤日历设置完成后,日历管理员需要为本公司的某个员工或某部门下所有员工指定考勤日历。(5)人力资源部领导:该角色只能赋予人力资源部的部门经理,拥有该角色的部门经理可以对管辖范围内的员工按职位进行考勤查询。(6)县副经理:除了员工角色拥有的权限外,还可以查看并点评县级公司员工提交的工作目志与计划,可以对县公司员工提交的请假申请进行一级审批。(7)县经理:除了员工角色拥有的权1j艮夕"t-,还可以查看并点评县副经理提交的工作日志与计划,可以对县副经理提交的请假申请进行一级审批,可以对县公司员工提交的请假申请进行二级审批,可以对县公司员工和县副经理提交的异常考勤申诉进行审批。(8)市部门副经理:除了员工角色拥有的权限外,还可以查看并点评市级员工提交的工作目志与计划,可以对市公司员工提交的请假申请进行一级审批。(9)市部门经理:除了员工角色拥有的权限外,还可以查看并点评市部门副经理提交的工作日志与计划,可以对市部门副经理提交的请假申请进行一级审批,可以对市公司员工提交的请假申请进行二级审批,可以对市公司员工和市部门副经理提交的异常考勤申诉进行审批。(10)市副总经理:除了员工角色拥有的权限外,还可以查看并点评市部门经理提交的工作曰志与计划,可以对市部门经理提交的请假申请进行一级审批,可以对市部门副经理和县副经理提交的请假申请进行二级审批。(11)市总经理:除了员工角色拥有的权限外,还可以查看并点评市副总经理提交的工作日志与计划,可以对县经理和市副总经理提交的请假申请进行一级审批,可以对市部门经理提交的请假申请进行二级审批,可以对县经理、市部门经理和市副总经理提交的异常考勤申诉进行审批。(12)省二级部经理:除了员工角色拥有的权限外,还可以查看并点评省公司二级部员工提交的工作日志与计划,可以对省公司二级部员工提交的请假申请进行一级审批。(13)省部门副经理:除了员工角色拥有的权限外,还可以查看并点评省公司员工提交的工作日志与计划,可以对省公司员工和省二级部经理提交的请假申请进行一级审19 批,可以对二级部员工提交的请假申请进行二级审批。(14)省部门经理:除了员工角色拥有的权限外,还可以查看并点评省部门副经理提交的工作日志与计划,可以对省部门副经理提交的请假申请进行一级审批,可以对省公司员工和省二级部员工提交的请假申请进行二级审批,可以对省公司员工、二级部员工、省部门副经理、省二级部经理提交的异常考勤申诉进行审批。(15)省副总经理:除了员工角色拥有的权PtU"F,还可以查看并点评省部门经理提交的工作日志与计划,可以对省部门经理提交的请假申请进行一级审批,可以对省部门副经理和市副总经理提交的请假申请进行二级审批。(16)省总经理:除了员工角色拥有的权6tU"l-,还可以查看并点评省副总经理提交的工作日志与计划,可以对省副总经理和市总经理提交的请假申请进行一级审批,可以对省部门经理提交的请假申请进行二级审批,可以对市总经理、省部门经理和省副总经理提交的异常考勤申诉进行审批。3.3系统用例描述在对系统功能中关键操作的分析后,明确了本系统需要由考勤管理、请销假管理、工作日志与计划管理和考勤日历管理四个子系统来支撑。下面分别对这四个子系统,使用UML方法对系统功能进行用例建模[29,30,31】。论文以下内容中,凡是关系到审批流程的,本文均以市公司员工、市部f-jSJJ经理、市部门经理为例进行说明。1.考勤管理子系统用例模型考勤管理子系统主要由上下班登记、考勤查询、异常考勤申诉、申诉查询、申诉审批、领导查询和按职位查询七个模块组成。只拥有员工角色的员工可以使用上下班登记、考勤查询、异常考勤申诉和申诉查询功能:拥有市部门经理角色的员工还可以使用申诉审批和领导查询功能;拥有人力资源部领导角色的市部门经理,可以使用包括按职位查询在内的所有考勤管理功能。用例模型如图3.2所示。 市<<人力/一~~\\,1、/上下班登记jj?/k/、\~——/,/图3.2考勤管理子系统用例模型图◇上下班登记:员:[都必须按照己分配的考勤日历上规定的时间进行上卜班登记。◇考勤查询:员工可以查询自己的考勤信息。◇异常考勤申诉:员工可以针对自己的异常考勤提交申诉,如果申诉通过,则该异常考勤显示为申诉通过。◇申诉查询:员工可以查询自己的考勤申诉信息,查看是否通过审核等。◇申诉审批:市部门经理需要对下属员工提交的异常考勤中诉进行审核,考勤申诉为一级审批。◇领导查询:市部门经理可以查询市级员工和市部门副经理的考勤信息,不可跨公司查询。◇按职位查询:拥有人力资源部领导角色的市部门经理可以按职位查询下属员工的考勤情况,不可跨公司查询。2.请销假管理子系统用例模型请销假管理子系统主要由添加请假申请、查询请假信息、请假审批和销假四个模块组成。只拥有员工角色的员工可以使用添加请假申请、查询请假信息和销假功能;拥有市部门副经理和市部门经理角色的员工还可以使用请假审批的功能。用例模型如图3.3所示。 图3.3请销假管理子系统用例模型图◇添加请假申请:请假必须添加并提交请假申请。◇查询请假信息:员工可以查询自己的所有请假信息及市部门副经理和市部门经理的审批结果。◇请假审批:市部门副经理需要对市公司员工提交的请假申请进行一级审批,若不同意,则将结果反馈给员工,请假流程结束:若同意,则将该申请提交至市部门经理进行二级审批,市部门经理无论是否同意,都将结果反馈给员工,请假流程结束。只有当两级审批均通过时,则请假成功。◇销假:员工请假回来,必须先进行销假才可进行正常的考勤登记或再次请假。3.工作日志与计划管理子系统用例模型工作日志与计划管理子系统主要由添加工作日志、添加工作计划、查询工作日志、查询工作计划和领导点评五个模块组成。只拥有员工角色的员工可以使用添加工作日志、添加工作计划、查询工作日志和查询工作计划的功能:拥有市部门副经理和市部门经理角色的员工还可以使用领导点评的功能。用例模型如图3.4所示。 图3.4工作日志与计划管理子系统用例模型图◇添加工作日志:员工每天需要填写工作曰志并提交至市部门副经理进行点评。◇添加工作计划:员工需要在规定的时间内填写本周计划、下周计划、本月计划、下月计划、半年计划和年计划,并提交至市部门副经理进行点评。◇查询工作日志:员工可查询己提交、已保存和市部门副经理退回的工作日志。◇查询工作计划:员工可查询己提交、已保存和市部门副经理退回的工作计划。◇领导点评:市部门副经理需要对员工提交的工作日志和计划进行点评,也可将其退回,若退回则员工需要修改后重新提交。4.考勤日历管理子系统用例模型考勤日历管理子系统主要由添加考勤日历、分配考勤日历(包括按人员分配日历和按部门分配日历)、日历分配查询和考勤日历管理四个模块组成,该模块所有功能只有拥有日历管理员的员工才可以使用,用例模型如图3.5所示。 日图3.5考勤日历管理子系统用例模型图◇添加考勤日历:由拥有日历管理员角色的员工添加考勤日历。◇分配考勤日历:由拥有日历管理员角色的员工按人员或按部门为员工分配考勤日历,员工需要按照指定的考勤日历进行上下班登记。◇日历分配查询:拥有日历管理员角色的员工可以查询考勤日历的分配情况。◇考勤日历管理:拥有日历管理员角色的员工可以对已有的考勤日历进行修改和删除。3.4系统总体功能需求在系统的需求分析过程中,整理出企业考勤管理系统所需具备的基本功能,这些将作为系统分析和逻辑设计的主要依据,在开发过程中,再对其进行细化和整合1271。经过充分调研,国寿考勤管理系统的总体功能需求如下:(1)组织机构管理,实现省、市、县多级组织机构的设置以及人员信息的维护管理;一(2)实现考勤日历的增、删、改、查以及分配,指定的考勤日历是上下班登记及其他考勤管理的重要依据:(3)考勤登记,实现上、下班登记,记录迟到、早退、旷工等考勤信息:(4)考勤申诉,员工可以针对迟到、早退、旷工等异常考勤提交申诉,由上级领导进行审批;(5)请假审批,实现对各类请、休假的审批管理,支持分层、分权限的多级审批24 流程:(6)工作目志,记录当天的工作情况及工作总结,主管领导可以对下属员工提交的工作曰志进行点评、退回和等级评价等操作;(7)工作计划,包括周计划、月计划、半年计划、年汁划等,主管领导可以对下属员工提交的工作计划进行点评、退回和等级评价等操作。(8)查询,实现对个人考勤信息、工作日志与计划、请销假信息的查询;(9)严格的角色权限管理,对员工实行分级、分权限控制,满足单位内部上级对下级的多级权限管理机制;(10)系统日志,使管理人员可以实时监测到系统的操作详细清单,以便在发现问题时可以责任到人,保证系统安全有效的运行。系统的总体功能结构如图3.6所示。前台客户端河北省国寿考勤管理系统考勤管理请销假管理考勤日历管理图3.6系统总体功能结构图3.4.1考勤管理子系统1.上下班登记模块:依据在国寿的调研,考勤状态包括以下18种:正常、迟到、早退、迟到和早退、旷工、节假日、年休假、公假、病假、工伤假、事假、婚假、计划生育假、孕产假、丧假、探亲假、出差、申诉通过。上下班登记的规则如下:◇当天未进行上班登记的员工,均不允许进行下班登记。管理考勤口历含一询考勤口历分配考勤口历添加考勤口历消假请假市批台一询请假信息添加请假申请按职位含一询领导杏一向申述杳一询申述审批考勤中述考勤查询上下班登记 夺允许上班登记的时间:在最早上班登记时间之后,当天晚上oo:00之前。◇允许下班登记的时间:在上班登记之后,最晚下班登记时间之前。◇不能重复进行上班登记,系统记录的上班登记时间为第一次上班登记的时间。◇可以重复进行下班登记,系统记录的下班登记时间为最后一次下班登记的时间。令非工作日、请假期间或是请假时间已过但尚未进行销假的,均不允许进行上下班登记。2.考勤查询模块:员工可以查询最近三个月以内的考勤情况,可以通过“异常考勤类型”、日期和“全部”三种查询方式对考勤信息进行查询,且可以对最近三个月的异常考勤提出申诉。3.申诉查询模块:员工可以对近三个月的异常考勤进行申诉,且只能对一天的异常考勤申诉一次,不可以重复申诉。申诉提交后会发送至市部门经理,由市部门经理进行审批。4.申诉审批模块:市部门经理需要审批下属员工的申诉,如果审核通过,则将该员工的考勤状态更改为申诉通过;如果审核未通过,则该员工的考勤状态不变。5.领导查询模块:市部门经理可以查询本公司下属员工当月的考勤信息,不可跨市查询。6.按职位查询模块:拥有人力资源部领导角色的市部门经理可以查询本公司下属领导当月的考勤信息,同级间不可以跨公司查询。3.4.2请销假管理子系统1.请假、销假主要规则如下:◇员工请假需要提前提交请假申请,请假申请需要经市部门副经理和市部门经理二级审核通过,请假期间的考勤状态为所请假的类型;令请假类型为整天、上午、下午。◇请假类型若为事假、探亲假、年休假,则先从年休假天数中扣除,若请假天数多于年休假天数,则统计报表中多出年休假的天数显示为所请假的类型;若请假天数少于年休假天数,则统计报表中显示为年休假;◇请假类型若为婚假、丧假、孕产假、计划生育假、公假、工伤假,则不扣除年26 休假。实际请假天数都以“请假起始日期至销假日期的天数”为准。若申请的请假天数大于实际请假天数,则销假后便可进行正常考勤登记;若申请的请假天数小于实际请假天数,则多出的天数按旷工处理。例如:如果请假5天,第7天才进行销假,则多出的1天按旷工处理。如果请假5天,第4天就进行销假,则请假时间记为3天,销假后可进行正常考勤登记。◇员工请假后必须先进行销假,才能进行正常的考勤登记或再次请假。2.请假审批模块:市部门经理和市部门副经理需要对下属员工提交的请假申请进行审批,请假申请为二级审批:◇若市部门副经理不批准,则将审批结果返回给员工;◇若市部门副经理批准,则将该员工的请假申请提交至市部门经理进行二级审批。无论市部门经理是否批准,都将结果返回给员工。3.4.3工作日志与计划管理子系统工作曰志与计划模块是为员工提供记录每天的工作并制定工作计划的平台。员工需要记录每天的工作,可以填写三天内(今天、昨天、前台)的工作目志,每天的工作曰志不可以重复提交。工作计划包括本周计划、下周计划、本月计划、下月计划、半年计划和年计划,员工必须在规定的时间填写并提交,可以重复添加工作计划。市部门副经理可以查看、点评、退回员工的工作日志和计划,对于被退回的工作日志或工作计划,员工需要重新填写并再次提交。1.工作日志模块:员工可以填写三天内的工作日志,工作日志只显示对应的工作日期,不显示具体提交的时间。员工可以对自己保存的工作日志进行编辑、提交、删除,一旦提交,就不允许更改和重复添加。日志提交后,市部门副经理可以对其进行查阅、点评和等级评价,也可以退回不满意的工作日志,被退回的日志,员工需要修改后再次提交。工作日志模块的业务处理流程,如图3.7所示: 工作日志模块的业务处理流程员工市部门副经理填写工作目忠,工\H《嗲>蔓_一一一卜}查阅{一\、\/7⋯◇点评、等级评价l7)。:。判断、:j图3.7工作目志模块的业务处理流程图2.工作计划模块:员工可以在规定的日期填写工作计划,且可以重复提交。员工可以对自己保存的工作计划进行编辑、提交、删除操作。编辑时,日期默认为初次写工作计划的时间,不允许更改。提交工作计划的同时还可以上传附件。计划提交后,市部门副经理可以对其进行查阅、点评、等级评价以及附件下载,也可以退回不满意的工作计划,被退回的计划,员工需要修改后再次提交。添加、提交各类计划的时问段规定如下:◇本周计划:每周任何时间均可添加、提交本周计划。◇下周计划:每周任何时间均可添加、提交下周计划。令本月计划:每月任何时间均可添加、提交本月计划。夺下月计划:每月任何时间均可添加、提交下月计划。令半年计划:每年1“月份、7—12月份可以分别添加、提交上、下半年计划。 ◇年计划:每年任何时问均可以添加、提交本年计划。工作计划模块业务处理流程和工作曰志模块相似,本文不再赘述。3.4.4考勤日历管理子系统考勤日历是被标注了工作目的上下班时间、工作日、节假日、非工作日等信息的员工进行正常考勤的依据。由日历管理员负责设置添加,并为每个员工分配一个考勤日历,员工需要按照分配的考勤日历进行上下班登记和休假。1.添加和管理考勤日历模块:◇考勤日历由拥有日历管理员角色的员工负责添加,需要设置日历名称、上下班的具体时问(精确到分)、公休日以及国家法定假日。◇日历管理员可以查看已有的考勤日历,并可以对其进行修改和删除操作。2.考勤日历分配、查询考勤日历分配模块:企业的日历管理员可以为管辖范围内的公司、部门、人员分配考勤日历,也可以查询考勤日历分配情况。员工上下班登记以及假期情况必须严格遵守考勤日历上设定的时间进行考勤登记和休假。3.5本章小结本章主要针对考勤系统的建设目标、系统角色、系统总体功能以及业务流程进行分析,采用UML标准对系统进行用例建模分析,为系统的详细设计做准备工作。 4系统详细设计4.1系统架构设计根据上文对考勤管理系统的需求分析及系统殴计的需要,系统采用SSH框架、基于WebKey平台进行二次开发。系统在设计过程中,使用FreeMarkel,作为表示层框架,负责收集用户传来的数据:利用MVC控制器,负责实现用户请求与业务逻辑的交互;利用Spring实现处理应用程序的业务逻辑和业务校验,为与其它层交互提供接口;利用Hibernate的ORM实现,建立持久化对象,最后以面向对象的方式来操作关系数据库,如图4.1所示。系统还引入了Ajax异步传输技术,实现了减少服务器与客户端之问的数据传输量、减少客户端反应时间、缓解服务器端压力的目的【32,33]。系统整体架构各层分工明确,降低了层与层问的耦合度,具备良好的可移植性。MVC控制器负责用户请求Lj、lk务逻辑组件的交互。分控制湍主控制器!”碧§匿多戈Action绀f$:ActionSupporI组件‘_凄髓‘。-\|『一一一—\X配置义件j夺⋯~⋯礞≯芦。struls.xm];霪:畦::攀一⋯煮i{__;《V、:。1j表现层(FreeMarker)负责业务数据的收集,早现系统状念关系数据库关系数据库表关系数据库表⋯⋯关系数据库表图4.1系统整体架构图4.2数据库设计4.2.1数据库设计原则系统数据库的设计应遵循标准化、规范化、可伸缩性等原则【341,有助于降低数据库中的数据冗余,保证数据的一致性和完整性,满足系统后期移植和二次开发的需要。系30 统设计需要具有良好的数据库安全机制,以确保合法用户只能访问其权限之内数据的同时,防止非法用户使用数据库或合法用户非法使用数据库,达到保护数据的目的。数据库对象命名需要遵循统一的命名规范:(1)中英文:在SQLServer系统中,对象的名称可以使用英文或中文,但为了方便后续查询和编程,通常情况下会使用英文。(2)字符范围只能是英文字母、汉字、下划线和数字,首字母不能是下划线和数字。对象名使用大写字母,便于数据库在不同系统间进行移植。(3)分段命名,多个英文单词间采用下划线分隔,便于用户阅读和理解,且利于某些工具对数据库对象进行映射。系统中应采用一致的命名方式。(4)不能使用数据库内部的命令,数据库对象命名不能直接使用内部命令,但是在分段中可以使用。例如:USER不能用于表名,但TUSER可以用于表名。(5)见名知意,数据库对象及字段名称应该体现其内容或功能,通常使用英文单词、缩写或是拼音,尽量避免使用数字。(6)同义性,如果某些数据库对象或字段的内容相同,应使用类似的名称。例如:用户表名称为“TUser”,用户视图为“VUser”。本系统为了便于后期维护,并没有按照官方的标准或是工人的规则来命名,而是使用容易理解的中文缩写和简单的英文单词。本系统规定所有的数据库表视图均采用四段式命名,表名格式为系统业务模块类别功能。◇系统指本考勤管理系统,即HBRS。◇业务模块指本表或视图所属的业务模块,例如考勤管理为KQGL。◇类别指表或视图,“T”表示数据库表,“V”表示数据库视图。◇功能指本表所存数据的功能,采用与数据功能有一定相关性的英文单词的缩写形式。4.2.2概念模型设计概念数据模型是面向用户、面向系统的数据模型,主要用来描述概念化的结构,是将用户需求抽象为信息结构的过程1351。根据3.4节系统总体功能需求分析的结果,得出考勤管理系统概念模型设计的实体关系图(E—R图)如图4.2所示。 4.2.3逻辑模型设计图4.2系统数据库概念模型E—R图结合国寿考勤管理系统的具体业务的实际情况,根据4.2.2节的概念模型设计E.R图,以及实体间一对一或一对多的映射关系,得出系统的详细逻辑模型设计图,进而从逻辑模型得到最优的物理模型。系统数据库结构局部设计如图4.3所示。 ltBRs-LEADER—VERlFY~请假审批裘请锻审批ID‘PK)是否需要二级审核审批员工】D请假事项IO审批员工部门11)上级领导lD审批员工姓名审批员工啦:位类犁审批表类型审批结果审批意圯审批时fijJIIBRs-RFGIstIERf考勤髓记表)考勤日历lDtPK)员工1D部门ID姓名考勤日期上班考勤状态下班考勤状态上班时问下班埘问部门名手尔单位名称咻炸VACAI"IOX【请假’}’请求)请假申请lD(PK)请假员]=郝门IO请假员工lD审}复信)d-il】使用年休假天数请假*j:姓托请假封;柬时问i^假"姑时Mi斋假原删审批状卷请假标题请假娄型请假状态请假类型下班时问允许迟到时间允许早退时间IIBRS—WORKlll.^\(工作计划表)飘于r荠2攫交日期曼望出⋯-ii.葡萎堑‘翥挈日历m⋯一—一。嚣罚芮袤~}t7一⋯w’⋯。一登耋。已壳成的内容和总结璧圣警,.订茴ai商螽⋯⋯。篓垂妾箩·违吾曩蔓鞲导直评量[?墨塑:,亲芫菇高莴丢薪墓结啦位名称’ii:菊弄话并而’⋯“:工作计划杯题计划结束时MIIBRS—KQSS(考勤巾诉袁)f{l诉lD(PK扎门lu扔T㈨姓乳qJ诉信息Ii】l:绒领导Ⅲ考勤日剐Ⅲ诉原幽中Ui状卷巾诉时问11J诉标题fII诉类型图4.3考勤管理系统数据库结构局部设计图4.2.4物理模型设计1.系统基础数据库表用户表(WK—T—USER),该表为WebKey平台的基础数据库表。主要包括用户ID、组织机构ID和考勤日历ID。表4.1用户表序号字段名数据类型备注1KUID]nt用户ID2KULIDvarchar(20)登录名3KU——NAMEvarchar(20)姓名4KU——PASSWDvarchar(1oo)登录密码部门ID,默认值为05KDIDInt(系统用户)用户所属组织机构的ID6KU——LEVELchar(2)用户级别,默认033 表4.1用户表(续)序号字段名数据类型备注用户性别7KU—SEXchar(2)1:男2:女8KU——EMAILchar(30)邮箱9KU——PHONEchar(20)电话10KU——COMPANYchar(100)单位IlKU——CALENDARIDnUmenC考勤日历ID2.考勤管理数据库表考勤登记表(HBRSREGISTER),主要包括考勤日历分类、考勤日历ID、部门ID和用户ID。表4.2考勤登记表序号字段名数据类型备注lIDmt编号2CALENDARSOlU、varchar(255)考勤日历分类3CHECK——TIMEvarchar(255)考勤日期4DAY—STATUSInt全天状态5DEPARTMENT——IDmt部门编号6DEPARTMENl奠AMEvarchar(255)部门名称下班考勤状态0:正常7DOWN—STATUSint3:早退21:旷工8UPjIMEvarchar(255)上班时间9DOWN——TIMEvarchar(255)下班时间10STAFF—ID111t员工编号11STAFF—NAMEvarchar(255)员工姓名上班考勤状态O:正常12UP——STATUSInt4:迟到21:旷工 3.考勤申诉表(HBRS—KQSS),主要包括部门ID、用户ID、申诉类型、审核用户ID和审核信息ID。表4.3考勤申诉表序号字段名数据类型备注lIDvarchar(255)编号是否异常IP2ABNORMALIPmt0:正常1:异常3DEPARTMENT——IDInt部门编号4CHECK——TIMEvarchar(30)考勤日期5STAFF——IDmt员工编号6STAFF-NAMEvarchar(50)员工姓名7REGISTER——IDint注册信息ID8SS——REASONvarchar(100)申诉原因申诉状态0:未审核9SS——STATUSmt1:待复核2:审核完成10SS——TIMEvarchar(30)申诉时间1SS——TITLEvarchar(50)申诉标题申诉类型2:迟到和早退12SS——TYPEint3:早退4:迟到21:旷工l3UPDATE——TIMEvarchar(30)更新时间14VERIFY——IDvarchar(50)审核信息编号15VERIFY——PEOPLE——IDmt审核用户编号4.请假管理数据库表(1)请假申请表(HBRSVACATION),主要包括请假用户ID、请假用户部门ID、请假申请ID、请假标题、审批状态和请假类型。 表4.4请假申请表序号字段名数据类型备注lIDvarchar(255)编号2COUNT——OF——YEARmt使用年休假天数3DEPARTMENT——IDInt请假人员部门编号4STAFFIDint请假人员编号5S17AFFNAMEvarchar(50)请假人员姓名6VACATIONENDTIMEvarchar(30)请假结束时间7VACATION——REASONvarchar(200)请假原因VACATION——START——TIM8varchar(30)请假开始时间E9VACATIONSTATUSmt审批状态10VACATIONTITLEvarchar(50)请假标题1VACATION—TYPEint请假类型l2VERIFY——IDvarchar(255)审核信息编号请假状态●l3CANCELLmt0:请假中1:己销假0:全天假1:上午假2:下午假并且扣掉O.5个年休假,要14VACATIONFLAGvarchar(255)求全天状态和正常上班的那个上午或下午状态一致(2)请假审批表(hbrs_leaderverify),主要包括是否需要二级审批、审核信息ID、审批用户部门ID、审批用户职位类型、审批表类型、上级ID和审批时间。表4.5请假审批表序号字段名数据类型备注lIDvarchar(255)编号,是否需要二级审核2IS—.SECONDint0:不需要,1:需要 表4.5请假审批表(续)序号字段名数据类型备注3ITEMIDvarchar(50)事项编号4DEPARTMENT——IDInt审批人员部门编号5STAFF——NAMEvarchar(50)审批人员姓名6STAFF——IDInt审批人员编号审批人员职位类型7MEMBERTYPEint0:主管领导l:人力主管8PIDvarchar(50)上级ID审批表类型9TYPEinf0:考勤申诉1:请假管理10VERIFY——RESULTvarchar(200)审批结果llVERIFY——SUGGESTIONvarchar(200)审批意见12VERIFY——TIMEvarchar(30)审批时间5.工作计划数据库表(1)工作计划表(hbrsworkPlan),主要包括工作计划ID、用户ID、工作类型、用户部门ID和作计划标题。,表4.6工作计划表序号字段名数据类型备注1WORKPLAN——IDvarchar(255)工作计划编号2PLANDATEvarchar(20)计划提交日期3STAFFIDint员工编号4PLANTYPEint计划类型5PLANCONTENTvarchar(1000)计划内容已完成的内容和总6COMPLETECONTENTvarchar(1000)结7TIMEPERloDvarchar(1oo)计划时间段8SUBMITFLAGmt是否提交领导点评9DEPARTMENT——IDint部门ID 表4.6工作计划表(续)序号字段名数据类型备注未完成的内容和总10UNFINISHEDCONTENTvarchar(1ooo)结lPLANSTARTTIMEvarchar(20)计划开始时间12PLANENDTIME.varchar(20)计划结束时间13TITLEvarchar(200)工作计划标题(2)工作计划附件表(hbrsworkPlanDocument),主要包括附件ID、工作计划ID、附件名称和附件存放地址。表4.7工作计划附件表序号字段名数据类型备注1IDvarchar2附件编号2WORKPLAN——IDvarchar2工作计划ID3DoCPATHvarchar2附件存放地址4FILENAME。varchar2附件名称5UPLO』∞TIMEnumber上传时间(3)领导点评工作日志和工作计划表(hbrsleaderAppraisal),主要包括工作日志ID、工作计划ID、用户ID、领导ID和提交时间。表4.8领导点评工作曰志和工作计划表,序号字段名数据类型备注1LEADERAPPRAISALIDvarchar(255)编号2WORKDAILY-IDvarchar(255)工作日志ID3WORKPLAN——IDvarchar(255)工作计划ID4STAFF——IDint员工ID5LEADER——IDnumeric(18,0)领导ID6APPRAIS声岍IMEvarchar(20)点评时间7APPRAISALCONTENTvarchar(1000)点评内容8APPRAISALSCOREmt领导打分9APPRAISALEVEInt点评领导 表4.8领导点评工作日志和工作计划表(续)序号字段名数据类型备注1OAPPRAISAIJYPEvarchar(1)满意度llSUBMITTIMEvarchar(20)提交时间6.考勤日历数据库表(1)考勤日历表(hbrscalendar),主要包括日历ID、上下班时间、是否节假日、允许迟到时问和允许早退时问。表4.9考勤日历表序号字段名数据类型备注1IDnumeric(18,O)编号2REGISTERDArEvarchar(50)登记日期3CALENDAR-IDvarchar(38)考勤日历ID4GOWORKDArEvarchar(38)上班时间5BACKWORKDArEvarchar(38)下班时间6ISHOLIDAYchar(1)是否是节假目7LArELIMIT、numeric(18,0)允许迟到时间8EARLYLIMITnumeric(18,0)允许早退时间(2)考勤日历类型表(hbrscalendarfl),主要包括日历名称、部门ID、上下班时间、允许迟到时间和允许早退时间。表4.10考勤日历类型表序号字段代码字段类型备注lCALEND户蜓IDmt考勤日历ID,主键2CALENDAR——NAMEvarchar(255)日历名3YEARvarchar(255)日历的年份4DEPARTMENT——IDint部门ID5DEPARTMENA奠AMEvarchar(255)部门名称6UPJIMEvarchar(255)上班时间7DOWN——TIMEvarchar(255)下班时间8。ATELIMITmt允许迟到时间39 表4.10考勤日历类型表(续)序号字段代码字段类型备注9EARIjYLIMITmt允许早退时间10CROSSDAYvarchar(255)是否允许跨天4.3系统主要业务处理流程设计4.3.1异常考勤申诉审批模块由于异常考勤会影响到员工的薪资,因此员工可以对非个人原因导致的异常考勤进行申诉,只有提交申诉并审批通过才不会被扣除薪资。异常考勤申诉审批模块的主要功能就是对员工提交的异常考勤申诉进行审批,具体的业务处理流程如图4.4所示: 省级公司图4.4申诉审批模块业务处理流程图如图4.4所示,异常考勤申诉审批为一级审批,无论是否审核通过,都将审批结果反馈给用户。如果审核通过,则将其考勤状态更改为申诉通过;如果审核未通过,则考勤状态不变。异常考勤申诉审批流程可以总结为以下7种情况:(1)县级员工和副经理需要将申诉提交至县经理进行审批。(2)县经理需要将申诉提交至市总经理进行审批。4l (3)市级员工和部门副经理需要将申诉提交至市部门经理进行审批。(4)市级部门经理和副总经理需要将申诉提交至市总经理进行审批。(5)市总经理需要将申诉提交至省总经理进行审批。’(6)省级员工、二级部员工、部门副经理和二级部经理需要将申诉提交至省部门经理进行审批。(7)省级部门经理和副总经理需要将申诉提交至省总经理进行审批。4.3.2请假审批模块员工如果请假,需要提前提交请假申请,只有当申请批准后在其请假期间才不会被记录为异常考勤。请假审批模块的主要功能就是对员工提交的请假申请进行审批,具体的业务处理流程如图4.4所示: 省级公司员工部门副经理部门经理副总经理总经理请假申请L请假申请L--17_一级审批}_一级审批Ir-I“十】u一一级审批.1×ꆀ意一百点≥、意,,,孟三警》、意,百桑≥》、、乏二::二多,,’7二:.二兰>/|、奠二二多/,.级审批l级审批绂审批|批)批结果^_一审批结果、_级|.1i批结果................................一┃部员工部经理f中请一级审批-同意《!≥>_一批结果、┃批磊柴、j.公司t剐经理经理理巾请I{l请JjI请┃III请|{I请级qr批{审批l级I}f批I一塑!世一H—J同意同垂.淤同童jjxr目.;;、\┃同_;f1;\=:多//=7级’扣批I二绂审批l审批l批结果)结果结粜┃批结果-批结果、!+_公司l单彳巾请假巾计┃巾游’p批l扣批Il意同意否哆=>7同意-级审批l二审批结果)r批结粜 图4.5请假管理模块的业务处理流程图如图、4.5所示,拥有省级副总经理、市级总经理和县级总经理角色的员工请假为一级审批,除此之外的其余员工的请假都为二级审批,二级审批后,无论是否通过,都将审批结果反馈给员工;员工在请假期间,其考勤情况显示为所请假的类型。请假审批业务流程可以总结为以下13种情况:(1)县级员工需要将请假申请提交至县副经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败:如果一级审批通过,则提交至县经理进行二级审批;如果二级审批未通过,则请假失败;如果二级审批通过,则请假成功。(2)县副经理需要将请假申请提交至县经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至市副总经理进行二级审批;如果二级审批未通过,则请假失败;如果二级审批通过,则请假成功。(3)县经理需要将请假申请提交至市总经理进行审批,如果审批未通过,则请假失败;如果审批通过,则请假成功。(4)市级员工需要将请假申请提交至市部门副经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至市部门经理进行二级审批:如果二级审批未通过,则请假失败:如果二级审批通过,则请假成功。(5)市部门副经理需要将请假申请提交至市部门经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至市副总经理进行二级审批;如果二级审批未通过,则请假失败;如果二级审批通过,则请假成功。(6)市部门经理需要将请假申请提交至市副总经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至市总经理进行二级审批:如果二级审批未通过,则请假失败;如果二级审批通过,则请假成功。(7)市副总经理需要将请假申请提交至市总经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至省副总经理进行二级审批;如果二级审批未通过,则请假失败;如果二级审批通过,则请假成功。(8)市总经理需要将请假申请提交至省总经理进行审批,如果审批未通过,则请假失败;如果审批通过,则请假成功。(9)省级二级部员工需要将请假申请提交至省二级部经理进行一级审批,如果一 级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至省部门经理进行二级审批;如果二级审批未通过,则请假失败:如果二级审批通过,则请假成功。(10)省级员工和省二级部经理需要将请假申请提交至省部门副经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至省部门经理进行二级审批;如果二级审批未通过,则请假失败:如果二级审批通过,则请假成功。(11)省部门副经理需要将请假申请提交至省部门经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至省副总经理进ty--级审批;如果二级审批未通过,则请假失败;如果二级审批通过,则请假成功。(12)省部门经理需要将请假申请提交至省副总经理进行一级审批,如果一级审批未通过,则将审批结果反馈给用户,请假失败;如果一级审批通过,则提交至省总经理进行二级审批:如果二级审批未通过,则请假失败:如果二级审批通过,则请假成功。(13)省副总经理需要将请假申请提交至省总经理进行审批,如果审批未通过,则请假失败;如果审批通过,则请假成功。4.4本章小结本章主要阐述了考勤管理系统的详细设计方案,分别针对系统的总体架构设计、数据库设计和异常考勤申诉审批、请假审批的业务处理流程的设计进行了详细说明。45 5系统实现、部署与测试5.1系统开发及运行环境5.1.1系统开发环境本系统是B/S架构的J2EEWeb系统,数据库采用适合中小型企业的SQLServer2005数据库,开发工具使用MyEclipse8.6和JDKl.5.0开发,应用服务器使用ApacheTomcat6.0。在配置文件jdbc.properties中需要完成对数据库链接的配置,配置如下:·数据库驱动程序jdbc.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver·数据库链接地址url:jdbc.url=jdbc\:sqlserver\://t0.152.1.187:7001:DatabaseName\=hbrs·数据库用户名和密码。5.1.2系统运行环境由于本系统应用于X省中国人寿保险有限公司11个市约160个县,供6000余员工使用。系统的整体规划是使用三台32G应用服务器和一台64G数据库服务器。应用服务器使用WebLogic,数据库服务器使用SQLServer2005数据库。为了达到负载均衡的目的,将每台应用服务器分别部署两个服务,并通过运行控制数据流向的Java脚本,通过判断IP地址对数据进行分流,达到负载均衡、增强系统110吞吐性能的目的,系统运行环境拓扑如图5.1所示。 .蝣鳓鳓’d壹矽矗蓥雪矽4墨蓥矿固暑秒z委萝钟纠1喘弋、客户端多个客户端\夕国应用热据库服秀嚣图5.1系统运行环境拓扑图5.2系统整合架构的配置5.2.1Struts和Spring整合spring是通过DelegatillgActionProxY请求代理接I-1来实现请求代理的,在配置文件struts-config.xml中配置日历管理员登录的控制器,代码如下:</action>可见,type属性并非指向了CalendarLogAction,而是指向了spring所提供的接收用户请求的代理接口Dele舀ingActionProxy,然后把接收的请求转发给应该接收请求的Struts控制器CalendarLogAction。需要在配置文件applicationContxt.xml中再次配置,代码如下:47 </property></bean>通过Spring的上下文环境可以访问到所有的Bean,所以Struts也要通过上下文环境才能直接访问到该控制器,将Spring的上下文以插件形式加载到Struts中,配置文件struts—config.xml中的代码如下:</plug-in>5.2.2Spring和Hibernate整合配置Spring使其能够管理SessionFactory和Hibernate即可实现二者的整合,整合后提供了统一的事务调度和管理,避免持久化的实现代码渗透到业务逻辑层136】。主要配置代码如下:id=”configurationDao”class2”com.uniwin.vegbase.dao.ConfigurationDao”></property></bean>id=”configurationService”parent=”baseService”>class=”com.uniwin.vegbase.service.impl.ConfigurationServicelmpl”autowire=”byName”> </property></beai1></be,an>Spring对SessionFactory的管理需要将beans、持久化配置文件和Sessionfjactox+Y的属性注入到Spring中:S州119对事务的管理,通常使用的两种配置方式:(1)使用BeallNameAutoProxyCreaIor,自动生成事务代理方式:(2)使用TransactionFactoryBean为目标bean,生成事务处理的配置。5.3系统实现5.3.1多层级组织机构管理的实现由于WebKey下台已较为完善的实现了对多层级组织机构管理,因此本考勤系统只需基于其进行二次开发即可实现X省中国人寿有限公司省、市、县二级多个分公司的组织机构管理。系统组织机构设置如图5.2所示。一捌I崔一墨.蟠!n"t日;耐i:o罐才F荨_G河北罾寿考勤管理系统缀黧删嬲.孵‘’髫“”弦辞暾8叫⋯‘烈p∞§n^鳃最虱l,g-#矸吐**旬g目£:l!ag§l§g!1818熬:。。。,-;.;.,。。i*。m。。s,。;i。t.。臣十≈自g口:堂∞门·$垃基田*虹s韶一·睡口行口镕口I堡登.I-珥:曩抽崩炼抖辱.匦一I-s括口}季匿工会工作辞j誊诗暑苣事口二;i矗硪∞l勇曼。壤史粤^墨謦雌腔蛸有曝’最后亘景拍】}lp俎¨魂上娃莩越I}蛐ll*co图5.2组织机构设置界面首先在左侧的组织管理选择部门“石家庄分公司”,则右侧出现其对应的组织机构信息,如图5.2所示,石家庄分公司属于单位级别,其上级部门是中国人寿保险股份有限公司河北省分公司。可以对显示的信启、进行修改和保存,可以删除该部门或单位,可以添加新的组织或单位,也可以对已有的部门和单位进行排序。其它层级的组织机构管理以此类推,均可进行添加、修改和删除等操作。5.3.2系统主要功能的实现 1.在浏览器的地址栏中输入:“http://lO.152.1.187:7001/hbrs/admin/LogOut.do”即可进入国寿考勤管理系统的登录界面,如图5.3所示。◇河北国寿考勤管理系统图5.3国寿考勤管理系统登录界面输入用户名和密码,点击“登录”按钮,进入系统主界丽。系统主界面分成四个部分,依次为logo区、登录状态、目录树和操作区,用户可以在操作区选择需要进行的操作.如图5.4所示。i醛{三三三纛三一『I_三三|?磊;磊套蘧鋈鍪羹霍厣=:=i⋯鬣纛纛二二二。⋯、⋯一⋯⋯一焉鬻霪臻lo眦酣棚锻张麴隰熬溺黪髑熬。尊j甏鬻露粪錾爹羹f蓊熏翦翳黼曝蒸■■■——■——■—■——————■■■—夏=三焉}釜:鬈:l#^链i自£f};“蔓。.——。。.。。一.。一i——一~⋯~懑爨辫霉墨篓.+掣黧答:.墨竺&公图5.4系统主界面2.上下班登记进入考勤登记模块,点击“上班登记”(如图5.5所示),进入上班考勤登记界面。系统弹出“登记信息”提示信息(如图5.6所示),提示当前日期和工作考勤时间,工作考勤时间为日历管理员为员工分配的考勤日历中设定的时间。如果员工没有被分配日历,则无法进行上下班登记,如图5.7所示。 当前日期:2012—03—1908:12:49If#考勤时闷:08:30登记信窟曰期姓名鬟l习5.5上班登记界面部门鸯勒状态到5.6|J.班登记信息界面当麓溜瑚:上窿考翁时翘:该员工漫蠢考数毯历!请先分3.请假管理图5.7没有被分配日历的员工上班登记界面(1)点击“请假申请”,默认显示为员工全部的请假申请,如图5.8所示。15馆怿鬈:诗I;宴型:。彳硼一’审憾{^意:a≈%一’妻诤主蟊蓑雾语韶活黜齄日辑磺%幕日.mi诗髌璺审础奄儡作∞l:一∞‘31柠l卜¨呻l2馆i强成受备诮彝∞I:一∞一3l如l?Ⅷ3一:1赢f?-竹要薅量吾."012-∞r".-"tqZ-e4tl2馆军1慝《量吾图5.8请假信息查询界面可以通过“请假标题”、“请假类型”、“审核状态”和“全部”四种查询方式对请假信息进行查询。审核状态分为:未审核、待复核、审核完成三种。其中,未审核表示一级审批领导尚未审核:待复核表示一级审批领导己审核且同意,但二级审批领导尚未审核。趣‘一:~ (2)点击“我要请假”,进入“添加请假信息”界面,如图5.9所示。;蒂术号的为必填项,信息填写完毕点击“保存”则将请假申请提交至选定的审核人(市部门副经理)进行审批。添加清颤信息j≥诗帽标题t培训返程选择请档天数类型-整天V⋯.二蠹≥清帽类别一事橱起始日期t2013-03.13结束日期·2013—03-13可用年体倾,3.5(;E)选择请嘏审核人;诛军耀,培训结束,需要一天的返程日寸同,特此清假。清翩里由z嚼暨毓天100享j保存返回。图5.9员工添加请假申请界面(3)市部门副经理点击“请假审批”,系统默认显示全部未审核的请假申请,点击“审核”,进入请假“一级审批”界面,如图5.10所示。52逶加诸档审核信息诗档标题培口|I返程请假天数类型整天起始日期2013—03—13司用年休假35GE)诗档理由诗档娄别事档培㈨藉豪,薰蔓二天酌蘧程日j尚,特此语暇。r一■■————一~⋯蠹冀缀利懿叠一。~一j;.i二=。~!鞭冀曼蔓雠蔓戮一!一羔二!=二善=审批人tSK军耀属实,同意请假。审批意见,嚼多辕又ie《;』审批结果-碜同意不同意选择复审核人*孙光辉,结束日期2013-03—13、瓣9I务j≯}!《、短凰;ij=_=_-■:__=======_==================图5.10请假一级审批界面 如果选择“同意”,则提示选择二级审核人(市部门经理),点击“保存”,提交至市部门经理进行二级审批:如果选择“不同意”,点击“保存”,则将结果反馈给请假员工,请假失败。(4)市部门经理点击“审核”,进入请假“二级审批”界面,如图5.11所示。添加清蜴审按信息Y~v。~““⋯~⋯^¨^~~~请嘏标题瞎d||逅程请口;天数类型整天起始日期2013—03—13培训结束,需要一天的返程叫同,持此请档。审批ASt军耀屠要,同意诗织·雨舭意见审批^-钧j光嘏屠赛·同意i§船。审批意见·最多辏^l。。;j审批结果·。同意不同意保存返回图5.11请假二级审批界面如果选择“同意”,点击“保存”,则员工请假成功:如果选择“不同意”,点击“保存”,则员工请假失败。无论是否同意,都将结果反馈给请假员工。4.考勤日历管理拥有日历管理员角色的员工点击“按人员分配日历”,可以选择公司、部门和所选公司部门下的人员,并为其指定考勤日历,如图5.12所示。每位员工只能被指定唯一的考勤日历,且必须按照被指定考勤日历上所规定的正常上下班以及休假时间严格执行。53 选搓公司:省盐罚’选择誊n:匿辑蛀芳誉’遘撵巨历;i。。&.。泰撂^爱c一。、、。7黼M。。一⋯*、÷、豳■圈圈圈豳鬣黧骊置髓豳翱I。l霸弱翮豳豳麟:麓蛙图5.12按人员分配日历界而5.4系统部署国寿考勤系统部署于省公司的服务器L,其他11个市及下属160余县的分公司只需利用公司内网,登录浏览器,输入指定网址即可。部署时首先将考勤管理系统提供的BAK备份数据包导入到数据库中‘37|,具体的程序发布步骤如下:1.将hbrs.war包放到一个目录下,例如,放到D:\_DATA下。2.点击:开始.程序一BeaProducts—userProjects—baseDomain—startAdminServerforWebLogicServerDomain,启动Webl。ogic。由于选择的是Development的SUN版本,因此不需要输入用户名密码:如果选择了Production版本则需要在启动和停止时输入WebLogic密码。3.打开IE,在地址栏输入http://10.152.1.188:700l/console/,其中“10.152.1.188”是本机地址,然后在用户名密码处输入建立Domain时输入的用户名密码。4.点击左边栏的“Deployments”。5.点击左边栏的“lock&edit”,上一屏的Install就由灰色不可选变为可选了。6.点击Install按钮,在提示的路径中选择刚才程序包所在的路径(D:\DATA),然后选择此程序。7.点击上图的Next,下面的三个界面选项均为默认,在最后一个界面点“Finish”。8.点击“Save”。9.上图中点击左上角的“ActivateChanges”。10.点击上图左边栏的“Deployments”,然后选中hbrs,点击Start的ServicingAllRequestS。 11.Messages处有如图5.13的,j。r1_7一j弋,说明发布成功了。图5.I3Messages显示界面12.将“C:\bea\user_projects\domaills\⋯\WEB一1NF\lib”下n勺“一wl—cls—een.jar”解压缩,将不是文件夹的7个文件拷贝到:“C:\bea\user_projects\domains\⋯\WEB—INF\classes”里,然后重启WebLogic。3.检查数据库密码是否正确,涉及数据库地址、用户名和密码的有以下3个地方,分别是:C:\bea\userAorojects\donaains\basedomain\servers\...\war\WEB—INF\classes\webkey—COnfig.propertiesC:\bca\userprojects\domains\base~dolnain\servers\...\war\WEB—INFijdbc.propertiesC:\bea\user_projects\domains\basedomain\servers\...\war\WEB—INF\props\webkey—config.properties14.配置完毕,在前台登录地址为:http://10.152.1.188:7001/hbrs/admin/index.do。5.5系统性能测试对系统的各个模块进行了全面测试,并对50个并发用户执行同一事务的最小、最大和平均响应时间进行了统计,测试结果显示系统性能良好,如表5.1所示。表5.150个并发用户同一事务响应时间最小(per/second)T:【9(per/second)最大(per/second)1.022I.8233.72l55 系统测试了从5:30到l3:00并发用户小于等于50人时执行多个事务的平均响应H,1‘问,统计数据如图5.14所示,横坐标表示事务执行的不同时间段,纵坐标表示并发用户小于等于50人时执行多个事务的平均响应刚一问,单位为秒。由于8:00—8:30为上班高峰期,11:30—12:00为工作计划提交高峰期,因此响应时间呈高峰值。从图5.14可以得知,系统可以满足X省国寿员工的实际需求,响应时间在可接受范围内。速度辅:s)平均事务响应时间5:306:006:307:007:308:008:309:009:3010:0010:3011:OOll:3012:0012:3013:00(事务运行黠惩轻:}1k毽鳓),1图5.14并发用户小于等于50人在不同时间段执行多个事务的平均响应时问分布图5.6本章小结该系统基于WebKey平台的二次开发,大大简化了对SSH框架的配置整合工作。本章对河北人寿考勤管理系统进行实现,,主要阐述了考勤管理、请销假管理、工作日志与计划、考勤日历管理模块大部分功能的实现以及系统的部署和测试。最后,通过具体的测试数据,表明该系统满足客户的应用需求。l@0753■国753■9753■0753■固々53■44444333332,‘2221111100000 6结论与展望6.1总结本论文的直接成果是开发了X省中国人寿考勤管理系统,解决了企业考勤管理工作中多级审批和省、市、县多层级组织机构管理等存在的困难。为X省中国人寿保险股份有限公司11个地市约160个县180个单位的6000余员工的考勤管理提供了现代化手段,也为考勤管理人员统计考勤情况以及公司的领导层管理下属员工提供了方便。底层框架基于WebKey平台的组织机构管理、角色权限控制和内容管理平台,使系统在开发阶段结构清晰、简易快捷,也使系统在后期升级和维护时更轻松,并且提高了系统的后期业务扩展性和复用性,对类似考勤管理系统的研发具有一定的参考价值。具体的讲,本系统具有如下几方面的优势:1.采用UML方法对系统的考勤管理、请销假管理、工作日志与计划管理和考勤日历管理四个子系统的角色和功能用例以及系统业务处理流程进行建模,并详细描述了主要功能和申诉、审批业务处理流程,为系统设计实现奠定了扎实的基础。2.采用分层设计,结构清晰,易于后期维护,提高了系统的复用性和扩展性。3.基于WebKey平台,采用基于角色的访问控制方法,实现了用户权限配置的灵活性和访问控制的安全性。4.基于WebKey平台的组织机构管理和内容管理平台,不仅减少了开发任务量,满足了用户对于多级审批流程的需求,而且使省、市、县三级组织机构管理实现简单、快捷的管理。5.基于WebKey平台进行开发,极大简化了系统整合架构的配置。6.2展望当然,本课题还有很多需要改进的地方。比如,在对数据库进行物理模型设计时,部分参数是系统默认的,在后期改进过程中,可以根据实际情况逐步修改,以提高存储效率、降低访问请求时间。在系统的后期开发、维护中,我将在课题研究成果基础上继续钻研和实践,逐步完善系统的设计工作。尤其是数据库设计方面,因为它对系统的运行速度、存储效率有很大的影响,优化后可以为用户提供更高效的服务。另外,希望可以不断挖掘WebKey平台的优势,为以后的开发工作积累经验,降低代码编写量。最后,还需要在系统的使用 性能、并发问题上进行深入研究,开发可以适用于各个行业领域的高效的考勤管理系统。 参考文献[1】张宇航.电子政务项目建设与运行管理研宄[D】.北京:北京交通大学,2012:15.【2]周宏仁.电子政务全球透视与我国电子政务的发展【J】.计算机安全.2002(20):15—17.[3】朱步楼.关于电子政务建设的几点思考[J】.电子与信息学报.2006(12):4.【4】金雪妹,王铭.美国在电子政务中实施CRM的经验及对我国的启示[J】.城市管理与科技.2006(7):30.[5】姚国章.国际与国内政府电子化服务研究进展【J】.公共管理学报.2006(4):32.【6】吴吴.浅议目前我国电子政务建设的管理体制【J】.信息化建设.2007(6):20—23.【7]RodJohnson.J2EEDevelopmentwithoutEJB[M].Indian—apolies,2004:57.[8]GuoChun·yan,ZhuKong—lai.TileDesignofB2BE—commerceSystemBasedonMVCModelandJ2EE[J].ManagementScienceandEngineering.2011fl4):44.【9】李军华,谭洪波.信息经济时代企业人力资源信息系统模式的研究与开发[J】.华南师范大学学报(社会科学版).2002(06):56.【10】张冀军.考勤信息管理系统现状解析[J】.清华大学计算机学报.2003(2):11—17.[1l】寇毅,吴力文.基于MVC设计模式的Struts框架的应用方法【J】.计算机应用.2003(5):34—36.【12]SunYin,XuJunhua,ZhangYi,eta1.WebApplicationofMVCPatternanditsImplementationwithJava[J].ComputerEngineeringandApplications.2001f17):160.163.【13】王春超.基于J2EE架构的SSH组合框架的研究[D].吉林:长春理工大学,2010:26.[14】薄奇,许林英.Spring框架中IoC的实现【J】.微处理机.2008(29):147.149.[15】沃尔斯,布雷登巴赫,毕庆红.SpringinAction(第2版)中文版[M】.北京:人民邮电出版社.2008:10.【16】欧阳宏基.一种基于DAO设计模式与Hibernate框架的数据持久化层模型【J】.微计算机应用.2009(3):36.37.[1715E志军,孙月霞.基于w曲开发的几种服务器端脚本语言的分析与比较【J】.计算机应用研究.2006(3):26—30.【18】杨旭士.基于JQuery框架的w曲查询视图设计与实现[J】.计算机与现代化.201008008):128一129.[191j:d、广芝.企业内容管理理论与应用评述[J].情报杂志,2005,(12):97.100,104. [20]丁晓宁,张听,金蓓弘,黄涛.一种任务类型敏感的J2EE事务调度算法[J】.软件学报.2006(11:3l一38.【2l】屈建明,陈洁.FreeMarker模板引擎动态生成网页的应用研究[J】-计算机与现代化.2011fl8703):12l—123.【22捌1华,冯玉琳.扩充角色层次关系模型及其应用[J].软件学报.2000(11):779—784.[23】周锦程,张佳强,冷文浩.可扩展系统中基于RBAC模型的访问控制[J].计算机工程.2009(14、:145—147.[24]X[g集波,洪帆.基于任务的访问控制模型[J】.软件学报.2003(14):76—82.[25]BartBouwman,SjoukeMauw,MilanPetkovic.RightsManagementforRole—BasedAccessControl[J].IEEEConsumerComnmnicationsandNetworkingConference.2008(5):l085一l090.【26]KarstenSohr,MichaelDrouineaud,Gail—JoonAhnetc.AnalyzingandManagingRole—BasedAccessControlPolicies[J].IEEETransactionsonKnowledgeandDataEngineering.2008(20):924—939.[271李师贤,张珞玲.需求分析的常见问题及其对策分析[J】.计算机工程.2002(1):7—9.[28】邴晓燕,邵贝恩.基于SOA的企业应用跨安全域访问控制[J】.清华大学学报(自然科学版),2009(7):4295_4298.[29】宋波,刘杰,牡庆东.UML面向对象技术与实践【M】.北京:科学出版社.2006:65.[30]刘香萍,赵雪岩,李建成.基于web的UML建模系统[J].计算机工程.2008(31017):77—78.【31】于明钊,李元香,刘文印,张宏江.应用对象过程图扩展UML建模环境[J】.软件学报.2002(4):698—705.[32]林泊,周明辉,刘天成,黄罡,梅宏.一个J2EE应用服务器的Web容器集成框架【J】.软件学报.2006(5):1195一1203.【33]张强,谭博,谭成翔.利用产生式编程构建低耦合的软件模块.AOP的原理和实践【J】.计算机应用..2005(3):620-622.[34]杨海东.如何优化SQLServer数据库的性能[J】.计算机应用.2007(11):21—23.【35]李生琦.支持数据库E—R模型设计的本体论及其获取方法【J】.计算机工程.2004(9):8一l5.【36]苗晓辉.基于J2EE的数据持久化的研究与实现[J】.计算机工程.2007(05):272—274.[3712EZ.数据库连接池技术及其在WeblogicServer中的配置[J】.沈阳师范大学学报(自60 然科学版).2006(04):4534566l 致谢本篇论文是我在研究生学习阶段提交的最后一份答卷,从论文选题到搜集资料、阅读文献,从系统需求分析、详细设计、部署、实现、测试到系统投入使用,从字斟句酌到章节梳理,经历了迷惘、聒噪、煎熬和喜悦。如今,伴随着论文的最终成文,我发自肺腑的谢意有很多很多。首先,我要特别感谢我的导师郭瑞强副教授。在短暂的研究生学习阶段,郭老师给予我很大的支持和鼓励。从论文选题、开题报告、中期检查、论文撰写到最终完稿,都倾注了郭老师大量的精力和心血,肯定己取得的成绩,并从不同的角度拓展我的思维。在指导过程中,我受益的不仅是郭老师严谨的治学态度和渊博的知识,更是郭老师的良师风范,这些都将是我人生中宝贵的财富。在此,向郭老师表达我最诚挚的感谢和最崇高的敬意。感谢所有教导、关心过我的老师。特别是在学术上给予我指导的赵书良老师、张有会老师、董东老师和张朝昆老师,你们为人师表的风范令我敬仰。感谢刘秋菊老师在学习、生活和心理上给予我的帮助和支持。其次,我要感谢中信联信息技术有限公司为我提供难得的实习机会。感谢校外导师彭丽冬经理,以及在一起进行项目开发的每一位同事。如果没有大家真诚的帮助和照顾,我就不能如此之快的融入其中,并很快加入到公司项目的开发中。感谢研究生期间在学习上给予我指导的周萌师姐和郭阿为师姐,感谢张钊、蒋瑞虔、刘士龙、刘海燕和陈新苗在学术研究上给予我的帮助,感谢朝夕相处并给我带来欢乐的宿舍姐妹们。感谢2011届所有的同学,与你们一同经历的快乐将成为我一生最美好的回忆。感i隽}我的家人给予我强大的动力和支持,以及对我无私的爱。最后,格外感谢在百忙之中抽出宝贵时间对我的论文进行审阅和指导的专家和老师们,谢谢!