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

?

基于微信公眾平臺(tái)的醫(yī)院預(yù)約掛號(hào)服務(wù)系統(tǒng)實(shí)現(xiàn)

2015-12-25 12:13:09于浩佳陳波
軟件 2015年10期
關(guān)鍵詞:微信平臺(tái)

于浩佳++陳波

摘要:為方便患者掛號(hào)就醫(yī)并緩解醫(yī)院排隊(duì)掛號(hào)的擁擠問題,設(shè)計(jì)并實(shí)現(xiàn)了基于微信平臺(tái)的醫(yī)院信息動(dòng)態(tài)查詢與掛號(hào)系統(tǒng)。介紹了基于微信平臺(tái)的網(wǎng)頁開發(fā),基于PHP實(shí)現(xiàn)的動(dòng)態(tài)網(wǎng)頁生成和網(wǎng)頁信息抓取和以Web代理為核心的網(wǎng)頁移植技術(shù)。建立了一個(gè)微信公眾號(hào)開放給患者進(jìn)行方便的查詢和掛號(hào)等操作,同時(shí)考慮到移動(dòng)端設(shè)備的多樣性將系統(tǒng)設(shè)計(jì)成響應(yīng)式布局。該服務(wù)系統(tǒng)具有靈活性高、適應(yīng)性強(qiáng)、時(shí)效性強(qiáng)等特點(diǎn)。

關(guān)鍵詞:微信平臺(tái);Web代理;掛號(hào)預(yù)約;動(dòng)態(tài)網(wǎng)頁

中圖分類號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A DOI: 10.3969/j.issn.1003-6970.2015.10.025

引言

手機(jī)即時(shí)通訊應(yīng)用“微信”給我們帶來了一種全新的“微生活”方式。2012年8月推出的微信公眾平臺(tái),由于提供多媒體信息大規(guī)模推送、定向推送(可按性別、地區(qū)、分組等指標(biāo)定向推送)、一對(duì)一互動(dòng)、多樣化開發(fā)和智能回復(fù)等功能,成為繼微博之后又一重要的運(yùn)營平臺(tái)。當(dāng)前,微信公眾平臺(tái)有3萬認(rèn)證賬號(hào),其中超過七成的賬號(hào)為企業(yè)賬號(hào),主要服務(wù)于媒體、營銷、客服、公共服務(wù)等應(yīng)用。目前國內(nèi)也有許多學(xué)者和企業(yè)在進(jìn)行微信方面的研究和開發(fā)。

隨著移動(dòng)設(shè)備的普及,近年來移動(dòng)醫(yī)療產(chǎn)業(yè)也日漸發(fā)達(dá),市場規(guī)模已從2012年的不到2億元發(fā)展到了如今的28億元,甚至有望在2017年突破125億元,移動(dòng)醫(yī)療具有廣闊的發(fā)展前景?;谖⑿艑?shí)現(xiàn)移動(dòng)醫(yī)療服務(wù),能夠拓展微信平臺(tái)應(yīng)用領(lǐng)域,使其服務(wù)大眾、便利大眾。

南京12320衛(wèi)生網(wǎng)2012年開始提供網(wǎng)上在線預(yù)約掛號(hào)服務(wù),本文工作是基于微信官方為公眾號(hào)提供的相關(guān)接口和服務(wù),設(shè)計(jì)與開發(fā)面向移動(dòng)端用戶的醫(yī)院預(yù)約掛號(hào)系統(tǒng),使用戶可以在移動(dòng)端通過關(guān)注微信號(hào)就能便捷的實(shí)現(xiàn)預(yù)約掛號(hào)等操作,并通過微信公眾號(hào)的群發(fā)功能為用戶推送最新的可預(yù)約專家信息以及第一手健康咨詢。

接下來本文首先介紹預(yù)約掛號(hào)服務(wù)與功能設(shè)計(jì),然后再詳細(xì)介紹各個(gè)功能模塊實(shí)現(xiàn)的技術(shù)細(xì)節(jié)。

1 系統(tǒng)設(shè)計(jì)

我們首先進(jìn)行了調(diào)研分析,確定用戶掛號(hào)流程。南京衛(wèi)生網(wǎng)站www.nj12320.org提供的掛號(hào)方式比較靈活,用戶可以從網(wǎng)站上醫(yī)院、科室、醫(yī)生等任一瀏覽位置開始選擇掛號(hào)。但這種方式并不便捷,而且也不符合移動(dòng)端用戶的操作習(xí)慣,因此我們決定采用一種適用于移動(dòng)端的固定掛號(hào)流程:讓用戶首先選擇醫(yī)院,然后選擇該醫(yī)院的具體科室,再選擇醫(yī)生,最后再選擇看病具體時(shí)間,用戶在最終決定選擇預(yù)約掛號(hào)后才需要登錄完成整個(gè)預(yù)約掛號(hào)操作。

由此確定系統(tǒng)功能模塊如圖1所示。在公眾號(hào)中有兩個(gè)菜單選項(xiàng),預(yù)約掛號(hào)和用戶管理。在預(yù)約掛號(hào)功能下,共有6個(gè)核心功能模塊。索引模塊提供不同頁面的索引,作為主頁;選擇醫(yī)院、科室、醫(yī)生模塊分別是進(jìn)行對(duì)應(yīng)項(xiàng)的選擇,全部選擇完畢后進(jìn)入登錄模塊進(jìn)行登錄,登錄成功后確認(rèn)預(yù)約,完成全部操作。在用戶管理菜單中,可以查詢預(yù)約結(jié)果,或者取消已完成的預(yù)約,其中具體取消規(guī)則要按照衛(wèi)生網(wǎng)相關(guān)協(xié)議進(jìn)行。

如圖2所示,預(yù)約掛號(hào)服務(wù)系統(tǒng)由4部分構(gòu)成,分別是用戶微信客戶端、微信公眾平臺(tái)服務(wù)器、南京衛(wèi)生網(wǎng)服務(wù)器和預(yù)約掛號(hào)服務(wù)系統(tǒng)所在服務(wù)器。4部分之間按照箭頭關(guān)系分別進(jìn)行消息交互。用戶發(fā)出的信息請(qǐng)求部分交由微信官方服務(wù)器處理,例如用戶發(fā)送的文字信息會(huì)通過微信官方服務(wù)器傳輸,經(jīng)過上傳部署好的本服務(wù)系統(tǒng)代碼進(jìn)行處理進(jìn)行相應(yīng)的自動(dòng)回復(fù);還有部分信息直接交由本預(yù)約服務(wù)系統(tǒng)處理,例如用戶選擇預(yù)約服務(wù)菜單發(fā)出的請(qǐng)求。本服務(wù)系統(tǒng)提供給用戶的所有信息都來自于南京12320衛(wèi)生網(wǎng),從而確保用戶獲取信息的實(shí)時(shí)性。另外,整個(gè)預(yù)約掛號(hào)服務(wù)過程中的消息交互對(duì)用戶都是透明的。

本服務(wù)系統(tǒng)各模塊之間的工作流程如圖3所示。用戶通過點(diǎn)擊菜單向微信服務(wù)器發(fā)起訪問請(qǐng)求,微信服務(wù)器把請(qǐng)求轉(zhuǎn)交給系統(tǒng)服務(wù)器,系統(tǒng)服務(wù)器把請(qǐng)求網(wǎng)頁返回給用戶,用戶在網(wǎng)頁上進(jìn)行相關(guān)查詢操作,系統(tǒng)服務(wù)器則動(dòng)態(tài)響應(yīng)這些操作,從衛(wèi)生網(wǎng)服務(wù)器請(qǐng)求用戶所需信息并予以返回。最后,用戶確認(rèn)預(yù)約請(qǐng)求,衛(wèi)生網(wǎng)服務(wù)器接受到請(qǐng)求后如預(yù)約成功,則直接向用戶手機(jī)發(fā)送短信進(jìn)行通知。

2 系統(tǒng)開發(fā)

2.1 系統(tǒng)開發(fā)環(huán)境

(1)硬件環(huán)境

服務(wù)器端:英特爾酷睿I5處理器,WIN7專業(yè)版64位,4G內(nèi)存,500G硬盤。

客戶端設(shè)備:裝有微信5.0以上版本的智能手機(jī)。

(2)軟件環(huán)境

服務(wù)器端:裝有IIS的Windows操作系統(tǒng);裝有PHP5。

客戶端:裝有微信5.0以上版本。

2.2 微信公眾平臺(tái)對(duì)用戶文字消息的處理

為了把掛號(hào)系統(tǒng)移植到微信平臺(tái),首先要注冊(cè)一個(gè)微信公眾號(hào)。微信提供了服務(wù)號(hào)、訂閱號(hào)、企業(yè)號(hào)和測試號(hào)給用戶使用,其中測試號(hào)可以免費(fèi)試用所有的接口和功能,本文為了敘述清晰和開發(fā)過程重現(xiàn),選擇注冊(cè)微信測試號(hào)。注冊(cè)完成后會(huì)需要填寫URL和Token,驗(yàn)證開發(fā)者是否擁有自己的服務(wù)器資源,并進(jìn)行Token的驗(yàn)證,此處填寫的URL需要正確響應(yīng)微信發(fā)送的Token驗(yàn)證。具體操作是從微信官方網(wǎng)站下載wx_sample.php文件,用Dreamweaver打開編輯,將代碼中的define(”TOKEN”,”weixin”);中的”weixm”改成白定義Token值,要注意在“修改”一“頁面設(shè)置”中將代碼的編碼改為UTF-8,勾選“不包括BOM”,否則Token無法驗(yàn)證。代碼修改完成后將其部署到SAE,把代碼部署位置的路徑填寫到URL處,并點(diǎn)擊進(jìn)行驗(yàn)證。

完成上述操作后,首先編寫代碼實(shí)現(xiàn)基本文字消息的處理。接口配置已經(jīng)完成,對(duì)剛才使用的驗(yàn)證代碼進(jìn)行修改,來實(shí)現(xiàn)一些簡單的消息回復(fù)功能。

將“$wechatObj->valid();改成$wechatObj->responseMsg();”然后對(duì)responseMsg()函數(shù)進(jìn)行修改。在“$msgType=”text”;”后添加一個(gè)switch語句,通過對(duì)$keyword的匹配來進(jìn)行關(guān)鍵詞回復(fù)。例如:

case”你好”;

$contentStr=”你好!”;

break:

除此之外,微信公眾號(hào)還能自動(dòng)回復(fù)類型豐富的消息類型,例如:圖片消息、語音消息、視頻消息、音樂消息、圖文消息等等。微信的官方文檔為不同的消息類型提供了對(duì)應(yīng)格式,按照官方格式在代碼中修改$textTpl變量即可回復(fù)對(duì)應(yīng)消息類型。

2.3 用戶端菜單設(shè)計(jì)與實(shí)現(xiàn)

除了各種類型消息的處理,本系統(tǒng)要求公眾號(hào)必須擁有白定義菜單來為用戶提供進(jìn)入系統(tǒng)的方便的入口。

根據(jù)微信官方提供的文檔,目前自定義菜單最多包括三個(gè)一級(jí)菜單,每個(gè)一級(jí)菜單最多包含5個(gè)二級(jí)菜單。一級(jí)菜單最多4個(gè)漢字,二級(jí)菜單最多7個(gè)漢字,多出部分將以”……”代替。創(chuàng)建白定義菜單后,微信客戶端將延遲一段時(shí)間后才展現(xiàn)出來。用戶創(chuàng)建自定義菜單時(shí),用注冊(cè)帳號(hào)時(shí)系統(tǒng)分配的appID和appsecret同微信服務(wù)器以POST方式發(fā)送一個(gè)HTTP請(qǐng)求,從而獲得一個(gè)ACCESS—TOKEN值,獲得這個(gè)值后就能根據(jù)官方文檔提供的創(chuàng)建自定義菜單的格式創(chuàng)建屬于自己的白定義菜單了。發(fā)起第一次請(qǐng)求的代碼如下:

$ch=curl_init();

curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false):

curl_setopt($ch,CURLOPT_SSL_VERIFYHOST.false):

curl_setopt($ch,CURLOPT_RETURNTRANSFER.1):

$a=curl_exec($ch);

$strjson=json_decode($a);

$token=$strjson->access_token;

至此完成一次POST請(qǐng)求并保存獲得的ACCESS_TOKEN值。完成驗(yàn)證后,就可以創(chuàng)建自己的自定義菜單了。創(chuàng)建白定義菜單的代碼格式由微信官方給出,此處不再贅述,但要注意在用PHP寫這段代碼時(shí)要在引號(hào)前加轉(zhuǎn)義符,例如\”button\”,否則在發(fā)送這個(gè)創(chuàng)建請(qǐng)求時(shí)服務(wù)器將不會(huì)識(shí)別,并返回一個(gè)錯(cuò)誤碼。還要注意編碼必須為UTF-8,否則也會(huì)報(bào)錯(cuò)。在寫完自定義菜單的代碼后,再次調(diào)用cURL函數(shù)發(fā)送一次POST請(qǐng)求,代碼如下:

$url=”https://api.weixin.qq.com/cgi-bin/menu/create?access_token={$token)”;

$ch=curl_init();

curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch,CURLOPT_POST,1);

curl_setopt($ch,CURLOPT_POSTFIELDS,$post):

curl_exec($ch);

curl_close($ch);

當(dāng)返回{”errcode”:0,”errmsg”:”ok”}時(shí)候,證明請(qǐng)求成功,在等待一段時(shí)間后即可在微信客戶端看到白定義菜單的效果。如圖4所示。

2.4 系統(tǒng)各主要模塊實(shí)現(xiàn)

(1)索引模塊

索引模塊就是默認(rèn)主頁index,本系統(tǒng)的主頁是一個(gè)靜態(tài)網(wǎng)頁,提供進(jìn)入各個(gè)模塊的鏈接,是一個(gè)導(dǎo)航頁面。因?yàn)檫@是系統(tǒng)開發(fā)過程中的第一個(gè)網(wǎng)頁,因此要先進(jìn)行網(wǎng)頁設(shè)計(jì),把樣式表CSS做好,以實(shí)現(xiàn)響應(yīng)式布局。此處的網(wǎng)頁設(shè)計(jì)是下載了開源的CSS框架進(jìn)行修改,之后的各個(gè)模塊都將采用這個(gè)框架。

其中,各個(gè)鏈接都設(shè)置成標(biāo)題hl,并居中:。同時(shí)用font標(biāo)簽的color屬性和face屬性來設(shè)置顏色和字體。具體效果如圖5所示。由于采用了響應(yīng)式布局,該頁面在各種不同設(shè)備上都是此圖的效果,不會(huì)出現(xiàn)占不滿屏幕或超出屏幕大小的情況。圖中的南京衛(wèi)生12320的Logo是在南京12320衛(wèi)生網(wǎng)下載后用PS處理的,進(jìn)行了修繕和美化。這個(gè)logo將在之后的每個(gè)模塊中出現(xiàn),不但作為標(biāo)志,同時(shí)也提供一個(gè)到索引模塊的鏈接,方便用戶隨時(shí)進(jìn)入主頁。

(2)醫(yī)院選擇模塊

在前期的調(diào)研分析中發(fā)現(xiàn),南京衛(wèi)生網(wǎng)提供的信息是經(jīng)常更新的,并且未來可能會(huì)有更多的醫(yī)院加入這個(gè)系統(tǒng),因此這個(gè)模塊要設(shè)計(jì)成動(dòng)態(tài)更新的網(wǎng)頁。用戶每次打開網(wǎng)頁前,后臺(tái)運(yùn)行一段程序,向南京12320網(wǎng)發(fā)起一次http請(qǐng)求,并通過正則表達(dá)式匹配獲得當(dāng)前所有醫(yī)院信息。獲得這些信息后再生成網(wǎng)頁展示給用戶,如此避免用戶選擇一個(gè)無法掛號(hào)的醫(yī)院或用戶找不到想要去的醫(yī)院。

獲得醫(yī)院信息的重點(diǎn)在于正則表達(dá)式的匹配,此處為:

preg_match_all(/HospitalDesc\(\(\d+)\\)\”\>(\W+)\

其中(\d+)是要匹配的醫(yī)院名,(\W+)是要匹配的醫(yī)院id,這個(gè)id是下一步選擇科室模塊要發(fā)起http請(qǐng)求的目的url地址的重要元素。將醫(yī)院名和醫(yī)院id分別保存在兩個(gè)數(shù)組中,然后將醫(yī)院名展示在網(wǎng)頁上,醫(yī)院id則作為option標(biāo)簽的值保留下來。

在具體實(shí)現(xiàn)時(shí),還發(fā)現(xiàn)了一個(gè)問題。在獲得醫(yī)院信息的url地址中,一個(gè)地址只顯示10個(gè)醫(yī)院的信息,要更多的醫(yī)院信息則需要訪問更多的url地址。如果一個(gè)個(gè)的枚舉顯然效率太過低下。在觀察url地址后發(fā)現(xiàn),url地址中有一個(gè)“start={}”,只要修改大括號(hào)中的數(shù)字就能實(shí)現(xiàn)對(duì)不同地址的訪問并得到所有醫(yī)院信息。由于具體醫(yī)院數(shù)量是未知的,因此調(diào)用foreach函數(shù)遍歷一下即可,主要代碼如下:

for($n=0;$n<=50;$n+=10){

$url=”http://www.nj12320.org/weixin/wx/qdefault.php?__op=oho_online&i_f_djklfe_d=s6057240&show_num=lO&start= {$n)”;

preg_match_all(/HospitalDesc\(\(\d+)\\)\”\>(\W+)\

foreach($matches as $hid){$a口=$hid;)

foreach($matches as $hname){$b口=$11name;}}

for($i_0;$i

print””;}/*用于動(dòng)態(tài)生成網(wǎng)頁信息*/

(3)科室選擇模塊

科室選擇模塊中,若把所有可掛號(hào)的科室全部顯示出來顯然太多了,不利于用戶選擇,因此本系統(tǒng)的科室選擇模塊做在醫(yī)院選擇模塊之后,在用戶選好醫(yī)院后,再根據(jù)這個(gè)醫(yī)院的id向?qū)?yīng)url地址發(fā)送一次http請(qǐng)求,獲得當(dāng)前該醫(yī)院可掛號(hào)科室的信息并展示給用戶。

具體代碼實(shí)現(xiàn)和醫(yī)院選擇相似,此處的正則表達(dá)式為:

preg_match_all(/onclick\=\“keshi\((\d+),\(\W+)\\)\”\>/i,$f,$matches);

同樣的既要保存科室名顯示,也要保存科室id做下一步工作。

$hos=$_POST[”hospital”];

$ke=$_POST[”zjzk”];

$url=”http://www.nj12320.org/weixin/wx/qdefault.php?mod=yy_{$ke}&id={$hos}&hospital=”;

$f=fle_get_contents($url);

preg_match_all(/onclick\=\”keshi\((\d+),\(\W+)\\)\”\>/i,$f,$matches);

foreach($matches as $keid){$a口=$keid;)

foreach($matches as $kename){$b口=$kename;,

for( $i=0; $i{$b[$i]}”;)

(4)醫(yī)生選擇模塊

此模塊僅展示醫(yī)生的名字,并不顯示具體就診時(shí)間和掛號(hào)費(fèi),主要是為了給尋找特定專家的用戶提供服務(wù),對(duì)普通用戶的意義并不太大。具體代碼實(shí)現(xiàn)和醫(yī)院選擇相似。此處匹配所用的正則表達(dá)式為:

preg_match_all(/data-docid\=\”(\d+)\”\sdata-docname\=\”(\W+)\”/i,$f,$matches);

(5)登錄模塊

南京12320衛(wèi)生網(wǎng)的登錄功能是通過javascript函數(shù)實(shí)現(xiàn)的,由于本系統(tǒng)的代碼不是部署在其服務(wù)器上,因此如果也采用javascript函數(shù)進(jìn)行登錄會(huì)出現(xiàn)跨域訪問的問題,根據(jù)互聯(lián)網(wǎng)相關(guān)安全協(xié)議,無法發(fā)出登錄的http請(qǐng)求,所以本系統(tǒng)采用的方法是用PHP重寫登錄函數(shù),進(jìn)行第三方登。

首先用Wireshark抓取了官方網(wǎng)站的登錄報(bào)文,如圖6所示??梢钥吹酱颂幍膸ぬ?hào)、密碼和驗(yàn)證碼是明文傳輸?shù)?。再記錄下http數(shù)據(jù)包的其他頭部信息,用PHP構(gòu)造一個(gè)完全相同的數(shù)據(jù)包。

$data=”username=$u&password=$p&verifyCode=$v”;/*用戶名,密碼,驗(yàn)證碼*/

$time=number_format(microtime(true),3,”,”);/*時(shí)間戳*/

$url=”http://www.nj12320.org/njres/indexjson/login.do?timestamp=$time&ajax=true”;

curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch,CURLOPT_HTTPHEADER,array(/*頭部信息*/).

curl_setopt($ch,CURLOPT_POSTFIELDS,$data):

curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_jar);

代碼中的$cookiejar是在驗(yàn)證碼獲取時(shí)服務(wù)器返回的一個(gè)cookie值,這個(gè)cookie必須保存下來,然后在向服務(wù)器遞交用戶名密碼和驗(yàn)證碼時(shí)把這個(gè)cookie添加到http請(qǐng)求的頭部才能成功登錄。因?yàn)榘羊?yàn)證碼從服務(wù)器下載后展示給用戶,而直接在驗(yàn)證碼所在的img處添加url地址無法保存cookie,為了解決這個(gè)問題,本系統(tǒng)采用的方法是先發(fā)起請(qǐng)求將驗(yàn)證碼和cookie保存在系統(tǒng)服務(wù)器上,然后在顯示驗(yàn)證碼時(shí)將img標(biāo)簽的src屬性填寫成本地地址。

$cookiejar=tempnam(”./temp”,”cookie”);/*創(chuàng)建臨時(shí)文件,保存cookie*/

$f=fopen(”yzm.jpg”,”w”);/*創(chuàng)建圖片文件,之后把驗(yàn)證碼圖片以數(shù)據(jù)流寫入其中*/

$url=http://www.nj12320.org/njres/authhng.do:

curl_setopt($ch,CURLOPT_FILE, $f);/*在選項(xiàng)中加入CURLOPT_FILE來將驗(yàn)證碼寫入*/

(6)確認(rèn)預(yù)約模塊

預(yù)約模塊是本系統(tǒng)的重中之重。首先,預(yù)約界面的顯示和前面幾個(gè)模塊一樣是實(shí)時(shí)更新、動(dòng)態(tài)生成的,此處用了三個(gè)正則表達(dá)式:

preg_match_all(/javascript\:toconfirm\((\d+)\)\”i,$f,$matches0);

preg_match_all(/出診時(shí)間:([\W\W]*?)/,$f,$matchesl):

preg_match_all(/掛號(hào)費(fèi):([\w\W]*?)n>/, $f,$matches2):

分別用于匹配本次預(yù)約的代號(hào),出診時(shí)間和掛號(hào)費(fèi)。如果沒有匹配到任何信息,則輸出“對(duì)不起,暫無可預(yù)約時(shí)間?!?/p>

在用戶點(diǎn)擊確認(rèn)預(yù)約后,系統(tǒng)跳轉(zhuǎn)到登錄界面進(jìn)行登錄,登錄成功后系統(tǒng)會(huì)自動(dòng)開始預(yù)約操作,若掛號(hào)成功則用戶會(huì)在一段時(shí)間內(nèi)收到12320的短信通知。如果登錄失敗,則提示失敗信息并3秒后返回登錄界面。

此處實(shí)現(xiàn)登錄和實(shí)現(xiàn)預(yù)約的程序分屬不同文件,而在這兩個(gè)功能之間需要進(jìn)行cookie的傳遞,故涉及到了PHP中超級(jí)全局變量的問題。本系統(tǒng)采用session來進(jìn)行文件間的變量傳遞。首先,在登錄處用session—start函數(shù)初始化session,然后創(chuàng)建一個(gè)臨時(shí)文件用于保存之后產(chǎn)生的cookie,把指向這個(gè)文件的變量$cookiejar保存到session中,最后在完成預(yù)約的文件中用session start初始化session后就能訪問這個(gè)跨文件變量了。

由于是第三方訪問,因此稍有不慎就會(huì)被官方服務(wù)器判定為不安全行為,所以必須把http請(qǐng)求模擬的和官方自己發(fā)送的請(qǐng)求一模一樣才行。實(shí)現(xiàn)Web代理的同時(shí)存在著一定的安全隱患,但由于本系統(tǒng)無法獲得南京衛(wèi)生網(wǎng)的服務(wù)器資源,且僅作學(xué)習(xí)研究用,因此這些安全問題暫不予考慮。

3 系統(tǒng)運(yùn)行實(shí)例

圖7a是系統(tǒng)登錄界面,對(duì)于沒有帳號(hào)的用戶還可點(diǎn)擊注冊(cè)新賬號(hào)進(jìn)入帳號(hào)注冊(cè)界面,如圖7b所示。這兩個(gè)界面運(yùn)用了大量的htm15+css3的新特性,力求做到簡潔美觀。

圖8是醫(yī)院選擇界面,此處要同時(shí)選擇醫(yī)院和專家/??坪笤龠M(jìn)入下一步,若不選擇專家/???,系統(tǒng)將自動(dòng)默認(rèn)選擇專家號(hào),因?yàn)榻^大多數(shù)用戶都會(huì)選擇專家號(hào)。選好醫(yī)院并點(diǎn)擊選擇科室后,系統(tǒng)會(huì)提交此表單。

在選擇醫(yī)院后,還要分別選擇科室和醫(yī)生。選擇科室列表中出現(xiàn)的信息是根據(jù)用戶選擇的醫(yī)院來顯示的,同樣,醫(yī)生信息也是根據(jù)科室來顯示的,這樣就避免了用戶接受不需要的冗余信息。實(shí)際效果如圖9a和9b所示。

在所有選項(xiàng)都選擇完成后,會(huì)顯示可預(yù)約的醫(yī)生信息,包括可預(yù)約時(shí)間和掛號(hào)費(fèi)。(其余信息都是用戶自己選擇的,因此不再顯示)如圖10所示。如果當(dāng)前用戶選擇的醫(yī)生沒有可預(yù)約的時(shí)間,則會(huì)顯示“對(duì)不起,暫無可預(yù)約時(shí)間”。用戶需返回重新選擇別的醫(yī)生。

4 結(jié)論

本文設(shè)計(jì)實(shí)現(xiàn)的基于微信平臺(tái)的醫(yī)院預(yù)約掛號(hào)系統(tǒng)能夠?yàn)橛脩艟歪t(yī)帶來極大的方便。首先基于微信平臺(tái),用戶不需要再去下載額外的APP占用手機(jī)資源;其次,通過手機(jī)預(yù)約,可以做到真正的隨時(shí)、隨地;最后,微信發(fā)展速度快,擴(kuò)展性強(qiáng),方便未來隨時(shí)升級(jí)此系統(tǒng)。

本系統(tǒng)還可以擴(kuò)展許多功能,例如:自動(dòng)識(shí)別驗(yàn)證碼,在線支付掛號(hào)費(fèi),預(yù)約時(shí)間鬧鐘提醒,醫(yī)院查詢,醫(yī)生查詢和電子病歷等,可以此為用戶提供一整套的移動(dòng)端醫(yī)療服務(wù)。

猜你喜歡
微信平臺(tái)
淺談“互聯(lián)網(wǎng)+”在電力營銷工作中的應(yīng)用
中國市場(2016年31期)2016-12-19 22:59:42
圖書館微信平臺(tái)自動(dòng)問答機(jī)器人語言體系研究
基于微信平臺(tái)的健康信息用戶感知和效用研究
微信平臺(tái)作品著作權(quán)的保護(hù)
新媒體時(shí)代,酒香也怕巷子深
亞太教育(2016年31期)2016-12-12 07:24:22
高校校園文化建設(shè)的新載體———微信
電視新聞節(jié)目借力微信平臺(tái)的傳播策略研究
新聞前哨(2016年11期)2016-12-07 11:15:04
紙媒微信平臺(tái)建設(shè)現(xiàn)狀及未來發(fā)展分析
考試周刊(2016年89期)2016-12-01 12:27:57
新媒體時(shí)代微信輿情的監(jiān)控策略研究
基于微信平臺(tái)的高中物理“翻轉(zhuǎn)課堂”教學(xué)初探
考試周刊(2016年77期)2016-10-09 11:51:15
沂源县| 广灵县| 万山特区| 林西县| 邯郸市| 卢龙县| 德昌县| 山西省| 东兴市| 沂水县| 康乐县| 福安市| 中宁县| 健康| 锡林郭勒盟| 靖西县| 普格县| 鲁甸县| 文昌市| 鲁山县| 临澧县| 繁昌县| 宜丰县| 广宗县| 策勒县| 云南省| 平利县| 阳东县| 沭阳县| 循化| 仙游县| 灵台县| 奉化市| 化州市| 大庆市| 遂溪县| 崇信县| 曲沃县| 怀柔区| SHOW| 伊吾县|