劉仁春 王棵 朱成龍 姜代紅
摘 要:隨著物聯網技術的發展,移動終端應用越來越廣泛。本文采用Java語言、Android技術以及SSH框架開發一種基于物聯網的移動輸液系統,提出總體設計概念,介紹系統體系結構、功能模塊和相關技術,進行系統設計與實現。與傳統輸液模式相比,移動輸液不僅節省了大量的資源,也提高了輸液流程的效率和安全性。
關鍵詞:物聯網;Android;SSH;移動輸液
中圖分類號:TP311.52 文獻標識碼:A
Abstract:With the development of IOT,the application of mobile terminal is more and more widespread.With Java technology,android technology and SSH framework,a new mobile transfusion system based on IOT is developed in this paper.After the introduction of the general design idea,functional module and the structure of system,the system is designed and implemented next.Comparing with the traditional transfusion model,mobile transfusion saves lots of resources and improves efficiency,security of transfusion.
Keywords:IOT;android;SSH;mobile transfusion
1 引言(Introduction)
“互聯網+”[1]以經濟發展新形態應用于醫療、金融、工業等各個社會領域,個人和企業也在不斷開發新的移動醫療產品。雖然移動醫療產業[2]發展存在著諸多優勢和潛力,但目前市場上的移動醫療產品的研究重點均放在醫生資源。市場上醫用類的手機APP,大多數是一些介紹性的APP,僅僅是給使用者提供一些簡單的醫學建議,并不能給患者提供實質性的幫助。輸液時,護士以傳統口頭確認的方式核對病人身份,或者不加以核對,手工書寫方式生成的輸液單和輸液袋標簽,需要用人工核對的方式才能找到相對應的病人,不僅工作效率低,而且存在安全隱患。病人需要換瓶的時候需要呼喊護士進行操作,造成輸液環境的嘈雜以及混亂等問題。同時,醫院輸液室巨大的人流量、數據統計量和價格高昂的硬件設備對醫護人員和醫院也是一種負擔。為此,我們設計了一套使用方便、功能豐富、成本低廉的移動輸液系統[3-6], 實現了對現有的輸液流程的信息化改造。
2 系統體系結構(System structure)
整個系統體系結構共分為四層,如圖1所示,分別為:數據采集層、數據存儲層、數據處理層和數據應用層。
數據采集層利用條碼打印機將患者的掛號信息(病歷號、姓名、年齡、身份證號等)制作成條形碼或二維碼;利用掃描儀讀取條形碼或二維碼信息。患者就醫時,條形碼或二維碼將與患者腕帶、輸液瓶唯一綁定。護士使用PCB等掃描儀對患者腕帶及輸液瓶進行掃描,比對患者信息。
數據存儲層將采集到的患者信息實時保存到護士工作站中,為數據采集層、數據處理層以及數據應用層提供數據支持。同時,數據存儲層中良好的存儲硬件和安全系數較高的數據庫系統保證了患者信息的安全、完整。
數據處理層是系統的核心層,它通過移動呼叫控制主機實時處理來自系統各個部分的請求。無論是患者信息的錄入、條形碼或二維碼的打印,還是手持終端的信息交互、呼叫單元的及時響應等都離不開數據處理層的精確、有效的控制。
數據應用層主要是對數據處理層處理系統請求后的結果進行解釋。患者手持終端和護士手持終端的各種信息的更新顯示、呼叫單元的語音播報等都是數據應用層的作用體現。
3 系統功能模塊(System functional modules)
本系統是基于醫院內部局域網的移動終端系統,共分為三個模塊,如圖2所示,分別為:護士端、患者端和后臺服務器端。護士端負責患者信息核對、藥物信息核對;患者端負責查詢藥物信息、呼叫護士;后臺服務器端負責信息的收集整合,并保存查詢記錄、二維碼等系統數據信息。護士端和患者端均連接到醫院內部的局域網進行通信。為了合理利用網絡資源并考慮各自的通信特點,護士端采用MINA框架,SOCKET連接,保證其始終在線,而患者端則采用HTTP連接,有需要時才會建立通信連接。
3.1 登錄功能
護士和后臺管理員都需要登錄才能進行后續的操作。
3.2 查詢功能
患者可以在患者手持終端上查看自己的輸液信息,包括個人信息和藥物信息;護士可以在護士手持終端上查詢自己的個人信息;管理員則可以進入后臺查詢到所有患者的個人信息和用藥信息、所有護士的信息。
3.3 呼叫功能
患者在輸液過程中遇到問題時,就可以使用呼叫護士功能,護士在收到呼叫信息后可及時處理問題。
3.4 身份核實功能
護士在給患者輸液時,需要核對患者信息與藥物信息是否一致,只有患者腕帶上的二維碼信息與輸液瓶上的條碼信息匹配時才可進行輸液。
3.5 修改藥物狀態信息
護士在給患者輸液時,首先掃描輸液瓶上的二維碼,信息一致后將改變當前輸液的狀態。在默認條件下,輸液狀態處于“等待輸液中”狀態,掃描成功后,輸液狀態則更改為“正在輸液中”。
3.6 后臺信息管理
后臺信息管理能夠完成管理員信息、護士信息的修改和刪除,患者輸液信息、護士工作績效的實時查詢。
4 系統設計(System design)
4.1 設計原則
a.用戶界面友好原則。
b.平臺可移植性及可擴展性強。
c.信息表示和處理過程遵循各種標準化規程。
d.支持Android2.3及以上OS的Android手機。
4.2 數據字典
在數據流轉中,包括所有元素的集合即為數據字典。數據字典一般由數據流、數據元素、數據存儲、數據處理組成。本系統用到的數據元素主要有:
(1)管理員信息表中的元素
管理員序號、賬號、姓名、性別、密碼、電話、地址。
(2)護士信息表中的元素
護士工號、姓名、性別、年齡、職位、居住地址、聯系方式、密碼。
(3)患者信息表中的元素
患者編號、姓名、性別、身份證號、輸液狀態、座位號。
(4)藥物信息表中的元素
輸液袋編號、名稱、患者姓名、開始時間、預計時長、藥物編號、名稱。
4.3 數據庫表
4.4 分配輸液座位號給患者
患者腕帶的輸液信息一旦被護士掃描進系統,系統將自動為患者分配輸液座位號。患者輸液的業務流程圖,如圖3所示。
5 系統實現(System implementation)
系統前端使用Android[7]技術實現病人助手App和護士助手App;系統后端采用Servlet、JSP和第三方框架SSH[8]。整個系統借助Ajax[9]異步刷新技術,通過Socket連接和Http連接實現通信[10]。鑒于本文篇幅有限,以下僅列出身份核實功能的關鍵代碼。
for(int i=0;iString[] str=strings[i].split("