唐雅娜
摘 要:基于軟件工程的系統實施方法,采取模塊化、螺旋式開發模式,綜合應用軟件技術、數據庫技術、WebService、XML 數據交換、數據流、業務流、安全追溯等信息技術的理論與方法,設計實現了基于JSP的兒童免疫規劃監測預警及疫苗追溯服務平臺,該平臺基于B/S 架構,采用MVC 模式,在MyEclipse 、SQL Server 2008等開發工具中設計實現。
關鍵詞:追溯 免疫規劃 監測預警 JSP
中圖分類號:R126 文獻標識碼:A 文章編號:1672-3791(2015)06(b)-0050-03
根據《疫苗儲存和運輸管理規范》第十條:疾病預防控制機構、接種單位應定期對儲存的疫苗進行檢查并記錄,發現質量異常的疫苗,應當立即停止供應、分發和接種,并及時向所在地的縣級衛生行政部門和食品藥品監督管理部門報告,不得自行處理[1]。因此,設計與實現具有“多地區異常反應監測預警”和“疫苗安全追溯”功能的兒童免疫規劃監測預警及疫苗追溯服務平臺,一旦發現質量異常的疫苗時,各級衛生行政管理部門和食品藥品監督管理部門將能快速獲取同批次的已接種疫苗的接種兒童信息,以及同批次疫苗再各級接種點的庫存信息,對提高政府對免疫規劃的科學決策和應急指揮能力具有重要的現實意義。
1 功能需求
平臺功能模塊如圖1所示,平臺包括六個子系統:出入庫子系統、財務子系統、接種子系統、疫苗流通全程追溯子系統、疫苗流通監控預警子系統、疫苗流通監管子系統。詳細的功能需求及分析請參閱作者的另一篇論文《兒童免疫規劃監測預警及疫苗追溯服務平臺研究》,此處不再贅述。
2 系統設計
分析問題領域的過程也就是RUP六個核心過程工作流中商業建模工作流、需求工作流的完成過程,它在整個軟件開發的過程中不是一蹴而就的,而是在每一次迭代中以不同的重點和強度重復,不斷的完善。分析問題領域的目的就是要將需要解決的問題系統化、規范化,在開發者和用戶之間達成一種共識,建立所要開發系統的用例模型[2]。
因篇幅關系,疫苗信息管理用例圖、兒童信息管理用例圖、部門信息管理用例圖、用戶管理用例圖、疫苗廠商管理用例圖、權限管理用例圖、審批管理用例圖、接種管理用例圖、追溯查詢用例圖、投訴處理用例圖、財務管理用例圖、管理員用例圖、接種用例圖、追溯查詢用例圖此處不再贅述,只給出較復雜的入庫計劃管理用例圖、出庫計劃管理用例圖。
2.1 入庫計劃管理
如圖2所示,入庫計劃管理包括入庫計劃的新增、查詢、制定入庫計劃名、下級入庫計劃管理,入庫計劃的狀態有“待填報”、“本級-提交/上級-待審批”、“上級駁回”、“上級提交”。
入庫計劃是涉及多層級部門的活動,需要頂級部門首先制定統一的入庫計劃名及下級的填報時間范圍,制定好入庫計劃名后,下級部門能在指定的時間范圍內通過下拉框進行選擇填報,屬于頂級部門的功能。制定入庫計劃名包括查詢和新增,對查詢出的入庫計劃名且沒有填報記錄的可以進行修改和刪除。
入庫計劃新增時會進行新增時間范圍的校驗,只有在允許的時間范圍內且有入庫計劃名時才能新增。新增時可以讀取下級部門已經確認提交的入庫計劃并進行匯總;新增信息確認后可以提交至上級進行審批,提交審批時入庫計劃由待填報狀態更改為“本級提交”,上級部門查看時的狀態為“待審批”。
可以對入庫計劃的查詢結果進行打印、導出、修改和刪除。在修改和刪除時會進行狀態校驗,只有“待填報”狀態才能進行刪除,“待填報”狀態和“上級駁回”狀態可以進行入庫計劃的修改。
下級入庫計劃管理包括入庫計劃填報時間范圍的設定、下級入庫計劃查詢、審核。對下級入庫計劃的查詢結果可以進行導出、打印、修訂,但只能修訂“待審批”狀態的下級入庫計劃。對填報信息審核通過的可以進行審核確認,狀態更改為“本級提交”,下級部門查看的狀態顯示為“上級提交”。對下級提交的入庫計劃不符的可以進行審核取消,審核取消后狀態修改為“待審批”,下級查看的狀態為“待審批”,此狀態下可以進行對下級入庫計劃的修訂。也可對下級提交的入庫計劃不符要求的進行駁回申請,狀態修改為“駁回”,下級部門查看的狀態為“上級駁回”。只有狀態為“待審核”的下級計劃才能進行駁回申請和審核取消。
入庫計劃的審批、提交、狀態查看不能越級進行,只能提交到自己的直接上級,也只能駁回自己的直接下級。同一入庫計劃,在兩級部門用戶顯示的狀態文字不同,如上級顯示“駁回”,下級顯示“上級駁回”;下級顯示“本級提交”,上級顯示“待審批”。
2.2 出庫計劃管理
如圖3所示,出庫計劃管理包括出庫計劃和調劑計劃的管理,是把庫存產品對下級的出庫(往往依據下級申請的入庫計劃)和對同級的調劑,但對下級的出庫計劃的名目和數量同最初的入庫計劃不一定完全相同,可能出現實際出庫計劃的名目、數量少于入庫計劃的情況。一份出庫計劃的狀態包括“待確認”、“出庫確認”、“入庫確認”。
出庫計劃管理包括查詢、新增、出庫計劃的確認、入庫確認。可以對查詢出的出庫計劃進行打印、導出、修改、刪除,只能修改或刪除狀態是“待確認”的出庫計劃。出庫計劃新增時會進行庫存校驗和上級實際核準入庫數量的校驗(應小于等于),新增的出庫計劃狀態是“待確認”。“待確認”狀態的出庫計劃在實際出庫時,更改狀態為“出庫確認”。下級部門在出庫計劃的物品實際入庫時,更改該出庫計劃狀態為“入庫確認”。
調劑計劃管理包括查詢、新增、調劑計劃的出庫確認、入庫確認。可以對查詢出的調劑計劃進行打印、導出、修改、刪除,只能修改或刪除狀態是“待確認”的調劑計劃。調劑計劃新增時會進行庫存校驗(應小于等于),新增的調劑計劃狀態是“待確認”。 “待確認”狀態的調劑計劃在實際出庫時,更改狀態為“出庫確認”。同級部門在調劑計劃的物品實際入庫時,更改該調劑計劃狀態為“入庫確認”。
3 系統類圖設計
設計類圖說明了軟件類的規格說明和應用程序接口,設計類圖所能表達的典型
信息包括:類、關聯和屬性、接口及其操作和常量、方法、屬性類型信息、導航、類等元素之間的依賴關系[3]。因篇幅關系,只給出出入庫子系統模塊類圖,如圖4、圖5所示。
4 實現技術
4.1 JSP
JSP全名為Java Server Pages,中文名叫java服務器頁面,其根本是一個簡化的Servlet設計,它是由Sun Microsystems公司倡導、許多公司參與一起建立的一種動態網頁技術標準[4]。JSP網頁提供了一個接口,來讓整個服務器端的Java庫單元為HTTP 應用程序服務[5]。
4.2 MyEclipse
MyEclipse Enterprise Workbench(MyEclipse企業級工作平臺),簡稱MyEclipse,是對EclipseIDE的擴展。MyEclipse是一個Eclipse支持下的J2EE開發插件,功能十分強大,具備完美的編碼、調試、測試和發布功能并完整支持Structs、Spring和Hibernate等框架技術。MyEclipse插件基本上涵蓋了眾多Eclipse插件的功能,能滿足我們的各種應用需求,基本上是安裝了它就無須其它插件。甚至可以這樣理解,MyEclipse就是一個比較完備的、功能十分強大的開發環境[6]。
4.3 SQL Server 2008
SQL Server 2008是美國微軟公司在數據管理系統上最流行的關系型數據庫,在數據處理方面具有良好的性能,成為世界上三大數據庫管理系統之一。SQL Server 2008作為最新的SQL Server版本,是至今為止的最強大和最全面的SQL Serve版本。SQL Server 2008新增和更改內容包括DATE和TIME數據類型、hierarchyID數據類型、MERGE命令和多行插入以及遞歸查詢等[7]。
5 系統實現
主界面采用傳統的頁面布局,如圖6所示,為左右兩個子部分,左子部分是菜單欄,包含系統設置,基本信息,疫苗采購,疫苗下撥,庫存管理,疫苗接種,疫苗追溯七大模塊的導航鏈接;右子部分是顯示的主體信息,默認是待辦事務,包含該用戶待處理的事務快照。
6 項目的特色和創新之處
6.1 疫苗鏈路雙向追溯及對比分析
(1)兒童個案免疫疫苗到疫苗生產企業的追溯。能做到在查詢兒童免疫個案時,可以對其使用的免疫疫苗進行反向追溯,追溯信息包括該疫苗從生產企業到最終實施接種之間的所有出庫、運輸、倉儲、保管的相關責任人、日期、時間等數據。通過該功能,當疫苗免疫出現異常反應,尤其是當發生群體性異常反應時,可以方便快捷的發現問題,找到原因,進行從疫苗出廠到最終使用過程中的所有環節的跟蹤和排查,利于領導進行決策和分析。
(2)疫苗到兒童免疫個案的追溯。給出某疫苗批號,能追溯給出該批次疫苗的所有出庫、運輸、入庫、倉儲、保管、注射免疫、免疫兒童的信息及日期時間等數據。如某一批次的疫苗發生問題,可以通過系統立刻查詢出該批次疫苗已經分散運輸到哪些接種單位,有哪些兒童,在什么時間進行了該批次疫苗的接種,便于立刻進行補救和領導決策。
(3)可以進行疫苗流通鏈路的對比分析功能。如D1接種點發生群體接種問題,通過系統可以查詢出該批次疫苗的運輸線路為A->B1-C1->D1,而同批次疫苗在D2處的接種沒有發生問題,該批次疫苗的運輸線路為A->B1-C2->D2。由此可以初步判斷疫苗極有可能在C1或D1環節發生了問題。可以利于快速進行反應和找到問題原因的和所在。如果確認是C1環節的問題,系統還可以查詢出在C1處同該批次疫苗一起運輸存儲的其它疫苗,并可以列出這些疫苗現在已經流通到哪里,有哪些已經使用,便于及時進行追回和處理。
6.2 智能分析與預警
系統能預先設置異常反應、庫存、有效期預警的閾值,當達到閾值時,可以通過網絡、短信等方式通知相關負責人,便于管理部門快速作出反應和決策。
6.3 二類疫苗統一規劃、分配、管理和監督
系統對二類疫苗設置為由省市縣一級的管理部門進行統一規劃、分配和管理,包括面向社會的免疫價格。接種單位沒有疫苗的入庫權限,而只有使用權限。同時兒童家長可以通過系統查詢出兒童所接種的疫苗名稱、企業、批號和價格,如果發現和實際接種不符,可以通過系統進行投訴和監督。系統通過統一的二類疫苗入庫系統、庫存系統、兒童家長監督投訴系統來避免和杜絕個別接種單位私自進苗的現象,保證了接種疫苗的統一規劃和選擇,確保接種疫苗的質量和安全。同時也減少了個別接種單位因利益驅使而損害免疫接種系統整體社會形象和地位的情況。
7 結語
充分應用現有信息技術,是提高科學管理水平、衛生服務質量和效率的有力手段,是免疫規劃工作發展的必然要求。通過建立兒童免疫規劃監測預警及疫苗追溯服務平臺,可以為新生兒童建立預防接種個案信息,動態收集免疫預防機構和人員基本信息、計劃免疫設備和疫苗信息資料,以個案方式實施計劃免疫疾病監測等,為政府、衛生行政部門等決策部門制定免疫規劃政策、規劃、財政投入、設備更新等提供依據;促使接種率和接種質量不斷提高,促進計劃免疫資料的規范化管理,提高了建卡、建證率,降低發病率;接種服務單位能更準確獲得疫苗管理、疾病監測、接種實施、服務對象的基本情況等具體信息,指導預防接種工作的實施,提高預防接種服務工作的質量;社會(被服務對象)能夠得到兒童接種完成情況,了解預防接種服務的內容,享有聯網異地接種,多種方式查詢/咨詢服務,從而更好地保障兒童身體健康。
參考文獻
[1] 衛疾控發.疫苗儲存和運輸管理規范[DB/OL].http://www.jincao.com/fa/10/law10.137.htm.2006,3.
[2] 徐術平.基于UML建模的生產過程信息可追溯系統的分析與設計[D].重慶:重慶大學,2009.
[3] 程惠勤.基于UML的學生選課系統的分析與設計[J].福建電腦,2014(2):108-110,153.
[4] JSP.百度百科[DB/OL].http://baike.baidu.com/link?url=GLlJT_UP5r02Oxr8WZTefGWtWjBoCkNSJkfC0g68m5_9fB6UlADm-H4kPNth8q73A61TcZHVkBs2EV7bHB0luno-aMNHthKfXGZUQOmgoLW,2015,3.
[5] 聞永萍.基于JSP的電子商務網站開發[J].信息安全與技術,2011(11):92-94,103.
[6] 曹大有.基于MyEclipse的Hibernate持久層框架的開發過程[J].計算機系統應用,2007(12):101-104
[7] 苗鳳華.SQLServer2008數據管理系統的優勢研究[J].長春師范大學學報,2014(6):76-77,81.