李顯明+牛琳+馬燕+高澤軍



摘 要: 基于微信小程序的醫囑服務,有效地解決了護士與不通普通話的患者、外籍患者間的醫囑溝通、營養膳食等方面問題。依托于微信小程序,開發基于微信小程序的醫囑服務應用,功能模塊包括:掃碼并播報語音醫囑信息、個性化訂餐功能等。使患者及其家屬通過線上就能夠獲取到自己的藥品醫囑信息,還可以根據藥品信息訂制個性化的餐飲。
關鍵詞: 微信小程序; 醫囑溝通; 個性化訂餐; 語音服務
中圖分類號:TP311 文獻標志碼:A 文章編號:1006-8228(2018)01-66-03
Research on the doctor's advice service APP via WeChat applet
Li Xianming, Niu Lin, Ma Yan, Gao Zejun
(Hainan Medical College, Haikou, Hainan 571199, China)
Abstract: The doctor's advice service via WeChat applet effectively solves the communication problem about doctor's advice, nutrition diet and so on, between nurses and patients who don't speak Mandarin or are foreign patients. The doctor's advice service APP is developed via WeChat applet, which includes the functions of broadcasting of the voice of the doctor's advice information by scanning the QR code, personalized dinner ordering, and so on. The patients and their families can get their medical advice information from the doctor online, and can also customize the personalized food and beverage according to the advice information.
Key words: WeChat applet; doctor's advice; personalized dinner ordering; voice service
0 引言
微信小程序自從2017年1月9號上線以來就很受青睞,其移動應用對接數量超過85000個,由于微信的功能豐富,溝通方式更加靈活、智能,一經推出就迅速獲得用戶的青睞[1]。微信小程序是一種無須用戶對應用進行下載安裝操作即可直接使用的全新應用[2] ,它實現了應用“觸手可及”的夢想,體現了“用完即走”的理念。
移動醫療是當前移動開發的研究熱點之一,移動醫療的發展為醫療行業的進步帶來了新的機遇[3],結合老年人群在醫院看病,語言溝通存在障礙,視力退化也看不清文字,單從信息傳遞的正確性與及時性方面而言,就有很大的問題和不足[4]。實現語音醫囑播報正是在這個時期的一次有益嘗試。
在醫療活動中,由于某些患者的藥品醫囑中含有不能與特定食物同食的信息,若在服用藥品后,患者如因為不知情而食用了該食物,就有可能造成重大的醫療事故。通過餐飲的個性化選擇便可減少這樣的事件發生,個性化的服務作為一種有效的解決途徑受到社會各界的普遍重視[5],醫囑服務項目將患者的醫囑信息作為個性化篩選的條件,患者得到符合醫囑要求的餐飲提示信息,從而滿足患者個性化訂餐的需求。
通過對醫囑信息的存儲,挖掘數據背后掩藏著的有用信息,在實現個性化診療及管理中,醫療大數據將發揮至關重要的作用[6],通過基于微信小程序醫囑服務的研究和設計,在本地即可獲取到用戶的醫囑信息,這些經過長時間收集的醫療數據,對于醫療大數據的研究分析具有極大的意義。
1 功能設計
現在二維碼的生成與掃描技術已經非常的成熟,只需要在藥品袋上的二維碼上添加醫囑藥品信息,患者就可以通過微信小程序的入口,解析二維碼的內容進行醫囑語音的播報,告別因記憶力低下而忘記醫囑信息的行為。同時,微信小程序也提供基于患者的藥品醫囑信息和個性化訂餐,讓患者在治療期間飲食更加健康,同時也將藥品醫囑信息進行云上保存,為以后的藥品醫療大數據分析提供數據保障。基于微信小程序的項目實現的功能結構圖,如圖1所示。
2 設計與實現
2.1 圓形旋轉菜單設計
微信小程序的菜單設計,采用轉盤式的圖形設計方案,使菜單可觸摸滾動選擇,同時有tabBar導航,在index頁展示小程序全部的功能結構。本項目的菜單選擇功能設計如圖2所示。
實現的關鍵代碼如下:
/*在index.wxml布局文件中添加圓形菜單旋轉的三個方法
buttonStart、buttonMove、buttonEnd*/
"{{userInfo.avatarUrl}}">
catchtouchend="buttonEnd">
通過用戶的手指觸摸事件,當用戶在使用菜單的導航功能時,可以觸發事件,使菜單可以進行滾動操作,其實現的關鍵在于圓形滾動的角度、角速度等信息的獲取。
⑴ 角度的獲取。
斜邊長=Math.sqrt(x*x+y*y ), y=斜邊長*sin a;
角度a=Math.asin(y/Math.hypot(x,y);
⑵ 角速度的計算。
角速度=移動角度*1000/(抬起時間-按下時間);
var Speed=data.TempAngle*1000/
(data.upTime-data.downTime);
⑶ 當角速度小于100的時候觸摸滑動停止,不自動滾動;大于100時,自動滾動;
⑷ 分象限的問題。根據抬起時的觸摸點相對于圓點的X軸差值來計算,大于0就是一四象限,小于0就是二三象限。
2.2 語音醫囑播報功能
通過手機的照相機,調用recognizeCode函數對藥品的二維碼醫囑信息進行識別,從而將藥品醫囑進行轉化,使用微信小程序自帶的API接口wx.uploadFi-le(OBJECT)從而將本地的數據傳輸到服務器端然后調用訊飛語音識別的接口,把文字轉換為語音的格式,然后使用語音進行相對應的操作,其關鍵代碼如下:
/*在工程qr.js文件中添加掃描所需方法,調用相機,獲取藥品袋上的二維碼/條形碼圖片信息,對應處理圖片后獲得相應用戶藥品醫囑信息*/
/*掃描藥品二維碼信息*/
recognizeCode: function() {
this.setData({
isShowMsg: true,
isShowResult: false,
recognizeMsg: "",})
var that=this
wx.scanCode({
success: function(res) {
console.log(res)
that.setData({
recognizeMsg: res["result"]
})}
2.3 個性化營養餐定制
針對用戶在康復期間對餐飲的特殊需求,推出符合用戶藥品醫囑信息需求的餐飲服務,將患者的藥品醫囑作為個性化篩選飲食的第一個條件,系統自動篩選掉不符合醫囑信息的餐飲。完成第一輪的餐飲選擇后,用戶就能選擇自己喜歡的餐飲,讓用戶吃的健康又符合口味。
個性化的餐飲推薦功能是基于內容推薦算法來實現的,可以將藥品醫囑中有關藥物禁忌的食物類別進行影響級別的綜合計算,進而通過余玄相識度的值進行餐飲的推薦,具體的個性化餐飲推薦算法如下。
2.3.1 為每個餐品構建一個食物屬性的資料
⑴ 構建1*N維矩陣,N表示為所有菜品所含物質的類別。初始化矩陣,將元素都置為0,得到一個類似于[0,0,0,0,0,···,0]的矩陣,其中有N個0。
⑵ 假設行向量的元素為所有菜品所含物質的類別,第一個元素為豆制品,第二個人元素為奶制品,并以此類推。
⑶ 將自然語言描述的單個菜品物質類別映射到1*N維的矩陣中,單個菜品所含有的物質類別在行向量中置1,其余的元素置為0,使單個菜品所含物質的類別用0,1的行矩陣得以表示出來。
2.3.2 為每個用戶構建一個醫囑藥品禁忌屬性資料
構建食物與藥品的影響級別表,通過專業的醫療機構與經驗資深的醫師得出食物與藥品的影響度,影響級別表(如表1)中數值越大,表示食物與藥品之間的影響關系越小。反之,數值越小影響程度越大。
計算食物與藥品的影響度。計算藥品所對應菜品所含類別的平均數(avg),通過,計算出藥品與飲食之間的影響度(Ua)。
構建1*N矩陣,與每個菜品的物質類別矩陣不同的是,在構建的矩陣中每一個元素的值是藥品與食物間的影響度。
2.3.3 計算推薦依據
使用余弦相似度的公式來計算給定的餐飲(G)與用戶藥品(U)之間的影響程度,余弦相似度的值越大表明餐飲(G)與用戶藥品(U)的影響程度越小。
余弦相似度的具體計算方法為:
Ga表示,餐飲(G)中是否包含食物屬性a;
Ua表示,用戶藥品(U)對餐飲(G)中食物屬性a的影響程度。
3 結論
筆者結合實踐醫囑服務的具體需求,使用戶的飲食和醫院的藥品醫囑信息無縫的對接,在一定程度上避免了藥品與食材間因禁忌而引發的醫療事故,體現了“以人為本”的醫療模式[7]。同時,醫囑語音播報,在一定程度上解決了院外醫囑溝通的障礙問題。
本文設計并實現的醫囑服務項目是基于微信小程序開發的,具有以下優點:
⑴ 沒有ios和Android的隔閡,安裝簡單,只需掃描二維碼關注即可;
⑵ 項目是云端的服務,不用占用太多用戶的本機資源;
⑶ 對于小程序擁有者來說,相較于原生APP,推廣、運營都更加的容易、簡單、省成本。
基于內容推薦算法的實現,可以使患者進行餐飲的個性化篩選。但也存在不足之處,餐飲中食物種類豐富,藥品與食物的影響級別還沒有客觀的評價標準,食物與藥品的影響級別表還只是依靠醫生的臨床經驗進行判別,會存在一定的誤差。后期根據項目的進行,需要進行影響級別的校準,并進一步改進。
4 結束語
當今智能設備遍布在人們生活的各個角落,而小程序開發門檻相對較低,難度不及APP,適合非剛需低頻應用的轉換。它實現了應用“觸手可及”的夢想,也體現了“用完即走”的理念。將生活中的醫囑服務與小程序相結合在一起,順應醫療數字化、移動化的潮流,這是移動醫療背景下的一次有益嘗試。隨著大數據時代的來臨,通過對于藥品醫囑與個性餐飲信息的收集,當數據量達到可觀的規模時,將進一步研究數據內在隱藏的信息,挖掘數據的價值,使其更好地服務于人們的醫療。
參考文獻(References):
[1] 黃浩波,何衛華,葉青.微信及其在圖書館信息服務中的應用[J].
圖書館學刊,2013.1:62-64
[2] 郭繼盛.微信小程序認識誤區分析[J].產業與科技論壇,
2017.16(6):64-65
[3] 佘陳鳳,余遠波,陳靜嫻,曹友,陳澤游.多語種醫囑播報系統
設計與實現[J].軟件工程,2016.19(5):47-50
[4] 陳國友,錢玉鳳.醫院用藥錯誤原因分析及改進措施[J].中國
藥物經濟學,2015.2:31-32
[5] 張一平,金淳.基于Agent的餐飲個性化推薦建模與仿真研究[D].
大連理工大學碩士學位論文,2011:1-60
[6] 黃新霆,包小源,俞國培,焦杜鵑.醫療大數據驅動的個性化醫
療服務引擎研究[J].中國數字醫學,2014.9(8):5-7
[7] 陳昊.基于移動物聯網的區域協同心血管病急救模式研究[D].
第三軍醫大學碩士學位論文,2012.endprint