版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
办公自动化系统毕业论文摘要随着信息技术的飞速发展,我国各类信息化技术手段在企事业单位中不断的得到应用,很大程度上提高了企事业单位的办公效率,对企事业单位的办公模式产生了很大的影响。在传统的办公过程中,往往会因为个人文档管理不当,产生文件遗失,过时的未批文件,或是由于出差无法及时的批复相关的文件等情况。办公自动化(OfficeAutomation,简称OA)系统的出现,大幅度的提高了工作效率和质量。其中公文流转的自动化是办公系统最重要的部分。整个系统分为用于公文流转的公文管理模块;用于为公文流转提供工作流和表单的流程定义模块;用于对公司机构及人员管理的组织机构模块;以及管理模块、角色及用户的权限管理模块。通过测试,本系统能稳定的运行,基本达到了用户需求,提高了办公人员的工作效率,降低工作成本,很好的实现办公自动化。 通过分析国内外办公自动化系统的开发现状,设计并实现了基于SSH2(Struts2、Hibernate、Spring)的办公自动化系统文档管理子系统。系统采用Rose、Visio画图工具实现办公自动化系统的功能模块图、顺序图等,应用Javascript、CSS等技术使用Dreamweaver页面制作软件与Photoshop图形处理软件等相结合开发系统的页面;采用SSH2整合框架技术实现系统业务逻辑;采用JBPM技术实现工作流;采用Mysql数据库为系统提供强大完善的数据库支持环境。通过以上技术相结合,较好的完成了办公自动化系统的建设。关键词:办公自动化,OA;SSH2;工作流;JBPM;MysqlAbstractWiththerapiddevelopmentofinformationtechnology,allkindsofinformationtechnologyinenterprisesandinstitutionshaveconstantlyappliedinourcountry,itgreatlyimprovestheefficiencyofenterprises,theofficeofenterprisesorinstitutionsofficemodelproducedgreatimpact.Intraditionalofficeprocess,oftenbecauseindividualdocumentmanagementundeserved,producefilesaremissing,outdatednotbatchfile,orbecauseitisunabletoreplyoftravelrelatedfilesandsoon.WhenofficeAutomation(OfficeAutomation,abbreviationOA)systemappear,itgreatlyimprovestheworkefficiencyandquality.Theautomationofgovernmentaldocumentisthemostimportantpartofofficesystem.Throughanalyzingthedevelopmentofdomesticandforeignofficeautomationsystempresentsituation,IdesignandimplementbasedonSSH2(Struts2,Hibernate,Spring)automationsystemdocumentmanagementsubsystem.SystemusesDreamweaverpagemakingsoftwareandPhotoshopgraphicssoftwaredevelopmentsystemcombiningpages;UsingSSH2integratedframeworktechnologytoachievesystemsbusinesslogic;UsingJBPMtechnologytoachievetheworkflow;UsingMysqldatabaseforthesystemtoprovidepowerfuldatabasetosupportenvironment;AdoptRose,Visiodrawingtoolstoimplementofficeautomationsystemfunctionmodulechart,sequencediagram,andthenwidelyappliedJavascript,CSStechniques.Throughtheabovetechnology,ithascompletedtheconstructionofofficeautomationsystem.Thesystemusesthestructuredandprototypesbycombinationofthemethodforsystemdevelopment.Thewholesystemisdividedintoofficialdocumentsforcirculationmanagementmodule;Usedtoprovidetheworkflowandformdocumentcirculationflowofworkmodule;Forcompanyorganizationandpersonnelmanagementorganizationmodule;Andmanagementmodule,roleanduserrightsmanagementmodule.Throughtesting,thesystemcanstablerunning,basicallyreachestheuserrequirements,improvetheofficepersonnelworkingefficiency,reducethecost,goodrealizeofficeautomation.Keyword:OA;SSH2;workflow;JBPM;Mysql目录引言 1第一章相关技术简介 21.1struts2框架技术简介 21.2Hibernate3框架技术简介 31.3Spring框架技术简介 41.4Mysql简介 51.5jBPM简介 6第二章系统分析 72.1需求分析 72.1.1分析目的 72.1.2项目背景 72.2任务概述 72.2.1设计目标 72.2.2运行环境 82.3系统工作流程 82.4功能分析 82.5系统处理流程 122.6数据分析 142.6.1数据库设计 142.6.2数据库介绍 16第三章系统设计 233.1功能划分 233.2层次模块图 233.3功能描述 25第四章系统实现 354.1运行及实现 354.1.1登录和首页模块 354.1.2组织机构子系统 364.1.3权限管理子系统 384.1.4公文管理子系统 424.2核心代码 474.3遇到的问题及解决方法 52结论 55参考文献 56谢辞 58图表清单TOC\h\z\t"图表,1"\c"图表"图1-1struts请求响应流程图 2图1-2Hibernate框架体系结构图 3图1-3Spring7个模块图 4图2-1办公自动化系统工作流程图 8图2-2机构管理用例图 9图2-3人员管理用例图 9图2-4模块管理用例图 10图2-5角色管理用例图 10图2-6用户管理用例图 11图2-7公文管理用例图 11图2-8流程管理用例图 12图2-9表单定义用例图 12图2-10组织机构操作流程图 13图2-11权限管理操作流程图 13图2-12工作流程操作流程图 14图2-13权限管理E-R图 14图2-14公文管理E-R图 15表2.1办公自动化系统数据库表 16表2.2T_Organization 16表2.3T_Person 17表2.4T_Module 17表2.5T_User 18表2.6T_Role 18表2.7T_UserRole 18表2.8T_ACL 19表2.9T_FieldType 19表2.10T_FlowForm 20表2.11T_FieldInput 20表2.12T_FieldItem 20表2.13T_FormField 21表2.14T_Document 21表2.15T_WorkFlow 22表2.16T_ApproveInfo 22图3-1办公自动化系统总体结构图 24图3-2组织机构子系统结构图 24图3-4权限管理子系统结构图 24图3-5工作流程子系统结构图 25图3-6权限管理类图 25图3-7即时认证活动图 26图3-8授权活动图 26图3-9工作流类图 27图3-10部署流程顺序图 27图3-11查看流程顺序图 28图3-12删除流程顺序图 28图3-13添加公文顺序图 29图3-14修改公文顺序图 29图3-15查看我的公文顺序图 30图3-16查看待审公文顺序图 30图3-17查看已审公文顺序图 31图3-18查看公文历史顺序图 31图3-19审批公文顺序图 32图3-20提交公文顺序图 33图3-21删除公文顺序图 34图4-1系统登录界面 35图4-2系统主界面 35图4-3机构管理主界面 36图4-4添加机构界面 36图4-5添加成功后的界面 36图4-6更新机构信息界面 37图4-7删除机构提示信息界面 37图4-8人员管理主界面 37图4-9添加人员信息界面 38图4-10选择所属机构界面 38图4-11模块管理界面 39图4-12角色管理主界面 39图4-13角色授权界面 40图4-14用户管理界面 40图4-15分配账号界面 41图4-16分配角色界面 41图4-17用户授权界面 42图4-17公文管理主界面 42图4-18添加公文信息界面 43图4-19待审公文列表界面 43图4-20已审公文界面 43图4-21查看审批历史界面 43图4-22提交流程界面 44图4-23提交流程界面 44图4-24下载界面 44图4-25流程管理主界面 44图4-26流程定义图片界面 45图4-27流程定义文件界面 45图4-28流程定义主界面 46图4-29定义表单界面 46图4-30添加表单域界面 46图4-31条目界面 46PAGE581引言目前,人类社会已经迈入了信息时代,信息技术的高速发展,给人们的生活和工作带来了巨大的影响,同时对传统的企事业单位的工作方式提出了新的挑战。在传统的办公过程中,往往会因为个人文档管理不当,产生文件遗失,过时的未批文件,或是由于出差无法及时的批复相关的文件等情况。之前的数据文件大部分是一些厚重的文档档案和纸质文件,要查询历史记录,需要从档案室一个一个查找,即耗时又繁琐。而且许多公司采用纸张表单,手工传递的方式,一级一级的审批签字,工作效率非常低下,对于统计报表功能则不能实现。为此,我们利用现有成熟技术,用户只需在电脑上填写相关表单流程的公文,系统就会按照定义好的流程自动往下流转,下一级审批者将会收到相关公文,并可以根据需要修改、跟踪、管理、查询、统计、打印等,大大提高了工作效率,实现了有效管理,提高办公人员的工作效率,降低工作成本,提升了公司的核心竞争力,很好的实现办公自动化。办公自动化系统可以让企事业单位的工作更清晰,让管理更明了。本办公自动化子系统包括组织管理、权限管理、公文管理、工作流程四个模块。组织管理可以实现:组织机构的添加、删除、更新、查看父机构下的子机构;添加人员信息、删除人员、更新人员信息。权限管理可以实现:添加模块信息、删除模块、更新模块信息、查看二级模块信息;添加角色信息、删除角色、角色授权;分配用户账号、删除账号、修改账号、分配角色、用户授权。公文管理可以实现:添加公文信息、下载公文附件、审批公文、提交公文、查看公文审批历史、查看待审公文列表、查看已审公文列表。工作流程可以实现:添加或重新上传流程定义文件及图片、删除流程、查看流程定义的图片、查看流程定义的文件;查看流程定义的图片、查看流程定义的文件、定义表单、添加表单域,添加表单条目、删除条目。本系统丰富的功能可以让办公人员从繁重的工作中解脱出来,高效、及时的完成相应的工作任务,提高工作效率。第一章相关技术简介1.1struts2框架技术简介Struts架构是MVC设计模式的一种实现,用户创建企业级JavaWeb应用程序的可扩展的框架。它将Servlet和JSP标记(属于J2EE规范)用作实现的一部分。Struts继承了MVC设计模式的各项特性,并根据J2EE的特点,做了相应的变化与扩展。下图介绍了Struts2的请求响应完整的流程。图中方框部分包括FilterDispatcher和XXXAction共同构成了Struts2的控制器,常常把FilterDispatcher称为核心控制器,把XXXAction称为业务控制器。业务控制器XXXAction通常并不与物理视图关联,这种做法提供了很好的解耦。业务控制器只负责返回处理结果,而该处理结果与怎样的视图关联,依然由FilterDispatcher来决定。这样做的好处是:如果有一天需要将某个视图名称映射到不同的视图资源,这就无须修改XXXActiond的代码,而是只需修改配置文件即可。在Struts2框架的控制下,用户请求不再JSP页面发送,而是由核心控制器FilterDispatcher来“调用”JSP页面来生成响应,此处的调用并不是直接调用,而是将请求forward到指定JSP页面。图1-1struts请求响应流程图1.2Hibernate3框架技术简介Hibernate是轻量级JavaEE应用的持久化解决方案,Hibernate不仅管理Java类到数据库表的映射(包括Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度的缩短使用JDBC处理数据持久化的时间。图1-2Hibernate框架体系结构图Hibernate框架体系结构如图1-2所示。Hibernate自身通过对象-关系映射文件(*.hbm.xml)将实体类映射到数据库中的表,为应用程序提供持久化服务。Hibernate是Java应用和关系数据库之间的桥梁,它将应用层对对象的操作直接转化为对关系数据库中的表的操作,使程序员不用关心数据库的操作问题,解决了业务逻辑和数据模型的矛盾,真正做到了面向对象编程。Hibernate提供众多操作对象的应用接口(API),在数据库操作编程时可直接利用,大大提高了编程效率和编码的可靠性。Hibernate全局配置文件hibernate.cfg.xml中描述数据库连接信息、注册系统所有的对象-关系映射文件(*.hbm.xml),以便应用启动后就完成了数据库的连接和所有对象-关系映射文件的加载工作。1.3Spring框架技术简介Spring为企业应用的开发提供一个轻量级的解决方案。该方案包括:基于依赖注入的核心机制,基于AOP的声明式事务管理,与多种持久层技术的整合,以及优秀的WebMVC框架等。Spring致力于JavaEE应用各层的解决方案,而不仅仅专注于某一层的方案。可以说:Spring是企业应用开发的“一站式”选择,Spring贯穿表现层、业务层、持持久层。然而,Spring并不想取代那些已有的框架,而是以高度的开发性和它们无缝整合。Spring具有以下优点:低侵入式设计,代码的污染极低;独立于各种应用服务器,基于Spring框架的应用,可以真正实现WriteOnce、RunAnywhere的承诺;Spring的DI容器降低了业务对象替换的复杂性,提高了组件之间的解耦;Spring的AOP容器允许将一些通用任务如安全、事务、日志等进行集中式处理,从而提供了更好的复用;Spring的ORM和DAO提供了与第三方持久层框架的良好整合,并简化了底层的数据库访问;Spring的高度开放性,并不强制应用完全依赖与Spring,开发者可自由选择Spring框架的部分或全部。Spring框架是一个分层架构,由7个定义良好的模块组成。Spring模块构建在核心容器之上,核心容器定义了创建、配置和管理bean的方式,如图1-3所示。图1-3Spring7个模块图1.4Mysql简介MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。如雅虎、阿尔卡特—朗讯、Google公司、诺基亚公司、百度等公司就采用了MySQL数据库。MySQL数据库可以称得上是目前运行速度最快的SQL语言数据库。MySQL数据库主要有以下特点:1、可移植性使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。2、可扩展性和灵活性MySQL可以支持UNIX、Linux和SUNOS以及Windows等多种操作系统平台。在一个操作系统中实现的应用可以很方便地移植到其他操作系统。MySQL作为开源性质的数据库服务器,可以为那些想要增加独特需求的用户提供完全定制的功能。3、强大的数据保护功能MySQL有一个非常灵活且安全的权限和密码系统。为确保只有获授权用户才能进入该数据库服务器,所有的密码传输均采用加密形式,同时也提供了SSH和SSI。支持,以实现安全和可靠的连接。MySQL强大的数据加密和解密功能,可以保证敏感数据不受未经授权的访问。4、支持大型的数据库虽然对于用PHP编写的网页来说,只要能够存放数百条以上的记录数据就是够了,但MySQL可以方便地支持上千万条记录的数据库。作为一个开放源代码的数据库,MySQL可以针对不同的应用进行相应的修改。5、超强的稳定性MySQL拥有一个非常快速而且稳定的基于线程的内存分配系统,可以持续使用而不必担心其稳定性。线程是轻量级的进程,它可以灵活地为用户提供服务,而不占用过多的系统资源。用多线程和C语言实现的MySQL能很容易地充分利用CPU。6、强大的查询功能MySQL支持查询的select和where语句的全部运算符和函数,并且可以在同一查询中混用来自不同数据库的表,从而使得查询变得快捷、方便。1.5jBPM简介jBPM,全称是javaBusinessProcessManagement,是一种基于JavaEE的轻量级工作流管理软件包,由于jBPM框架的开发性,它更像是一个支持面向对象流程的框架(Framework)。jBPM是开放源代码(OpenSource)项目,使用jBPM要遵循LGPL开放源代码协议。JBossjBPM是一个可扩展、灵活的能够实现工作流、业务流程管理的企业级开发框架,提供了流程定义、流程部署、流程执行、流程管理等功能。jBPM是JBoss旗下的子项目,JBPM下还包括有Seam(JavaEE开发框架)、Drools(规则引擎)、Hibernate(ORM持久化框架)等众多领域的优秀开源项目。由于属于同一个产品家族,它们能与jBPM完美的结合,互相都留有支持接口,方便开发者业务的扩展。jBPM的结构特点如下:嵌入的工作流引擎jBPM完全支持嵌入式应用的业务流程开发框架,可以在事务处理、数据持久化等各个方面与业务应用程序进行灵活的集成。2、可插拔的体系架构jBPM采用了模块化的架构设计,采用IOC(依赖注入)的设计理念,各模块之间可以比较方便地解耦或替换不同的实现,例如持久化、事务处理、身份认证、日志服务等,都由可选模块实现。3、易扩展的流程语言jBPM框架内置的流程定义活动,包括start、task、fork、join和decision等,是构建完整业务流程所必须的组成部分,它们提供了可以将业务逻辑Java代码和业务流程编排无缝的绑定机制。第二章系统分析2.1需求分析2.1.1分析目的本项目为“基于SSH2的办公自动化系统文档资料管理子系统”,一方面,以完成本科毕业设计为目标,同时加强和巩固本科阶段所学相关基础知识。另一方面,定义系统总体要求,作为用户、软件开发人员以及其他干系人之间沟通的基础;描述功能要求、性能要求、用户和系统的接口要求、数据库等内容,作为后期系统开发阶段进行系统结构设计和编码的基础同时作为系统总体测试的依据。2.1.2基于SSH2的办公自动化系统文档资料管理子系统需求——许志伟老师提出,张鹏翔同学开发。本系统的开发主要采用JSP、Mysql、SSH2(Struts2、Hibernate、Spring)等技术,将它们结合一起来编写代码;此外在开发系统中还使用到了Dreamweaver、Fireworks、Photoshop等辅助性开发软件。本系统主要实现了组织机构、权限管理、公文管理、工作流程等功能,本系统有很好的兼容性,可以在WINXP、WIN2000、WIN2003系统中都能很好的运行。2.2任务概述2.2.1随着信息技术的飞速发展,我国各类信息化技术手段在企事业单位中不断的得到应用,很大程度上提高了企事业单位的办公效率,对企事业单位的办公模式产生了很大的影响。办公自动化系统的出现,大幅度的提高了工作效率和质量。其中公文流转的自动化是办公系统最重要的部分。在传统的办公过程中,往往会因为个人文档管理不当,产生文件遗失,过时的未批文件,或是由于出差无法及时的批复相关的文件等情况。之前的数据文件大部分是一些厚重的文档档案和纸质文件,要查询历史记录,需要从档案室一个一个查找,即耗时又繁琐。所以,开发办公自动化系统的目标是提高办公人员的工作效率,降低工作成本,很好的实现办公自动化。2.2.操作系统:MicrosoftWindowsxp/2003/Win7/Unix软件环境:JDK6.0,Tomcat6.0,Myeclipse6.0,MacromediaDreamweaver8.0数据库:Mysql5.5硬件要求:CPU:2GHZ内存:2G2.3系统工作流程系统工作流程图是使用适当的符号记录工作事项,用以描述工作活动流向顺序的模型图。办公自动化系统工作流程图如下所示:图2-1办公自动化系统工作流程图2.4功能分析本系统共有四个大的模块,分别是:组织机构、权限管理、公文管理、表单定义。本文是按照模块绘制系统用例图。系统用例图是参与者、系统用例、二者之间的关系构成的用来描述系统功能动态视图的模型图。以下是办公自动化系统的用例图:机构管理用例图如图2-2所示:图2-2机构管理用例图2、人员管理用例图如图2-3所示:图2-3人员管理用例图3、模块管理用例图如图2-4所示:图2-4模块管理用例图角色管理用例图如图2-5所示:图2-5角色管理用例图用户管理用例图如图2-6所示:图2-6用户管理用例图6、公文管理用例图如图2-7所示:图2-7公文管理用例图流程管理用例图如图2-8所示:图2-8流程管理用例图8、表单定义用例图如图2-9所示:图2-9表单定义用例图2.5系统处理流程办公自动化系统流程图主要说明数据的处理过程,使用户能够清楚的了解操作流程。办公自动化系统的组织机构操作流程图如下图2-10所示:图2-10组织机构操作流程图权限管理操作流程图如下图2-11所示:图2-11权限管理操作流程图工作流程操作流程图如下图2-12所示:图2-12工作流程操作流程图2.6数据分析2.6.1数据库设计办公自动化系统数据库包括机构表、员工表、模块表、用户表、角色表等15张表,通过15张表的设计将所需要的信息进行管理。数据库的设计使用了当前企业里流行的工具Visio,利用Visio设计的E-R图如下图所示:图2-13权限管理E-R图图2-14公文管理E-R图办公自动化系统数据库表的详细信息如下各表:表2.1办公自动化系统数据库表表名功能说明T_Organization机构表T_Person员工表T_Module模块表T_User用户表T_Role角色表T_UserRole用户角色表T_ACL访问控制列表T_FieldType表单域类型表T_FlowForm流程表单信息表T_FieldInput表单域输入形式信息表T_FieldItem表单域下拉框条目信息表T_FormField表单域信息表T_Document公文表T_WorkFlow工作流表T_ApproveInfo审批历史表2.6.2数据库介绍T_Organization(机构表)描述了公司机构的基本情况如表2.2所示:表2.2T_Organization表名T_Organization中文名称机构表业务描述描述系统机构信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1机构IDIDIntYPK唯一标识,机构ID是自动生成的2机构名NameVARCHAR(255)Y机构名称3父机构IDPidIntY标识父机构的ID4机构编号SnVARCHAR(255)Y机构的编号=XX(父机构的编号)__XX(本机构的序号)T_Person(员工表)描述了公司员工的基本情况如表2.3所示:表2.3T_Person表名T_Person中文名称员工表业务描述描述系统员工信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1员工IDIDInt(11)YPK唯一标识,员工ID是自动生成的2员工名NameVARCHAR(255)Y员工名3性别SexVARCHAR(255)Y员工性别4年龄AgeInt(11)Y员工年龄5电话PhoneVARCHAR(255)Y员工电话6所属机构OrgInt(11)YFK员工所在机构编号7地址AddressVARCHAR(255)Y员工地址T_Module(模块表)描述了模块的基本情况如表2.4所示:表2.4T_Module表名T_Module中文名称模块表业务描述描述系统模块信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1模块IDIDInt(11)YPK唯一标识,模块ID是自动生成的2模块名NameVARCHAR(255)Y模块名3排序号OrderNoInt(11)Y模块排序编号4父模块IDPidInt(11)Y标识父模块ID5模块编号SnVARCHAR(255)Y模块编号6模块地址UrlVARCHAR(255)Y标识模块的链接地址T_User(用户表)描述了系统用户的基本情况如表2.5所示:表2.5T_User表名T_User中文名称用户表业务描述描述系统用户信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1用户IDIDInt(11)YPK唯一标识,用户ID是自动生成的2用户名UsernameVARCHAR(255)Y用户登录系统的时候的用户名3密码PasswordVARCHAR(255)Y用户登录系统的密码4员工编号PersonInt(11)YFK系统用户的员工编号5账号创建时间CreatetimeDatetimeY用户账号创建时间6账号失效时间ExpiretimeDatetimeY用户账号失效时间T_Role(角色表)描述了角色的基本情况如表2.6所示:表2.6T_Role表名T_Role中文名称角色表业务描述描述系统角色信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1角色IDIDInt(11)YPK唯一标识,角色ID是自动生成的2角色名NameVARCHAR(255)Y系统角色名称T_UserRole(用户角色表)描述了用户与角色关系的基本情况如表2.7所示:表2.7T_UserRole表名T_UserRole中文名称用户角色表业务描述描述系统用户与角色关联信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1用户角色IDIDInt(11)YPK唯一标识,用户角色ID是自动生成的2角色RoleInt(11)YFK角色编号3用户UserInt(11)YFK用户编号4优先级OrderNoInt(11)Y用户角色的优先级T_ACL(访问控制列表)描述了系统用户与角色访问控制的基本情况如表2.8所示:表2.8T_ACL表名T_ACL中文名称访问控制列表业务描述描述系统用户或角色授权和认证信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1ACL编号IDInt(11)YPK唯一标识,ID是自动生成的2主体标识PrincipalIdInt(11)YFK标识主体的编号(用户或角色编号)3模块IDModuleIdInt(11)YFK模块编号4授权状态adStateInt(11)Y用一个int有32位,用后4位表示CRUD操作,位的取值1或0表示允许或不允许5授权状态的掩码adTriStateInt(11)Y用一个int来表示授权的继承状态6主体类型PrincipalTypeInt(11)Y标识主体类型(用户或角色)T_FieldType(表单域类型表)描述了表单域的类型的基本情况如表2.9所示:表2.9T_FieldType表名T_FieldType中文名称表单域类型表业务描述描述表单域的类型序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1类型IDIDInt(11)YPK唯一标识,ID是自动生成的2表单域类型TypeVARCHAR(255)Y表单域类型,比如int、String等3表单域类型名称NameVARCHAR(255)Y表单域类型名称T_FlowForm(流程表单信息表)描述了系统流程表单信息的基本情况如表2.10所示:表2.10T_FlowForm表名T_FlowForm中文名称流程表单信息表业务描述描述了系统流程表单信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1表单编号IDInt(11)YPK唯一标识,ID是自动生成的2流程WorkFlowInt(11)YFK流程编号3模板TemplateVARCHAR(255)Y模板名称T_FieldInput(表单域输入形式信息表)描述了系统表单域输入形式信息的基本情况如表2.11所示:表2.11T_FieldInput表名T_FieldInput中文名称表单域输入形式信息表业务描述描述了系统表单域输入形式信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1表单域输入形式编号IDInt(11)YPK唯一标识,ID是自动生成的2输入形式名称NameVARCHAR(255)Y输入形式名称3模板TemplateVARCHAR(255)Y模板名称T_FieldItem(表单域下拉框条目信息表)描述了系统表单域下拉框条目信息的基本情况如表2.12所示:表2.12T_FieldItem表名T_FieldItem中文名称表单域下拉框条目信息表业务描述描述了系统表单域下拉框条目信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1条目编号IDInt(11)YPK唯一标识,ID是自动生成的2标签LabelVARCHAR(255)Y标签3标签值ValueVARCHAR(255)Y标签所对值4下拉序号ItemIndexInt(11)Y下拉列表的索引序号T_FormField(表单域信息表)描述了系统表单域信息的基本情况如表2.13所示:表2.13T_FormField表名T_FormField中文名称表单域信息表业务描述描述了系统表单域信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1表单域编号IDInt(11)YPK唯一标识,ID是自动生成的2表单的输入形式FieldInputInt(11)YFK表单的输入形式3表单的数据类型fieldTypeInt(11)YFK表单的数据类型4表单流程IDflowFormIdInt(11)YFK表单流程ID5表单域标签fieldLabelVARCHAR(255)Y表单域标签6表单域名称fieldNameVARCHAR(255)Y表单域名称T_Document(公文表)描述了系统公文信息的基本情况如表2.14所示:表2.14T_Document表名T_Document中文名称公文表业务描述描述了系统公文信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1公文编号IDInt(11)YPK唯一标识,ID是自动生成的2流程编号WorkFlowInt(11)YFK3公文创建者编号CreatorInt(11)YFK4流程实例IDProcessInstanceIdBigint(20)Y5创建时间CreateTimeDatetimeY6公文附件ContentLongblobY7描述DescriptionVARCHAR(255)8公文标题TitleVARCHAR(255)9公文审批状态StatusVARCHAR(255)T_WorkFlow(流程表)描述了系统公文流程的基本情况如表2.15所示:表2.15T_WorkFlow表名T_WorkFlow中文名称流程表业务描述描述了系统公文流程的信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1流程编号IDInt(11)YPK唯一标识,ID是自动生成的2流程名称NameVARCHAR(255)Y流程名称3流程定义文件ProcessDefBlogY流程定义文件4流程图片ProcessImageBlogY流程图片T_ApproveInfo(审批历史表)描述了系统公文审批历史的基本情况如表2.16所示:表2.16T_ApproveInfo表名T_ApproveInfo中文名称审批历史表业务描述描述了系统公文审批历史的信息序号中文名称字段名称数据类型非空外键或代码表主键或唯一键缺省值说明1审批历史编号IDInt(11)YPK唯一标识,ID是自动生成的2审批者编号ApproverInt(11)YFK审批者编号3公文编号DocumentInt(11)YFK公文编号4审批内容CommentVARCHAR(255)Y审批内容5审批时间ApproveTimeDateTimeY审批时间第三章系统设计3.1功能划分办公自动化系子系统统包括组织管理、权限管理、公文管理、工作流程。具体描述如下:1、组织管理1)机构管理:组织机构的添加、删除、更新、查看父机构下的子机构。2)人员管理:添加人员信息、删除人员、更新人员信息。2、权限管理1)模块管理:添加模块信息、删除模块、更新模块信息、查看二级模块信息。2)角色管理:添加角色信息、删除角色、角色授权。3)用户管理:分配用户账号、删除账号、修改账号、分配角色、用户授权。3、公文管理1)公文维护:添加公文信息、下载公文附件、审批公文、提交公文、查看公文。审批历史、查看待审公文列表、查看已审公文列表。4、工作流程1)流程管理:添加或重新上传流程定义文件及图片、删除流程、查看流程定义的图片、查看流程定义的文件。2)表单定义:查看流程定义的图片、查看流程定义的文件、定义表单、添加表单域,添加表单条目、删除条目。3.2层次模块图办公自动化系统总体结构图主要介绍了系统的功能模块层次划分,通过系统的层次模块图用户可以很清楚的了解系统的功能划分。下面描述了办公自动化系统、组织机构子系统、权限管理子系统、工作流程子系统的结构图如下图所示:图3-1办公自动化系统总体结构图图3-2组织机构子系统结构图图3-4权限管理子系统结构图图3-5工作流程子系统结构图3.3功能描述类图描述了系统模型中的静态结构,尤其是模型中存在的类、类的接口以及它们与其他类的关系。活动图描述了业务的业务主角提供其所需的价值而必须完成的工作。时序图用来描述对象之间的时间关系,并强调对象之间传递消息的时间顺序,同时显示对象之间的交互关系。以下是本系统部分主要模块的类图、活动图、时序图:1、权限管理1)权限管理类图如图3-6所示:图3-6权限管理类图2)即时认证活动图如图3-7所示:图3-7即时认证活动图3)授权活动图如图3-8所示:图3-8授权活动图2、工作流程1)工作流类图如图3-9所示:图3-9工作流类图2)部署流程顺序图如图3-10所示:图3-10部署流程顺序图3)查看流程顺序图如图3-11所示:图3-11查看流程顺序图4)删除流程顺序图如图3-12所示:图3-12删除流程顺序图3、公文管理1)添加公文顺序图如图3-13所示:图3-13添加公文顺序图2)修改公文顺序图如图3-14所示:图3-14修改公文顺序图3)查看我的公文顺序图如图3-15所示:图3-15查看我的公文顺序图4)查看待审公文顺序图如图3-16所示:图3-16查看待审公文顺序图5)查看已审公文顺序图如图3-17所示:图3-17查看已审公文顺序图6)查看公文审批历史顺序图如图3-18所示:图3-18查看公文历史顺序图7)审批公文顺序图如图3-19所示:图3-19审批公文顺序图8)提交公文顺序图如图3-20所示:图3-20提交公文顺序图9)删除公文顺序图如图3-21所示:图3-21删除公文顺序图第四章系统实现4.1运行及实现4.1.1登录和首页模块1、用户需通过登录首页进入系统下面是系统登录的界面,如图4-1所示:图4-1系统登录界面2、系统用户登录进入后,系统的主界面下面是系统主界面,如图4-2所示:图4-2系统主界面4.1.2组织机构子系统组织机构子系统包括:机构、人员两个模块的管理。下面就把主要界面效果列出:1、系统管理员登录后进入机构管理的如图4-3的主界面:图4-3机构管理主界面2、添加机构界面如图4-4所示:图4-4添加机构界面3、添加机构成功后的界面如图4-5:图4-5添加成功后的界面4、更新机构信息界面如图4-6所示:图4-6更新机构信息界面5、删除机构信息提示界面如图4-7所示:图4-7删除机构提示信息界面6、人员管理主界面如图4-8所示:图4-8人员管理主界面7、添加人员信息界面如图4-9所示:图4-9添加人员信息界面8、添加人员信息时选择所属机构界面如图4-10所示:图4-10选择所属机构界面4.1.3权限管理子系统权限管理子系统主要包括:模块管理、角色管理、用户管理等信息。1、系统管理员进入模块管理界面如图4-11所示:图4-11模块管理界面3、角色管理主界面如图4-12所示:图4-12角色管理主界面4、点击“角色授权”可以进入如图4-13界面:图4-13角色授权界面5、用户管理主界面如图4-14界面:图4-14用户管理界面6、点击“分配账号”进入如图4-15界面:图4-15分配账号界面7、点击“分配角色”进入如下图4-16界面:图4-16分配角色界面8、点击“用户授权”进入图4-17页面:图4-17用户授权界面4.1.4公文管理子系统公文管理子系统包括:添加公文、查看流程、公文流转、流程定义等模块。一下是主要的操作界面效果:1、公文管理主界面如下图4-17页面:图4-17公文管理主界面2、点击“添加公文信息”后可以进入添加公文信息界面,如下图4-18所示:图4-18添加公文信息界面3、点击“待审公文”,进入如下图4-19界面:图4-19待审公文列表界面4、点击“已审公文”进入如下图4-20界面:图4-20已审公文界面5、查看审批历史,如图4-21所示:图4-21查看审批历史界面6、点击“提交”进入如下图4-22界面:图4-22提交流程界面7、点击“审批”进入如下图4-23界面:图4-23提交流程界面8、点击“下载”进入下载界面,如下图4-24所示:图4-24下载界面9、流程管理主界面,如下图4-25所示:图4-25流程管理主界面10、点击“流程名”可以查看流程的定义图片,如下图4-26所示:图4-26流程定义图片界面11、点击“查看流程定义文件”进入流程定义文件界面,如下图4-27所示:图4-27流程定义文件界面12、流程定义主界面,效果如下图4-28所示:图4-28流程定义主界面13、点击“定义表单”,如下图4-29所示:图4-29定义表单界面14、点击“添加表单域”进入如下图4-30界面:图4-30添加表单域界面15、点击“条目”,如图4-31所示:图4-31条目界面4.2核心代码1、struts.xml中的关键配置<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstrutsPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN""/dtds/struts-2.0.dtd"><struts><!--配置编码--><constantname="struts.i18n.encoding"value="utf-8"></constant><!--配置包开始--><packagename="struts2"extends="struts-default"><!--配置通用页面--><global-results><resultname="add_success">/common/pub_add_success.jsp</result><resultname="del_success">/common/pub_del_success.jsp</result><resultname="modify_success">/common/pub_update_success.jsp</result><resultname="Exception">/common/exception.jsp</result><resultname="login">/index.jsp</result></global-results><!--配置异常处理--><global-exception-mappings><exception-mappingresult="Exception"exception="java.lang.RuntimeException"></exception-mapping></global-exception-mappings><!--配置Action--><actionname="org"class="orgAction"><resultname="success">/org/index.jsp</result><resultname="select">/org/select.jsp</result></action><actionname="add_input"class="orgAction"method="add"><resultname="success">/org/add_input.jsp</result></action><actionname="updateInputOrg"class="orgAction"method="updateInputOrg"><resultname="update_input">/org/update_input.jsp</result></action>……</package></struts>2、hibernate.cfg.xml的核心配置<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEhibernate-configurationPUBLIC"-//Hibernate/HibernateConfigurationDTD3.0//EN""/hibernate-configuration-3.0.dtd"><!--配置开始--><hibernate-configuration><session-factory><!--配置数据库驱动--><propertyname="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property><!--配置连接数据库URL--><propertyname="hibernate.connection.url">jdbc:mysql:///oa</property><!--配置连接数据库用户名--><propertyname="hibernate.connection.username">root</property><!--配置连接数据库用户密码--><propertyname="hibernate.connection.password">root</property><!--配置数据库方言--><propertyname="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property><!—显示SQL语句--><propertyname="hibernate.show_sql">true</property><!--配置操作为更新--><propertyname="hibernate.hbm2ddl.auto">update</property><!--配置JBPM--><propertyname="vider_class">org.hibernate.cache.HashtableCacheProvider</property><!—以下为HibernateBean映射文件在这里的说明--><mappingresource="com/oa/model/ACL.hbm.xml"/><mappingresource="com/oa/model/ApproveInfo.hbm.xml"/><mappingresource="com/oa/model/Document.hbm.xml"/><mappingresource="com/oa/model/Module.hbm.xml"/><mappingresource="com/oa/model/Organization.hbm.xml"/><mappingresource="com/oa/model/Person.hbm.xml"/>……<!—以下为JBPMBean映射文件在这里的说明--><mappingresource="org/jbpm/graph/action/Script.hbm.xml"/>……</session-factory></hibernate-configuration>3、spring的核心配置通用配置applicationContext-common.xml,代码如下:<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:aop="/schema/aop"xmlns:tx="/schema/tx"xsi:schemaLocation="/schema/beans/schema/beans/spring-beans-2.5.xsd/schema/aop/schema/aop/spring-aop-2.5.xsd/schema/tx/schema/tx/spring-tx-2.5.xsd"><!--配置sessionFactory--><beanid="sessionFactory"class="org.springframework
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房产销售合作协议
- 工艺品订购合同范本
- 建筑工程内部承包经营合同案例
- 大学生就业协议范本
- 建筑施工合同模板 工程合同范本
- 职工待岗协议2024年
- 建筑施工队临时工合同
- 苏教版小学数学四年级下册《用数对确定位置》公开课说课课件
- 2024职业培训合作协议
- 园林工程结算合同样本
- 中医养生中医养生与体质调护课件
- 建筑工程工地卫生防疫措施
- 摩托分期付款合同范本
- 海口市秀英区2022-2023学年六年级下学期小升初真题精选数学试卷含答案
- 三年级家长会语文教师发言课件
- 太阳能电池丝网印刷工艺
- 谢孟媛中级文法讲义
- 第三讲神话学
- 20 蜘蛛开店 (一等奖创新教案)
- 祖暅原理与柱体、锥体、球的体积 课件
- 医学微生物学智慧树知到答案章节测试2023年山东第一医科大学
评论
0/150
提交评论