APP下载

关于建筑安全监理信息分析预警系统软件实现

2014-07-25周聪易波

网络安全与数据管理 2014年14期
关键词:日志框架预警

周聪,易波

(湖南大学 信息科学与工程学院,湖南 长沙410082)

建筑行业一直都是我国国民经济的重要支柱,也是我国最具规模和活力的基础产业。由于我国没有形成一个完善健全的建筑安全监管和预警体系,使得建筑工程建设管理水平、技术水平、施工水平有所局限。随着当前互联网得到迅速发展,将建筑监理的理念与互联网技术相结合,利用现代计算机软件技术建立一个快捷、健全的建筑安全预警和监理信息管理系统有着重要的研究和应用价值。

本系统运用强大的数据库功能,在现场施工过程中操作用户将现场检测到的数据输入到预警系统中,通过与系统数据库中的历史数据相融合,与有效的数据模型进行匹配,若存在相关问题则进行预警,生成记录,并查询追踪到的相应的建议处理措施,处理该安全隐患;若不存在则要将该数据反馈给专家,专家通过分析,再进行数据融合,从而实现警情的预警与防范、数据收集等,以便于及时发现潜在威胁,提出应急预案,防患于未然。本系统也实现了信息化的远程监管,通过Web浏览器使监管单位能够随时浏览施工过程中的预警信息。同时通过视频监控系统使得监管单位以及企业单位能够实时了解监控整个施工现场的真实情况。不但加强了建筑单位与施工现场的信息交互,同时使建筑过程中遇到的安全隐患得到了及时处理,大大提高了建筑施工安全管理水平。

1 系统的结构和总体框架

本系统主要包括问题规范查询、预警分析、工程日志、信息反馈四大模块。系统用户分为4种:现场用户、监管用户、企业用户和管理员。现场用户主要是现场施工人员;监管用户和企业用户都属于管理现场用户的上级部门,监管主要是与工程有关的监理公司,通过地区来划分管辖范围;企业用户主要是工程有关的企业公司;管理员拥有最高权限。系统主要对建筑施工过程中的预警信息进行管理和显示,并利用网络技术与监理单位实现即时通信,使预警信息得到及时处理。本系统总体框架如图1所示。

图1 系统结构原理图

2 基于的J2EE系统架构

2.1 系统开发环境

系统数据库采用 SQL SERVER 2008[1];采用 Eclipse作为编辑代码工具;采用Tomcat作为服务器;用Java语言开发,引用了Nutz架包,本系统没有采用传统的SSH框架,而是采用了轻便的新型的Nutz框架;引用了Jquery包[2]。

2.2 NUTZ结构

由于系统采用B/S(Browser/Server)模式。相比于传统的C/S(Client/Server)模式,其客户端不需要安装专门的软件,只需要浏览器即可。浏览器通过Web服务器与数据库进行交互,可以方便地在不同平台下工作,客户端零安装、零维护,并具有高扩展性。

本系统采用了 Html、JavaScript、Java语言进行开发。利用了新型的Nutz框架实现MVC模式。Nutz是一组轻便小型的框架的集合,但它的各个部分可以被独立使用,而且它是开源的,完全免费的。Nutz框架完全可以独立地用来开发一个Web项目,它主要提供了以下几个基本的功能:

(1)DAO。提供了针对JDBC的薄封装,DAO接口提供了对数据库的基本操作的封装,如 Insert(插入)、Delete(删除)、Update(更新)、Fetch(获取)、Query(查询)、Clear(清除,一条SQL根据条件删除多条记录)。在DAO中也能自定义复杂的SQL条件语句,实现对数据库的更复杂的操作。

(2)Ioc。主要是用来存储对象之间的依赖关系,并提供一些接口让使用者获取这些对象。

(3)Nutz.Mvc。是和一个Web服务器一起工作的,它的作用就是把客户端的标准的HTTP请求映射到对应的Java函数中,从而实现Java函数对HTTP请求的处理。在这个映射过程中,它会完成参数的解析并提供几种基本的渲染 HTTP输出流的方式(如 JSP、View、JSon)。Nut.Mvc的核心思想就是通过注解@At把一个HTTP请求与一个Java函数联系起来[3]。

典型的MVC模式视图层对应View,负责显示数据库提取出来的数据以及用户界面。例如Html页面的视图、JSP页面的表格、Jquery中诸多控件等数据视图层显示的功能。

数据库层对应的则是Modle层,通常模型对象负责在数据库中存取数据。而Entity实体层则是数据表格的映射,都必须通过Entity层一一对应,业务逻辑层对数据库的所有操作也是通过对Entity层进行的。

业务逻辑层对应Controller,也是整个Nutz框架的核心部分,从视图读取数据,控制用户输入,并向模型发送数据。业务逻辑层分为3层:Module层、Service层以及DAO层。3层都可以对Entity层进行操作,只是关系层次复杂的一次通过Module、Service、DAO层依次进行,最后使用DAO层来操作数据交互,这样有助于分清程序的层次,有助于以后的维护和阅读。所有层的跳转都是通过Ntz.Ioc(Inversion of Control)来控制的。Nutz的程序结构如图2所示。

3 系统功能和流程设计

3.1 问题查询

该模块主要为现场用户提供查询施工现场所遇到的建筑规范问题以及向系统提出新问题。问题查询流程如图3所示。

3.1.1 问题规范查询

图2 Nutz框架程序结构图

图3 问题查询流程图

建筑行业有着一整套施工规范,在施工过程中需要负责人及时地查询与工程有关联的问题规范。本模块采用的是Apache的Solr搜索引擎。Solr是基于Lucene的独立的开放源码的企业全文搜索服务器软件,具有比Lucene更为丰富的更易使用的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面。它主要分为客户端和服务端。客户端负责与用户进行交互,接收输入的查询内容,向服务端发送查询请求;服务端通过Solr对数据库建立索引,实现全文搜索。Solr技术的引入使得搜索更加简单快捷,而且稳定高效[4]。

在输入框下面输入相应的问题,再选项按钮“按名称查询”,“按内容查询”和“按标题查询”,点击查询或者按“Enter”键都可以进行对应的查询。查询结果将以一定的顺序排列并且分页显示,关键字会在搜索记录中以红色高亮显示。查询精度可以达到90%以上。具体的技术实现框架如图4所示。

这可以看作是Nutz与Solr的结合,关键字通过视图层传递到控制层,与前面Nutz不同的是没有通过本身的搜索操作query(查询)函数进行搜索,而是通过接口连接Solr独立搜索引擎,提供强大的全文搜索功能。对klCriterion规范表格进行全文搜索,并且将搜索关键字高亮处理,同时将搜索结果分页返回到视图层页面。

3.1.2 添加问题记录

图4 规范查询的技术框架图

在搜索过程中有可能出现用户搜索的问题在目前的问题规范数据库中查询不到的情况,对此系统提供了一个添加问题的功能。用户可以通过反馈搜索不到的问题提交到后台数据库,每隔一段时间数据库管理员会对所有新的问题进行筛选,并对有价值的问题请专业人士进行补充并存入规范数据库,从而不断完善问题规范数据库。

3.2 问题分析

建筑行业在施工过程中出现的“危险点”或“危险区”实为一种极不正常情况,在施工安全预警中称之为警或警情。警或警情的严重程度(即“危险点”或“危险区”的危险程度)就是施工安全预警的警度。施工安全预警不仅要及时预报警情,而且要准确预报警度。预报警度是预警的目的。

本系统参照有关专家意见将施工安全预警的警度划分为4个不同的警区:无警警区、一级警区、二级警区、三级警区。相应地要分无警警限、一级警限、二级警限、三级警限[5]。

3.2.1 预警分析

预警分析过程可以看作是一个模式识别的过程。把未知警度的新预警样本与已知警度的预警标准样本进行比较辨别,从而确定新预警样本所归属于的预警模式类别。预警分析的方法流程如图5所示。

3.2.2 预警记录

图5 预警分析流程图

预警记录模块的主要作用是显示施工过程中该用户遇到的所有预警情况的记录,并提供一个平台让现场用户解决该警情。而监管方可同时看到该记录,随时监控警情,以督促得到解决。因此,预警记录应该具有以下几个功能:(1)显示该项目用户的所有预警记录;(2)根据预警日期、预警级别、状态对记录进行查询显示;(3)查看详情并解决该问题:可以查看每条预警记录的级别、现象、建议处理措施等情况,解决该问题时需要消除码。预警记录的功能设计图如图6所示。

图6 预警记录业务流程图

3.3 工程日志

工程日志模块是现场用户记录施工现场每天的真实情况并由负责人实名制提交。不仅可以新增和编辑每天施工现场情况,同时可以查看已记录过的日志详细信息。可以方便以后回顾重要事件以及发生事故后及时追究事故原因和责任人。工程日志的基本流程如图7所示。

图7 工程日志流程图

同时采用了JQuery框架中datepicker插件实现日历的功能,不仅可以提供日志日期查询,并且能够在日期的颜色上区别出哪天有日志记录,例如灰色表示无日志记录并且鼠标不能点击;蓝色表示有日志记录,点击日期即可进入对应的日志记录页面。JQuery最基本的应用就是通过元素的id号对元素进行各种操作,如给元素赋值、提取元素的值及控制元素的显示等。再通过Javascript中的AJAX进行前后台的数据交换。在AJAX中可以传递想要传递到数据库的参数,并可以定义数据交互的形式,以及成功提交后执行的操作。

现场用户可以通过新增工程日记录施工现场每天的情况以供自己以及上级部门用户查看。

用户在填写日志出现纰漏时,可以重新编辑添加过的日志信息。但为了保证信息安全,只能在提交日志的48 h内才能编辑日志,逾时则无法编辑该条日志信息。

用户还可以通过按工程日志的名称、提交时间来查看符合自己要求的工程日志信息。查询结果通过JQuery控件翻页显示。

3.4 信息反馈

信息反馈是现场用户将需要反馈的信息通过系统反馈到选择的上级用户,上级用户可以对此反馈进行回复,达到上下级在线交流的目的。此模块类似一个现场用户与上级用户之间的对话。信息反馈的流程如图8所示。

图8 信息反馈流程图

本系统实现了一个基于新型框架Nutz结构设计开发的建筑质量监理预警系统,不仅具备现场施工场地日常使用的工程日志记录和信息反馈,还具有一个建筑行业中的规范查询系统,方便施工时及时查看相关的建筑问题规范。同时具有最重要的预警系统,用户输入的施工信息通过与系统进行模式匹配,利用3个级别的预警实现不同程度的预警,从而保证整个建筑行业的施工安全。

[1]郭郑州,陈军红.SQL Server 2008完全学习手册[M].北京:清华大学出版社,2011.

[2]单东林,张晓菲,魏然.锋利的 jQuery(第 2版)[M].北京:人民邮电出版社,2012.

[3]Nutz(de)文档[EB/OL].[2014-3-20]http://nutzam.com/doc/html/.

[4]王小森.基于solr的搜索引擎的设计与实现 [D].北京:北京邮电大学,2011.

[5]张明丽.基于支持向量机建筑施工安全预警模型的研究[J].中国安全生产科学技术,2011,7(3):59-60.

猜你喜欢

日志框架预警
框架
一名老党员的工作日志
扶贫日志
广义框架的不相交性
法国发布高温预警 严阵以待备战“史上最热周”
雅皮的心情日志
园林有害生物预警与可持续控制
游学日志
机载预警雷达对IFF 的干扰分析
关于原点对称的不规则Gabor框架的构造