鄭清杰,鄭智健,林永強(qiáng)
(莆田市氣象局 福建 莆田 351100)
隨著計算機(jī)的發(fā)展,利用已存在的技術(shù)手段對數(shù)據(jù)進(jìn)行自動化處理,是氣象局內(nèi)重點(diǎn)研究的方向之一,因為預(yù)測天氣情況需要多而繁雜的數(shù)據(jù),從而導(dǎo)致?lián)碛斜姸鄽庀笥^測設(shè)備,因此,相關(guān)的設(shè)備管理的信息化建設(shè)也成為氣象局的重點(diǎn)需求之一[1]。隨著氣象局業(yè)務(wù)的不斷擴(kuò)展,氣象觀測設(shè)備、信息網(wǎng)絡(luò)設(shè)備、機(jī)房環(huán)境監(jiān)控等日益增加導(dǎo)致數(shù)據(jù)信息的增多,而氣象觀測設(shè)備的穩(wěn)定運(yùn)行又與氣象業(yè)務(wù)的正常開展密不可分[2]。建設(shè)氣象觀測設(shè)備信息化平臺可以有效提高工作效率,實況展示氣象觀測設(shè)備信息有助于維保人員及時維護(hù),保障氣象數(shù)據(jù)傳輸?shù)姆€(wěn)定性,對氣象業(yè)務(wù)穩(wěn)定展開提供有效的支撐,因此目前氣象局投入大量人力物力在氣象觀測設(shè)備信息化平臺建設(shè)上,與實際業(yè)務(wù)相結(jié)合構(gòu)建一個氣象觀測設(shè)備信息化管理體系,提高氣象觀測設(shè)備安全性、穩(wěn)定性,以此來保障氣象工作的順利進(jìn)行[3]。
目前全國各個氣象局都已經(jīng)開展關(guān)于氣象觀測裝備保障管理系統(tǒng)的設(shè)計研究相關(guān)課題,有些成果已經(jīng)實際應(yīng)用在氣象業(yè)務(wù)當(dāng)中[4],但是氣象局中氣象自動站觀測設(shè)備信息管理系統(tǒng)是以省來布局,由各市級的氣象設(shè)備管理部門統(tǒng)籌,在系統(tǒng)內(nèi)區(qū)級自動站信息并未統(tǒng)一規(guī)劃,雖然擁有一些基本的功能,如查詢氣象觀測設(shè)備信息、登記觀測設(shè)備信息等,但信息分類不夠詳細(xì),無法靈活適應(yīng)區(qū)級不同的業(yè)務(wù)需求,無論是查詢自動站觀測設(shè)備信息或者是業(yè)務(wù)上的需求,特別是區(qū)自動站觀測設(shè)備信息,區(qū)氣象局查詢不夠方便,都需要花費(fèi)額外的時間來完成。此外,傳統(tǒng)的氣象裝備保障管理采用手寫登記,這種方法存在一定弊端,如不同筆跡的識別問題、設(shè)備查詢麻煩等問題[4],在統(tǒng)計氣象觀測設(shè)備信息方面也不夠快捷,需要人工手動添加,無法一鍵導(dǎo)入導(dǎo)出相關(guān)設(shè)備信息。為了減少不必要的工作量以及更加直觀地顯示區(qū)自動站的信息,方便區(qū)級人員業(yè)務(wù)運(yùn)行,提高工作效率,本文根據(jù)實際業(yè)務(wù)需求搭建合適的區(qū)級氣象自動站信息系統(tǒng)。
根據(jù)實際業(yè)務(wù)中維保人員需要查詢每個區(qū)域自動站的氣象觀測設(shè)備信息,系統(tǒng)初步設(shè)計由兩個功能模塊組成:區(qū)級模塊、用戶管理模塊。區(qū)級模塊主要存儲區(qū)級信息,用戶模塊存儲用戶信息。該系統(tǒng)的具體結(jié)構(gòu)功能見圖1,其中一區(qū)、二區(qū)代表區(qū)級,可根據(jù)所在市擁有的區(qū)個數(shù)添加,方便各市使用,有助于推廣使用,其目錄下展示出該區(qū)所有區(qū)域自動站站名。xx自動站則根據(jù)所在區(qū)氣象局登記的自動站命名,該功能模塊包含點(diǎn)擊的自動站下所有氣象觀測設(shè)備的信息,如投入使用的時間、維修時間、設(shè)備檢定時間、該站氣象觀測設(shè)備的備件情況等。用戶管理即管理可登入該系統(tǒng)的用戶信息權(quán)限,可設(shè)置用戶查閱菜單欄的權(quán)限,方便市級氣象局統(tǒng)籌管理人員以及增加保密性。
本文根據(jù)莆田市氣象局所擁有的電腦性能配置以及維保人員的人數(shù),選擇前后端分離搭建系統(tǒng),一是為了降低維護(hù)成本,二是方便后期加入其他功能。前后端分離構(gòu)建系統(tǒng)的優(yōu)點(diǎn)是擺脫兩者之間的相互依賴,前后端面向不同要求具有不同功能,后端主要需求在三高、業(yè)務(wù)存儲等,而前端則對界面展示效果、應(yīng)用流暢程度、用戶體驗等有較高的要求,通過對其進(jìn)行單獨(dú)的項目部署從而實現(xiàn)系統(tǒng)的優(yōu)化以及提高項目的開發(fā)效率[5]。
本系統(tǒng)采用B/S結(jié)構(gòu),該結(jié)構(gòu)的特點(diǎn)為擁有成本不高、維護(hù)較容易、開發(fā)簡單,任何一臺氣象局內(nèi)網(wǎng)計算機(jī)都能進(jìn)行訪問操作,方便區(qū)級氣象局自主進(jìn)行相關(guān)業(yè)務(wù)處理以及添加功能。信息系統(tǒng)采用Java技術(shù),有利于系統(tǒng)功能模塊的移植,方便后續(xù)業(yè)務(wù)的擴(kuò)展、版本升級等。后端采用Spring Boot、Mybatis等流行的系統(tǒng)開發(fā)框架,前端采用Vue.js框架以及Element-UI等第三方庫,這種組件化開發(fā)模式有助于區(qū)級氣象自動站信息系統(tǒng)的快速構(gòu)建以及系統(tǒng)維護(hù),實現(xiàn)信息系統(tǒng)的功能需求[6]。
系統(tǒng)前端采用Vue.js框架構(gòu)建用戶界面,Vue.js是一套構(gòu)建用戶界面的漸進(jìn)式框架,通過簡潔的代碼與各種模塊化應(yīng)用實現(xiàn)數(shù)據(jù)交互綁定以及頁面展現(xiàn)[1]。Vue.js的與眾不同之處在于其開發(fā)思想是自底向上,其目的是構(gòu)建由數(shù)據(jù)驅(qū)動的組件系統(tǒng)。Vue.js代碼的變化可快速實時響應(yīng)在視圖層,融合性強(qiáng),可以輕松融合其他庫,插入現(xiàn)有項目較簡單,有助于信保人員的快速入門學(xué)習(xí)。同時Vue.js框架本身也可采用單文件組件以及支持的組件庫開發(fā)信息系統(tǒng)[1]。
Element-UI是由某團(tuán)隊開發(fā)的一個用戶界面庫,與Vue.js匹配度較高,可高效簡潔地開發(fā)出用戶界面框架,以其代碼一致性、良好的反饋性、高效率反饋以及可控性得到了廣泛應(yīng)用[1]。
后端采用由Pivotal團(tuán)隊提供的一個Spring Boot框架,該框架通過自動定義配置、模塊化各種組件去支持常用的集成框架來降低開發(fā)的復(fù)雜性以及難度,減去重復(fù)的代碼布置,減少不必要的工作量。Spring Boot是在Spring的基礎(chǔ)上開發(fā)的新開源框架,通過減少了Spring與其他框架之間的代碼整合,實現(xiàn)Web應(yīng)用的快速部署,通過“約定大于配置”的要求簡化了 Spring 應(yīng)用各方面的配置,從而減少程序員樣本化的配置工作以及重復(fù)性代碼[7],易于新手的學(xué)習(xí)與入門,較容易入手的框架便于氣象局的維保人員學(xué)習(xí)以及修改相關(guān)配置,可讀性強(qiáng)的代碼有助于理解。數(shù)據(jù)存儲方面采用MySQL,主要原因在于維保人員較熟悉,且在Web應(yīng)用方面MySQL是最好的關(guān)系數(shù)據(jù)庫管理系統(tǒng)應(yīng)用軟件之一,以其安裝便捷、使用簡單方便、安全性能高、穩(wěn)定性強(qiáng)以及可移植性好等性能被廣泛使用[1]。采用MyBatis進(jìn)行氣象觀測設(shè)備信息數(shù)據(jù)處理,MyBatis是一款優(yōu)秀的持久層框架,安裝簡單且沒有第三方依賴,通過XML實現(xiàn)對數(shù)據(jù)庫的增刪改查等一系列操作,便于統(tǒng)一管理以及優(yōu)化。在構(gòu)建系統(tǒng)后端過程中,采用了lombok、Hutool等工具簡化開發(fā),降低代碼繁瑣程度,使得代碼更加簡潔明了,閱讀性更強(qiáng)。
根據(jù)上述的系統(tǒng)設(shè)計以及功能需求,使用相關(guān)程序框架,本文構(gòu)建了如下的區(qū)級氣象自動站信息系統(tǒng),本系統(tǒng)的用戶登錄界面見圖2,包含用戶登入信息顯示、登入名、登入密碼以及登錄按鍵。為了方便市級管理以及系統(tǒng)安全性、保密性等原因,沒有創(chuàng)建用戶注冊功能,由市級單位統(tǒng)一創(chuàng)建用戶。
登入?yún)^(qū)級氣象自動站信息系統(tǒng)后,該系統(tǒng)的界面主體顯示效果見圖3。
由圖3可知,區(qū)級氣象自動站信息系統(tǒng)的主體顯示界面左邊為側(cè)邊欄,可選擇功能用戶管理或者區(qū)級,區(qū)級列出各區(qū)氣象局如一區(qū)、二區(qū),下拉會顯示該區(qū)存在的所有區(qū)域自動站名,供使用員點(diǎn)擊查看指定自動站觀測設(shè)備信息。點(diǎn)擊進(jìn)入用戶管理后,可查看當(dāng)前所有用戶名以及密碼,其中管理員可以設(shè)定角色擁有的查看菜單欄的權(quán)限,如設(shè)定某區(qū)級人員只有查看所屬區(qū)級自動站的權(quán)限,更加靈活管理功能,便于市級管理員的管理以及系統(tǒng)的穩(wěn)定性、安全性。界面的右上角顯示當(dāng)前登入角色,角色分為管理人員以及區(qū)級人員,其擁有查看個人信息以及退出兩個功能,具體顯示效果見圖4。
關(guān)于系統(tǒng)數(shù)據(jù)庫表的設(shè)計,本文的自動站信息表結(jié)構(gòu)見表1,按照區(qū)級自動站氣象觀測設(shè)備信息表設(shè)計,表中包含設(shè)備序號、設(shè)備名稱、使用時間、檢定時間、維修時間4個數(shù)據(jù),后續(xù)根據(jù)具體業(yè)務(wù)可再添加需要的數(shù)據(jù)。用戶人員信息數(shù)據(jù)庫表結(jié)構(gòu)見表2,表中主要為用戶序號、用戶姓名以及用戶密碼。
表1 自動站信息表結(jié)構(gòu)
表2 用戶人員信息數(shù)據(jù)庫表結(jié)構(gòu)
自動站觀測設(shè)備信息在瀏覽器上為表格顯示,其具體顯示效果見圖5,表格上表頭名稱顯示數(shù)據(jù)庫設(shè)定的序號、設(shè)備名稱、使用時間、檢定時間、維修時間,額外增加操作。表上方有兩個功能,分別為新增設(shè)備按鍵與查詢按鍵。新增即為添加當(dāng)前區(qū)域自動站觀測設(shè)備信息,彈出表格填寫設(shè)備信息。查詢?yōu)橥ㄟ^查詢設(shè)備名稱獲得當(dāng)前目錄該自動站所查詢的設(shè)備信息。
在表中的操作一欄下,擁有編輯和刪除兩個功能按鍵,編輯即為彈出表格修改當(dāng)前行氣象觀測設(shè)備信息內(nèi)容。刪除即為刪除當(dāng)前氣象觀測設(shè)備信息,點(diǎn)擊刪除會彈出確定按鈕,以防誤刪,其在瀏覽器上具體顯示效果見圖6。
該信息系統(tǒng)目前尚在運(yùn)行測試中,能夠初步實現(xiàn)設(shè)計的要求,如區(qū)級氣象局自主查看相關(guān)設(shè)備信息、添加以及修改氣象觀測設(shè)備信息,但依然存在一些問題,如顯示的界面不夠美觀、畫面不夠協(xié)調(diào),菜單欄的功能還需要添加導(dǎo)出氣象觀測設(shè)備的Excel功能,供業(yè)務(wù)一鍵導(dǎo)出使用,氣象觀測設(shè)備信息顯示不夠完整。在實際運(yùn)行中,菜單欄中選擇某區(qū)后應(yīng)該先跳轉(zhuǎn)顯示全部區(qū)域自動站情況,再供業(yè)務(wù)人員點(diǎn)擊選擇某自動站,在此基礎(chǔ)上還應(yīng)添加氣象數(shù)據(jù)實時顯示功能,以便查看自動站運(yùn)行情況。為了向非氣象人員介紹氣象系統(tǒng)內(nèi)的運(yùn)行情況,該系統(tǒng)后續(xù)還應(yīng)做成可視化界面,讓人更加清楚內(nèi)部流程。
根據(jù)區(qū)級氣象局的業(yè)務(wù)需求以及日常工資需要,設(shè)計并搭建了區(qū)級氣象自動站信息系統(tǒng),采用B/S結(jié)構(gòu)開發(fā),界面顯示簡潔、功能易于操作[8],初步實現(xiàn)氣象觀測設(shè)備區(qū)級情況自動站信息顯示、設(shè)備檢定信息等功能,通過該系統(tǒng),各區(qū)級人員可以清楚獲悉區(qū)級自動站設(shè)備信息,管理人員查看各區(qū)域自動站氣象觀測設(shè)備維修檢定情況,降低了業(yè)務(wù)人員工作的繁瑣程度,提高了自動站氣象觀測設(shè)備管理效率。除此之外,該信息系統(tǒng)對菜單欄進(jìn)行權(quán)限管理,設(shè)置了用戶查看自動站信息的范圍。