方偉華 周藍(lán)捷 鄭韶鵬 李文惠
摘要:針對當(dāng)前簡易烈度計臺網(wǎng)系統(tǒng)管理過程中存在的大量繁雜的基礎(chǔ)信息被分散保存,無統(tǒng)一的數(shù)據(jù)錄入、檢索、查詢、安全備份平臺的問題,開發(fā)基于MVC框架的簡易烈度計基礎(chǔ)資料管理系統(tǒng),實現(xiàn)臺站信息管理、儀器參數(shù)與序列號管理、值班人員管理、維修登記管理、地震事件報告查詢、地震烈度圖查詢、數(shù)據(jù)接收系統(tǒng)日志查詢等業(yè)務(wù)功能,達(dá)到提高地震工作人員工作效率、統(tǒng)一管理平臺與保障數(shù)據(jù)安全性的效果。
關(guān)鍵詞:MVC框架;簡易烈度計臺網(wǎng);基礎(chǔ)信息;統(tǒng)一管理
中圖分類號:TP311.52 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2019)08-0152-03
0 引言
隨著國際地震預(yù)警與烈度速報在科學(xué)技術(shù)上的不斷發(fā)展和在系統(tǒng)建設(shè)上的不斷實踐,地震預(yù)警與烈度速報已逐漸成為實用化的減輕地震災(zāi)害的手段。福建地區(qū)作為地震預(yù)警試驗示范區(qū),全省數(shù)字化監(jiān)測臺網(wǎng)的不斷加密,強(qiáng)震動數(shù)據(jù)全部實現(xiàn)了基于IP網(wǎng)絡(luò)的實時傳輸。在此基礎(chǔ)上,2016年我中心根據(jù)省局要求,采用相對密集的簡易烈度計作為繪制烈度速報圖的補(bǔ)充,我省簡易烈度計布設(shè)規(guī)模為900臺,規(guī)模數(shù)量大,該項目將在快速發(fā)布的烈度圖中疊加豐富的局部烈度信息,為震后應(yīng)急救援和災(zāi)害評估工作提供更多的決策性依據(jù)信息,也為社會大眾提供更豐富的地震信息服務(wù)。然而,面對如此高密度部署的地震設(shè)備,在臺網(wǎng)管理方面福建省地震局也是第一回遇到,如何有條不紊的管理好這些臺網(wǎng)基礎(chǔ)信息,目前工作模式中主要存在以下幾個問題:
(1)大量繁雜的基礎(chǔ)信息被分散保存,相同的資料可能在不同的電腦中保存;(2)基礎(chǔ)信息數(shù)據(jù)格式眾多,不利于存取,如臺站信息是word格式,地震報告是txt格式,圖件格式j(luò)peg等;(3)查詢檢索既不方便又效率低下,需要咨詢相關(guān)工作人員,費時費力;(4)數(shù)據(jù)安全性低,由于數(shù)據(jù)格式眾多且分散存儲,難以做到統(tǒng)一備份機(jī)制,保障數(shù)據(jù)的安全性。
針對以上問題,設(shè)計一套集臺站信息、儀器信息、管理人員信息、地震報告、烈度圖、維修維護(hù)信息、系統(tǒng)日志信息等為主要內(nèi)容的專業(yè)數(shù)據(jù)庫管理系統(tǒng)是十分必要的。本系統(tǒng)結(jié)合簡易烈度計臺網(wǎng)管理的特點,引用MVC框架架構(gòu)的優(yōu)勢,選取國內(nèi)外知名MVC框架工具,采用PHP架站語言與Mysql數(shù)據(jù)庫進(jìn)行搭建,使用B/S結(jié)構(gòu)(即瀏覽器和服務(wù)器結(jié)構(gòu))應(yīng)用方式進(jìn)行簡易烈度計臺網(wǎng)基礎(chǔ)數(shù)據(jù)庫管理,簡化架站開發(fā)成本,用以解決簡易烈度計臺網(wǎng)運行至今一直沒有一套行之有效的、高效便捷的臺網(wǎng)基礎(chǔ)數(shù)據(jù)庫管理平臺,可實時響應(yīng)網(wǎng)內(nèi)用戶對簡易烈度計臺網(wǎng)基礎(chǔ)信息的查詢與檢索,方便地震管理人員通過Web瀏覽器查詢簡易烈度計臺網(wǎng)基礎(chǔ)信息,可有效提高工作人員工作效率,并對數(shù)據(jù)安全性起到有效保障作用。
1 開發(fā)工具的選擇
選擇一款國內(nèi)知名MVC框架:ThinkPHP架構(gòu)工具進(jìn)行架構(gòu),框架主要采用PHP面向?qū)ο笳Z言與MySQL關(guān)系型數(shù)據(jù)庫進(jìn)行架構(gòu)。它強(qiáng)制性的使應(yīng)用程序的輸入、處理和輸出分開。使用MVC應(yīng)用程序被分成三個核心部件:模型、視圖、控制器。它們各自處理自己的任務(wù),M層主要負(fù)責(zé)數(shù)據(jù)庫的操作設(shè)計,V層主要負(fù)責(zé)前臺頁面的展示效果設(shè)計,C層主要負(fù)責(zé)各功能模塊編寫,由于是面向?qū)ο笤O(shè)計過程,功能模塊的許多方法可直接由框架直接繼承,方便系統(tǒng)的開發(fā),節(jié)約成本。
1.1 MVC框架結(jié)構(gòu)
MVC框架:采用MVC對管理系統(tǒng)進(jìn)行架構(gòu),它強(qiáng)制性的使應(yīng)用程序的輸入、處理和輸出分開。使用MVC應(yīng)用程序被分成三個核心部件:模型(M)、視圖(V)、控制器(C),M層主要負(fù)責(zé)數(shù)據(jù)庫的操作設(shè)計,V層主要負(fù)責(zé)前臺頁面的展示效果設(shè)計,C層主要負(fù)責(zé)各功能模塊代碼編寫,它們各自處理自己的任務(wù),分工明確,且是面向?qū)ο罂蚣茉O(shè)計,可直接引用框架中的許多方法進(jìn)行架構(gòu),對系統(tǒng)開發(fā)具有重用性高、部署快、成本低、可維護(hù)性高、適合團(tuán)隊開發(fā)等優(yōu)點。
1.2 ThinkPHP架站工具
ThinkPHP是一個快速、兼容而且簡單的輕量級國產(chǎn)PHP開發(fā)框架,誕生于2006年初,原名FCS,2007年元旦正式更名為ThinkPHP,遵循Apache2開源協(xié)議發(fā)布,從Struts結(jié)構(gòu)移植過來并做了改進(jìn)和完善,同時也借鑒了國外很多優(yōu)秀的框架和模式,使用面向?qū)ο蟮拈_發(fā)結(jié)構(gòu)和MVC模式,融合了Struts的思想和TagLib(標(biāo)簽庫)、RoR的ORM映射和ActiveRecord模式。它可以支持windows/Unix/Linux等服務(wù)器環(huán)境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多種數(shù)據(jù)庫以及PDO擴(kuò)展,ThinkPHP框架本身沒有什么特別模塊要求,具體的應(yīng)用系統(tǒng)運行環(huán)境要求視開發(fā)所涉及的模塊。
1.3 關(guān)系型數(shù)據(jù)庫:MySQL
MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB 公司開發(fā),目前屬于Oracle旗下產(chǎn)品。MySQL是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,在WEB應(yīng)用方面,MySQL是最好的RDBMS(Relational Database Management System,關(guān)系數(shù)據(jù)庫管理系統(tǒng)) 應(yīng)用軟件。MySQL所使用的SQL語言是用于訪問數(shù)據(jù)庫的最常用標(biāo)準(zhǔn)化語言。MySQL軟件采用了雙授權(quán)政策,分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網(wǎng)站的開發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫。
2 技術(shù)系統(tǒng)架構(gòu)
系統(tǒng)主體架構(gòu)為B/S,數(shù)據(jù)庫和應(yīng)用程序代碼均安裝于服務(wù)器端,便于集中管理。服務(wù)器端為ThinkPHP+Apache+MySQL,系統(tǒng)框架圖如圖1。M層主要負(fù)責(zé)數(shù)據(jù)庫的操作設(shè)計,V層主要負(fù)責(zé)前臺頁面的展示效果設(shè)計,C層主要負(fù)責(zé)各功能模塊編寫,由于是面向?qū)ο笤O(shè)計過程,功能模塊的許多方法可直接由框架直接繼承,方便系統(tǒng)的開發(fā),節(jié)約成本。終端用戶根據(jù)不同業(yè)務(wù)選擇不用功能模塊,主要包括臺站信息管理、儀器信息管理、地震相關(guān)產(chǎn)出、維修維護(hù)登記管理、日報/月報功能等,由C層對M層進(jìn)行業(yè)務(wù)邏輯判斷、數(shù)據(jù)庫調(diào)取;根據(jù)業(yè)務(wù)邏輯選擇不同的視圖,將視圖結(jié)果反饋給用戶。
3 系統(tǒng)結(jié)構(gòu)設(shè)計
簡易烈度計臺網(wǎng)基礎(chǔ)資料管理系統(tǒng)的開發(fā)可以實現(xiàn)前后臺系統(tǒng)、權(quán)限管理、登錄功能、分頁功能、下載功能、用戶信息功能、臺站基礎(chǔ)信息添加與查詢功能、儀器參數(shù)與序列號添加與查詢功能、日報上報與查詢功能、維修登記上報與查詢功能、Earthworm產(chǎn)出報告查看下載功能、系統(tǒng)日志信息查看下載功能,方便工作人員日常查詢與維護(hù),臺站百度地圖展布功能與點位信息查看等主要功能,提高工作效率;系統(tǒng)功能圖見圖2。
4 系統(tǒng)主要功能介紹
(1)臺站基礎(chǔ)信息。主要實現(xiàn)了臺站基礎(chǔ)信息的資源匯總與查詢功能,主要包括臺網(wǎng)基礎(chǔ)信息地圖展示、臺站基礎(chǔ)信息添加、臺站基礎(chǔ)信息列表、臺站點之志下載等子項。
臺網(wǎng)基礎(chǔ)信息地圖展示功能:該功能是基于百度地圖為背景,可瀏覽展示全臺網(wǎng)地理信息背景,實時查看站點名稱、經(jīng)緯度、ip地址、地址、維護(hù)記錄等信息;
臺站基礎(chǔ)信息添加:實現(xiàn)增加臺站信息的功能;
臺站基礎(chǔ)信息列表:以列表方式列出全臺網(wǎng)臺站基礎(chǔ)信息,并實現(xiàn)快速檢索功能;
臺站點之志下載:實現(xiàn)臺網(wǎng)點之志資料匯總、快速檢索與下載功能,方便野外工作人員快速查詢;
(2)儀器參數(shù)信息。主要實現(xiàn)了簡易烈度計儀器參數(shù)信息的資源匯總與查詢功能,主要包括儀器參數(shù)列表、儀器參數(shù)信息添加、儀器配置文件列表、儀器固件下載等子項。
儀器參數(shù)列表:以列表方式列出臺網(wǎng)所有儀器參數(shù)信息,并提供查詢功能;
儀器參數(shù)信息添加:實現(xiàn)新增儀器參數(shù)信息的添加功能;
儀器配置文件列表:以列表方式列出儀器重要配置文件信息,并提供下載功能;
儀器固件下載:以列表方式列出儀器相關(guān)固件版本文件,并提供下載功能;
(3)運行日報管理,主要實現(xiàn)了臺網(wǎng)每日臺網(wǎng)運維情況的報表上報功能,以便后期總結(jié)統(tǒng)計與查詢。
(4)運行月報管理,主要實現(xiàn)了臺網(wǎng)每月臺網(wǎng)運維情況的報表上報功能,以便后期總結(jié)統(tǒng)計與查詢。
(5)維修登記管理,主要實現(xiàn)了臺網(wǎng)日常野外運維登記備案功能,主要包括維修上報管理、維修登記列表、故障類型管理、處理類型管理等子項。
(6)Earthworm產(chǎn)出下載:主要實現(xiàn)了Earthworm數(shù)據(jù)系統(tǒng)產(chǎn)出信息查詢與下載,主要包括地震報告與地震圖件兩個二級菜單功能。
地震報告下載主要是由Earthworm中tcpd模塊產(chǎn)出的地震報告事件。
地震圖件下載主要是由Earthworm中sharkmap模塊產(chǎn)出的地震pga圖件。
(7)Earthworm系統(tǒng)日志下載:主要實現(xiàn)了Earthworm數(shù)據(jù)系統(tǒng)各模塊系統(tǒng)日志信息的查詢與下載。
(8)相關(guān)信息與資料模塊:主要實現(xiàn)了簡易烈度計臺網(wǎng)運維中相關(guān)操作手冊文檔的歸檔、查詢與下載,方便工作人員運維管理。
5 系統(tǒng)運行
基于MVC框架的簡易烈度計臺網(wǎng)基礎(chǔ)資料管理系統(tǒng)已部署在地震行業(yè)網(wǎng)內(nèi),通過瀏覽器登錄系統(tǒng),運行后輸入帳號、密碼,既可進(jìn)入系統(tǒng)首頁?;诎俣鹊貓D的臺網(wǎng)位置信息展示圖如圖3所示。
6 結(jié)語
該系統(tǒng)采用MVC框架結(jié)構(gòu)對管理系統(tǒng)進(jìn)行架構(gòu),它強(qiáng)制性的使應(yīng)用程序的輸入、處理和輸出分開。它們各自處理自己的任務(wù),分工明確,對系統(tǒng)開發(fā)具有重用性高、部署快、成本低、可維護(hù)性高、適合團(tuán)隊開發(fā)等優(yōu)點,通過該系統(tǒng)的設(shè)計與部署,有效的將它應(yīng)用的當(dāng)前福建省簡易烈度計臺網(wǎng)運維與管理的工作中,達(dá)到提高地震工作人員工作效率、統(tǒng)一管理平臺與保障數(shù)據(jù)安全性的效果,適合在地震行業(yè)網(wǎng)內(nèi)推廣。
參考文獻(xiàn)
[1] 倪泰山,闕云彩,李祥.基于B/S結(jié)構(gòu)的地震臺站綜合信息管理系統(tǒng)的設(shè)計與實現(xiàn)[J].地震研究,2009(1):89-93.
[2] 王俊芳,李隱峰.基于MVC模式的ThinkPHP框架研究[J].電子科技,2014,27(4):151-153.
Design and Implementation of Basic Data Management System Based on MVC Framework of Facile Seismic Intensity Network
FANG Wei-hua,ZHOU Lan-jie,ZHENG Shao-peng,LI Wen-hui
(Xiamen Research Center of Seismic Exploration,Xiamen Fujian? 361021)
Abstract:Currently, a large number of basic but complicated information is dispersedly stored in the facile seismic intensity network system. There is no unified platform for data entry, retrieval, query, and security backup. In this paper, we develop a simplified basic data management system based on the MVC framework, to achieve management of station information, instrument parameters and serial number, duty staff, maintenance registration, earthquake event report query, seismic intensity map query, log query of data receiving system and other business functions. Thus, such system can help to improve the working efficiency of seismic staff, and provide a unified management platform to ensure the data security.
Key words:MVC Framework; Facile Seismic Intensity Network; Basic Information; Unified Management