毕业设计(论文)-基于ASP.NET平台和C#语言环境开发的文档管理系统.doc_第1页
毕业设计(论文)-基于ASP.NET平台和C#语言环境开发的文档管理系统.doc_第2页
毕业设计(论文)-基于ASP.NET平台和C#语言环境开发的文档管理系统.doc_第3页
毕业设计(论文)-基于ASP.NET平台和C#语言环境开发的文档管理系统.doc_第4页
毕业设计(论文)-基于ASP.NET平台和C#语言环境开发的文档管理系统.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大庆石油学院本科生毕业设计(论文)摘 要办公自动化是指利用计算机技术和网络技术,使办公室部分工作逐步融入各种现代化设备中,由办公室人员与设备共同构成服务于某种目标的人机信息处理系统。办公自动化已经成为现代企事业单位实现管理现代化的一个重要途径。本文简单介绍了基于ASP.NET平台和C#语言环境开发的文档管理系统。该系统所具有的基本功能主要包括:文档管理、回收站和文档搜索。文档管理包括目录管理、文档管理、文档权限管理;回收站包括还原和彻底删除被删除的文档和目录;文档检索包括标题检索、关键词检索、所有者检索、时间检索和类型检索等多种检索手段。同时文中给出了建立基于ASP.NET的文档管理系统所使用关键技术的部分代码,介绍了在系统测试过程中所遇到的问题,并给出详细的系统测试方法。关键词:C#;ASP.NET;文档管理系统;数据库AbstractOffice Automation refers to the use computer technology and the networking, makes the office part work to transform into gradually in each kind of sophisticated equipment, constitutes together by the office personnel and the equipment serves Yu the kind of goal man-machine information management system. The office automation already became the modern enterprises and institutions to realize a management modernization important way.This article introduced the system of file management which based on ASP.NET and c# lauguage.This system has the basic function mainly includes: Documents management, recycling station and documents search. Documents management including table of contents management, documents management, documents jurisdiction management; The recycling station including the return to original state and the thorough deletion the documents and the table of contents which deletes; The documents retrieval including the title retrieval, the key word retrieval, the owner retrieves, the time retrieval and the type retrieval and so on many kinds of retrieval method.Simultaneously in the article has given the establishment based on ASP.NET The system of file management uses the key technologies the partial codes, introduced meets the question in the system test process, and show the detail introduce about the system test process.Key words:C# ;ASP.NET;the system offile management;Database前 言目前各企业在文档管理方面遇到的问题是电子文档众多、管理混乱、工作效率低,本系统的开发正是针对规范企事业单位的日常工作流程和员工的日常行为而设计的。电子文档众多与管理混乱的矛盾使各行各业对文档管理的需求日益突出。本系统的开发力求解决这个矛盾,使电子文档在现代信息化管理中发挥更有效的作用。本办公自动化系统文档管理系统项目的开发使用ASP.NET开发应用程序和SQL Server 2000数据库。并在开发过程中熟练掌握ASP.NET和SQL Server数据库。本文主要介绍了文档管理系统的系统功能设计与文档管理系统的系统编码与实现。并介绍了系统的开发环境、开发语言和数据库以及文档管理系统的需求分析。文档管理系统的主要功能模块包括三部分:文档管理模块、回收站模块、文档搜索模块。文档管理模块执行的功能有目录树管理和文档管理;回收站模块是防止用户误删除文件或文件夹,仿照Windows资源管理器中对文件和文件夹管理的方法而创建;文档搜索模块仿照Windows资源管理器中文件搜索功能的操作方法,通过多重条件搜索到重要的文件。 在系统完成后,经过黑盒、白盒测试、极端测试,改正了测试中发现的错误,并改进了系统功能。即便如此,系统还存在一些错误和不够完善的地方,也还有可扩展的余地,仍需不断完善。目 录第1章 概 述11.1 文档管理系统概述11.2 系统实现的目标11.3 系统开发环境2第2章 开发环境及语言简介32.1 ASP.NET简介32.2 C#语言介绍62.3 SQL Server 2000介绍72.4 面向对象思想8第3章 文档管理系统的需求分析103.1 系统需求分析103.2 系统流程图103.3 数据库的需求分析及数据流图113.4 系统可行性分析12第4章 文档管理系统的系统功能设计134.1 系统总体设计134.2 系统功能模块设计134.3 数据库详细设计14第5章 文档管理系统的系统编码与实现205.1 用户登录模块205.2 文档管理模块215.3 回收站模块265.4 文件搜索模块27第6章 系统测试31结论33参考文献34致谢35附录136附录238附录33939第1章 概 述1.1 文档管理系统概述办公自动化已经是企事业单位在信息化建设基本阶段的典型需求,目的是为了规范企事业单位的日常工作流程和员工的日常行为。目前各企业在文档管理方面遇到的问题是电子文档众多、管理混乱、工作效率低。因此,各行各业对文档管理的需求日益突出。本系统实现了企业电子文档的集中统一管理,可自定义文档分类目录,并可按照部门和人员进行权限管理,保证文档的安全存储。除此之外,本系统还提供了对存储文档的分类检索,包括标题检索、关键词检索、所有者检索、时间检索和类型检索等多种检索手段。本系统的实现界面仿照Windows资源管理器的操作方法,提供友好的人机交互界面,使用户不需要培训就能熟练操作使用。本文将按软件工程的思想,即需求分析、总体设计、功能设计、数据库设计、详细设计、系统测试的顺序来进行详细的阐述。本系统的功能模块包括文档管理、回收站管理和文档搜索,其中文档管理包括了目录管理和文档管理。1.2 系统实现的目标根据文档管理的基本需求,本系统主要实现以下功能:1. 权限管理:文档管理的权限管理非常关键,必须对目录和文档进行可细化管理,使文档得到安全的存储和访问。2. 文档管理:存储文档基本信息,并以附件的形式存储文档的相关文件。3. 回收站管理:仿照Windows资源管理器的形式,提供文档删除后先存放在回收站的功能,通过回收站可还原或彻底删除被删除的文档。4. 文件搜索:对存储的文档进行多条件的模糊搜索,包括标题搜索、关键词搜索、所有者搜索、时间搜索和类型搜索等多种检索手段。 1.3 系统开发环境对于上面提出的系统实现目标,要编写一个数据库管理软件来实现提出的目标。文档管理系统软件是一个这样的软件:它采用C#作为前台开发工具,用SQL Server 2000作为后台数据库。C#是一种非常适合于基于Web的应用程序开发的编程语言,而SQL Server 更是一个能够管理大型关系数据库并支持Web访问的一款优秀的数据库开发工具。系统开发环境如下:1. Windows XP Professional作为操作系统。2. Visual S作为前台开发工具。3. SQL Server 2000 企业版作为后台数据库。第2章 开发环境及语言简介 2.1 ASP.NET简介2.1.1 ASP.NETASP.NET 不仅仅是 Active Server Page (ASP) 的下一个版本;它还提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构即代码和设计相分离,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 ASP.NET 功能,随时增强 ASP 应用程序的功能。ASP.NET完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方面更是引入了许多激动人心的新技术,正是这些具有革新意义的新特性,让ASP.NET远远超越了ASP,同时也提供给Web开发人员更好的灵活性,有效缩短了Web应用程序的开发周期。ASP.NET是一个已编译的、基于.NET 的环境,可以用任何与 .NET 兼容的语言(包括Visual Basic .NET、C# 和Jscript .NET)创作应用程序。另外,任何 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。ASP.NET 可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。当创建 ASP.NET 应用程序时,开发人员可以使用 Web 窗体或 XML Web Services,或以他们认为合适的任何方式进行组合。每个功能都能得到统一结构的支持,使开发人员能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义等等。 使用 Web 窗体可以生成功能强大的基于窗体的 Web 页。生成这些页时,可以使用 ASP.NET 服务器控件来创建公共 UI 元素,以及对它们进行编程以用于执行常见的任务。这些控件使您能够用可重复使用的内置或自定义组件生成 Web 窗体,从而简化页面的代码。XML Web Services 提供了远程访问服务器功能的途径。使用 XML Web Services,企业可以公开数据或业务逻辑的编程接口,而客户端和服务器应用程序则可以获取和操作这些编程接口。通过使用诸如 HTTP 和 XML 消息传递之类的标准跨越防火墙移动数据,XML Web Services 可在客户端-服务器或服务器-服务器方案下实现数据的交换。XML Web Services 不用依靠特定的组件技术或对象调用约定。因此,用任何语言编写、使用任何组件模型并在任何操作系统上运行的程序,都可以访问 XML Web Services。这些模型中的每一个模型都可以充分利用所有 ASP.NET 功能,以及 .NET Framework 和 .NET Framework 公共语言运行库的强大功能。这些功能以及使用它们的方法概述如下: 如果具有ASP开发经验,则新的ASP.NET编程模型对开发人员来说将会是非常熟悉的。不过,与ASP相比,ASP.NET对象模型变化显著,它更为结构化并且面向对象。但这也意味着ASP.NET不是完全向后兼容的;几乎所有现有的ASP页都必须经过一定程度的修改后才可以在ASP.NET下运行。此外,对Visual Basic.NET的一些主要更改也意味着,用Visual Basic Scripting 版本编写的现有 ASP 页通常将不会直接移植到ASP.NET中。不过,在大多数情况下,只需对少数几行代码进行必要的修改。从ASP.NET 应用程序访问数据库是向 Web 站点访问者显示数据的常用技术。ASP.NET 使得为此目的而对数据库的访问比以往更加方便。它还使开发人员能够用代码管理数据库。ASP.NET 提供一种简单的模型,该模型使 Web 开发人员能够编写在应用程序级运行的逻辑。开发人员可以在 Global.asax 文本文件中或在作为程序集部署的已编译类中编写这种代码。这种逻辑可以包括应用程序级事件,但开发人员可以轻松地扩展这种模型,以适应他们的 Web 应用程序的需要。ASP.NET 提供易用的应用程序和会话状态功能,它们对于 ASP 开发人员来说是熟悉的,且容易与所有其它 .NET Framework API 兼容。对于需要使用像 ISAPI 编程接口那样功能强大的 API 的高级开发人员,ASP.NET 提供了 IHttpHandler 和 IHttpModule 接口。实现 IHttpHandler 接口,给您提供了一种与 IIS Web 服务器的低级别请求和响应服务交互的手段,并提供与 ISAPI 扩展非常类似的功能,但编程模型却较为简单。实现 IHttpModule 接口使您可以包含参与对应用程序发出的每个请求的自定义事件。ASP.NET 利用 .NET Framework 和公共语言运行库中的性能增强功能。另外,它还可以提供相对于 ASP 和其他 Web 开发平台来说显著的性能改进。所有 ASP.NET 代码都是编译的,而不是解释的,这就允许对本机代码采用早期绑定,强类型处理,以及实时编译。ASP.NET 还可方便地分解,即开发人员可以移除那些与他们开发的应用程序不相关的模块。ASP.NET 还提供丰富的缓存服务(包括内置服务和缓存 API 两种)。ASP.NET 还提供性能计数器,开发人员和系统管理员可以监视这些性能计数器,以测试新的应用程序和搜集有关现有应用程序的度量标准。在 Web 页中编写自定义调试语句,对排除应用程序代码中的错误非常有帮助。但是如果不移除它们,则会带来麻烦。问题是,在应用程序准备好移植到生产服务器时从页面中移除调试语句,会需要很大的工作量。ASP.NET 提供 TraceContext 类,在开发页面时该类用于在页面上编写自定义调试语句。只有当您已经对页面或整个应用程序启用跟踪时它们才出现。启用跟踪还将有关请求的细节追加到页面,或者,追加到存储在应用程序根目录中的自定义跟踪查看器。.NET Framework 和 ASP.NET 为 Web 应用程序提供默认授权和验证方案。可以方便地移除、添加或者替换这些方案,这取决于应用程序的需要。ASP.NET 配置设置存储在基于 XML 的文件中,这些文件都是人可读和可写的。每一个应用程序都可以有不同的配置文件,可以扩展配置方案,以适应您的要求。当应用程序安装在同一台计算机上,但使用不同的 .NET Framework 版本时,就说应用程序是并行运行的。IIS 6.0 使用一个称为辅助进程隔离模式的新进程模型,它不同于 IIS 早期版本中使用的进程模型。当在 Windows Server 2003 上运行时,默认情况下ASP.NET 使用该进程模型。 2.1.2 IIS简介进行ASP.NET网页开发之前,首先必须配置编译ASP.NET网页所需的软件环境,IIS是Microsoft主推的Web服务器。使用IIS,可以方便地通过Internet/Intranet共享和发布信息。在安装Windows XP操作系统的时候,IIS并没有被默认安装,用户可以通过“Windows组件向导”进行安装。建议把IIS大多数的子组件安装在计算机上,这样当研究ASP和使用Windows其他服务的应用程序时,能够获得这些子组件的所有文档。完成设置后,可通过“控制面板”-“管理工具”- “服务”打开“服务”对话框关闭不需要的子组件服务,减少服务器的负载。2.2 C#语言介绍在过去的二十年内,C和C+已经成为广泛的应用在商用软件的开发中开发语言。但是C和C+都提供了一些容易使开发者产生错误的特性,也可以说C和C+的灵活性是牺牲了开发效率。如果和其他的开发语言相比(比如说VB),相同功能的C/C+软件通常会需要更长的开发周期。正是由于C/C+开发的复杂性和需要较长的开发周期,所以许多C/C+开发人员都在寻找一种可以在功能和开发效率间提供更多平衡的开发语言。目前有一些开发语言通过牺牲C/C+语言的灵活性(一些必要的灵活性)来换取开发效率。有些语言对开发人员产生了过多的限制并且提供更少的通用命名能力。这些语言不能够轻易地与现存的系统相结合,并且不能够与当前的Web开发相结合。一种合理的C/C+替代语言应该是能够提供对现存和潜在的平台上的高效开发提供有效和有力的支持。并可以使Web开发可以非常方便地与现存的应用开发相结合。而且C/C+开发人员都倾向于在必要的时候使用底层代码。1. 微软所推出的C#在这个问题上,微软的解决方案是推出一种命名为C#(发音为 C Sharp)的开发语言。C#是一种先进、面向对象的语言,通过C#可以让开发人员快速地建立大范围的基于MS网络平台的应用,并且提供大量的开发工具和服务地帮助开发人员开发基于计算和通信的各种应用。由于C#是一种面向对象的开发语言,所以C#可以大范围地适用于高层商业应用和底层系统的开发。即使是通过简单的C#构造也可以将各种组件方便地转变为基于Web的应用,并且能够通过Internet被各种系统或是其他开发语言所开发的应用调用。即使抛开上面所提到的优点,C#也可以为C/C+开发人员提供快速的开发手段而不需要牺牲任何C/C+语言的特点或优点。从继承角度来看,C#在更高层次上重新实现了C/C+,熟悉C/C+开发的人员可以很快地转变为C#开发人员。2. 开发效率与安全性目前的各种基于Web应用的软件开发向传统的商业应用软件开发提出了挑战,开发者被组织起来开发具有更短开发周期的各种应用,并且需要能够提供更好的可修正性,而不是建立一个可以长久使用的软件系统。C#的设计正是充分考虑了这些因素,C#会帮助开发者通过更少的代码完成相同的功能,并且能够更好地避免错误发生。3. 与Web开发相结合新的开发模式意味着需要更好地利用现有的各种Web标准,例如HTML,XML,SOAP(简单对象存取协议)。现存的开发工具是在Internet出现前或是未得到充分应用前出现的,所以都不能很好地适应目前Web技术的开发需要。C#开发者可以方便地在M$网络平台上扩展自己的应用。C#可以将任何组件转变为Web服务,并且可以被运行于Internet上地任何平台的任何应用调用,重要的是C#对这一特性提供了内置的支持。更重要的一点,Web服务框架可以让任何Web服务都看起来类似于C#的内置对象,所以可以让开发人员在开发过程中继续使用他们已经具备的面向对象的开发方法和技巧。2.3 SQL Server 2000介绍Microsoft SQL Server是由微软Microsoft出品,基于关系型数据库的大型数据库系统,它具有独立于硬件平台、对称的多处理器结构、抢占式多任务管理、完善的安全系统和容错功能,并具有易于维护的特点。其特点如下:1. 操作系统集成的安全性Microsoft SQL Server 2000 Analysis Services为管理员和最终用户都提供了强大的安全性。管理员的安全性可以通过使用 “OLAP管理器”的 Microsoft Windows NT 4.0和 Windows 2000的组件来控制。最终用户安全性指定了哪些最终用户可以访问数据,以及最终用户可以执行的操作类型,其中包括用户是否有读取和读/写访问权利。Microsoft SQL Server 2000 Analysis Service提供了丰富的安全性设置选项。管理员可以在不同的级别上定义最终用户安全属性,从而对安全管理进行进一步的加强。2. 灵活的业务伸缩性随着新业务的出现,对新业务进行管理和分析的要求有和以往业务相似的,也有新业务特定的。数据库技术可以利用已有的建设好的业务模型对新业务中相似的部分进行分析,同时针对新出现的业务需求建设新的模型,这种堆叠形式的建设方式为整个系统随着业务的发展而平稳发展提供了良好的条件。3. 客户及管理工具的易用性使用办公中最常使用的Office XP产品作为客户前端的展现工具,用户对于系统使用的熟悉程度和认知程度都能大大提高,并有效地降低了用户培训和维护的费用。管理端则使用和其他管理工作相似的界面MMC,使管理人员也在一个操作经验和操作方式相似的环境下进行所有的管理工作。同时,SQL Server 2000的动态优化机制使得数据库系统总是能够根据当前的工作负载,自动调节在最优的参数设置下工作,最大化地减少了管理员的负担。SQL Server 2000还提供了多种向导和编辑器,使得管理员能够根据系统的提示逐步完成任务,这些工具将极大地简化DBA和其他IT管理人员的系统使用。 基于上述SQL Server 2000的特点以及SQL Server 2000在处理大量数据时的优异表现,我选择了SQL Server 2000作为我的系统数据库开发工具。2.4 面向对象思想面向对象思想是编程要用到的一种最重要的思想。面向对象技术的应用并不只是限制于任何特殊的语言,他被应用于基于对象的和面向对象编程语言的广阔领域,面向对象技术建立在一个合理的工程基础上,我们把它的元素叫做对象实例,它包括抽象、封装、继承等特性,这些概念并不新,然而,最重要的是这些元素以一种全新的方式集成在一起。毫无疑问,面向对象分析与设计与传统的结构化设计方法是截然不同的:它需要一个考虑分解的不同方法,而且,它产生的软件架构与传统的结构化设计文化领域完全不同。这些不同产生于结构化设计方法是产生于结构化编程,而面向对象设计是基于面向对象编程。正如Rentsch正确的预测:“面向对象编程将会盛行于20世纪80年代,而结构化编程将会在20世纪70年代流行,每一个人都会支持它,每一个制造商都会提高它的产品来支持它,每一个经理都会提供强有力的支持,每一个程序员都在用它,也没有人知道它具体是什么。”面向对象思想主要应用于三个方面:1. 面向对象编程。面向对象编程就是一种执行方法,每一个对象代表了类的实例,这些类通过继承关系又是一层类集的成员。因此,我们可以说,一种语言满足下面的条件就是面向对象的语言:(1)它支持对象,这个对象是拥有命名操作和隐藏局部状态的数据抽象。(2)对象有一个相关联的类。(3)类可以从更高级的类那里继承属性。2. 面向对象设计。面向对象设计是一个设计方法,它包括面向对象分解的过程和一个用来描述逻辑的和物理的、静态的和动态的系统实例。3. 面向对象分析。传统的结构分析主要在系统内的数据流的分析,面向对象分析是用面向对象的世界观来对真实世界的实例进行分析。面向对象分析是一种分析方法,它从问题范围内建立的类和对象的观点分析需求。同时,这三者又是相互联系的。一般来说,面向对象分析的结果作为模型,我们从这里开始进行面向对象的设计,面向对象设计的结果作为一个蓝图来完全执行一个应用面向对象编程方法的系统。第3章 文档管理系统的需求分析3.1 系统需求分析在需求分析阶段的任务是确定目标系统必须具备哪些功能,根据文档管理的基本要求,文档管理系统应该完成以下任务:1. 用户登录:能实现用户身份验证功能,判断用户权限。2. 权限管理:文档管理中的权限管理非常关键,必须对目录和文档进行可细化的权限管理,使文档得到安全的存储和访问。3. 目录管理:根据公司的行政划分和业务类型,可自定义文档目录的分类,按照树形结构原则进行目录管理。4. 文档管理:存储文档基本信息,并以附件的形式存储文档的相关文件。5. 回收站管理:仿照Windows资源管理器的形式,提供文档删除后先存放在回收站的功能,通过回收站可还原或彻底删除被放在回收站的文档或目录。6. 文档检索:对存储的文档进行多条件的模糊检索,包括标题检索、关键词检索、所有者检索、时间检索和类型检索等多种检索手段。 本模块分为3个活动选项 ,在进入每个活动选项时,首先进行系统模块权限判断,如果登录用户不具备该子模块的最低操作权限(即读取权限)时,提示越权信息,禁止进入该子模块。当用户进入活动选项时,判断用户对应的文档操作权限,越权时给出提示信息。3.2 系统流程图系统流程图是了解系统如何运作的直观体现,系统流程图可以方便编程,理顺编程的基本思路和目的。下面是本系统的系统流程图:用户用户信息数据库文档管理数据库验证程序文档管理程 序返回结果显示图3.1 系统流程图3.3 数据库的需求分析及数据流图根据系统需求,可以列出以下数据项和数据结构。1. 文档信息表:存储文档基本信息以及所再在目录的信息。2. 文档权限信息表:存储文档的权限信息,包括部门和人员的权限信息。3. 文档附件信息表:存储文档的附件信息。4. 目录信息表:存储目录的相关信息。5. 目录权限信息表:存储目录的权限信息,包括部门和人员的权限信息。6. 附件类型字典表:存储附件类型的相关字典信息。数据流图中不包含任何物理设备,是数据流程的逻辑体现。数据流图只考虑必须完成的基本逻辑功能,完全不考虑如何具体实现这些功能,这是系统开发的很好的出发点。本系统的数据流图如下所示:用 户1验证身份21处理文档操作22返回结果用 户D1用户信息数据库文档管理数据库D1验证登录操作信息操作信息返回结果显示图3.2 系统数据流图3.4 系统可行性分析文档管理系统是伴随着人们对计算机的应用而出现的,并随着网络的兴起而发扬光大。IDC(国际数据公司)对文档管理应用系统的定义是:文档管理系统是一种应用软件,它可以使用户在网络上有效地控制其文档的创建、存储和分发的过程,并能在组织范围内对其文档进行有效的监控。按照这种定义,文档管理系统是以网络化应用为基本特征,对以数字化形式存在的各种类型文档资料进行录入、修改、查询、起草、审批、签发、归档等操作的软件应用系统。其不仅能够通过扫描、数码摄像等方式将以传统物理形式存在的各种信息进行电子化转化,而且能够对于新生成的电子化文档资料的起草、审核、签发、归档等流转过程进行有效管理,并对这些文档的实际管理与应用状况进行实时监控。因此,一套完整的文档管理系统要具备对静态文档资料的存储、利用与共享进行管理的功能,又要具备对动态文档资料的起草、审核、审批、签发等流转过程进行管理的功能。目前,文档管理系统在国外已经得到了较为广泛的应用,并具有广阔的发展前景。目前的文档管理软件市场远没有达到饱和状态,而国内市场则更像是一块处女地,等待人们去开垦。 因此,文档管理系统具有极大的开发价值。第4章 文档管理系统的系统功能设计4.1 系统总体设计本系统分为三个子模块,在进入每个子模块时,首先进行系统模块权限判断,如果登录用户不具备该子模块的最低操作权限(读取权限)时,提示越权信息,禁止进入该子模块。当用户进入模块选项时,判断用户对应的文档操作权限,越权时给出提示信息。4.2 系统功能模块设计4.2.1.用户登陆模块用户进入本系统前,首先要经过登陆页面进行登录,用户输入用户名和对应的密码,系统进行身份验证,验证不通时,给出错误信息,并禁止用户进入系统。当验证通过时,显示文档管理系统主页面。4.2.2系统模块功能设计本系统主要包括3个模块,各模块的功能划分如图4.1所示,这个图中可清楚地看到各模块实现的功能。文档搜索回收站文档管理按文件日期和类型搜索按文件的创建者搜索按文件的关键字搜索按文件名搜索被删除文件的删除操作被删除文件的还原操作进入下级和返回上级目录转移文件夹和文件功能删除文件夹和文件功能编辑文件夹和文件功能新建文件夹和文件功能图4.1 系统功能模块图1. 文档管理实现文档录入和组织管理的功能,除实现数据库的3个基本功能(添加、修改和删除)功能外,还实现文档和目录的转移功能,即将文档或目录转移至其他目录下。本模块还有个重要功能是实现文档和目录的权限管理功能,缺省情况下,文档或目录的创建者拥有该文档或目录的管理权限,具有管理权限的用户可设置文档或目录的其他权限,设置权限的对象可以是部门,即部门下的所有人员,也可以是单个用户,主要有包括以下3个权限:(1)读取权限:只能查看文档或目录的基本信息,不包括权限信息。(2)写入权限:除可查看文档或目录的基本信息外,还可修改基本信息。(3)管理权限:这是文档或目录的最高权限,除写入和读取权限外,具有文档或目录的管理功能,包括删除、转移以及修改权限的功能。2. 回收站管理回收站的功能是防止文档或目录的误删除操作,用户在文档管理模块中删除的文档或目录将进入回收站,通过回收站可还原被放入回收站的文档或目录,也可将被放入回收站的文档或目录进行彻底删除。3. 文档搜索通过文档搜索模块,可对公司海量的文档资料进行高效的检索。本模块实现文档搜索的条件包括文档名、关键词、创建者、文档创建日期和文档类型,通过这些条件可对检索的文档进行精确定位,快速地找到需要的文档。4.3 数据库详细设计根据以上需求分析,可以作出各表的关系图,如图4.2所示。这些关系的建立可以避免出于误操作导致数据库的崩溃,保证各表之间数据的统一性。1. MrBaseInf表:是人员基本信息表,存储人员所有的基本信息。2. FmDocFolder表:是目录信息表,存储目录的相关信息。3. FmDocFoldCtr表:是目录权限信息表,存储目录的权限信息,包括部门和人员的权限信息。4. FmDocCtr表:是文档权限信息表,存储文档的权限信息,包括部门和人员的权限信息。5. FmDoc表:是文件信息表,存储文档基本信息以及所在目录的信息。6. FmFileCont表:是文档附件信息表,存储文档附件的信息。7. FmFileAtt表:是附件类型字典表,存储附件类型的相关字典信息。图4.2 数据库关系图1. 文档信息表文档信息表(FmDoc)是用来存放文档基本信息,结构如表4-1所示。文档信息表的示例数据如图4.3所示。表 4-1 文档信息表字段名描述类型长度是否允许为空是否主键DocID文档号(唯一、自动增加)Int4否是FolderID父文件夹的idInt4否否Fname文档名nvarchar50否否TypeID文档的类型idInt4是否keyword关键字nvarchar50是否Note备注信息Nvarchar50是否Cdate创建日期datetime8是否Udate更新日期datetime8是否EmpID创建人员idInt4是否Ddate删除的日期datetime8是否Status是否被删除到回收站的标志位Bit1是否Dempid删除文档的员工idInt4是否Delflag彻底删除标志位(默认值为0)Bit1否否图4.3 文档信息表示例数据2. 文档权限信息表文档权限信息表(FmDocCtr)用来存储文档的权限信息,结构如表4-2所示。表4-2 文档权限信息表字段名描述类型长度是否允许为空是否主键ConID权限号(唯一、自动增加)Int4否是DocID文档号Int4否否DepID有权限的部门号Int4是否EmpID有权限的员工号Int4是否AdminFlag文档管理权限bit1是否WriteFlag文档写权Bit1是否ReadFlag文档读权Bit1是否Delflag删除标志位(默认值为0)bit1否否此表记录的文档权限包括部门或人员的权限,因此DepID 和EmpID列只能其中一个有值,另一个为空。图4.4所示是文档权限信息表的示例数据。图4.4 文档权限信息表示例数据3. 文档附件信息表文档附件信息表(FmFileCont)用来存储文档附件的信息,结构如表4-3所示。图4.5所示是文档附件信息表的示例数据。表4-3 文档附件信息表字段名描述类型长度是否允许为空是否主键FileId附件的主键,唯一、自动增加Int4否是DocId附件所在文件的idInt4否否Fname附件的文件名nvarchar50是否Size上传的附件的大小Int4是否FType附件的类型nvarchar50是否FPath上传附件存放的相对路径nvarchar50是否CDate创建日期Datetime8是否Cont附件的内容(二进制)Image16是否DocType附件的文件后缀名nvarchar50是否Delflag删除标志位(默认值为0)bit1否否图4.5 文档附件信息表的示例数据4. 目录信息表目录信息表(FmDocFolder)用来存储目录的相关信息,各级目录是通过递归形式来进行组织的,结构如表4-4所示。图4.6所示是目录信息表的所有数据。表4-4 目录信息表字段名描述类型长度是否允许为空是否主键FolderId文件夹号(唯一、自动增加)Int4否是hiFolderId上级的文件夹号Int4否否FolderName文件夹的名称nvarchar50否否Note备注nvarchar50是否TypeId类型idInt4是否CDate文件夹的创建日期datetime8是否UDate文件夹的更新日期datatime8是否EmpId创建文件夹的员工号Int4否否DDate文件夹的删除日期Datetime8是否Status是否被删除到回收站的标志位Bit1是否Dempid删除文件夹的员工号Int4是否Delflag彻底删除标志位(默认值位0)int1否否图4.6 目录信息表数据5. 目录权限信息表目录权限信息表(FmDocFolderCtr)用来存储目录权限信息,如表4-5所示。表4-5 目录权限信息表字段名描述类型长度是否允许为空是否主键ConId权限号(唯一、自动增加)Int4否是FolderId目录ID号Int4否否DepId有权限的部门号Int4是否EmpId有权限的员工号Int4是否AdminFlag文档管理权Bit1是否WriteFlag文档写权Bit1是否ReadFlag文档读权Bit1是否Delflag删除标志位(默认值为0)bit1否否此表记录的目录权限包括部门或人员的权限,因此DepId 和EmpId列只能其中一个有值,另一个为空,如图4.7所示是目录权限信息表的示例数据。图4.7 目录权限信息表示例数据6. 附件类型字典表附件类型字典表(FmFileAtt)用来存储附件类型的相关字典信息,一般情况下不通过程序作修改,内容相对比较固定,提供其他表查询使用,结构如表4-6所示。图4.8所示是附件类型字典表的示例数据。表4-6 附件类型字典表字段名描述类型长度是否允许为空是否主键TypeID类型号(唯一)int4否是Icon类型图标所在的路径nvarchar64否否Type类型名英文nvarchar64否否TypeName类型中文名称nvarchar50否否图4.8 附件类型字典表示例数据第5章 文档管理系统的系统编码与实现5.1 用户登录模块5.1.1用户登录模块功能介绍用户登录主要是验证登录人员的身份,是系统管理员还是普通用户,普通用户主要是该公司的员工,其他人员一律无法登录该管理系统,本系统只对公司员工开放。不对外部人员设置注册模块。如需添加用户,只能通过系统管理员对数据库的修改添加新人员。所有登录人员都要通过身份验证,登录信息要与数据库中的账号信息对比,正确的则可以登录,否则,不允许登录。5.1.2 运行界面用户登录,用户需要一个合法的用户名和对应的密码。用户输入用户名和密码后,点击“登录”按钮,自动连接到数据库去验证,查询用户名是否合法,再查询用户名和密码是否对应,如果对应无误,则进入该系统。如果不对应或者用户名密码为空,则给出错误提示信息。登录界面如图5.1所示。图5.1 用户登录界面5.1.3 关键技术1.身份验证在本系统中用户身份验证的方式是通过Session方式实现的,这和以前的ASP程序实现用户验证的方法比较相近。在ASP.NET中还提供了另外3种验证的方法:Windows验证、Passport验证和Cookie验证。2验证控件在过去撰写动态网页程序时,总是要在进行数据输入的验证操作上费很多时间。ASP.NET提供了验证控件,通过对控件属性设置,就可以验证用户输入数据是否正确,或限制输入的数据只能在某个范围,或符合某种特定的格式。本模块的用户名和密码就用到了RequiredField Validator:验证是否为空控件。5.2 文档管理模块本模块是文档管理的主体部分,实现文档和分类目录的统一管理,包括对文档和目录的权限管理。5.2.1 文档管理模块功能介绍1. 目录管理用户通过身份验证进入系统后,即可进入主页面,在主操作区的左框架里出现所有目录的树形结构,点击树形结构中的文档管理部门管理研发部办公自动化系统岗位分析,右框架中将出现岗位分析目录下的所有文档列表。当用户单击右框架中文件列表中的详细列表按钮时,将出现该文档的详细信息。2. 权限管理向导当单击权限“新增”按钮时,将出现权限添加页面,该页面提示用户是添加部门权限还是人员权限。当用户选择“部门权限”时,单击“下一步”按钮,将出现添加部门权限的页面。当用户选择“人员权限”时,单击“下一步”按钮,将出现添加人员权限的页面。选择完成后,单击“完成”按钮,可将选择的部门或人员权限信息添加到该文档中,添加后的缺省权限是读写权限,用户可在文档详细页面中的权限列表中修改他们的权限信息。5.2.2运行界面1. 目录树显示页面本页面使用了微软免费提供的浏览器Web控件(Internet Explorer WebControls)中的TreeView控件,此控件可以方便地实现目录树的结构。图5.2 目录树显示页面节点的实现:通过设置TreeView的Nodes属性,添加各个父节点和子节点,使之形成完整的目录树。在后台代码实现数据库的连接,使在点击目录树的节点时能够在右框架中显示该节点下的文档信息。2. 查看文档信息页面当用户的权限只有只读权限时(用户在登陆时系统会通过人员信息表查询用户的基本权限),将只查看该文档的基本信息,而无权修改该文档。当用户只具有该文档的读写权限时,将可修改该文档的基本信息,而无权

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论