B/S架构下防雷减灾信息管理系统的设计和实现
2015-06-15史海锋
史海锋
(浙江省防雷中心,浙江 杭州 310017)
B/S架构下防雷减灾信息管理系统的设计和实现
史海锋
(浙江省防雷中心,浙江 杭州 310017)
主要针对在B/S架构下防雷减灾信息管理系统的功能设计、数据组织和关键问题等进行了介绍。提出了以区县为基础、上级可以查看下级的数据组织模式,以业务内网为基础,内外网同时访问的数据的访问与操作方式,实现对省市县3级防雷减灾信息的一体化管理。系统业务运行表明,能较好地规范全省防雷业务工作,能有效强化防雷工作的监管和管理,极大的提高了业务流转效率。
B/S;防雷;信息管理系统
0 引 言
随着防雷减灾事业的不断推进和发展,防雷减灾工作已然从原先单一的检测工作发展到雷电监测预警、雷击风险评估、防雷技术评价、防雷跟踪检测、防雷定期检测、雷电灾害调查等多项业务形式,服务领域涉及到社会各行各业,工作内容涵盖公共服务、行政管理和技术服务3个业务层面。为了加强和规范防雷减灾工作,提高业务服务效率,强化服务监督和管理,各省市或者高校都研究和开发各种不同的防雷业务信息管理系统[1-6]。但大多只考虑本单位或者本辖区,很少有考虑省市县一体化模式下防雷信息管理。考虑全省不同单位部门的工作环境和B/S架构系统的优越性[7-9],我们设计和建设了基于B/S架构的防雷减灾信息管理平台,以满足省市县3级日常防雷业务办公和管理的需求,实现防雷信息的共享和联动,提高工作效率。本文接下来将就系统功能结构、数据组织管理以及相关关键技术问题进行了介绍和研究。
1 系统设计
1.1 系统环境
系统网络环境以气象内网为依托,针对不同用户类型和用户需求,系统物理架构设计采用内外网(气象内网和互联网)Web服务器分离的模式。内网上以一台高性能的服务器作为数据库服务器,两个不同Web服务器访问共同的数据库服务器,不同的用户通过各自的Web服务器最终对共同的数据库进行数据的访问与操作(如图1)。这样不仅可以满足不同用户需求,同时也能保证数据安全。
图1 系统网络结构
系统应用服务器操作系统采用Windows Server 2008,数据库采用Oracle 11G存放,Oracle数据库系统是美国ORACLE公司提供的以分布式数据库为核心的一组软件产品,其主要的特性如:海量数据管理、高级保密机制、高级备份和恢复的工具、开放式连接。系统报告的自动编制采用Microsoft Office Word 2010,Microsoft Office提供了一整套的应用开发接口Microsoft.Office.Core,系统通过对Application对象的操作实现对Word文档的操作,从而实现报告自动生成与编制。
1.2 系统架构
系统采用B/S(Browser/Server)结构即浏览器和服务器结构,B/S架构下用户工作界面是通过Browser浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓3层(3-tier)结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。
3层体系结构:第一层为表现层,也叫用户界面层,用于接受请求和进行数据显示;第二层为业务层,包括Web服务器、应用服务器以及GIS服务器,负责逻辑业务处理过程;第3层为数据层,包括属性数据库和空间数据库。
1.3 开发平台
系统采用asp.net作为系统的开发设计平台。.NET是Microsoft公司于2002年推出的一个产品,也是下一代的网络应用基础。这种平台下,可以充分利用ASP.NET和ADO.NET中的新特性和XML技术,在业务逻辑和数据访问中,利用类将其进行封装,再通过ADO.NET对数据库进行操作时,利用存储过程等可以高效地实现系统对数据访问,因此尤其适合架构基于XML技术和B/S架构的系统。
1.4 功能结构
整个系统由5大模块组成(如图2),分别为公共服务模块、防雷管理模块、技术服务模块、系统管理模块和个人中心模块。5大模块自成一套体系,但同时又相互关联和数据交互。
图2 系统功能结构组成
其中公共服务模块主要针对雷电公共服务对象,包括雷电监测和雷电预警;防雷管理模块主要侧重防雷行政管理对象,包含防雷行政审批和竣工验收、防雷定期检测单位管理、信息统计分析等;技术服务模块主要侧重防雷技术服务对象,包含雷电灾害风险评估、防雷设计技术评价、防雷工程跟踪竣工检测、防雷定期安全检测、雷电灾害调查与鉴定以及技术服务客户回访等;系统管理模块主要针对系统维护对象,主要包含收费标准管理、人员权限管理、行政区域管理、使用单位管理等;个人中心模块主要针对使用者,包含邮件收费系统以及个人信息修改等。
2 数据组织和安全管理
2.1 数据组织和数据库
系统采用分布式数据库,系统数据库包括基础地理信息数据库、雷电公共服务数据库,防雷行政管理数据库,防雷技术服务数据库。其中基础地理信息数据库、雷电公共服务数据库统一建在省级数据库服务器上,防雷行政管理数据库和防雷技术服务数据库则建立在市级数据库服务器上,县级不单独建数据库,数据集中统一在市级数据库上存放。
1)基础地理信息数据库:存储包含行政区划、流域水系、山峰以及地形等基础地理信息数据。
2)雷电公共服务数据库:存储雷电监测产品、雷电预警预报等数据。
3)防雷行政管理数据库:存储防雷行政审批数据。
4)防雷技术服务数据库:存储雷电灾害风险评估、防雷技术评价、防雷跟踪检测、防雷定期检测、雷电灾害调查、防雷定期检测单位等数据。
同时防雷行政管理数据库和防雷技术服务数据库通过关键字段项目关联,从而能保障一个防雷建设项目信息能实现从行政许可到图纸审核、从图纸审核到竣工验收等各环节的查询分析,从而保障项目的连续性和一致性管理。
系统防雷减灾项目数据的组织管理采用省市县3级区域管理,以区县为基础区域,市级可以查看区县级,省级可以查看市级和区县级,这样就可以保障全省防雷减灾项目的省市县3级管理和信息共享(如图3)。
图3 省市县3级业务逻辑图
2.2 系统安全及管理
为保障系统安全,采用多种介质对数据进行备份。对于一次大范围更新的数据,采用光盘刻录的方法进行备份,对于日常运行中的数据,则采用每天进行自动备份,包括文件和数据库的备份,以便在遭到破坏后能够及时恢复。
同时用户登录采用用户口令、用户身份和验证码检验进行用户安全认证。用户权限管理采用区域权限、单位权限以及3级功能操作权限管理。
区域权限:每个用户属于不同的区域,其权限也就只能操作本区域内的项目;
单位权限:每个用户属于不同的单位,其权限也就只能操作本单位内的项目;
3级功能权限:包括顶级菜单权限、次级菜单权限和具体功能权限3级;
3种权限管理保障每个用户只能操作本单位、本区域有功能操作权限的项目,这样保障了项目运转和数据的安全。
3 关键技术和问题
3.1 基于Word Application技术的报告自动生成
系统报告文书的自动生成通过调用Word Application相关对象和方法进行。Microsoft Word现在已经完全的集成到 Visual Studio集成开发环境(IDE)当中,使得开发人员能够更容易的使用托管控件来扩展 Office 解决方案,并为开发人员带来了更加直观的设计、开发和调试体验。定制解决方案更加方便裁减Word的功能来满足各种应用中的不同需求。改进代码编辑能力,更加节省时间 使用 Visual Studio代码编辑器能够自动发现代码错误、给出修改建议并能够改正通常的编程错误。
Word 的Application 对象表示整个应用程序,每个 Document 对象表示单个 Word 文档,Paragraph 对象对应于单个段,以此类推。这些对象各自都有很多方法和属性,您可以使用这些方法和属性操作对象或与对象交互。Application对象包含 Document、Selection、Bookmark 和 Range 对象。
系统对Word模板的操作全部封装到WordAppService类中,WordAppService类建立了报告创建CreateWord、报告Word格式保存SaveFile和Html格式保存SaveHtml等基本函数,同时也建立包含项目受理单生成、收费审核表生成、检测报告和评价意见文书生成等专门函数。在每个函数中通过调用Word Application相关对象和方法进行文档的后台操作和生成。
Private void CreateWord(String filepath)
{ oWord = new Microsoft.Office.Interop.Word.Application(); oWord.Visible = false; object fileName = filepath; oDoc = oWord.Documents.Add(ref fileName, ref oMissing, ref oMissing, ref oMissing); }
Private void SaveFile(String filepath)
{ filepath = filepath + ".doc"; object fileName = filepath; object password = DateTime.Today.DayOfYear.ToString(); Microsoft.Office.Interop.Word.WdSaveFormat format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatDocument;
object f = format;
oDoc.SaveAs(ref fileName, ref f, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
oDoc.Close(ref oMissing, ref oMissing, ref oMissing);
oWord.Quit(ref oMissing, ref oMissing, ref oMissing); }
Private void SaveHtml(String filepath)
{ filepath = filepath + ".html"; object fileName = filepath; object password = "0"; Microsoft.Office.Interop.Word.WdSaveFormat format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatHTML;
object f = format;
oDoc.SaveAs(ref fileName, ref f, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
oDoc.Close(ref oMissing, ref oMissing, ref oMissing);
oWord.Quit(ref oMissing, ref oMissing, ref oMissing); }
3.2 基于多条件的信息统计分析
系统建立了区域统计、结构统计、月趋势分析、年趋势分析和行业分析5类统计手段,每类统计工具下可以统计对象、项目类别、统计时间、统计区域以及行业类别等条件设置进行统计分析,同时直接统计分析得到同比和环比信息。这样基于多种统计手段和多种条件下的统计分析,使得防雷减灾信息的统计分析更加细致,可以很好掌控各地区和各行业不同时间段、不同类别项目的开展情况。
4 结 语
防雷减灾信息管理系统自2013年投入业务试运行,2014年开始在全省6地市和省防雷中心全面正式投入业务运行,2014年通过系统办理防雷业务项目近6000个。运行以来满足了省、市、县3级防雷业务和管理的需求,实现了省市县3级用户不同网络环境下的工作要求,规范了防雷业务程序,提高了防雷业务服务效率,强化了对防雷工作的监督和管理。同时具备良好的数据备份管理的功能和系统安全功能,使得不同权限用户各司其职,总体效果良好。
由于现有的开发人员的技术问题和时间问题,本系统暂时没有引入电子签名和电子公章系统,待系统再一步运行稳定后将考虑引入,这样将可以进一步丰富系统功能,提高工作效率。
[1] 朱宇.防雷业务综合管理系统设计与实现[D].大连理工大学,2009
[2] 王业斌.防雷业务管理信息系统的研究与实现[D].合肥工业大学,2010.
[3] 王华,李丹,王伟,等.防雷业务综合管理系统[J].气象与环境学报,2009(6):49-51.
[4] 吴海,潘家利.海南省防雷业务管理系统[J].气象研究与应用,2008(4):48-49.
[5] 王国斌,石俊峰,郭奎英,等.鹤壁市防雷业务管理系统[J].河南气象,2003(4):41-42.
[6] 戴岚岚,林雨人,郭宏博.基于B/S架构的防雷业务信息管理系统设计与应用[J].广东气象,2010(3):69-72.
[7] 陈辉,王守忠,杜成林,等.基于B/S架构的气象科技管理信息系统[J].气象科技,2005,33(S1):166-168.
[8] 赵铁松,王晓云,李伟,等.基于B/S架构和开源WebGIS平台的气象观测站网可视化系统[J].气象科技,2013(1):57-61.
[9] 赵远东,吴娴.基于B/S架构的科技项目评估管理系统[J].南京信息工程大学学报(自然科学版),2011(1):78-83.
2014-01-14