《电力系统的设计与开发.docx》由会员分享,可在线阅读,更多相关《电力系统的设计与开发.docx(14页珍藏版)》请在课桌文档上搜索。
1、国家电力设备资源管理系统的设计与实现刘培峰(河北科技师范学院工商管理学院,信息管理与信息系统专业1202班)指导教师:许伟丽摘要:电力设备是电力生产企业进行生产活动的重要物质技术根底。设备的管理水平、利用效率都会对电力生产企业的运营和管理带来直接的影响。文章通过介绍课题的背景、意义以及国内外研究现状,指出目前电力公司采用人工方式管理设备存在的问题,从而指明建立电力设备管理系统的必要性和紧迫性。在此根底上,严格按照GBT8567-2006标准和软件生命周期的六个阶段对系统进行分析、设计和开发。最后,在开发完成后通过一局部核心代码和运行界面对软件进行说明。关键词:电力设备;资源管理;Strust;
2、MVC1绪论1.1 课题背景在这个时代,一个企业现代信息技术水平的上下,将成为企业竞争力强弱的重要标志。只有迅速掌握好互联网信息技术,按现代的管理方法管理企业的物流、和信息流,实现企业管理信息化。只有这样才能全面提升企业资源配置水平,提高企业的运行效率。21世纪是科技信息时代,陈旧的管理模式不是适应新时代的要求,它存在着管理效率低下、记录容易出错等一系列缺点。对于以上的种种缺点,会对企业的经济效益差生很大影响,增加了企业运营本钱,降低了企业的生产力。1.2 研究意义为了使设备管理人员更好地知道设备的情况与设备维修人员更好地对设备进行检修和校准,由此开发设备管理系统,使得设备各种记录实现计算机化
3、,脱离无纸化,并且数据化。2可行性分析2.1 社会可行性国家电力设备资源管理系统主要目的是对电力公司的电力设备进行管理,并且严格按照国家法律法规来进行研究和实践,并无法律和政策方面的限制。2.2 技术可行性本系统采用的是MySQ1.sJSP和JaVa开发,Windows10PrOfeSSionaI操作系统。由于Java、JSP功能强大,而MySQ1.灵活并且易维护,在开发方面具有容易理解、开发速度快的特点,以及这些技术大量的实际应用,所以Java、MySQ1.、JSP是开发设备管理系统的最好选择。2.3 操作可行性目前,大多数的计算机都能运行本系统。在系统开发前,进行了充分的用户调研,开发的系
4、统操作简单、易于上手、容易理解,并且系统的界面简单,提示的信息完整,由相关人员进行简单指导就能够方便的操作本系统。3需求分析3.1 技术需求系统在技术上要求:(1)遵循统一命名标准、编码标准、用户界面标准、接口以及程序设计标准网;(2)系统整体结构采用B/S架构模式,增强系统的易操作性,降低系统维护;(3)系统遵循行业标准,采用J2EE平台架构。3.2 业务需求本系统有很多功能模块,由于篇幅有限,不能将每个模块在此进行分析,所以文章只将几个重要的模块进行分析。3.2.1 系统首页(1)主题说明系统首页包含两个局部:系统登录页面和登录系统后的首页。(2)功能要求登录时输入的密码为不可见。首页有退
5、出系统链接,重新登陆和返回首页超链接。登陆后的首页左侧是系统菜单,上部是系统名称,主体局部进行系统信息的显示。用户管理(1)主题说明用户管理主要用来维护和更新查询系统内部使用人员的个人资料信息,以及用户角色分配调整。(2)功能要求将所有的用户进行列表显示,对不同的行的用户进行编辑和删除。可根据用户名进行用户查询,可以模糊查询。删除时提示是否确认删除。3.2.3 数据字典(1)主题说明数据字典对系统字段进行统一维护(2)功能要求系统管理员可对数据字典组进行维护,编辑数据字典组。数据字典使用AJAX与系统进行异步交互。可以添加数据字典的项,同时添加数据字典的值。3.2.4 站点运行情况(1)主题说
6、明主要用来控制管理站点的运行情况,包括站点的故障类型,故障时长,处理状态等(2)功能要求查询结果列表显示在查询条件下方。可对查询结果进行编辑和删除。站点名称做成超链接,点击后进入站点运行情况详细信息页面。3.3 性能需求3.3.1 运行环境需求(1)系统运行效劳器选择稳定平安高效的UNIX操作系统。(2)Web开发效劳器采用Tomcat,上线采用Web1.ogicAVebSphereo(3)数据库效劳器采用MySQ1.,上线采用OraCIe或者SqlServero3.3.2 操作需求(1)开发的系统应简单,灵活,可操作性强。(2)系统采用B/S架构,使得通过浏览器即可访问系统操作,让工作人员非
7、常方便查看系统内的数据。4系统结构化分析建模4.1 软件功能模块分析依据此需求分析对系统的功能模块进行详细的分析,为以后的系统设计阶段做好准备工作。如表1所示。业务功能模块系统首页系统首页用户登陆后的主页面设备管理设备信息管理对设备的根本信息的管理设备校准管理对设备的校准周期和时间进行管理。设备检修管理对设备的检修周期和时间进行管理。设备购置方案对购置方案进行管理。站点设备运行管理站点根本信息对监测台各个站点的根本信息进行管理。运行情况主要用来控制管理站点的运行情况。维护情况对站点维护方案、故障处理等维护情况的管理。监测台建筑管理监测台建筑管理对监测台的房屋建筑信息进行管理。系统管理模块系统管
8、理用户管理对系统内各种用户的管理。角色管理对系统内各种角色的管理。系统设置对系统数据字典的管理。表1功能模块分析4.2 业务流程4.2.1 系统主Portal业务流程用户成功登录系统后,登陆后的首页左侧是系统菜单,上部是系统名称,主体局部进行系统信息的显示。如图1所示。图1系统主Portal业务流程图用尸管理业务流程用户管理主要用来维护、更新和查询系统内部使用人员的个人资料信息,以及用户角色分配、调整。如图2所示图2用户管理业务流程图系统管理业务流程系统设置主要用来更新维护系统一些静态信息,这些静态信息在数据字典中维护。如图3所示。图3系统管理业务流程图4.3 数据流程根据前面系统业务流程的分
9、析,分别得出系统的顶层数据流图和一层数据流图。(1)系统顶层数据流图如图4所示。用户设备信息用户信息计划数据系统数据库用户信息设备信息计划数据国家电力设备资源管理系统验收提醒统计信息数据导出报表设备信息计划数据检修提醒用户图4系统顶层数据流图(2)系统-层数据流程图如图5所示。P4D6建筑信息表D7图纸资料表查看阅览P2数据加载图5系统顶层数据流图5国家电力设备资源管理系统的设计5.1 系统功能模块设计国家电力设备资源管理系统审批流转管理系统管理检测台建筑管理站点设备运行管理技术设施维护管理技术设施维护管理我的申请查询待我审批起草申请中请模版管理I审批流程管理数据字典维护I待办事宜角色管理I用
10、户管理I维护情况.运行情况I站点基本信息I设备购置计划I设备校准检修仪器设备管理图6系统功能模块图为了更清晰的理解整个系统的功能结构关系,由以上的业务流程图和数据流图,完成系统的功能模块图如图6所示。5.2 数据库表设计(1)数据库逻辑结构设计数据字典(主键ID,数据类型,数据项Code,数据项VaIUe);申请模版表(主键ID,名称,流程定义Key,模版文件存储位置);维护方案表(主键ID,监测台ID,当前时间,维护内容,备注);设备较准检修表(主键ID,设备ID,是否校准,检修日期,是否检修,记录描述,备注,);文件上传表(主键ID,附件工程ID,所属模块,文件名,文件路径,上传时间,备注
11、)导入导出字段表(所属模块,导知名称列表(中文)用“铲分开,导出字段名称(字段名)用“#分开,未导知名称列表(中文)用“铲分开,未导出字段(字段名)用“#分开);(2)数据库物理结构设计为对系统作进一步分析和设计,我们根据系统选用的数据库将逻辑结构设计转换成数据模型,并对数据模型做严格的评价。本系统数据库表如下:表2数据字典表字段名称数据类型主键是否空说明SeqIDINTYN主键IDKeywordVARCHAR(20)NY数据类型DdlCodeINTNY数据项CodeDdlNameVARCHAR(50)NY数据项valueIsDeleteVARCHAR(10)NY是否删除,O表示未删除表3申请
12、模板表字段名称数据类型主键是否空说明idlongYN主键IDnamevarchar(500)NY名称ProcessDefinitionKeyvarchar(500)NY流程定义的keypathvarchar(5000)NY上传的模板文件的存储位置IsDeleteVarchar(IO)NY是否删除表4维护方案表字段名称数据类型主键是否空说明PlanIDVARCHAR(50)YN主键IDJctIDVARCHAR(50)NY监测台IDOccurDateDATETIMENY当前时间MainContentvarchar(500)NY维护内容表5站点维护方案表字段名称数据类型主键是否空说明PlanIDVA
13、RCHAR(50)YN站点维护情况,主键IDStationIDVARCHAR(50)NN站点ID,主键IDJctIDVARCHAR(50)NY所属单位COde(对应数据字典)OccurDateDATETIME(50)NY方案时间MainContentVARCHAR(500)NY内容CommentDATETIME(50)NY备注CreateDateVarchar(IO)NY创立时间表6设备校准检修表字段名称数据类型主键是否空说明seqIDINTYN仪器校准,主键IDDevIDIsAdjustAdjustDateOverhauIDateIsHavingRecordCommentIsDeleteVA
14、RCHAR(50)Varchar(IO)DATETIME(50)DATETIME(50)VARCHAR(50)VARCHAR(5(X)VARCHAR(5(X)Varchar(IO)NY设备IDNY是否校准,O未校准1已校准NY校准日期NY检修日期NY是否检修,O未检修1已检修NY记录描述NY备注NY是否删除,。表示未删除表7文件上传表字段名称数据类型主键是否空说明SeqIDINTYN主键IDProjIDVARCHAR(50)NY附件的工程ID(所属单位)BeIongToVARCHAR(50)NY所属模块1。2-0(图纸类别)FileNameVARCHAR(50)NY文件名FileUR1.VAR
15、ChAR(I(X)O)NY文件路径ProgressTimeVARCHAR(20)NY上传时间CommentVARCHAR(50)NY备注IsDeleteVarchar(IO)NY是否删除CreateEmpIDVARCHAR(50)NY创立人CreateDateDATETIMENY创立时间表8导入导出字段表字段名称数据类型主键!是否空说明BelongToVarchar(IO)YN所属模块(如1-0,1-1,2-1等)ExpName1.istVARCHAR(500)NY导知名称列表(中文)用“#”分开ExpFieldNameVARCHAR(500)NY导出字段名称(字段名)用“#”分开NoExp1
16、.istVARCHAR(500)NY未导知名称列表(中文)用“#”分开NoExpNameDArETIME(500)NY未导出字段(字段名)用分开6国家电力设备资源管理系统的前端实现6.1 首页实现首页(如图7)模块包括3个主要的局部,采用内嵌框架技术。位置分别为上、左、中.(1)上部的实现上部包含两大局部内容:网站标题;菜单。菜单局部就是一系列的超链接,用户登录后看到的是系统时间、用户名、返回首页和退出系统。(2)左部的实现左部是系统主要的功能菜单,分为两级菜单,使用JaVaSCriPt和StrUSt的标签完成菜单的显示。(3)中部的实现中部是本系统的主要局部,用于对系统所有的信息进行显示和操
17、作。图7系统主Portal6.2 系统管理模块系统管理模块是本系统的重中之重,可以说是整个系统的平安中心。以下重点介绍本模块。(1)用户管理(如图8)用户管理模块可以对系统内的人员进行统计,形成统计报表,方便企业领导进行人员的统计。系统中用户数据的添加有系统管理员操作。图8用户信息管理(2)数据字典(如图9)数据字典对系统内字段进行统一维护。在系统内各个模块中的下拉列表、单项选择以及多项选择都会使用到数据字典中的数据字段,使系统更加标准化。国家电力股测中心彼备资源管理系疏图9数据字典维护7国家电力设备资源管理系统的后台实现7.1 系统总体描述本系统架构采用J2EE三层开发体系架构,使用StUt
18、S+Spring+Hibemate的技术框架。从系统整体框架设计上,需要重点到达以下三个要求:(1)前瞻性:应对需求的变化。(2)整合性:整合各个子系统的流程和数据。(3)可扩充性:面向未来。7.2 处理流程结构图系统的处理流程如图10所示。处理流程说明:(1)表示层:(表示层也就是客户终端)表示层对数据模型中包含的数据进行显示。当用户对系统进行请求,系统返回数据时,此层将返回数据显示给用户。(2)业务逻辑层:(中间层)对用户的请求动作进行控制。当用户将请求发送到系统中时,系统通过控制层将用户不同的请求发送到相应的处理程序进行处理。(3)数据库访问层:(底层)数据访问层中包含数据模型,数据模型
19、将用户的请求数据或系统返回的数据进行封装,用于在业务层进行处理货视图层进行显示。图10系统处理流程7.3 系统实现核心代码7.3.1 权限捕获拦截器此段代码是系统开发阶段用于自动捕获系统权限(访问路径)的拦截器,用于系统上线后的权限控制。在系统上线后,此拦截器需要关闭。publicclassCatchUrIInterceptorimplementsInterceptor/*拦截请求路径,与数据库进行比照,向数据库中添加权限*/publicStringintercept(ActionInvocationinvocation)throwsExceptionActionProxyproxy=invo
20、cation.getProxy();Stringns=proxy.getNamespace();StringactionName=proxy.getActionNameO;if(!ValueUtil.isValid(ns)ns.equals(7)Stringurl=ns+/+actionName;ServletContextsc=ServletActionContext.getServletContext();ApplicationContextac=WebApplicationContextUtils.getWebApplicationContext(Sc);IElecRightServic
21、ers=(IElecRightSe11zice)ac.gelBean(IElecRightService.SERVICE_NAME);rs.appendRightByUR1.(url);returninvocation.invoke();7.3.2 密码加密用户的密码是十分重要的,好的加密方法能保证用户密码不被泄露。此段代码是在MD5技术的根底之上进行改造优化,使加密后的数据更加平安,加密效率更高。publicfinalclassPwdEncryptpublicstaticStringgetDataByMD5(Stringsrc)try(StringBufferbuffer=newString
22、BufferO;charchars=0,T,Z3,4,5,6,7,83,A,B,C,D,E,F;MessageDigestmd=MessageDigest.getInstance(,MD5);bytedata=md.digest(src.getBytes();for(byteb:data)buffer.append(chars(b4)&OXOF);高4位buffer.append(charsb&OXoF);低4位returnbuffer.toString();catch(NosuchAlgorithmExceptione)e.printStackTrace();)ireturnnull;7.3
23、.3权限计算本系统采用二进制计算的方式进行权限的控制和判断,以此来提升系统运行效率和系统平安性。*计算用户的权限总和*/publicvoidCalculateRightSumOintpos=0;longcode=0;for(ElecRolerole:roles)/判断超级管理员if(-.equals(role.getRoleValue()this.superAdmin=true;roles=null;return;for(ElecRightr:role.getRights()pos=EgetRightPosO;code=EgetRightCodeO;rightSumpos=rightSumpo
24、scode;roles=null;*判断用户是否有指定的权限*/publicbooleanhasRight(ElecRightr)(intpos=EgetRightPosO;longcode=r.ge(RightCode();longret=rightSumpos&code;return!(ret=0);publicstaticbooleanisValid(Stringstr)if(str=null.equals(str.trim()returnfalse;returntrue;*判断集合的有效性*/publicstaticbooleanisValid(Collectioncol)if(col
25、=nullHcol.isEmpty()returnfalse;1returntrue;7.3.4 权限过滤本系统使用Strust的拦截器进行权限的拦截判断,配置灵活。*权限过滤拦截器*/SUPPreSSWamingS(serial)publicclassRightFilterInterceptorimplementsInterceptorpublicvoiddestroy()publicvoidinit()SuppressWarnings(rawtypes)publicStringintercept(ActionInvocalioninvocation)throwsExceptionBaseA
26、ctionaction=(BaseAction)invocation.getAction();ActionProxyproxy=invocation.getProxy();Stringns=proxy.getNamespace();StringactionName=proxy.getActionName();if(ValueUtil.hasRight(ns,actionName,ServletActionContext.getRequest(),action)returninvocation.invoke();)else)returnno_right_eiTor;7.3.5 设备校准检修数据查
27、询优化数据库性能的一个简单有效的方法是尽可能减少对数据库操作。使用联合查询语句,将多条Sql合并为一条语句,由此减少对数据库的操作。下面是本系统的一个例子,系统中几乎所有的数据库操作都使用此种方法,以此来提高数据库性能。SE1.ECTo.stationid,a.ddlname,o.attributionground,o.stationcode,o.stationname,c.ddlname,o.contacttype,OjcfrequencyFROMelec_stationo1.EFTJOINelec_dictionaryaONo.jctid=a.DdICodeANDa.Keyword=所属单
28、位,1.EFTJOINelec_dictionarybONo.jctid=b.DdlCodeANDb.Keyword=,站点类别,WHEREo.jctid=?ANDO-Stationname1.IKE,%?%,ANDo.stationcode=?ANDo.stationtype=?ANDo.contacttype1.IKE,%?%,ANDo.attributionground1.IKE%?%8系统测试8.1 测试目的与目标在软件初步开发完成后,接下来的一步是将系统移交给软件测试人员,让测试人员对系统进行完全的测试,尽可能找出系统中存在的Bug,并记录下来,形成测试报告交给软件开发人员。而开发人
29、员就依此报告对系统的Bug进行修改。8.2 测试用例(如表9)测试结果说明,本模块的业务逻辑设计及系统的开发是正确的。表9登入系统测试用例系统模块系统登录模块测试目的测试系统登录模块的开发是否正确测试数据登录名:Ull登录密码:IUl测试内容操作描述数据期望结果实际结果测试状态1输入用户姓名,按“登陆”按钮。用户姓名:1111,密码为空显示警告信息用户名或密码误!”显示警告信息“用户名或密码误!”与期望结果相同2输入密码,按“登陆”按钮。用户姓名为空,密码:IlU显示警告信息用户名或密码误!”显示警告信息“用户名或密码误!”与期望结果相同3输入用户姓名和密码,按“登陆”按钮。用户姓名:1,密码
30、:1显示警告信息“用户名或密码误!”显示警告信息“用户名或密码误”与期望结果相同4输入用户姓名和密码,按“登陆”按钮。用户名:1111,密码:Illl正确登入到会员操作界面正确登入到会员操作界面与期望结果相同结论本系统的开发严格按照GBT8567-2006标准和软件生命周期的六个阶段进行,使用功能强大的集成开发环境MyEclipse为开发工具和轻量级数据库MySql完成此系统的开发。此系统主要对电力企业的设备、人员、建筑以及一些购置、维修方案进行管理。最后,为了使系统更加人性化和自动化,又使用JBPM技术开发了审批流转模块。本系统的开发意在帮助电力企业提升运营效率,降低运营本钱,进行信息化建设
31、,使企业的管理更加标准化,人性化。致谢:感谢许伟丽老师在百忙之中对我的论文进行指导。从开题报告,到最后的论文终稿,老师对论文的每一个环节严格把关,对于撰写论文过程中的每一个问题都给予耐心指导。在此也感谢大学四年中,每一位老师给予的帮助。参考文献:邵培基.管理信息系统(第二版)M.北京:知识产权出版社,2012,35-48.杨帆.配电网电力生产管理信息系统J.电力技术资讯,2013,12:177-178.3陈铁森.电力企业平安上生产理信息系统的应用J.企业技术开发,2012,01:39-40.4DiegoMalagueta.PotentialandimpactsofConcentratedSol
32、arPowerintegrationin(heBrazilianelectricpowersystemJ.RenewableEnergy.2014,68:57-61.杨浩.广东电网公司生产管理信息系统实用化评价研究J.广东电力,2010,04:29-34.ThedesignandimplementationoftheNationalelectricpowerequipmentresourcesmanagementsystemPeiFeng1.iu(Class1202,InformationManagementandInformationSystem,CollegeofBusinessAdmin
33、istration,HeibeiNormalUniversityofScience&Technology)SupervisoriWei1.iXuAbstract:Electricalequipmentistheimportantmaterialandtechnologicalfoundationofelectricalmanufacturingenterpriseinproductionactivities.Equipmentmanagementlevelandtheusingefficiencyofelectricalmanufacturingenterprisehavedirectimpa
34、ctonelectricalmanufacturingenterprisesoperationandmanagement.Thearticlethroughtheintroductionofthebackground,significanceoftopicsandresearchstatusathomeandabroad,pointsoutthatthecurrentproblemsexistingintheelectricpowercompanyusingartificialtomanageequipment,soastoindicatethenecessityandurgencyofest
35、ablishmentinthepowerequipmentmanagementsystem.Onthisbasis,instrictaccordancewiththeGBT8567-2006specificationandthesixstagesofsoftwarelifecycleonthesystemanalysis,designanddevelopment.Finally,afterthecompletionofdevelopment,1explainedthesoftwarethroughthepartofthecorecodeandtherunninginterface.KeywordsiPowerequipment;ReSoUrCeManagement;Strust;MVC