国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向移動(dòng)智慧醫(yī)療的POS終端系統(tǒng)的開發(fā)

2017-06-19 18:50邢鵬程曾獻(xiàn)輝
關(guān)鍵詞:醫(yī)療系統(tǒng)調(diào)用鍵盤

邢鵬程,曾獻(xiàn)輝

(1. 東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 201620; 2. 數(shù)字化紡織服裝技術(shù)教育部工程研究中心,上海 201620)

?

面向移動(dòng)智慧醫(yī)療的POS終端系統(tǒng)的開發(fā)

邢鵬程1,2,曾獻(xiàn)輝1,2

(1. 東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 201620; 2. 數(shù)字化紡織服裝技術(shù)教育部工程研究中心,上海 201620)

針對(duì)就醫(yī)過程中掛號(hào)難、預(yù)約難、支付難等常見的問題,開發(fā)出一套基于POS機(jī)終端上的智慧醫(yī)療系統(tǒng),提供建檔、綁卡、掛號(hào)、預(yù)約、支付等一站式功能與服務(wù)。系統(tǒng)總體是一個(gè)前端基于Html5開發(fā)的、以WebService技術(shù)為核心的跨平臺(tái)的應(yīng)用程序。詳細(xì)介紹了Html5界面通過WebView組件實(shí)現(xiàn)Javascript與Java層通信的方法,并通過此方法實(shí)現(xiàn)了在Html5界面上調(diào)取POS機(jī)的外設(shè)硬件設(shè)備、獲取密碼鍵盤與刷卡信息、訪問遠(yuǎn)程數(shù)據(jù)庫等功能。

智慧醫(yī)療;Android;Html5;WebView;WebService

0 引言

就醫(yī)問題一直困擾著人們。由于患者數(shù)量龐大,醫(yī)療資源有限,醫(yī)院便有了排長(zhǎng)隊(duì)預(yù)約、掛號(hào)、付款的現(xiàn)象,進(jìn)一步引發(fā)醫(yī)院黃牛、天價(jià)掛號(hào)費(fèi)等問題。針對(duì)上述問題,本文提出了一套基于POS機(jī)終端上的智慧醫(yī)療系統(tǒng),為患者提供自助式服務(wù),緩解就醫(yī)壓力。

基于瀏覽器的客戶端應(yīng)用程序不僅能夠提供更好的用戶界面,而且避免了諸多桌面應(yīng)用程序的開發(fā)問題,因此受到越來越多的青睞。本文提出的智慧醫(yī)療系統(tǒng)采用Html5(簡(jiǎn)稱H5)技術(shù)來開發(fā)應(yīng)用前端,通過實(shí)現(xiàn)Html5頁面與Android的跨平臺(tái)通信,完成了前端與系統(tǒng)的融合。此外,系統(tǒng)通過WebService技術(shù)訪問遠(yuǎn)程數(shù)據(jù)庫,在預(yù)約、掛號(hào)、支付等功能發(fā)揮核心作用。

作為智慧醫(yī)療系統(tǒng)的平臺(tái)和載體,本文所述的POS機(jī)是配備彩色大屏幕、插卡刷卡接口和密碼鍵盤等外部設(shè)備的終端,其操作系統(tǒng)是Google公司開發(fā)的Android 4.0[1]。

1 智慧醫(yī)療系統(tǒng)的總體架構(gòu)

系統(tǒng)的總體架構(gòu)基于Android系統(tǒng),利用Html5和Android對(duì)其進(jìn)行跨平臺(tái)開發(fā)。

前端基于Html5技術(shù)開發(fā),用于展示界面和獲取信息;H5界面以Android系統(tǒng)的WebView組件為橋梁,通過Javascript(簡(jiǎn)稱Js)實(shí)現(xiàn)與Java層通信,這一技術(shù)使得在Html5界面上便可調(diào)用POS機(jī)的外部設(shè)備,并可將外部設(shè)備獲取的信息傳輸?shù)角岸?;Java層利用JSON標(biāo)準(zhǔn)封裝,通過HTTP協(xié)議傳輸來訪問遠(yuǎn)程數(shù)據(jù)庫。整體架構(gòu)如圖1所示。

圖1 系統(tǒng)架構(gòu)圖

Android系統(tǒng)以Java為編程語言,使接口功能化[2]。WebView組件本質(zhì)是一款高性能的Webkit內(nèi)核瀏覽器,可以加載網(wǎng)頁文件,并且能與Js進(jìn)行交互。因此WebView組件便成為Android系統(tǒng)呈現(xiàn)H5頁面的窗口。

2 智慧醫(yī)療系統(tǒng)的前端開發(fā)

對(duì)于應(yīng)用程序來說,美觀的界面和人性化的功能可以大大提升用戶的體驗(yàn),提高人機(jī)的交互性。Html5是新一代的網(wǎng)站開發(fā)標(biāo)準(zhǔn),CSS作為最優(yōu)秀的前端表現(xiàn)設(shè)計(jì)語言[3],可以寫出豐富的功能和出色的效果,Js能夠增加動(dòng)態(tài)效果和實(shí)現(xiàn)交互[4]。因此,本文基于Html5+CSS+Js的前端設(shè)計(jì)技術(shù),來開發(fā)智慧醫(yī)療系統(tǒng)的前端。

系統(tǒng)功能豐富,主體分為5個(gè)主要功能:建檔、綁卡、掛號(hào)、預(yù)約和支付,如圖2所示。

圖2 前端呈現(xiàn)圖

其中,掛號(hào)和預(yù)約功能可以在線查看未來8天的各專家門診的預(yù)約情況,并能夠在線預(yù)約醫(yī)生和支付相關(guān)費(fèi)用。此功能可通過如下方法實(shí)現(xiàn):日期導(dǎo)航欄中的單個(gè)日期用

  • 標(biāo)簽來定義,其中,
  • 標(biāo)簽有兩種CSS樣式,一種是未點(diǎn)擊樣式,另一種是已點(diǎn)擊樣式(此樣式的名稱定義為clickstyle)。定義兩種CSS樣式的目的是在點(diǎn)擊某一天查看此日專家門診預(yù)約情況的同時(shí),改變此欄的顏色以突出擊中效果,如圖3所示。

    圖3 導(dǎo)航欄效果圖

    為實(shí)現(xiàn)這種改變CSS樣式的動(dòng)態(tài)效果,可定義一個(gè)Js函數(shù),監(jiān)聽onclick方法來改變其CSS樣式。監(jiān)聽方法如下:

    var oLis=document.getElementsByTagName("li");

    var i,j;

    var length=oLis.length;

    for(i=0;i

    oLis[i].onclick=function(){

    for(j=0;j

    oLis[j].className="";

    }

    //更改className為clickstyle

    this.className+="clickstyle";

    }

    }

    3 Js與Java層的通信

    實(shí)現(xiàn)Js與Java層的通信是必要的,調(diào)用硬件設(shè)備、讀取卡片信息、訪問遠(yuǎn)程數(shù)據(jù)庫等功能都是基于H5與Android系統(tǒng)的雙向交互。

    3.1 WebView組件

    WebView組件是H5與Android交互的橋梁,在Js與Java層之間的通信中有重要作用。

    在MainActivity中實(shí)例化WebView組件的方法有兩種[1]:第一種是在布局文件activity_main.xml中聲明一個(gè)WebView;第二種是直接在MainActivity中實(shí)例一個(gè)WebView對(duì)象:

    WebView webView=new WebView (this);

    3.2 addJavascriptInterface方法

    WebView的addJavascriptInterface接口可以向Web頁面注入Java對(duì)象,同時(shí)Javascript腳本可直接引用該對(duì)象并調(diào)用該對(duì)象的方法[5]。因此,此方法是允許頁面Javascript腳本控制Android應(yīng)用程序的關(guān)鍵。

    值得注意的是,對(duì)于API低于17的Android版本,攻擊者可以利用Javascript反射機(jī)制任意操縱應(yīng)用程序。因此為了提高安全性,在高版本的Android系統(tǒng)中,必須在Java對(duì)象方法中聲明@JavascriptInterace注解,才能被Web頁面調(diào)用[6]。

    4 H5對(duì)外接設(shè)備的調(diào)用

    4.1 調(diào)用密碼鍵盤

    在支付過程中,需要調(diào)用外接的安全密碼鍵盤。在點(diǎn)擊H5頁面的輸入密碼按鈕之后,將觸發(fā)按鈕的onclick事件,并對(duì)應(yīng)地執(zhí)行啟動(dòng)Java層接口的Js腳本。

    Java層通過WebView的addJavascriptInterface接口來實(shí)例一個(gè)WebHost對(duì)象,代碼如下:

    webview.addJavascriptInterface(new WebHost( context,webview), "js");

    WebHost是一個(gè)自定義的接口,它的功能是調(diào)用外設(shè)鍵盤方法,在成功啟動(dòng)鍵盤并完成輸入之后,將結(jié)果通過Js反饋到H5頁面中。

    pinpadDevice是SDK中調(diào)用外接鍵盤的方法,可通過設(shè)備管理器POSTerminal來獲得設(shè)備對(duì)象,代碼如下:

    pinpadDevice = (PINPadDevice) POSTerminal.getInstance

    (context).getDevice("cloudpos.device.pinpad");

    其中,"cloudpos.device.pinpad"是標(biāo)識(shí)PIN輸入設(shè)備的字符串,由具體的實(shí)現(xiàn)定義。設(shè)備管理器POSTerminal 是獲得每個(gè)設(shè)備的入口,獲取該對(duì)象不能使用new方法,可以通過getInstance方法獲得。

    成功調(diào)用密碼鍵盤,并在輸入密碼和確認(rèn)之后,執(zhí)行WebView的loadUrl方法回調(diào)Js腳本,反饋給H5界面:

    webview1.loadUrl("javascript:calljs()");

    上述內(nèi)容通過調(diào)用密碼鍵盤的實(shí)例介紹了如何利用WebView來成功實(shí)現(xiàn)Js與Java層的相互通信。

    4.2 調(diào)用銀行卡刷卡接口

    銀行磁條卡一般有3條磁條軌道,3條磁道在卡上的位置在國際標(biāo)準(zhǔn)ISO007811/5中被嚴(yán)格規(guī)定,每條磁道都記錄磁卡信息,通常第二、第三磁道用以記錄卡號(hào)等信息。在SDK中,刷卡接口是msrDevice,此接口可以讀取和處理磁道信息,并返回銀行卡號(hào)字符串。

    調(diào)用銀行卡刷卡接口的方法與4.1節(jié)描述大致相同,用WebView的方法將解析得到的卡號(hào)cardNO通過Js傳輸?shù)紿5頁面,代碼如下:

    public int onConfirmCardNo(String cardNO) {

    pubilc str =“”;

    str += cardNO;

    webview1.loadUrl("javascript:cidjs('"+str+"')");

    return EMVConstants.App_Confirm_OK;

    }

    經(jīng)測(cè)試,在H5頁面上成功調(diào)用刷卡接口,在刷卡之后,設(shè)備成功讀取到卡號(hào)并將卡號(hào)返回到H5頁面上來。結(jié)果如圖4、圖5所示。

    圖4 Android monitor的debug結(jié)果顯示成功讀取卡號(hào)

    圖5 成功將卡號(hào)返回給H5并顯示出來

    5 WebService實(shí)現(xiàn)訪問遠(yuǎn)程數(shù)據(jù)庫

    智慧醫(yī)療系統(tǒng)不是一個(gè)本地的服務(wù)應(yīng)用,而是一個(gè)基于WebService的不斷進(jìn)行數(shù)據(jù)交流的系統(tǒng)。在用戶進(jìn)行實(shí)時(shí)查詢、預(yù)約專家、在線掛號(hào)、費(fèi)用支付等過程中,需要系統(tǒng)不斷地訪問醫(yī)院終端數(shù)據(jù)庫;在用戶進(jìn)行快捷支付、插卡刷卡、輸入密碼等過程中,需要系統(tǒng)不斷地訪問銀行終端數(shù)據(jù)庫。因此建立高效、安全的遠(yuǎn)程數(shù)據(jù)庫訪問機(jī)制[7]是必要的。

    WebService是一個(gè)用于支持網(wǎng)絡(luò)間不同機(jī)器互操作的軟件系統(tǒng),它的優(yōu)勢(shì)是不受操作平臺(tái)和開發(fā)語言的種類的束縛,通過它能夠像調(diào)用本地?cái)?shù)據(jù)一樣去調(diào)用遠(yuǎn)程服務(wù)器。

    遠(yuǎn)程數(shù)據(jù)庫存儲(chǔ)醫(yī)療、支付等相關(guān)的數(shù)據(jù)。當(dāng)POS終端系統(tǒng)的Java層向服務(wù)器發(fā)出請(qǐng)求之后,服務(wù)器會(huì)相應(yīng)對(duì)遠(yuǎn)程數(shù)據(jù)庫發(fā)起查詢、讀取,并將獲得的數(shù)據(jù)信息用JSON標(biāo)準(zhǔn)進(jìn)行封裝,并傳輸給POS終端,如圖6所示。整個(gè)傳輸過程都是基于HTTP協(xié)議來完成的[8]。

    圖6 WebService訪問數(shù)據(jù)庫架構(gòu)圖

    其中,JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,可以將Javascript對(duì)象中表示的一組數(shù)據(jù)轉(zhuǎn)換為字符串,輕松地在服務(wù)器之間進(jìn)行傳遞。

    Android平臺(tái)調(diào)用WebService需要依賴第三方類庫ksoap2[8],它是一個(gè)SOAP WebService客戶端開發(fā)包,用于獲取服務(wù)器端WebServce調(diào)用。在通過調(diào)用WebService來訪問遠(yuǎn)程數(shù)據(jù)庫時(shí),需要生成SOAP請(qǐng)求信息,并指定SOAP的版本 ,代碼如下:

    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);

    由于JSON是通過文本封裝數(shù)據(jù)的,當(dāng)記錄條數(shù)比較多時(shí),數(shù)據(jù)量非常大,考慮到POS終端的帶寬相對(duì)比較低,上網(wǎng)速度不快,因此必須通過壓縮來減少傳輸?shù)臄?shù)據(jù)量,通過在服務(wù)器端對(duì)JSON數(shù)據(jù)進(jìn)行壓縮,在POS終端對(duì)其進(jìn)行解壓,可提高網(wǎng)絡(luò)傳輸效率及訪問數(shù)據(jù)庫的速度,提高用戶體驗(yàn)效果。

    同時(shí),考慮到智慧醫(yī)療系統(tǒng)在實(shí)際應(yīng)用后,不同的用戶所查詢的大量數(shù)據(jù)可能是重復(fù)的,例如專家信息介紹、今日出診醫(yī)生名單等,而且就醫(yī)高峰期的用戶量很大,因此,可以把頻繁訪問的數(shù)據(jù)庫內(nèi)容緩存到Wed應(yīng)用服務(wù)器中。這樣不同的客戶端訪問相同的數(shù)據(jù)時(shí),不需要每次都到數(shù)據(jù)庫中讀取,大大減少了數(shù)據(jù)庫的訪問操作次數(shù),提高了數(shù)據(jù)庫的訪問效率。

    6 結(jié)束語

    本文介紹了在POS終端上的智慧醫(yī)療系統(tǒng)的開發(fā),詳細(xì)介紹了Android操作系統(tǒng)上的Html5頁面如何通過Javascript與java層通信的方法,實(shí)現(xiàn)跨平臺(tái)的應(yīng)用開發(fā),以及如何通過WebService實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)庫的訪問。

    使用Html5開發(fā)APP的優(yōu)勢(shì)明顯,并且未來會(huì)成為一種趨勢(shì),因此實(shí)現(xiàn)Js與Java的交互是必要的。同時(shí),應(yīng)用的開發(fā)也需要WebService實(shí)現(xiàn)訪問遠(yuǎn)程數(shù)據(jù)庫。但此方法的安全性還有待提高,因此還需進(jìn)一步研究。

    [1] 王運(yùn)生,聶芬.基于WebView組件的Android平臺(tái)網(wǎng)頁封裝程序設(shè)計(jì)[J].智能計(jì)算機(jī)與應(yīng)用,2013,6(3):21-22.

    [2] 百度百科.Android開發(fā)[EB/OL].[2016-10-26].http://baike.baidu.com/link?url=cPSFhcxCLnWYyVY_n-n5HCaDdvGzlOPrp0saz9VUh-aOjDbN-pUfhqw7e6KV6YbRJuEw-jeLC2M8HOci4-XzH7TfB-1JqHUwajxJMSDwJ1lZYgNPkkAuZLIM ZGxlYVILG.

    [3] 樂嘉錦.HTML5跨平臺(tái)技術(shù)在視頻點(diǎn)播系統(tǒng)中的研究與應(yīng)用[J].計(jì)算機(jī)應(yīng)用技術(shù),2013,6(1):12-13.

    [4] 任柯.HTML5構(gòu)建Android少數(shù)民族文獻(xiàn)數(shù)字化平臺(tái)研究[J].西南民族大學(xué)學(xué)報(bào),2013,39(5):13-15.

    [5] 明日科技.Android從入門到精通[M]. 北京:清華大學(xué)出版社, 2012.

    [6] 徐偉.基于Android平臺(tái)的應(yīng)用程序安全保護(hù)研究與應(yīng)用[D].成都:電子科技大學(xué),2015.

    [7] 權(quán)重民,彭昕昀.利用JSON實(shí)現(xiàn)Android高效、安全訪問遠(yuǎn)程數(shù)據(jù)庫的一種方式[J].韶關(guān)學(xué)院學(xué)報(bào),2011,32(12):16-20.

    [8] 黃淑靜,楊紅梅.利用JSON+WebService實(shí)現(xiàn)Android訪問遠(yuǎn)程數(shù)據(jù)庫[J].科技信息,2013(9):98-99,123.

    The development of mobile intelligent medical system in POS

    Xing Pengcheng1,2, Zeng Xianhui1,2

    (1. School of Information Science and Technology, Donghua University, Shanghai 201620, China;2. Engineering Research Center of Digitized Textile & Fashion Technology, Ministry of Education, Shanghai 201620, China)

    For troubles in the process of registration, reservation and payment in hospital, a wisdom health system based on POS terminal is developed, and it provides many one-stop functions such as documentation, tie card,registration, reservation, and payment. The front-end of this health system is based on the development of the HTML 5, and WebService technology is the core of cross-platform application. This paper introduces the method that how the HTML5 interface achieves the communication between Javascript and Java layer through the WebView componens, and through this method to implement POS peripherals hardware, information obtained of password keyboard and the credit card, access to remote databases and other functions on the interface of HTML5.

    wisdom health system; Android; Html5; WebView; WebService

    TP311

    A

    10.19358/j.issn.1674- 7720.2017.11.029

    邢鵬程,曾獻(xiàn)輝.面向移動(dòng)智慧醫(yī)療的POS終端系統(tǒng)的開發(fā)[J].微型機(jī)與應(yīng)用,2017,36(11):98-101.

    2016-12-12)

    邢鵬程(1993-),通信作者,男,碩士研究生,主要研究方向:數(shù)據(jù)庫應(yīng)用技術(shù)、大數(shù)據(jù)分析。E-mail:491472180@qq.com。

    曾獻(xiàn)輝(1974-),男,博士,副教授,主要研究方向:大數(shù)據(jù)挖掘、智能優(yōu)化問題、決策與分析。

    猜你喜歡
    醫(yī)療系統(tǒng)調(diào)用鍵盤
    你知道手機(jī)撥號(hào)鍵盤上為什么要有*和#嗎?
    佳能醫(yī)療系統(tǒng)(中國)有限公司
    佳能醫(yī)療系統(tǒng)(中國)有限公司
    鍵盤貓
    核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
    Cлово месяца
    ikbc R300機(jī)械鍵盤
    基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
    黑客頻繁入侵醫(yī)療系統(tǒng) 警惕!醫(yī)療健康遭遇安全威脅
    醫(yī)療系統(tǒng)內(nèi)部審計(jì)現(xiàn)狀與對(duì)策
  • 共和县| 曲阜市| 界首市| 绿春县| 洱源县| 叙永县| 胶南市| 溧水县| 鲁甸县| 开原市| 南华县| 屏东市| 武城县| 班戈县| 铅山县| 江安县| 秦皇岛市| 东兴市| 邻水| 岐山县| 藁城市| 静宁县| 温泉县| 三亚市| 东台市| 白城市| 武威市| 延长县| 永德县| 讷河市| 伊吾县| 徐闻县| 元朗区| 仙游县| 开江县| 曲周县| 肇州县| 肥城市| 宿迁市| 昌乐县| 长丰县|