鄒立武 孟俊 郭水連
收稿日期:2023-11-20
DOI:10.19850/j.cnki.2096-4706.2024.07.009
摘? 要:為動(dòng)態(tài)實(shí)時(shí)掌握企業(yè)防雷安裝信息,提高宜春市氣象部門防雷檢測(cè)的服務(wù)效率和服務(wù)質(zhì)量,設(shè)計(jì)了宜春市防雷檢測(cè)服務(wù)系統(tǒng)。該系統(tǒng)基于微軟公司推出的新一代腳本語(yǔ)言Active Server Page.NET(ASP.NET),整體架構(gòu)采用B/S形式的兩層架構(gòu)。系統(tǒng)能夠顯示企業(yè)的防雷工程信息,分析出防雷工程不合格的設(shè)計(jì),及時(shí)給出指導(dǎo)意見(jiàn);按照檢測(cè)情況,系統(tǒng)能夠跟蹤防雷檢測(cè)報(bào)告的進(jìn)展情況,方便查閱和及時(shí)獲取報(bào)告。
關(guān)鍵詞:防雷檢測(cè);防雷工程;檢測(cè)報(bào)告
中圖分類號(hào):TP311? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):2096-4706(2024)07-0038-04
Analysis and Design of Lightning Protection Detection Service System in Yichun City
ZOU Liwu1, MENG Jun2, GUO Shuilian1
(1.Yichun Meteorological Bureau, Yichun? 336000, China; 2.Zhangshu Meteorological Bureau, Yichun? 331200, China)
Abstract: In order to dynamically grasp enterprise lightning protection installation information in real time, improve the service efficiency and quality of lightning protection detection by the meteorological department of Yichun City, a lightning protection detection service system in Yichun City has been designed. This system is based on Microsoft's new generation scripting language Active Server Page NET (ASP. net), it adopts B/S two-layer architecture in the overall architecture. The system can display the lightning protection engineering information of enterprise, analyze the unqualified design of the lightning protection engineering, and provide timely guidance. According to the detection situation, the system can track the progress of lightning protection detection reports, making it easy to access and obtain reports in a timely manner.
Keywords: lightning protection detection; lightning protection engineering; testing report
0? 引? 言
宜春市位于雷暴多發(fā)區(qū),年均雷暴日多達(dá)50多天。宜春市因雷擊造成的建筑物及設(shè)備損壞、人員傷亡等事故屢有發(fā)生,對(duì)工農(nóng)業(yè)生產(chǎn)和人民生活造成嚴(yán)重危害,據(jù)不完全統(tǒng)計(jì),宜春市每年因雷電災(zāi)害造成的經(jīng)濟(jì)損失達(dá)數(shù)千萬(wàn)元。隨著防雷檢測(cè)業(yè)務(wù)開(kāi)放,越來(lái)越多的防雷檢測(cè)企業(yè)進(jìn)入宜春。為了降低和減少我市雷電災(zāi)害風(fēng)險(xiǎn),進(jìn)一步加強(qiáng)和提升防雷檢測(cè)服務(wù)的質(zhì)量非常關(guān)鍵且必要。
計(jì)算機(jī)軟件技術(shù)的普遍應(yīng)用為人們的生活、生產(chǎn)帶來(lái)了很大的便利,氣象行業(yè)也充分采用了先進(jìn)的計(jì)算機(jī)軟件來(lái)改善和提高氣象信息的精準(zhǔn)度和時(shí)效性[1]。采用Web技術(shù),實(shí)現(xiàn)了跨平臺(tái)和不同語(yǔ)言的應(yīng)用集成,氣象服務(wù)智能化勢(shì)在必行[2-5]。
本文設(shè)計(jì)一套宜春市防雷檢測(cè)服務(wù)系統(tǒng),更加高效、科學(xué)地提高防雷檢測(cè)服務(wù)系統(tǒng)的效率和服務(wù)質(zhì)量,其主要優(yōu)勢(shì)體現(xiàn)在以下方面。建立信息化平臺(tái):利用互聯(lián)網(wǎng)、大數(shù)據(jù)、云計(jì)算等信息技術(shù),建立防雷檢測(cè)信息化平臺(tái),實(shí)現(xiàn)檢測(cè)數(shù)據(jù)的實(shí)時(shí)傳輸、存儲(chǔ)和分析,提高檢測(cè)的準(zhǔn)確性和效率;加強(qiáng)合作與交流:加強(qiáng)與相關(guān)機(jī)構(gòu)和企業(yè)的合作與交流,共享資源和技術(shù),提高防雷檢測(cè)服務(wù)系統(tǒng)的整體水平;提供個(gè)性化服務(wù):根據(jù)客戶需求,提供個(gè)性化的檢測(cè)服務(wù)方案,包括檢測(cè)項(xiàng)目、檢測(cè)周期、檢測(cè)方式等,以滿足客戶的多樣化需求。
1? 系統(tǒng)的架構(gòu)
系統(tǒng)采用B/S架構(gòu),即瀏覽器/服務(wù)器架構(gòu),系統(tǒng)總體架構(gòu)設(shè)計(jì)如圖1所示。
圖1? 防雷檢測(cè)服務(wù)系統(tǒng)架構(gòu)
在這種架構(gòu)中,客戶端通過(guò)瀏覽器訪問(wèn)服務(wù)器,服務(wù)器負(fù)責(zé)處理業(yè)務(wù)邏輯和數(shù)據(jù)存儲(chǔ),客戶端只需要負(fù)責(zé)展示數(shù)據(jù)和與用戶交互。采用B/S架構(gòu)的原因主要有以下幾點(diǎn)。易于維護(hù)和升級(jí):該系統(tǒng)建立在小范圍的專用局域網(wǎng)使用,B/S架構(gòu)將業(yè)務(wù)邏輯和數(shù)據(jù)存儲(chǔ)集中在宜春市氣象部門的服務(wù)器端,客戶端只需要負(fù)責(zé)展示數(shù)據(jù)和與用戶交互,因此維護(hù)和升級(jí)時(shí)只需要對(duì)服務(wù)器端進(jìn)行修改即可,客戶端不需要進(jìn)行任何改動(dòng);支持多用戶同時(shí)訪問(wèn):B/S架構(gòu)采用瀏覽器作為客戶端,可以支持多用戶同時(shí)訪問(wèn),并且每個(gè)用戶之間互不干擾;可以跨平臺(tái)使用:B/S架構(gòu)采用瀏覽器作為客戶端,通過(guò)Web將信息進(jìn)行發(fā)布,用戶基于瀏覽器進(jìn)行信息查詢操作,客戶端不需要安裝任何軟件[6-8]。用戶可以在不同的設(shè)備上訪問(wèn)系統(tǒng),實(shí)現(xiàn)跨平臺(tái)使用。
2? 系統(tǒng)的功能需求分析
2.1? 生產(chǎn)企業(yè)區(qū)功能
生產(chǎn)企業(yè)區(qū)功能主要從生產(chǎn)企業(yè)防雷安裝信息出發(fā),采集經(jīng)營(yíng)企業(yè)防雷設(shè)施的照片、文字等信息,并進(jìn)行存儲(chǔ)和整理;對(duì)采集到的信息進(jìn)行上傳和更新,確保系統(tǒng)中的信息準(zhǔn)確、及時(shí)、完整;提供查詢和統(tǒng)計(jì)功能,方便用戶查詢和統(tǒng)計(jì)經(jīng)營(yíng)企業(yè)防雷設(shè)施的相關(guān)信息。它負(fù)責(zé)生產(chǎn)企業(yè)防雷安裝記錄信息,包括添加記錄、查詢記錄、修改記錄和刪除記錄等。
2.2? 檢測(cè)公司區(qū)功能
檢測(cè)公司區(qū)功能主要從檢測(cè)公司防雷檢測(cè)信息模塊出發(fā),及時(shí)動(dòng)態(tài)更新檢測(cè)意見(jiàn)、整改建議、檢測(cè)報(bào)告情況,幫助生產(chǎn)企業(yè)及時(shí)發(fā)現(xiàn)和解決防雷設(shè)施存在的問(wèn)題,確保防雷設(shè)施的安全和可靠。它負(fù)責(zé)檢測(cè)公司防雷檢測(cè)記錄信息,包括添加記錄、查詢記錄、修改記錄和刪除記錄等。
3? 數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)與連接
3.1? 數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)與維護(hù)
數(shù)據(jù)庫(kù)系統(tǒng)在防雷檢測(cè)服務(wù)系統(tǒng)中起到了信息存儲(chǔ)和管理的重要作用。通過(guò)利用桌面數(shù)據(jù)庫(kù),防雷檢測(cè)服務(wù)系統(tǒng)可以創(chuàng)建并維護(hù)一個(gè)數(shù)據(jù)庫(kù),這個(gè)數(shù)據(jù)庫(kù)能夠存儲(chǔ)和管理防雷檢測(cè)業(yè)務(wù)和防雷檢測(cè)信息。數(shù)據(jù)庫(kù)系統(tǒng)的使用,使得防雷檢測(cè)服務(wù)系統(tǒng)能夠方便地進(jìn)行信息的追加、瀏覽、修改和查詢等操作。查詢結(jié)果可以打印或者生成文本文件,這樣的操作方式極大地提高了防雷檢測(cè)業(yè)務(wù)處理的效率和便利性。
本文的數(shù)據(jù)庫(kù)系統(tǒng)采用關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)Oracle,該數(shù)據(jù)庫(kù)系統(tǒng)具有完善的備份功能,可以保證數(shù)據(jù)庫(kù)在誤刪除的情況下被安全恢復(fù),進(jìn)一步保障了數(shù)據(jù)的安全性和完整性。當(dāng)出現(xiàn)斷電、網(wǎng)絡(luò)中斷或主機(jī)損壞等情況造成數(shù)據(jù)缺失時(shí),可通過(guò)手工方法將備份數(shù)據(jù)上傳至本地Oracle數(shù)據(jù)庫(kù)系統(tǒng),保證數(shù)據(jù)的完整性和有效性[9-11]。
本文根據(jù)需求創(chuàng)建了防雷檢測(cè)數(shù)據(jù)庫(kù),設(shè)計(jì)其連接方式為“用戶名+口令”驗(yàn)證方式。數(shù)據(jù)庫(kù)中設(shè)計(jì)5張表格,分別為:用戶表、生產(chǎn)企業(yè)表、檢測(cè)對(duì)象表、檢測(cè)公司表和檢測(cè)報(bào)告表。
在需求分析的基礎(chǔ)上,確定數(shù)據(jù)庫(kù)中的實(shí)體、屬性和關(guān)系。系統(tǒng)的E-R圖如圖2所示。
3.2? 使用PL/SQL連接數(shù)據(jù)庫(kù)
PL/SQL是Oracle數(shù)據(jù)庫(kù)中一種強(qiáng)大的程序設(shè)計(jì)語(yǔ)言,它能夠?qū)崿F(xiàn)對(duì)數(shù)據(jù)進(jìn)行各種操作。在使用PL/SQL時(shí),先配置數(shù)據(jù)庫(kù)連接。
打開(kāi)PL/SQL Developer后,點(diǎn)擊File菜單,然后選擇New -> Database Connection,進(jìn)入數(shù)據(jù)庫(kù)連接的配置界面。填寫(xiě)數(shù)據(jù)庫(kù)的登錄信息,包括數(shù)據(jù)庫(kù)的用戶名和密碼。
完成數(shù)據(jù)庫(kù)連接的配置后,測(cè)試連接。點(diǎn)擊Test按鈕,程序會(huì)自動(dòng)進(jìn)行測(cè)試,連接測(cè)試成功,彈出“Connection Ok”提示框。點(diǎn)擊OK按鈕,保存配置好的數(shù)據(jù)庫(kù)連接信息。
3.3? 使用asp.net連接Oracle數(shù)據(jù)庫(kù)
System.Data.OracleClient.dll是一個(gè)動(dòng)態(tài)鏈接庫(kù)文件,用于在.NET應(yīng)用程序中訪問(wèn)Oracle數(shù)據(jù)庫(kù)。它提供了一組類和接口,使開(kāi)發(fā)人員能夠執(zhí)行諸如連接、查詢、讀取和寫(xiě)入數(shù)據(jù)等操作。通過(guò).NET編輯器實(shí)現(xiàn)系統(tǒng)的開(kāi)發(fā)效率,連接Oracle數(shù)據(jù)庫(kù)實(shí)現(xiàn)管理與存儲(chǔ),實(shí)現(xiàn)程序的簡(jiǎn)易性,實(shí)現(xiàn)數(shù)據(jù)庫(kù)管理的一致性[12-14]。
在ASP.NET中使用System.Data.OracleClient.dll 時(shí),首先,在項(xiàng)目中添加System.Data.OracleClient命名空間,將System.Data.OracleClient.dll引用到項(xiàng)目;其次,使用System.Data.OracleClient命名空間下的類編寫(xiě)代碼,實(shí)現(xiàn)與Oracle數(shù)據(jù)庫(kù)進(jìn)行交互,使用OracleConnection字符串指定要連接的數(shù)據(jù)庫(kù)名稱,建立與數(shù)據(jù)庫(kù)的連接,使用OracleCommand執(zhí)行各種數(shù)據(jù)庫(kù)操作。
4? 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
4.1? 系統(tǒng)功能設(shè)計(jì)
系統(tǒng)功能設(shè)計(jì)主要包括兩個(gè)功能模塊,分別是生產(chǎn)企業(yè)管理模塊、檢測(cè)公司管理模塊,如圖3所示。
各模塊主要功能如下:
1)生產(chǎn)企業(yè)登錄系統(tǒng),將企業(yè)防雷信息上傳系統(tǒng);企業(yè)根據(jù)審核結(jié)果對(duì)防雷裝置進(jìn)行維護(hù),直到審核被通過(guò);企業(yè)查詢并獲取檢測(cè)報(bào)告。
2)檢測(cè)公司登錄系統(tǒng),查看企業(yè)上傳的防雷信息,審核并給出審核結(jié)果;對(duì)審核通過(guò)的企業(yè),檢測(cè)公司出具并上傳檢測(cè)報(bào)告。
4.2? 系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)及界面
4.2.1? 客戶端與數(shù)據(jù)庫(kù)的連接、打開(kāi)和關(guān)閉
Oracle數(shù)據(jù)庫(kù)初始化和操作:
string coonStr = "Data Source=orcl;User Id=system;Password=ycqx;Integrated Security=no";
OracleConnection con = new OracleConnection
(coonStr);
//數(shù)據(jù)庫(kù)初始化
con.Open();
//打開(kāi)數(shù)據(jù)庫(kù)連接
OracleCommand cmd = con.CreateCommand();
cmd.CommandText = "select * from qiye where id='" + username + "';
//查詢數(shù)據(jù)庫(kù)記錄
cmd.CommandText = "update qiye? set leibie='" + leibie + "' where id='" + id+ "';
//更新數(shù)據(jù)庫(kù)記錄
con.Close();
//關(guān)閉數(shù)據(jù)庫(kù)連接
4.2.2? 防雷信息更新與上傳
生產(chǎn)企業(yè)常需更新并上傳防雷信息,因此,平臺(tái)設(shè)計(jì)更新防雷信息和上傳防雷信息的功能,可在表中新增記錄后者按id段更新包含關(guān)鍵詞的所有記錄,以下是實(shí)現(xiàn)代碼:
OracleCommand cmd = con.CreateCommand();
cmd.CommandText = "select * from qiye where id='" + username + "';
OracleDataReader odr = command.ExecuteReader();
if (odr.Read())
{
OracleDataReader odr2 = cmd.ExecuteReader();
If(odr2.Read())
{
cmd.CommandText = "update qiye set comp_name='" + qiye _comp_name_t+ "',addr='" +qiye _addr_t+ "',adm_name=”+qiye _adm_name_t+”,tel=”+qiye _tel_t +”,light_prot=”+qiye _light_prot_t+” where id='**';
OracleDataReader odr2 = cmd.ExecuteReader();
odr2.Dispose();
//更新防雷信息
cmd.CommandText = "insert into qiye values('" +? qiye _comp_name_t+ "','" + qiye _addr_t+ "','" + qiye _adm_name_t+ "','" + qiye _tel_t + "','" + qiye _light_prot_t+ "')";
OracleDataReader odr2 = cmd.ExecuteReader();
odr2.Dispose();
//上傳防雷信息
}}
4.2.3? 檢測(cè)報(bào)告管理與查詢
檢測(cè)公司常需更新并上傳檢測(cè)報(bào)告信息,因此,平臺(tái)設(shè)計(jì)更新檢測(cè)報(bào)告信息和上傳檢測(cè)報(bào)告信息的功能,可在表中新增記錄后者按id段更新包含關(guān)鍵詞的所有記錄,以下是實(shí)現(xiàn)代碼:
OracleCommand cmd = con.CreateCommand();
cmd.CommandText = "select * from comp where id='" + username + "';
OracleDataReader odr = command.ExecuteReader();
if (odr.Read())
{
OracleDataReader odr2 = cmd.ExecuteReader();
If(odr2.Read())
{
comp _report_status_t=”1”;
cmd.CommandText = "insert into comp values('" +? comp _comp_name_t+ "','" + comp _addr_t+ "','" + comp _adm_name_t+ "','" + comp _tel_t + "','" + comp _light_prot_t+ "',”+comp _report_status_t+”)";
OracleDataReader odr2 = cmd.ExecuteReader();
odr2.Dispose();
//上傳檢測(cè)報(bào)告信息
comp _report_status_t=”2”;
cmd.CommandText = "update comp set report_status='" +comp _report_status_t where id='**';
OracleDataReader odr2 = cmd.ExecuteReader();
odr2.Dispose();
//更新檢測(cè)報(bào)告信息
}}
4.2.4? 系統(tǒng)運(yùn)行
系統(tǒng)經(jīng)過(guò)調(diào)試,試運(yùn)行期間功能正常。輸入系統(tǒng)網(wǎng)址,進(jìn)入登錄頁(yè)面如圖4所示。
在登錄頁(yè)面,輸入有效信息進(jìn)入系統(tǒng)主頁(yè)面如圖5所示。
在主頁(yè)面,點(diǎn)擊相應(yīng)的功能區(qū),實(shí)現(xiàn)系統(tǒng)功能。比如,點(diǎn)擊企業(yè)信息,可以查詢相應(yīng)的信息,如圖6所示。
5? 結(jié)? 論
基于新時(shí)期的前提下,信息技術(shù)與氣象服務(wù)都進(jìn)入了新的發(fā)展階段,只有將兩者充分結(jié)合才能促進(jìn)氣象服務(wù)的發(fā)展。隨著人們生活水平的提高,對(duì)于氣象服務(wù)的要求越來(lái)越高,只有充分認(rèn)識(shí)信息技術(shù)的發(fā)展特點(diǎn),以及氣象服務(wù)和防雷檢測(cè)服務(wù)的特點(diǎn),才能推動(dòng)兩者更好結(jié)合,從而提高地方氣象服務(wù)水平和人民生活水平。
參考文獻(xiàn):
[1] 鄭舒天,錢媛,朱黎陽(yáng),等.計(jì)算機(jī)軟件技術(shù)在氣象業(yè)務(wù)中的應(yīng)用分析 [J].科技資訊,2023,21(1):45-48.
[2] 萬(wàn)文慧,陳維華,劉敏.WebGIS在氣象業(yè)務(wù)系統(tǒng)建設(shè)中的應(yīng)用研究 [J].計(jì)算機(jī)與現(xiàn)代化,2013(1):110-111.
[3] 宋一寧,王晉生,閆春旺,等.基于互聯(lián)網(wǎng)的氣象服務(wù)體系建設(shè)研究 [J].農(nóng)業(yè)災(zāi)害研究,2023,13(5):58-60.
[4] 王新秀,崔勁松,于璐,等.氣象業(yè)務(wù)綜合服務(wù)平臺(tái)的設(shè)計(jì)與應(yīng)用 [J].廣東氣象,2022,44(4):77-80.
[5] 邵國(guó)鑫.淺談移動(dòng)互聯(lián)技術(shù)在氣象業(yè)務(wù)運(yùn)維中的應(yīng)用 [J].信息系統(tǒng)工程,2022(5):112-115.
[6] 國(guó)婷婷,宋萍,任廣治,等.基于B/S架構(gòu)的“齊魯風(fēng)云”監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].現(xiàn)代信息科技,2022,6(15):23-26.
[7] 楊怡晨,亢軍賢,白博,等.基于B/S架構(gòu)的科研管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [J].現(xiàn)代信息科技,2022,6(18):40-43.
[8] 檀翔.基于B/S架構(gòu)的分布式測(cè)控技術(shù)研究 [J].現(xiàn)代信息科技,2021,5(5):8-12+18.
[9] 高雅雋,周潔晨.基于B/S架構(gòu)雷電監(jiān)測(cè)業(yè)務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [J].氣象水文海洋儀器,2023,40(2):95-98.
[10] 王新秀,楊黎黎,于璐,等.氣象預(yù)警平臺(tái)多手段發(fā)布的研究與應(yīng)用 [J].計(jì)算機(jī)技術(shù)與發(fā)展,2021,31(3):216-220.
[11] 胡麗麗.氣象歷史數(shù)據(jù)批量遷移技術(shù)研究 [J].科技與創(chuàng)新,2022(6):172-174+177.
[12] 閻麗鳳,周雪松,吳煒,等.災(zāi)害性天氣監(jiān)測(cè)預(yù)警平臺(tái)設(shè)計(jì)與開(kāi)發(fā) [J].氣象科技,2014,42(5):804-810.
[13] 郭燕娜,陸釗,陳亦寒.基于.NET的智能管理平臺(tái)設(shè)計(jì)與應(yīng)用 [J].科技創(chuàng)新與應(yīng)用,2023,13(31):130-133.
[14] 鄭文全,肖鵬,王英.公眾氣象服務(wù)產(chǎn)品平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn) [J].計(jì)算機(jī)時(shí)代,2023(6):157-160+164.
作者簡(jiǎn)介:鄒立武(1986—),男,漢族,江西袁州人,助理工程師,碩士研究生,研究方向:氣象服務(wù)與應(yīng)用氣象、氣象信息化等。