基于iOS的醫(yī)生小助手APP的設計與開發(fā)_第1頁
基于iOS的醫(yī)生小助手APP的設計與開發(fā)_第2頁
基于iOS的醫(yī)生小助手APP的設計與開發(fā)_第3頁
基于iOS的醫(yī)生小助手APP的設計與開發(fā)_第4頁
基于iOS的醫(yī)生小助手APP的設計與開發(fā)_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

浙江經貿職業(yè)技術學院畢業(yè)論文(設計)第2頁第頁1緒論隨著科技的發(fā)展,各類市場上的智能手機的普及,APP也被越來越多的人使用起來,APP能使人們的生活更加便捷、更加高效。無線網絡的覆蓋率也日漸增加。而且目前我國的臨床護理、診治行業(yè)越來越重視信息化建設,這個行業(yè)也非常適合和需要移動設備和移動系統(tǒng)的支持和使用。傳統(tǒng)的方式的復雜與繁瑣已經無法滿足現(xiàn)在大量病人的需要與需求。同時移動APP系統(tǒng)的靈活、便捷等等特性,也被大家接受和青睞。1.1背景意義我國的醫(yī)療行業(yè)總的來說還處于一個比較初級的階段。因為行業(yè)內大部分的高科技、高技術的設備是由國外生產并且掌握技術。中國的人口基數過大、醫(yī)療人員數量不足、技術相對國外來說并不成熟、缺乏專業(yè)人才對就醫(yī)流程進行規(guī)范和優(yōu)化等等的原因,造成了我國整個醫(yī)療系統(tǒng)的工作非常繁瑣與復雜。為了提高就醫(yī)的效率、質量。我國的醫(yī)院開始實施信息化建設。到現(xiàn)在來說,大部分的醫(yī)院已經有了比較完善的信息化系統(tǒng)。將許多的業(yè)務流程與檢驗數據、檢驗報告等等聯(lián)系起來。1.2發(fā)展趨勢對于臨床醫(yī)學這個行業(yè)來說,機動性和準確性是最重要的一點,所以將移動APP開發(fā)引入醫(yī)學行業(yè)可以解決下列問題:(1)醫(yī)生、護士只要隨身攜帶一臺移動設備就可以進行隨時隨地的工作,不用攜帶大量的資料、病例夾。一個角度來說,減少了醫(yī)生、護士的負重。另外一個方面來說,加快了醫(yī)生、護士的開方、診斷錄入的速度。(2)優(yōu)化了醫(yī)生、護士的工作流程、可以避免一些重復的工作、可以清晰的看到這位病人之前的病史、并且可以查閱之前的開方治療記錄。(3)對于護士來說,優(yōu)化了工作的流程。讓需要做的工作一目了然。(4)做到了無紙化作業(yè),使用APP內的電子文字代替。不會丟失、混亂,而且方便查找與搜索。1.3系統(tǒng)開發(fā)目標系統(tǒng)采用View/Models體系結構,利用Object-C和Xcode進行開發(fā)的,具有簡單、易用性、用戶界面友好等特點。系統(tǒng)開發(fā)的目標主要是:(1)界面設計簡潔、友好、美觀大方;(2)操作簡單、快捷方便;(3)提升護理、開發(fā)管理水平;(4)保障醫(yī)療質量,提高工作效率;2系統(tǒng)開發(fā)技術介紹2.1iOS系統(tǒng)iOS是由美國蘋果開發(fā)的移動設備操作系統(tǒng),適用于iPhone,ipad,ipod-touch等蘋果公司生產的移動設備目前最高的版本是9.3.1以系統(tǒng)穩(wěn)定,UI精美,系統(tǒng)操作流暢而聞名于全球,是全世界優(yōu)秀操作系統(tǒng)之一。2.1.1iOS系統(tǒng)概述iOS是由蘋果公司為iPhone、iPodTouch以及iPad使用而開發(fā)的操作系統(tǒng)。與蘋果公司MacOSX操作系統(tǒng)一樣,都是基于Unix操作系統(tǒng)的。原本這個系統(tǒng)名為iPhone0S,直到2010年6月7日蘋果電腦全球研發(fā)者大會(APPleWorldwide.DevelopersConference,簡稱WWDC)大會上宣布改名為iOS。iOS的系統(tǒng)架構分為4個層次:核也操作系統(tǒng)層(theCoreOSlayer),核心服務層(theCoreServiceslayer),媒體層(theMedialayer),可輕觸層(theCocoaTouchlayer),系統(tǒng)操作占用大概240MB的存儲器空間。與Android系統(tǒng)不同,iOS是封閉的,無法在蘋果以外的設備上使用iOS??傮w來說,iOS具有從下4點特質:(1)高度的硬件整合性相比于Windows和Android系統(tǒng),iOS對于硬件的整合度可以用苛刻來形容。iOS只能運行在蘋果公司自己的所對應的硬件設備上,嚴格禁止硬件分化,絕對不隨便做出適應性和兼容性的調整,這樣做在保證蘋果公司自己硬件產品商業(yè)價值的同時,也保證了iOS與硬件的完美適配度,做到最大程度的優(yōu)化和匹配。(2)華麗的UI和良好用戶體驗iOS的界面完全可稱之為精美,蘋果的圓角圖標設計,早期的擬物化圖標設計,在當時很快就成為行業(yè)的風向標。到了今年,蘋果大刀闊斧的進行界面改革,提出了扁平化設計,同樣,很快又成為了行業(yè)內的標桿,無數廠家競相模仿。而由于iOS的深度優(yōu)化,用戶在使用iOS的時候很少會感覺到頓卡感,無論什么操作都是極為流暢,大大的増強了用戶的體驗。(3)系統(tǒng)穩(wěn)定性及安全性由于硬件整合度高,所以系統(tǒng)的穩(wěn)定性相對也就高。iOS系統(tǒng)在運行過程中,很少會出現(xiàn)死機,白屏,崩潰,報錯等現(xiàn)象,系統(tǒng)無故障運行時間非常長。同時蘋果對于數據安全的要求非常高,所有推送信息必須經過蘋果服務器,而且蘋果公司對于用戶的隱私保護要求非常嚴格,所以iOS也是一個安全性非常高的操作系統(tǒng)。(4)豐富的應用在APPStore中,有35萬以上的海量應用供用戶使用,當然,其中部分是需要付費的。但是由此可以看出,用戶始終都可在iOS上發(fā)現(xiàn)新的驚喜和新的未知,這也是iOS,而APPStore同時也為開發(fā)者提供了一個發(fā)布和銷售軟件的理想之地,同時也為用戶過濾了惡意軟件和垃圾軟件,也是iOS的魅力所在。2.1.2iOSSDK簡介2007年10月17日,史蒂夫喬布斯在一封張貼于蘋果公司網頁上的公開信上宣布軟件開發(fā)工具包(SDK),并于2008年3月6日發(fā)布,允許開發(fā)人員開發(fā)iPhone和iPodtouch的應用程序,并對其進行測試,名為"iPhone手機模擬器",且需要擁有英特爾處理器且運行MacOSXLeopard系統(tǒng)的Mac機才能使用,截止到現(xiàn)在,最新的版本已經到了SDK9.3iPhoneSDK包含了用于開發(fā)iPhone和iPodTouch應用程序的一整套開發(fā)工具,主要包括:(1)Xcode該集成開發(fā)環(huán)境(IDE)用于管理、編輯與調試項目。Xcode中的IDE提供了大量的工具與功能,能極大減輕開發(fā)工作量,特別是其中一個功能叫做CodeCompletion(代碼補全),它會顯示一個彈出列表,里面有可用的類與成員(如方法、屬性等)。(2)iPhoneSimulator這是一個軟件模擬器,用于在Mac上模擬使用iPhone,它在Xcode運行(或是調試)應用程序時會自動啟動。Xcode會自動將應用程序安裝到iPhoneSimulator上進行模擬真機運行環(huán)境。(3)InterfaceBuilder提供了一個可視化編輯器,用于設計iPhone應用程序的界面。可以在InterfaceBuilder中將視圖拖到窗口上并將各種視圖連接到變量和動作上,這樣它們就能以編程的方式與代碼交互。(4)Instruments這是一個分析工具,可實時優(yōu)化應用程序,用于動態(tài)跟蹤與分析MacOSX和iPhone應用程序的性能,包括對應用程序進行壓力測試,跟蹤應用程序的內存泄漏問題,更深入地理解應用程序的執(zhí)行行為,及跟蹤應用程序中難重現(xiàn)的問題等[3]。2.2AFNetworking框架在本項目中使用的框架稱為AFNetworking框架,AFNetworking是一個為iOS和MacOSX制作的令人愉快的網絡庫,它建立在URL裝載系統(tǒng)框架的頂層,內置在Cocoa里,擴展了強有力的高級網絡抽象。它的模塊架構被良好的設計,擁有豐富的功能。支持HTTP請求和基于REST的網絡服務(包括GET、POST、PUT、DELETE等)2.2.1HTTP請求AFHTTPRequestOperationManager封裝的共同模式與web應用程序通過HTTP通信,包括創(chuàng)建請求,響應序列化,網絡可達性監(jiān)控、運營管理和安全,以及請求。(1)HTTP請求之GET請求,示例代碼如下。AFHTTPRequestOperationManager*manager=AFHTTPRequestOperationManagermanager];[managerGET:@"[/resources.json](/resources.json)"parameters:nilsuccess:^(AFHTTPRequestOperation*operation,idresponseObject){NSLog(@"JSON:%@",responseObject);}failure:^(AFHTTPRequestOperation*operation,NSError*error){NSLog(@"Error:%@",error);}];(2)HTTP請求之POST請求,示例代碼如下。AFHTTPRequestOperationManager*manager=[AFHTTPRequestOperationManagermanager];NSDictionary*parameters=@{@"foo":@"bar"};[managerPOST:@"/resources.json"parameters:parameterssuccess:^(AFHTTPRequestOperation*operation,idresponseObject){NSLog(@"JSON:%@",responseObject);}failure:^(AFHTTPRequestOperation*operation,NSError*error){NSLog(@"Error:%@",error);}];2.2.2基于REST的網絡服務(范文略)2.3Json序列化與反序列化在醫(yī)生小助手中,還用到了一些其他的技術,例如Json、基于AFNetworking框架的圖片上傳、網絡圖片解析等。在醫(yī)生小助手中,移動端的APP數據接口層傳輸數據統(tǒng)一使用的是Json格式,因此涉及到一些Json序列化與反序列化的技術。Json是一種數據傳輸格式。例如在SOA架構中,我們以XML作為數據傳輸格式,但是在其他一整場景中,可能有更加合適的傳輸格式,Json就是其中一種。Json格式的數據結構非常簡單,其解析的難度要遠遠小于XML。實際上,Json格式就是系列鍵值對的集合,由于其簡單性,甚至可以直接閱讀。序列化是將變量轉化為可保存或可傳輸的字符串的過程。無論是哪種平臺或者開發(fā)語言,在以Json為格式傳輸數據時,都必須先序列化數據或者數據集。Json序列化的過程實際上就是把數據和數據集變?yōu)殒I值對的字符串,然后將這個字符串返回給請求者。而反序列化正好巧反,請求者在獲得這個字符后,將其解析,并轉化成數據或者數據集便使用。2.4系統(tǒng)開發(fā)與運行環(huán)境設計2.4.1軟件環(huán)境(1)操作系統(tǒng):MacOSXEICapitan10.11.1或更高版本(2)開發(fā)工具:Xcode7.32.4.2運行環(huán)境(1)操作系統(tǒng):iOS7.0或更高版本……(范文略)3系統(tǒng)需求分析為了改善看病難,醫(yī)患關系緊張的情況,提高病人看病的效率,我們開發(fā)了主要給醫(yī)生護士使用的專業(yè)APP。這款軟件是讓醫(yī)生和病人更容易溝通了解,提高病人的看病效率,讓醫(yī)生護士真正的走進病人,服務病人,成為一款類似家庭醫(yī)院的讓醫(yī)護人員使用的的專業(yè)APP。軟件分為兩個端:移動端,PC端。而PC端又分為總管控和醫(yī)院后臺,這讓平臺更加方便快捷分類的管理醫(yī)護人員,具體的管理好對移動端的數據分配及相關的數據統(tǒng)計。移動端的兩個軟件“醫(yī)生小助手”和“蘇姍護理”分別給醫(yī)生和護士使用,讓醫(yī)護人員攜帶著移動設備就能隨時隨地的辦公,方便快捷的溝通對病情進行診斷,開方治療,讓病人在家就能受到醫(yī)護人員的治療。以下將對醫(yī)生端“醫(yī)生小助手”進行具體的功能及結構的分析。3.1系統(tǒng)功能需求分析由需求分析可知,醫(yī)生小助手軟件主要用戶是醫(yī)生,供醫(yī)生錄入病人基本資料,醫(yī)生診斷錄入,及相應的開單,跟蹤治療流程及病人的信息管理等等。由此可知,軟件包括用戶信息板塊、病人信息板塊、醫(yī)生開單板塊、治療流程板塊、賬戶板塊等五個功能模塊。其中用戶信息板塊包括對登錄注冊醫(yī)生的信息的錄入登錄軟件操作軟件,基本信息的完善與修改;病人信息板塊包括對病人的基本信息的錄入已查看已存在的病人的病歷;醫(yī)生開單板塊包括開檢查化驗單、處方單和護理單,所開單子將傳給后臺工作人員,進行下一步護士上門服務的流程。治療流程板塊是對醫(yī)生所治療的病人的資料進度進行跟蹤,查看已經反饋;醫(yī)生提現(xiàn)返現(xiàn)板塊包括返現(xiàn)的記錄,現(xiàn)有的賬戶余額(主要是診費),對賬戶余額進行提現(xiàn)。3.2功能描述和用例分析3.2.1功能描述醫(yī)生小助手的主要使用人群是醫(yī)生,醫(yī)生只要隨身攜帶一臺移動設備就可以進行隨時隨地的工作。首先醫(yī)生需要開通一個賬戶,后臺審核通過成為平臺的醫(yī)生。當有病人看病的情況下,對病人的基本信息及診斷的病情錄入設備,保存到PC管理端。在這基礎上,對病情需要進行相應的開單,根據醫(yī)生端的開單PC端分配病人給護士,護士上門服務,醫(yī)生根據護士反饋的信息再次開單,病情嚴重的轉到相應的醫(yī)院進行后需要的治療。醫(yī)生不斷根據跟蹤治療流程,對護士反饋分析診斷知道病情診治完成,醫(yī)生可結束治療。醫(yī)生端賬戶上會有相應的診費的返現(xiàn),對這些返現(xiàn)的金額可以提現(xiàn)到支付寶或者銀行卡。3.2.2系統(tǒng)用例圖醫(yī)生小助手的總體結構,如下圖所示:軟件包括用戶信息板塊、病人信息板塊、醫(yī)生開單板塊、治療流程板塊、賬戶板塊等五個功能模塊。該系統(tǒng)用例圖如圖3.2所示。圖3.2醫(yī)生小助手用例圖4系統(tǒng)設計本章詳細描述了iOSAPP“醫(yī)生小助手”,數據接口層API和數據同步層的設計與實現(xiàn)。4.1概要設計本系統(tǒng)使用了AFNetworking框架主要用于數據訪問,通過一個AFHTTPRequestOperation實例對象,在APP端和服務器之間傳遞數據。iOSAPP“醫(yī)生小助手”是醫(yī)生用來對病人信息進行錄入,對病人診斷后進行開方的端口,向醫(yī)生提供了業(yè)務操作最直接的交互界面,幾乎所有操作都在裝有“醫(yī)生小助手”的iOS設備上完成。數據交互部分主要是通過發(fā)生Http請求調用API接口,并將返回的Json字符串反序列化顯示在界面,設備首頁如下圖4-1所示。圖4.1首頁根據3.1節(jié)的系統(tǒng)功能分析可知“醫(yī)生小助手”包括用戶信息板塊、病人信息板塊、醫(yī)生開單板塊、治療流程板塊、賬戶板塊等五個功能模塊,其功能結構圖如圖4.2所示。圖4.2醫(yī)生小助手功能結構圖4.2詳細設計4.2.1添加病人模塊設計對于每位第一次來醫(yī)院的新的病人而言,首先需要對病人的信息進行一個錄入操作,方便后續(xù)管理與查閱,減輕醫(yī)生后續(xù)操作。它的流程圖如圖4.3所示。圖4.3添加病人信息4.2.2添加診斷模塊設計在添加錄入病人信息之后,需要對病人添加醫(yī)生的診斷信息,用于表示病人的癥狀和所屬的病人病癥屬于的信息。它的流程圖如圖4.4所示。圖4.4添加病人診斷4.2.3檢查單模塊設計在添加完病人診斷之后,需要對病人的病情有一個更為全面的了解,需要對病人做一系列的檢查。它的流程圖如圖4.5所示。圖4.5添加檢查單4.2.4處方單模塊設計在經過詳細的檢查與化驗之后,對病人的病情有了一個詳細的了解,之后就需要針對病人的病情進行開處方藥操作。它的流程圖如圖4.6所示。開單(處方單)開單(處方單)選擇處方藥分類是否確認開單約定地點確認開單內容提交開單選擇處方藥物添加處方成組藥填寫藥品用量與單位填寫處方用法與頻次圖4.6添加處方單4.2.5護理單模塊設計圖4.7添加護理單5系統(tǒng)實現(xiàn)在APP的表現(xiàn)層本身并沒有進行任何的業(yè)務邏輯的功能實現(xiàn),所以的工作功能都是調用API然后獲取Json字符串反序列化得到的結果集,并將結果顯示在界面上。5.1添加病人模塊實現(xiàn)在添加病人模塊中,我們需要錄入病人的姓名、聯(lián)系電話、性別、出生日期、年齡、家庭住址、家庭詳細地址、所屬醫(yī)院的信息。年齡是按照出生日期的選擇,通過選擇的日期到今天的日期來計算得出的。頁面及主要實現(xiàn)代碼如圖5.1所示。圖5.1添加病人-(void)initView{//創(chuàng)建左視圖for(inti=0;i<5;i++){UIView*view=[[UIViewalloc]initWithFrame:CGRectMake(0,0,30,30)];UIImageView*bg=[[UIImageViewalloc]initWithFrame:CGRectMake(0,5,20,20)];NSString*bgImageName=[_leftViewImageArrayobjectAtIndex:i];bg.image=[UIImageimageNamed:bgImageName];[viewaddSubview:bg];[_leftViewArrayaddObject:view];}//創(chuàng)建textViewfor(inti=0;i<5;i++){_textFiled=[[UITextFieldalloc]initWithFrame:CGRectMake(35,10+i*50,G_SCREEN_WIDTH-70,50)];UILabel*line=[[UILabelalloc]initWithFrame:CGRectMake(35,60+i*50,G_SCREEN_WIDTH-70,1)];line.backgroundColor=RGBCOLOR(221,221,221);[_scrollViewaddSubview:line];NSString*placeholderStr=[_placeholderArrayobjectAtIndex:i];_textFiled.tag=i+100;_textFiled.text=placeholderStr;_textFiled.leftView=[_leftViewArrayobjectAtIndex:i];_textFiled.leftViewMode=UITextFieldViewModeAlways;[_scrollViewaddSubview:_textFiled];}}5.2添加診斷模塊實現(xiàn)在添加病人診斷模塊中,我們可以看到之前所填寫的病人姓名、性別、電話、詳細住址等信息,對病人的情況有一定的了解之后,可以在下方對病人的病況有一個詳細的描述,為病人的檢查開單做準備。在這個頁面我使用了iOS系統(tǒng)自帶的類UITableViewCell,使用這個類能夠相當方便的生成列表結構,并自動進行內存緩存處理。頁面及主要實現(xiàn)代碼如圖5.2所示。圖5.2添加病人診斷信息-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath{NSString*identifer=[NSStringstringWithFormat:@"diagnoseCell%ld",(long)indexPath.section];tableView.separatorStyle=UITableViewCellSeparatorStyleNone;UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:identifer];if(!cell){cell=[[UITableViewCellalloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:identifer];cell.selectionStyle=UITableViewCellSelectionStyleNone;//tableView.separatorStyle=UITableViewCellSeparatorStyleNone;//創(chuàng)建頭像空間……(創(chuàng)建一個UIImageView控件用于存放頭像的圖標)//創(chuàng)建性別的頭像……(創(chuàng)建一個UIImageView控件用于存放性別的圖標)//創(chuàng)建病人信息顯示UILabel*personLabel=[[UILabelalloc]init];personLabel.tag=300;personLabel.font=NomalFont;[celladdSubview:personLabel];UILabel*sexLabel=[[UILabelalloc]init];sexLabel.tag=400;sexLabel.font=NomalFont;[celladdSubview:sexLabel];UIImageView*bottomBg=[[UIImageViewalloc]init];bottomBg.tag=500;[celladdSubview:bottomBg];//創(chuàng)建病況描述輸入框if(indexPath.section==1&&indexPath.row==0){GCPlaceholderTextView*txtVContent=[[GCPlaceholderTextViewalloc]init];txtVContent.tag=TAG_TXTV_CONTENT;[celladdSubview:txtVContent];}}5.3添加檢查單模塊實現(xiàn)在添加了病人詳細的病況描述之后,我們?yōu)榱藢Σ∪说牟∏橛幸粋€全面并且清晰的了解或許需要對進行一些檢查項目的檢查,或者對病人進行開藥、做護理等操作。類似的頁面我們需要對頁面做一些適配操作,對于4、4s和6、6p等不同的屏幕尺寸進行不同的大小展示,方便用戶操作,提升頁面的美觀度。在這里我主要使用了屏幕的寬與長的比例對模塊進行等比例放大縮小操作,這也是比較常用的一種適配方法。頁面及主要實現(xiàn)代碼如圖5.3所示。圖5.3選擇不同開單界面-(void)initView{for(inti=0;i<3;i++){UIButton*choseBtn=[[UIButtonalloc]initWithFrame:CGRectMake(10,64+i*((SCREEN_WIDTH-20)*0.39+20),SCREEN_WIDTH-20,(SCREEN_WIDTH-20)*0.39)];choseBtn.tag=i+1;NSString*imageStr=[_btnImageArrayobjectAtIndex:i];[choseBtnsetBackgroundImage:[UIImageimageNamed:imageStr]forState:UIControlStateNormal];[choseBtnaddTarget:selfaction:@selector(choseBtnClick:)forControlEvents:UIControlEventTouchUpInside];[self.viewaddSubview:choseBtn];}}5.4添加處方單模塊實現(xiàn)在通過對病人進行一個全面的檢查化驗之后,我們對病人的病情有了一個完整的了解,需要對病人進行開處方藥操作,則我們需要點擊圖5.3中的處方按鈕。需要在醫(yī)院的藥品庫中選擇相應的治療藥物進行治療,為選擇的處方藥物的用法用量進行一個設置,處方單模塊頁面及主要實現(xiàn)代碼如圖5.4-5.6所示。圖5.4開處方單-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath{NSString*identifer=[NSStringstringWithFormat:@"Cell%ld",(long)indexPath.section];UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:identifer];if(!cell){cell=[[UITableViewCellalloc]initWithStyle:UITableViewCellStyleValue1reuseIdentifier:@"Cell"];//全部上叉叉(減少button重復初始化)ILButton*btnClose=[[ILButtonalloc]initWithFrame:CGRectMake(0,0,22,22)];[btnClosesetImage:[UIImageimageNamed:@"btn_close_normal"]forState:UIControlStateNormal];btnClose.hidden=YES;[btnCloseaddTarget:selfaction:@selector(btnClose:)forControlEvents:UIControlEventTouchUpInside];btnClose.tag=indexPath.section;cell.accessoryView=btnClose;if(indexPath.row==0){UILabel*lblLine=[[UILabelalloc]initWithFrame:CGRectMake(2,0,tableView.width,1)];lblLine.hidden=YES;lblLine.tag=indexPath.section+1;lblLine.backgroundColor=RGBCOLOR(0,212,198);[cell.contentViewaddSubview:lblLine];}}圖5.5選擇處方藥物#pragmamark設置表的內容-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath{NSString*rightIdentifer=[NSStringstringWithFormat:@"rightIdentifer%ld",(long)indexPath.row];UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:rightIdentifer];if(!cell){cell=[[UITableViewCellalloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:rightIdentifer];}cell.selectionStyle=UITableViewCellSelectionStyleNone;cell.accessoryType=UITableViewCellAccessoryDisclosureIndicator;tableView.separatorStyle=UITableViewCellSeparatorStyleNone;CurrencyBean*bean=[_marrTempobjectAtIndex:indexPath.row];cell.textLabel.text=bean.strName;cell.textLabel.textColor=RGBCOLOR(133,133,133);cell.textLabel.font=[UIFontsystemFontOfSize:15];[cell.imageViewsd_setImageWithURL:[NSURLURLWithString:bean.strLogo]];returncell;}圖5.6處方藥物用法設置-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath{NSString*identifier=[NSStringstringWithFormat:@"identifer"];DetailMedCell*cell=[tableViewdequeueReusableCellWithIdentifier:identifier];cell=[[DetailMedCellalloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:identifier];MedicModel*model=[_marrAllobjectAtIndex:indexPath.section];cell.lblMedicName.text=model.strMedicName;cell.txtFNumber.tag=indexPath.section;cell.txtFNumber.delegate=self;cell.txtFNumber.text=model.strUseNumber;[cell.btnUnitaddTarget:selfaction:@selector(btnClickUnit:)forControlEvents:UIControlEventTouchUpInside];cell.btnUnit.tag=indexPath.section;cell.selectionStyle=UITableViewCellSelectionStyleNone;returncell;}5.5添加護理單模塊實現(xiàn)在為病人添加完處方藥物進行治療的過程中,我們需要對病人一些護理項目的操作,比如靜脈輸液、換藥等等,界面及主要實現(xiàn)代碼如圖5.7所示。圖5.7選擇護理項目-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath{staticNSString*identifer=@"tbCell";tableView.separatorStyle=UITableViewCellSeparatorStyleNone;UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:identifer];if(!cell){cell=[[UITableViewCellalloc]initWithStyle:UITableViewCellStyleValue1reuseIdentifier:identifer];UIImageView*imgYuanKong=[[UIImageViewalloc]init];imgYuanKong.tag=100;[celladdSubview:imgYuanKong];UIImageView*imgYuanShi=[[UIImageViewalloc]init];imgYuanShi.tag=200;[celladdSubview:imgYuanShi];UILabel*nameLb=[[UILabelalloc]init];nameLb.tag=300;[celladdSubview:nameLb];UILabel*priceLb=[[UILabelalloc]init];priceLb.tag=400;[celladdSubview:priceLb];UIButton*btnComplete=[[UIButtonalloc]init];btnComplete.tag=500;[celladdSubview:btnComplete];}5.6數據交互Http請求實現(xiàn)在本系統(tǒng)中,數據的傳輸格式為Json,總體集成思路是,移動端發(fā)起一個Http請求,數據接口層接受請求并調用業(yè)務邏輯層的邏輯進行處理,最后再將處理完成的數據序列化成Json字符串,數據接口層通過Http返回給APP,APP獲得Json字符串后進行反序列化,然后展現(xiàn)在界面上。當APP需要實現(xiàn)某些功能時,首先發(fā)起HttpRequest請求。HttpRequest主要包含兩部分,第一是URL,即請求目標網站地址,在本系統(tǒng)中就是API服務器地址,API的名稱就連接在URL后面,例如獲取病人列表的API名稱為GetPatient,參數有3個:userid、type、page,分別表示用戶的唯一標識ID,病人的類型,page用于控制分頁處理。則拼接完成的URL就是1:8009/API//DoctorInterface.aspx?op=GetPatient&userid=7&type=1&page=1。接下來就是簡單的Get接口的設置,代碼如下NSURLRequest*request=[NSURLRequestrequestWithURL:[NSURLURLWithString:strUrl]];AFHTTPRequestOperation*operation=[[AFHTTPRequestOperationalloc]initWithRequest:request];[operationsetCompletionBlockWithSuccess:^(AFHTTPRequestOperation*operation,idresponseObject)//成功如果發(fā)送的請求是正常且合法的,并且網絡連接正常。就會獲得API服務器端獲得返回結果,返回的結果為Json。在獲取結果的時候,先使用AFN框架,從請求中獲取結果,再講Json反序列化為字典:NSLog(@"%@",operation.responseString);NSDictionary*dicData=[NSJSONSerializationJSONObjectWithData:responseObjectoptions:kNilOptionserror:nil];再將數據獲取結果進行進一步處理,將各個字段進行分類。在這里我用到一個數據模型的概念,將成組的許多字段整合起來,變成一個模型的一些屬性。模型可以被復用,并且將模型存入數組,則在數組中,就能夠取得相應的成組的字段的各個值。在取數據的方面,操作如下:NewBean*bean=[_marrALLobjectAtIndex:_indexPath.row];將數組中的模型按照Index取出來并用一個NewBean指針指向這個內存地址,方便使用。假設我們需要取到這個病人的名字,我們只需要調用模型中的strName,就會調用到他的get方法,取到存儲在模型中的Name值。然后將值賦值給一個Lable:OrderBean*bean=[marrTempobjectAtIndex:indexPath.row];lblMed.text=bean.strMedicName;在APP中大部分Http請求與現(xiàn)實都是按照上面的方法進行的。6系統(tǒng)測試6.1測試中出現(xiàn)的問題問題記錄序號故障現(xiàn)象引起原因1應用閃退數組越界,引起取不到相應Index在字典中存入nil值子線程阻塞主UI線程過久在界面?zhèn)髦堤幚聿划攲е氯≈禐閚il2UITableView復用問題在UITableViewCell創(chuàng)建中不是單次創(chuàng)建3賦值錯誤利用viewWithTag:尋找子View時,對象類型錯誤,對象tag值重復6.2測試總結在測試中,出現(xiàn)了一些閃退以及UITableView復用出現(xiàn)的問題,閃退的原因有許多都是由于一些不恰當的判斷引起的,在以后的開發(fā)用,我會盡力在開發(fā)過程中,考慮全面,該做判斷的地方做好判斷,防止數據越界引起閃退等問題。

總結隨著醫(yī)院信息化進程的加速,國內大多數醫(yī)院開始建立起自己的信息化系統(tǒng)群。一直以來,醫(yī)護工作都被公認為是繁瑣的,量大的,壓力大的,責任大的,易出錯的等等;再加上人手不足,中大型城市醫(yī)療資源缺乏等等因素,使得護理工作更加艱巨。經過接近一年的修修改改,版本迭代與升級,醫(yī)生小助手1.0版本已經接近末尾階段。在這一年的時間里,我與醫(yī)生小助手一同成長,一同進步。在過程中碰到過許多的問題與困難,到現(xiàn)在已經能夠獨當一面,獨立完成一個項目。本文以iOS與AFNetworking技術為基礎,詳細論述了移動護理系統(tǒng)的詳細設計與實現(xiàn),并且成功解決了傳統(tǒng)醫(yī)護行業(yè)中的一些問題與矛盾。大大簡化了醫(yī)生、護士的工作方式,讓整個醫(yī)護流程更加的清晰可見,可以準確無誤的記錄醫(yī)生的開單、護士的工作流程、病人的信息與病歷等,不用再有繁瑣的病歷本、容易丟失的病歷卡等等,只需要一臺移動智能設備,就能夠隨時隨地的進行開方治療操作,并且所有的資料都有服務器統(tǒng)一管理,也不會有混亂、丟失的情況出現(xiàn)。

參考文獻[1]堪永毅,湯新輝.臨床護理工作標準流程圖表[M].湖南;湖南科技出版社,2012.02:3-86.[2]了淑貞.臨床護理工作規(guī)范管理流程手冊[M].北京:人民衛(wèi)生出版社,2009.09:5-97.[3]關東升,趙志榮,賈云龍.iPhone與iPad開發(fā)實戰(zhàn):iOS經典應用剖析[M].人民出版社,2013.12:3-67.[4]羅軍舟,吳文甲,楊明.移動互聯(lián)網:終端、網絡與服務[J].計算機學報.2011.11:4-69.[5]陳子涵,吳明暉,應晶.基于MDA的移動應用開發(fā)框架[J].計算機工程.2011.18:50-105.[6]夏浩波.單例模式的設計與應用[J].電腦開發(fā)與應用.2011.05:01-99.[7]黃金國,羅震.手機應用程序開發(fā)架構的研究[J].計算機工程與科學.2010.05:11-21.[8]張琳琳,應時,倪友聰,趙楷,文靜.一種軟件體系結構關注點分析方法[J].計算機學報.2009.09:08.基于C8051F單片機直流電動機反饋控制系統(tǒng)的設計與研究基于單片機的嵌入式Web服務器的研究MOTOROLA單片機MC68HC(8)05PV8/A內嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機溫度控制系統(tǒng)的研制基于MCS-51系列單片機的通用控制模塊的研究基于單片機實現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調節(jié)器單片機控制的二級倒立擺系統(tǒng)的研究基于增強型51系列單片機的TCP/IP協(xié)議棧的實現(xiàn)基于單片機的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機系統(tǒng)的圖像采集與處理技術的研究基于單片機的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機的交流伺服電機運動控制系統(tǒng)研究與開發(fā)基于單片機的泵管內壁硬度測試儀的研制基于單片機的自動找平控制系統(tǒng)研究基于C8051F040單片機的嵌入式系統(tǒng)開發(fā)基于單片機的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機實現(xiàn)一種基于單片機的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機沖床數控系統(tǒng)的研究基于CYGNAL單片機的在線間歇式濁度儀的研制基于單片機的噴油泵試驗臺控制器的研制基于單片機的軟起動器的研究和設計基于單片機控制的高速快走絲電火花線切割機床短循環(huán)走絲方式研究基于單片機的機電產品控制系統(tǒng)開發(fā)基于PIC單片機的智能手機充電器基于單片機的實時內核設計及其應用研究基于單片機的遠程抄表系統(tǒng)的設計與研究基于單片機的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機系統(tǒng)單片機系統(tǒng)軟件構件開發(fā)的技術研究基于單片機的液體點滴速度自動檢測儀的研制基于單片機系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機的電能采集終端的設計和應用基于單片機的光纖光柵解調儀的研制氣壓式線性摩擦焊機單片機控制系統(tǒng)的研制基于單片機的數字磁通門傳感器基于單片機的旋轉變壓器-數字轉換器的研究基于單片機的光纖Bragg光柵解調系統(tǒng)的研究單片機控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機的多生理信號檢測儀基于單片機的電機運動控制系統(tǒng)設計Pico專用單片機核的可測性設計研究基于MCS-51單片機的熱量計基于雙單片機的智能遙測微型氣象站MCS-51單片機構建機器人的實踐研究基于單片機的輪軌力檢測基于單片機的GPS定位儀的研究與實現(xiàn)基于單片機的電液伺服控制系統(tǒng)用于單片機系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機的時控和計數系統(tǒng)性能優(yōu)化的研究基于單片機和CPLD的粗光柵位移測量系統(tǒng)研究單片機控制的后備式方波UPS提升高職學生單片機應用能力的探究基于單片機控制的自動低頻減載裝置研究基于單片機控制的水下焊接電源的研究基于單片機的多通道數據采集系統(tǒng)基于uPSD3234單片機的氚表面污染測量儀的研制基于單片機的紅外測油儀的研究96系列單片機仿真器研究與設計基于單片機的單晶金剛石刀具刃磨設備的數控改造基于單片機的溫度智能控制系統(tǒng)的設計與實現(xiàn)基于MSP430單片機的電梯門機控制器的研制基于單片機的氣體測漏儀的研究基于三菱M16C/6N系列單片機的CAN/USB協(xié)議轉換器基于單片機和DSP的變壓器油色譜在線監(jiān)測技術研究基于單片機的膛壁溫度報警系統(tǒng)設計基于AVR單片機的低壓無功補償控制器的設計基于單片機船舶電力推進電機監(jiān)測系統(tǒng)基于單片機網絡的振動信號的采集系統(tǒng)基于單片機的大容量數據存儲技術的應用研究基于單片機的疊圖機研究與教學方法實踐基于單片機嵌入式Web服務器技術的研究及實現(xiàn)基于AT89S52單片機的通用數據采集系統(tǒng)基于單片機的多道脈沖幅度分析儀研究機器人旋轉電弧傳感角焊縫跟蹤單片機控制系統(tǒng)基于單片機的控制系統(tǒng)在PLC虛擬教學實驗中的應用研究基于單片機系統(tǒng)的網絡通信研究與應用基于PIC16F877單片機的莫爾斯碼自動譯碼系統(tǒng)設計與研究基于單片機的模糊控制器在工業(yè)電阻爐上的應用研究基于雙單片機沖床數控系統(tǒng)的研究與開發(fā)\t"_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論