实验室管理平台设备管理模块的设计与实现_第1页
实验室管理平台设备管理模块的设计与实现_第2页
实验室管理平台设备管理模块的设计与实现_第3页
实验室管理平台设备管理模块的设计与实现_第4页
实验室管理平台设备管理模块的设计与实现_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

杭州电子科技大学本科毕业设计本科毕业设计(2015届)题 目实验室管理平台设备管理模块的设计与实现学 院 软件工程学院专 业 软件工程班 级 13105811学 号 13105124学生姓名 姜恒指导教师 林菲完成日期 2014年1月摘要随着计算机技术的普及和发展,计算机管理已经渗透到社会生活的方方面面了。并且管理系统已经运用到了各个方面,而目前学校的实验室管理1却依然已手工方式为主。该项目结合了我校实验室设备管理的现实需要,适应当前我校的实验室的发展,为此专门对实验室管理系统进行了研究。本系统大致可分为以下几个模块:设备申购管理,设备入库管理,设备信息管理,设备租借管理,设备还库管理,设备维修管理,设备报废管理;该系统的开发采用B/S架构,采用B/S架构的目的在于方便服务端的升级维护,同时避免了在每台机器上安装客户端的麻烦。本系统已按照需求说明完成了所有功能模块的开发,基本能够满足实验室设备管理的日常需要,总体来说达到了预期的目标。关键字:设备管理;ASP.NET;浏览器/服务器ABSTRACTWith the development and popularization of computer technology, computer management has penetrated into every aspect of our social life. And management system has been applied to all aspects of the main, and laboratory management in our school but still have manual. The project combines the requirements for equipment management in the laboratory research and the reality, to adapt the current development of our university laboratory, specially for laboratory management system is studied.This system can be divided into the following modules: equipment purchase management, equipment storage management, equipment information management, equipment leasing management, equipment also library management, equipment repair management, equipment obsolescence management; the development of this system uses B/S architecture, using B/S architecture aims to facilitate the upgrading and maintenance of the server, while avoiding the installation the client on each machine trouble.The system has been in accordance with the requirements specification complete development of all function modules, can basically meet the daily needs of laboratory equipment management, overall reach the expected goal.Keywords:Equipment management; ; browser/server目录摘要2ABSTRACT31 引言11.1系统开发的背景11.2 系统的研究现状11.3 系统开发的目的和意义21.4研究的主要内容31.5 本论文的章节32 相关技术42.1 ASP.NET框架42.1.1 ASP.NET简介42.1.2 .NET框架的发展历程42.1.3 .NET 4.0语言52.2 B/S模式52.2.1 B/S模式简介52.2.2 B/S模式的特点52.3 三层架构62.3.1 三层架构简介62.3.2 三层架构的结构说明62.3.3 为什么使用三层架构62.4 动软代码生成72.5 系统的开发环境83 系统需求分析93.1 需求概述93.1.1 系统功能需求93.1.2 系统性能需求93.1.3 系统运行需求93.1.4 其它需求103.1.5 条件与限制103.2 数据流图103.2.1 用户登录103.2.2 设备申购113.2.3 设备信息管理113.2.3 设备租借管理113.2.4 设备维护管理124 系统设计134.1 系统结构设计134.2 系统流程图134.2 系统功能模块设计154.2.1 系统功能模块图154.2.2 系统功能154.3 系统详细设计164.3.1 程序设计思想及原则164.3.2 数据库概念设计174.3.3 数据库表的逻辑结构设计194.4 数据库物理结构205 系统实现245.1 类的实现245.2 数据连接的实现245.3 界面的实现245.3.1 用户登录255.3.2母版页255.3.3 设备管理模块265.3.4 设备类别管理模块275.3.5 设备维护模块285.3.6 设备申购模块295.3.7 设备申购审核模块305.3.8 实验室管理模块305.4 数据库的触发器实现316 系统测试337 总结36致 谢37参考文献381 引言1.1系统开发的背景随着计算机技术的普及和发展,计算机管理已经渗透到社会生活的方方面面了。但是,当前学校实验室设备管理的现实情况是:学校实验室的设备采购回来后,由管理员将设备的名称、类型等信息记录下来,再给设备一个特定的编号,然后将这些基本信息登记存档。这样的管理方式的问题在于存档以后,当设备信息发生变化以后,比如说设备已经损坏需要维修,或者是设备存放的实验室发生了改变,这些档案信息很难得到相应的修改。因此,由管理员进行人工管理,手工登记记录的方式来进行设备管理的话,效率比较低下,档案信息也可能不完备。面对日益增多的实验教学需求,传统的人工管理方式已经不能满足目前实验室设备管理的需求,更加简便、清晰、规范的实验室管理系统也应运而生。通过使用“实验室管理平台设备管理”这个模块,不仅能使管理员便捷地对实验室设备进行日常管理,还能提升实验室设备的管理水平和服务师生的水平。本实验室管理平台设备管理模块在开发过程中,是以适应学校实验室设备管理的现状为前提,该项目的开发目的满足了学校实验室设备管理的现实需要。随着本系统在实际情况下的运用,将会大大地提高实验管理员的办公效率,从而减少工作人员的劳动强度。由于本系统的操作都在电脑上完成,实现了电子化,从而减少了纸制品的使用,节约了资源,不仅提高了学校的现代化管理水平,也恰巧符合了当下绿色环保的理念。1.2 系统的研究现状随着素质教育的推进,各高校在教学工作中都已经越来越重视实践教育,因此,高校实验室的建设已经变的越来越重要了。伴随着实验室的发展,实验室里的设备、仪器等物品的需求量也呈几何倍数上涨。目前常用的人工管理实验室设备的方式很难适应新形势下的需求了。目前纯手工的实验室设备管理方式实际上已经制约了实验室的发展,为了提升实验室设备的管理水平和服务水评,各高校已经逐步开展了实验室管理系统的建设,实验室管理系统不仅仅是一个单独的管理系统,而是整个实验室系统的一部分,它能对实验室的日常运行起到支配作用。现在,已经有很多做网站建设的公司已经专门开辟了承接实验室管理系统的工作。说到管理系统,这个概念起源是比较早的,最早可以追溯到上世纪的30年代。当时,一个名叫“柏纳德”(音译)的人就写了一本书,书中强调了组织机构的重要性;上世纪50年代,“西蒙”(音译)则提出了“信息”和“管理”对于“决策”的影响。上面说的管理系统仅仅是个概念,而它真正出现是在1970年,Walert.T Keunvena给出了管理系统的定义:“以口头或书面的形式,在合适的时间向经理、职员以及外界人员提供过去的、现在的、预测未来的有关企业内部及其环境的信息,以帮助他们进行决策”。显然,由于当时计算机的发展情况还不是特别理想,这个定义并没有融入计算机这个概念。直到1985年,才有了如下定义:“管理信息系统2-4是一个利用计算机硬件和软件,手工作业、分析、计划、控制和决策的模型,以及数据库5的用户机器系统。它能提供信息支持企业或组织的运行、管理和决策功能”。这个定义已经比较全面地说明了一个管理系统所要达到的目标、及其功能和组成,这个定义也反映了那个时候管理系统所达到的水平。1.3 系统开发的目的和意义在计算机应用如此广泛的今天,计算机在教育领域应用更是日趋频繁。本课程设计利用C#技术,开发一个计算机实验室设备管理系统。之所以开发这个系统,是因为当前学校实验室管理工作依然是靠人工管理的方式,这显然不适应当下的发展了,正是因为缺乏一个高效的管理系统,为此,本论文对实验室管理系统进行了研究,为的是方便实验室管理者对设备进行高效的管理,利用计算机管理系统管理学校的实验设备势在必行,也方便师生可以随时随地的借用实验设备进行学习和研究。研究的目的:(1) 通过使用实验室设备管理系统能有效减轻实验室管理人员的工作强度。(2) 通过使用实验室设备管理系统能进一步提高管理员对设备管理的精准度。(3) 通过使用实验室设备管理系统将极大方便师生进行对设备使用情况的查询,如果设备空闲,师生掌握信息之后就可以根据需要及时去租借设备,提高了实验室设备的利用率。研究的意义在于系统完成后一旦用于实验室的管理中,将使管理人员从手工计算、统计工作中解脱出来。对于提升学校实验室的现代化管理水平起着重要的作用。1.4研究的主要内容本系统研究了学校实验室设备的信息化和网络化,目的是通过这次研究为学校实验室开发一个使用便捷的设备管理系统。研究的内容有:(1) 调研目前我校实验室设备的真实管理状况,然后要对其进行深入的分析,明确需求和所要达到的目标;(2) 分析实验室设备管理系统的业务流程;(3) 如何在.NET平台下进行功能和模块的设计开发;(4) 分析实验室管理系统的数据流图和数据结构;(5) 系统最终实现的效果和呈现。1.5 本论文的章节本论文共分为以下7个章节:第1章是引言,主要介绍了系统的开发背景、研究现状、系统开发的目的以及意义;第2章主要介绍了系统中的相关技术,包括ASP.NET框架、B/S模式、三层架构,还有一个实用工具“动软代码生成器”。第3章介绍了系统的需求分析的过程,通过数据流图和数据字典的方式说明了字段和表的关系;第4章讲的是系统设计,其中着重介绍了系统的功能设计,通过图表的方式,阐明了个模块的功能,通过概念设计和逻辑设计阐述了系统的详细设计思路。第5章介绍了系统的实现过程;第6章介绍了系统的测试方法;第7章是对本毕业论文进行总结。22 相关技术2.1 ASP.NET框架2.1.1 ASP.NET简介2002年,微软公司宣布了自己的.NET框架。.NET框架的基本意思是:把原有的重点从连接到互联网的单一网站或设备转移到计算机、设备和服务群组上,而将互联网本身作为新一代操作系统的基础。这样用户能够控制信息的传递方式、时间和内容,从而得到更多的服务 。当下,.NET技术已经深入互联网。基于HTML的通信技术通过可编程的基于XML的图像得到增强,Web服务的概念被引入,普通用户成为最大的受益者,实现了通过手写、语音以及图像增强技术与个人数据进行交互。如今在经历.NET3.5的短暂过度之后,.NET4.0以正版版式的形式出现在开发人员的视野中,.NET4.0框架代表着一系列的技术,这些技术可以用来帮助我们建立丰富的应用程序。2.1.2 .NET框架的发展历程2002年,.NET框架1.0版本(完整版号是1.0.3705)发布,它是.NET框架的最初版本同时也是 Visual Studio .NET 2002的一部分。2003年,.NET框架1.1版本(完整版本号是1.1.4322)发布,它是.NET框架的首个主要升级版本,同时也是Visual Studio .NET 2003的一部分,它也是首个内置的.NET框架版本。1.1版本发布后,程序界开始追捧这个平台。2005年,.NET框架2.0版本(完整版本号是2.0.50727.42)发布,这次的变化是革命性的,它同时也是Visual Studio .NET 2005的一部分。2006年,.NET3.0发布,这个版本比较特殊,它需要.NET 2.0安装后才能运行,因此软件界普遍不把.NET 3.0当做正式的.NET版本。2007年11月19日,.NET 3.5发布,它同时是Visual Studio .NET 2008的一部分。2010年,.NET 4.0发布,它同时是Visual Studio .NET 2010的一部分。通过.NET框架的发展历程可以看出,微软的战略就需要进一步解放程序员,让项目开发变得更加高效率,而且更加简单容易操作。沿着这个方向发展,可以预见在未来的一段时间内,程序开发将不再是专业程序人员的事情,而真正懂业务逻辑的专业人才将会成为项目开发的主力。2.1.3 .NET 4.0语言ASP.NET 4.0框架支持多种语言,包括C#、VB、J#、C+等,但本系统所使用的语言主要是C#。C#是一个在.NET 1.0中才开始出现的一种新语言。它实际上是微软整合了Java和C+的优点而开发出来的一种语言。.NET架构还支持其它语言,比如J#等,甚至还可以使用第三方提供的语言,比如Eiffel或COBOL的.NET版本。尽管如此,在开发ASP.NET应用程序时VB和C#还是首选。2.2 B/S模式2.2.1 B/S模式简介B/S结构(Browser/Server),即浏览器/服务器模式。这种结构是伴随着WEB技术的发展应运而生的。采用这种架构开发的软件或系统,不需要下载专门的软件,用户需要的唯一的应用软件就是浏览器,并且Windows系统已经自带了Internet Explorer浏览器,当然,用户也可以安装别的浏览器来访问。通过浏览器用户就可以实现对系统的访问。用户通过浏览器看到的部分就是Web页面,事务处理都在服务端实现,这就减轻了对客户机的要求。2.2.2 B/S模式的特点l 维护方便:升级的时候只需要升级服务端,不像C/S模式一样,客户端经常需要进行软件升级。可以想象,如果每次系统升级,实验室管理员都要对每台电脑都操作一遍,那将是非常繁琐的一件事。l 服务器负载大:由于系统是架设在服务器上的,所以当有大量用户同时访问时就会导致服务器的负载急剧上升,致使用户访问速度变慢,甚至出现服务器无响应的情况。2.3 三层架构2.3.1 三层架构简介三层架构8-10(3-tier architecture) 指的是将整个业务应用划分为三层,分别为:表示层(Presentation layer)、 业务逻辑层(Application layer)、数据访问层(Data access layer)。那为什么不直接在一个层上实现而要分成三层呢?这其中包含一个思想“高内聚低耦合”。 高内聚:顾名思义,就是在一个模块内让每个元素之间都尽可能的紧密相连。也就是把每一个元素的功能都发挥到最大,让每个元素都各尽其能,以便最终实现特定的功能。假如其中的某个元素与该模块的关系不是特别紧密的话,那就要考虑是不是设计的不够合理,也许是这个模块的结构还不够完善,又或者是该元素本身就是多余的;低耦合:在一个完整的系统当中,各个模块要尽可能的让它独立存在。换句话说,一个模块只完成一个特定的子功能。要保证模块间的接口尽量少。如果划分后的两个模块关系还是较为复杂的话,那么可以对该模块做进一步的划分。在软件体系架构设计中,最重要也是最常见的就是分层式的结构。如果开发者使用的是微软的开发工具,如:Microsoft Visual Studio,那么最好使用其推荐的分层式结构,这个结构一般分为三层,从底层到顶端分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。事实上,目前我们看到的大多数应用其实都包含三个层次结构:表现层,业务逻辑层和数据层。表示层主要表示WEB方式。在本系统中,WEB方式主要用aspx表示;业务逻辑层:这一层其实主要就是对数据层的操作,对数据业务逻辑进行处理,它处于数据访问层与表示层中间,起到了承上启下的作用;数据访问层:数据访问层才是真正对原始数据的操作层。在此网络架构中,表现层、业务逻辑层和数据层被分成截然不同的单元。2.3.2 三层架构的结构说明表示层:表示层是通过ASP.NET的WebForms来实现的。用户通过浏览器来访问登录页面,在页面上输入账号和密码,并选择相应的角色来登录该管理系统。业务逻辑层:业务逻辑层顾名思义就应该是处理业务逻辑的。在三层架构中起到了承上启下的作用,除了处理业务逻辑,它还能起到验证和事务处理的作用。数据访问层:数据访问层的功能主要是负责对数据库的操作和访问。它能访问和操作的对象有:数据库系统、二进制文件、文本文档、XML等文档。2.3.3 为什么使用三层架构如果开发者所开发的是一个简单的应用程序11,也没有很多的代码量,那这种情况下使用一层结构或者是二层结构开发就已经完全够用了,使用三层架构反而使其复杂化了。但是如果针对的是一个复杂的大型系统呢?使用一层结构或是二层结构这种设计方式存在很严重缺陷。下面通过一个例子来说明。在编写代码的过程中,大部分的初级程序员在写一些相似功能的时候经常复制代码。既然是一样的代码,为什么要重复这么多次呢?很明显这样做会导致很多不利的结果。首先就是程序变得冗长,而且使得其更不利于维护。举一个简单的例子:有多个页面使用了同一段代码,当要修改代码中的一个参数时就需要对每个页面都进行修改,这对于一个大型系统来说显然是不切实际的。而且这样的处理方式也没有体现面向对象的思想。为了避免以上问题,可以通过使用“类”的方法。把它们封装在一个类当中,这样其它程序就可以调用了。假定有一个对数据表的操作方法,把这个方法写到一个类中,并对其进行合理的封装,在操作数据库的过程中,类里面的数据添加、数据查询、数据修改、数据删除等相应方法能够完成相应的数据操作,这其实就是一个数据访问层,以后再要用到这些方法时,再也不需要每次都写这么多的重复代码了。如果还要开发一个新的项目,那么以前写好的方法还可以接着拿过来用。这样很好的体现了面向对象的三大特性之一封装性。现在终于找到了面向对象的感觉了。因此,三层架构这样的分层开发模式更适合大型的系统。2.4 动软代码生成整个系统的总体框架采用了动软代码生成器来生成。动软代码生成器为本项目的开发提供了一个很好的平台。动软代码生成器提供了三种项目模板,分别是简单三层结构、工厂模式结构和简单三层结构(管理)。本系统所采用的是简单三层结构,因为对于本系统来说,简单三层结构已经能满足需求了,因此没必要采用更复杂的结构。对于一个开发人员来说,当然是越简单越好了。动软代码生成器生成的代码中包括了Model、DBUtility、DAL、BLL和Web。和以前做法不一样的是:该项目中,动软代码把连接数据库的一些公共方法放在了DBUtility而没有直接放在DAL中。通过动软代码生成的Web层清晰明了。Web生成之后,动软代码生成器把每个模块都单独建了一个文件夹,每个文件夹里各包含了新增(Add)、列表(List)、修改(Modify)、详情(Show)这四个页面。使用动软代码生成器让我减少了做一些重复的操作,因为Web层的同类页面代码是相似的,而动软代码生成器正好能够自动生成这些基本的功能代码,这样不但少做了一些重复性的劳动,节约了时间,缩短了项目的开发周期,也让我在核心的业务逻辑层的开发上有了更多时间。2.5 系统的开发环境系统的开发环境分为软件环境和硬件环境。软件环境如下:l 系统:windows 7旗舰版,32位操作系统;l 开发工具:Microsoft Visual Studio 2010,数据库采用Microsoft SQL Server 2005。硬件环境如下:l X86系列计算机;l CPU主频1.87GHz;l 内存4G;l 硬盘空间100G以上。本系统的开发平台是Microsoft Visual Studio 2010。采用Microsoft Visual Studio 2010是因为它是一套完整的开发工具。Microsoft Visual Studio 2010可以直接生成本系统所用到的ASP.NET Web应用程序14,15。开发语言采用的是C#。因为Microsoft Visual Studio 2010本身就是微软的产品,C#也是由微软公司(Microsoft)发布的一种面向对象的语言,这二者的结合相比较其它的肯定更加完美。并且使用C#还有一个优势,就是能把.NET框架的各种优点在.NET运行库的支持下发挥到最大程度。7杭州电子科技大学本科毕业设计3 系统需求分析3.1 需求概述3.1.1 系统功能需求该系统的功能是要求管理员能对实验室设备的基本信息进行查询、统计、更新;对于有故障的设备要及时保修,并记录相关的修理记录;对已彻底损坏的设备做报废处理,当设备处于报废状态时,此条设备信息将自动从设备信息表中删除;对于出借的设备要进行详细的登记,能查询是否归还,并能随时掌握到此设备现在在谁的手里;对于缺少的设备,由设备购买人员填写“购买申请表”,待领导审核之后方可购买。新设备购入后可进行设备登记入库。并自动更新申请表内容;每件设备在做入库登记时,由系统按类别加登记日期加自动顺序号的方式编号形成设备号;该系统的面对的用户有:实验室管理员、设备购买人员、上级领导。3.1.2 系统性能需求系统的性能需求主要包括响应时间、可修改性、可靠性、易用性、安全性等要求。响应时间要求对于任何操作,不能感觉有明显的卡顿现象,更不能因响应时间过长而出现连接超时等现象。系统的可修改性要求当需求不是发生重大变化时,增加或减少模块时,对整个系统不会有较大影响,能够通过简单的修改即可达到要求。系统的可靠性要求平均故障间隔时间(MTBF)、平均修复时间(MTTR)都在正常的范围之内。系统的安全性可以从两个方面来讲,一是物理安全,二是逻辑安全。物理安全主要是指存放系统的相关硬件设备不受外力破坏;逻辑安全指系统本身不受破坏,不被非法攻击和劫取,数据不会轻易被破坏。3.1.3 系统运行需求要使系统正常运行,同样需要软硬件作为支撑,该系统的运行需要有以下条件:硬件条件:l 需要有Web服务器;l 客户机;l 网卡及校园网络资源;软件条件:l windows 2003 Server及以上版本或windows NT、 IIS 5.0及以上版本、 l SQL Server数据库或Oracle数据库;3.1.4 其它需求(1)重要数据加密:用户名密码需要加密传输,数据库中的密码存的也应是密文。还可以通过设置用户角色,以便分配不同的权限16。(2)方便使用者使用:开发时要尽量站在用户角度的出发,不能把流程设计的太复杂,这样会导致用户不易操作,甚至要经过培训才能使用,本系统所要达到的目标是要让那些即便是没有后台管理系统使用经验的人也能正常方便地使用本系统。(3)容错能力:系统具有容错、以及抗干扰的能力。因用户操作失误,或是用户输入错误时要尽量给出错误提示信息,不应将错误或是不合理的信息写入到数据库中。3.1.5 条件与限制(1)不同的工作需要由不同的人员负责完成。(2)设备运行情况需要专门的人来进行检查和维护。(3)设备购买必须得到领导的认可。3.2 数据流图3.2.1 用户登录用户的登录的流程为:用户填写正确的用户名、密码,并选择相应的角色,点击登录按钮,此时系统将系统提交到后台并与数据库中的用户信息表相比较,如果验证通过,则跳转到相应的用户界面。如图3-1所示:图 3-1 用户登录数据流图93.2.2 设备申购设备申购的流程为:设备购买管理员填写购买申请,当领导同意之后申请状态改为“已审核”时,则说明申购成功。如图3-2所示:图 3-2 设备申购数据流图3.2.3 设备信息管理设备信息管理的流程为:设备管理员登录系统以后,选择进入设备信息模块就可以看到设备信息表中所有的设备信息,此时,管理员可以查看、修改设备信息。如图3-3所示:图 3-3 设备信息管理数据流图3.2.3 设备租借管理设备租借管理的流程为:管理员根据设备的预约情况选择相应的设备,修改设备信息表中的租借状态。当设备成功租借时,系统会自动向使用登记表里添加这条使用记录。如图3-4:图 3-4 设备租借数据流图3.2.4 设备维护管理设备维护管理的流程为:当修改了设备维护表里的设备状态后,设备信息表里的相应状态也会跟着改变,如:设备维护表里的设备状态变为“需维修”时,此时,该设备不可租借。图 3-5 设备维护管理数据流图114 系统设计4.1 系统结构设计本系统选用了Microsoft Visual Studio 2010作为开发平台,采用的是基于ASP.NET平台下的客户端/服务器(B/S)体系的三层结构。由用户界面层(WEB),业务逻辑层(BLL),数据访问层(DAL)组成。因为本系统是采用了WEB技术开发的,使客户端只需要通过浏览器来访问该系统,这可以大大提高该应用系统的安全性;通过浏览器来访问该系统就像用户使用浏览器浏览所有的门户网站一样,无需安装系统的软件,因此使用者无需升级现有的系统。用户只需要在服务器上作相应的配置和维护,这大大降低了系统维护升级的难度和费用。 该系统主要功能是实现对实验室设备的管理。包括实验室管理员对设备类别的查询、维护;对设备信息的查询、维护;对设备的租借、领用进行管理,领用部分尤其是要登记出借的设备;对需要维修的设备进行管理,对于不能维修的设备,要进行报废记录。对于设备购买管理员来说要管理申购信息,并将购买的设备信息进行登记,记录有关设备基本信息。对于领导审核而言,要及时处理申购申请,及时审核。4.2 系统流程图本系统的处理流程为:登录页面是系统的入口,管理员只有通过登录页面并通过数据库验证后才能进入系统的主界面。系统会根据登录的用户自动加载相应的页面。用户分为3类,分别是设备购买员、设备管理员和领导。设备购买员可以提交设备购买申请,待领导审核过后,由设备购买员负责设备的购买,并将新购买的设备录入到系统数据库中;设备管理员负责设备的日常管理,包括追踪设备使用状态,管理设备的租借等;领导则只负责审核设备购买员提交的设备购买申请。流程图如图4-1所示: 图 4-1 系统流程图4.2 系统功能模块设计4.2.1 系统功能模块图本系统的功能分为以下几个模块,分别是:设备申购管理,设备入库管理,设备信息管理,设备租借管理,设备还库管理,设备维修管理,设备报废管理。具体如图4-2所示:图4-2 系统功能模块图4.2.2 系统功能本系统的功能包括管理员登录、设备申购管理,设备入库管理,设备信息管理,设备租借管理,设备还库管理,设备维修管理,设备报废管理,查询管理可按类别和时间段查。具体描述如下:u 管理员登录:在浏览器地址栏上输入登录地址,进入本系统登录界面。只有用户输入了正确的用户名和密码,并选择对应的身份并确保账户处于启用状态下才能进入系统的主页面。u 设备申购管理:设备申购管理模块的功能是实现对实验室设备的申购操作,在“申请表”中需要填写的信息包括申购设备名称、类别、单价、数量、申请人、申请时间、申请原因等字段,申请状态在添加时默认为“未审核”。u 设备入库管理:设备入库管理模块的功能是实现对实验室设备的入库操作,包括入库设备名称、编号、品牌、型号、类别、数量、对应的实验室、入库时间、供应商、商家电话、数量、采购员等项目,其中编号由系统按类别加登记日期加自动顺序号的方式自动生成,采购员则根据当前登录的用户自动添加到数据库中。u 设备信息管理:设备信息管理模块的功能是实现按类别对所有设备基本信息的管理,包括新增、修改设备的信息。但是其中由系统自动判断添加的信息,如:设备编号,购买员等信息不可更改。u 设备租借管理:设备租借管理模块的功能是对实验室中已出借的设备进行管理。记录租借信息,包括:设备名称、设备编号、借用人、出借时间、归还时间、经手人、租借状态等项目。u 设备还库管理:设备还库管理模块的功能是实现对实验室设备的归还管理,与租借管理使用同一张表,增加的信息有归还时间和归还状态。u 设备维修管理:设备维修管理模块的功能是对实验室需要维修的设备进行管理,包括维修设备编号、维修状态、操作人等项目。u 设备报废管理:设备报废管理模块是对设备进行报废,报废和维修的信息放在同一张表中,分别对应报废管理和维修管理的相关的字段。设备一旦操作“报废”,该设备信息将自动从设备信息表中删除。u 设备查询管理:设备查询管理模块的主要功能是实现对实验室设备的查询管理工作,能查询到设备的所有信息,方便管理员日常管理和使用。 u 退出系统:退出系统模块的功能是清除用户名、密码等敏感信息,实现安全退出系统。4.3 系统详细设计4.3.1 程序设计思想及原则经过我前期的实际调研工作,然后结合我们学校目前的实际需求,以及实验室教学设备的数目等实际情况出发,为了增强学校的实验室设备的信息化管理和正规化管理的工作,因此我采用了微软公司的Microsoft Visual Studio 2010作为开发工具,在windows 7环境下进行实验室设备管理系统的设计和开发,在设计的过程中关键在于要处理好设备数据的变更(添加、删除、修改),租借信息数据的维护,还要处理好数据的一致性等问题。4.3.2 数据库概念设计以“先局部,后整体”的设计思路进行数据库的概念结构设计,即先设计局部的模型,然后再集成。(1)设备的相关属性有ID号、设备名称、品牌、型号、设备编号、类别、所属实验室编号、采购员、入库时间、是否可借等。E-R图如图4-3所示:图4-3 设备信息E-R图(2)设备申购的相关属性有ID号、设备名称、设备类别、单价、数量、总价、审核时间、申请人、申请时间、申请原因、状态、审核人等。E-R图如图4-4所示:图4-4 设备申购E-R图(3)设备类别的相关属性有ID号、类别名称。E-R图如图4-5所示:图4-5 设备类别E-R图(4)实验室的相关属性有编号、实验室名称。E-R图如图4-6所示:图4-6 实验室E-R图(5)用户的相关属性有ID号、用户名、密码、真实姓名、角色、状态。E-R图如图4-7所示:图4-7 用户 E-R图(6)系统E-R图是将局部E-R图集成,形成一个完成的全局E-R模型。系统E-R图如图图4-8所示:图4-8 系统 E-R图4.3.3 数据库表的逻辑结构设计逻辑结构设计是将概念结构转化为一般的关系、网状、层次模型。就本系统而言,逻辑结构设计就是把前面概念设计的E-R图转换为关系模型。将E-R图转换成关系模型要注意以下原则:(1) 一个实体对应一个关系模式;(2) 实体的属性就是关系模型的属性;(3) 实体的码就是关系模型的主属性,也叫做关系模型的码。根据E-R图转换的关系模型有:实验室(编号,实验室名称)设备类别(编号,类别名称)购买申请/审核(编号,设备名称,设备类别,单价,数量,总价,申请人,申请时间,申请状态,申请原因,审核人,审核时间)设备信息表(编号,设备名称,品牌,型号,设备编号,类别,实验室编号,供应商,商家电话,采购员,入库时间,是否可借)设备维护表(编号,设备编号,设备状态,维修原因,报废状态,创建时间,报废时间,操作时间,备注)使用登记表(编号,设备名称,设备编号,实验室编号,领用人,用途,经手人,出借时间,归还时间,归还状态)用户表(编号,昵称,密码,真实姓名,角色)租借记录表(编号,设备编号,设备名称,实验室编号,领用人,经手人,租借时间,归还时间,状态)4.4 数据库物理结构本系统使用的数据库中包含以下表:用户信息表、设备类别表、设备信息表、购买申请/审核表、设备维护表、使用登记表、实验室表,各表的物理结构如下:(1) 设备信息表(EquipInfo),此表用于保存所有的设备信息,具体表信息如表4-1所示:表4-1 设备信息表字段名别名类型描述编号IDint主键,自增长设备名称EI_EquipNamenvarchar(20)不能为空品牌EI_Brandsnvarchar(20)空型号EI_Modelnvarchar(20)不能为空设备编号EI_EquipNonvarchar(20)设备编号由类别加入库时间加自动编号的形式由触发器自动生成,不能为空类别EI_EquipTypenvarchar(20)外键,从类别表中取得,不能为空实验室编号EI_LabNonvarchar(20)外键,从实验室表中取得,不能为空供应商EI_Suppliernvarchar(20)空商家电话EI_SupplierPhonenvarchar(20)空采购员EI_Buyernvarchar(20)由系统自动判定当前登录用户,不能为空入库时间EI_InTimedatetime由系统自动获取添加设备的时间,非空是否可借EI_CanBorrowbit默认是1,可借,非空(2) 购买申请/审核表(PurchaseApply_Check),此表用于保存设备的申购信息和审核情况,具体表信息如表4-2所示:表4-2 购买申请/审核表字段名别名类型描述编号IDint主键,自增长设备名称PAC_EquipNamenvarchar(20)不能为空类别PAC_EquipTypenvarchar(20)外键,从类别表中取得,不能为空单价PAC_UnitPricedecimal(18, 0)不能为空数量PAC_Quantityint不能为空总价PAC_TotalPricedecimal(18, 0)总价由单价乘以数量自动计算得到,不为空申请人PAC_Applicantnvarchar(20)由系统自动判定当前操作的用户,不能为空申请时间PAC_ApplyTimedatetime由系统自动获取添加申请信息的时间,非空申请原因PAC_Reasonnvarchar(50)空状态PAC_Statenvarchar(20)默认为“未审核”;另外还有“已审核/审核未通过/已购买”审核人PAC_Auditornvarchar(20)空审核时间PAC_AuditTimedatetime由系统自动获取审核时的时间,空(3) 设备维护表(EquipMaintenance),此表用于储存所有设备的状态信息及报废情况,具体表信息如表4-3所示:表4-3 设备维护表字段名别名类型描述编号IDint主键,自增长设备状态EM_Statenvarchar(50)默认“正常”;另外还有“需维修/维修中/已维修/无法维修”,不能为空维修原因EM_RepairReason nvarchar(50)空续表4-3字段名别名类型描述报废状态EM_RetirementStatusbit默认是0,代表“否”,1代表报废,不能为空创建时间Create_Timedatetime不能为空报废时间Discard_Timedatetime空操作人EM_Operatornvarchar(20)空备注Remarksnvarchar(100)空(4) 使用登记表(UseRegistration),此表用于存储租借设备的信息,登记每个设备的使用情况,具体表信息如表4-4所示:表4-4 使用登记表字段名别名类型描述编号IDint主键,自增长设备名称UP_EquipNamenvarchar(20)设备编号UR_EI_EquipNonvarchar(20)外键,从设备信息表里取得,不能为空实验室编号UR_LabIDnvarchar(20)外键领用人UR_LendIDnvarchar(20)不能为空用途UR_Usenvarchar(50)空经手人UR_Fromnvarchar(20)由系统自动判定当前操作的用户,不能为空出借时间UR_BorrowTimedatetime由系统自动获取当前时间归还时间UR_ReturnTimedatetime由系统自动获取当前时间归还状态UR_Statenvarchar(20)待归还/已归还(5) 实验室表(Laboratory),此表用于存储实验室的信息,具体表信息如表3-5所示:表4-5 实验室表字段名别名类型描述编号IDint主键,自增长实验室名称L_LabNonvarchar(20)唯一,unique约束(6) 设备类别表(EquipCategory),此表用于存储设备的类别信息,具体表信息如表3-6所示:表4-6 设备类别表字段名别名类型描述编号IDint主键,自增长设备类别名称EC_CategoryNamenvarchar(20)唯一,unique约束(7) 用户表(Users),此表用于存储系统的后台用户信息,具体表信息如表3-7所示:表4-7 用户表字段名别名类型描述编号IDint主键,自增长用户名UserNamenvarchar(20)不能为空密码PasswordMd5nvarchar(50)密码采用MD5加密,不能为空真实姓名RealNamenvarchar(20)空角色authorityint不能为空5 系统实现5.1 类的实现三层架构是依赖于Model里的类库才能实现其功能,因此类的实现就变的非常的重要。它能为应用程序提供多种功能,并且能在不同的层来进行调用。在我所开发的这个项目中,有以下类:EquipCategory类、EquipInfo类、EquipMaintenance类、Laboratory类、PurchaseApply_Check类、UseRegistration类、Users类,一个类对应数据库中的一个表。5.2 数据连接的实现系统需要实现与数据库的连接,ASP.NET中有很多数据连接的方法,我所使用的是SQLHelper这个类里面的方法。定义一个连接字符串:public static string connectionString = PubConstant.ConnectionString; 打开数据库连接:connection.Open();创建一个SqlCommand对象:SqlCommand cmd = new SqlCommand(SQLString, connection) 执行ExecuteNonQuery()方法:int rows = cmd.ExecuteNonQuery();关闭数据库连接:connection.Close();5.3 界面的实现一般在ASP.NET中创建一个页面都是由两个文件组成的,其中一个是视图文件,用来实现界面效果,扩展名为.aspx,或者是.ascx;另一个文件是代码文件,用来实现程序功能,我用的是C#语言,所以其扩展名为.cs,如果使用的语言是Visual Basic,那么其扩展名则为.vb。这种界面和代码分离,分别放在两个不同的文件中有许多的好处。

温馨提示

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

评论

0/150

提交评论