




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
浙江經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院畢業(yè)論文(設(shè)計(jì))第2頁(yè)第頁(yè)1緒論隨著科技的發(fā)展,各類(lèi)市場(chǎng)上的智能手機(jī)的普及,APP也被越來(lái)越多的人使用起來(lái),APP能使人們的生活更加便捷、更加高效。無(wú)線網(wǎng)絡(luò)的覆蓋率也日漸增加。而且目前我國(guó)的臨床護(hù)理、診治行業(yè)越來(lái)越重視信息化建設(shè),這個(gè)行業(yè)也非常適合和需要移動(dòng)設(shè)備和移動(dòng)系統(tǒng)的支持和使用。傳統(tǒng)的方式的復(fù)雜與繁瑣已經(jīng)無(wú)法滿足現(xiàn)在大量病人的需要與需求。同時(shí)移動(dòng)APP系統(tǒng)的靈活、便捷等等特性,也被大家接受和青睞。1.1背景意義我國(guó)的醫(yī)療行業(yè)總的來(lái)說(shuō)還處于一個(gè)比較初級(jí)的階段。因?yàn)樾袠I(yè)內(nèi)大部分的高科技、高技術(shù)的設(shè)備是由國(guó)外生產(chǎn)并且掌握技術(shù)。中國(guó)的人口基數(shù)過(guò)大、醫(yī)療人員數(shù)量不足、技術(shù)相對(duì)國(guó)外來(lái)說(shuō)并不成熟、缺乏專(zhuān)業(yè)人才對(duì)就醫(yī)流程進(jìn)行規(guī)范和優(yōu)化等等的原因,造成了我國(guó)整個(gè)醫(yī)療系統(tǒng)的工作非常繁瑣與復(fù)雜。為了提高就醫(yī)的效率、質(zhì)量。我國(guó)的醫(yī)院開(kāi)始實(shí)施信息化建設(shè)。到現(xiàn)在來(lái)說(shuō),大部分的醫(yī)院已經(jīng)有了比較完善的信息化系統(tǒng)。將許多的業(yè)務(wù)流程與檢驗(yàn)數(shù)據(jù)、檢驗(yàn)報(bào)告等等聯(lián)系起來(lái)。1.2發(fā)展趨勢(shì)對(duì)于臨床醫(yī)學(xué)這個(gè)行業(yè)來(lái)說(shuō),機(jī)動(dòng)性和準(zhǔn)確性是最重要的一點(diǎn),所以將移動(dòng)APP開(kāi)發(fā)引入醫(yī)學(xué)行業(yè)可以解決下列問(wèn)題:(1)醫(yī)生、護(hù)士只要隨身攜帶一臺(tái)移動(dòng)設(shè)備就可以進(jìn)行隨時(shí)隨地的工作,不用攜帶大量的資料、病例夾。一個(gè)角度來(lái)說(shuō),減少了醫(yī)生、護(hù)士的負(fù)重。另外一個(gè)方面來(lái)說(shuō),加快了醫(yī)生、護(hù)士的開(kāi)方、診斷錄入的速度。(2)優(yōu)化了醫(yī)生、護(hù)士的工作流程、可以避免一些重復(fù)的工作、可以清晰的看到這位病人之前的病史、并且可以查閱之前的開(kāi)方治療記錄。(3)對(duì)于護(hù)士來(lái)說(shuō),優(yōu)化了工作的流程。讓需要做的工作一目了然。(4)做到了無(wú)紙化作業(yè),使用APP內(nèi)的電子文字代替。不會(huì)丟失、混亂,而且方便查找與搜索。1.3系統(tǒng)開(kāi)發(fā)目標(biāo)系統(tǒng)采用View/Models體系結(jié)構(gòu),利用Object-C和Xcode進(jìn)行開(kāi)發(fā)的,具有簡(jiǎn)單、易用性、用戶界面友好等特點(diǎn)。系統(tǒng)開(kāi)發(fā)的目標(biāo)主要是:(1)界面設(shè)計(jì)簡(jiǎn)潔、友好、美觀大方;(2)操作簡(jiǎn)單、快捷方便;(3)提升護(hù)理、開(kāi)發(fā)管理水平;(4)保障醫(yī)療質(zhì)量,提高工作效率;2系統(tǒng)開(kāi)發(fā)技術(shù)介紹2.1iOS系統(tǒng)iOS是由美國(guó)蘋(píng)果開(kāi)發(fā)的移動(dòng)設(shè)備操作系統(tǒng),適用于iPhone,ipad,ipod-touch等蘋(píng)果公司生產(chǎn)的移動(dòng)設(shè)備目前最高的版本是9.3.1以系統(tǒng)穩(wěn)定,UI精美,系統(tǒng)操作流暢而聞名于全球,是全世界優(yōu)秀操作系統(tǒng)之一。2.1.1iOS系統(tǒng)概述iOS是由蘋(píng)果公司為iPhone、iPodTouch以及iPad使用而開(kāi)發(fā)的操作系統(tǒng)。與蘋(píng)果公司MacOSX操作系統(tǒng)一樣,都是基于Unix操作系統(tǒng)的。原本這個(gè)系統(tǒng)名為iPhone0S,直到2010年6月7日蘋(píng)果電腦全球研發(fā)者大會(huì)(APPleWorldwide.DevelopersConference,簡(jiǎn)稱(chēng)WWDC)大會(huì)上宣布改名為iOS。iOS的系統(tǒng)架構(gòu)分為4個(gè)層次:核也操作系統(tǒng)層(theCoreOSlayer),核心服務(wù)層(theCoreServiceslayer),媒體層(theMedialayer),可輕觸層(theCocoaTouchlayer),系統(tǒng)操作占用大概240MB的存儲(chǔ)器空間。與Android系統(tǒng)不同,iOS是封閉的,無(wú)法在蘋(píng)果以外的設(shè)備上使用iOS??傮w來(lái)說(shuō),iOS具有從下4點(diǎn)特質(zhì):(1)高度的硬件整合性相比于Windows和Android系統(tǒng),iOS對(duì)于硬件的整合度可以用苛刻來(lái)形容。iOS只能運(yùn)行在蘋(píng)果公司自己的所對(duì)應(yīng)的硬件設(shè)備上,嚴(yán)格禁止硬件分化,絕對(duì)不隨便做出適應(yīng)性和兼容性的調(diào)整,這樣做在保證蘋(píng)果公司自己硬件產(chǎn)品商業(yè)價(jià)值的同時(shí),也保證了iOS與硬件的完美適配度,做到最大程度的優(yōu)化和匹配。(2)華麗的UI和良好用戶體驗(yàn)iOS的界面完全可稱(chēng)之為精美,蘋(píng)果的圓角圖標(biāo)設(shè)計(jì),早期的擬物化圖標(biāo)設(shè)計(jì),在當(dāng)時(shí)很快就成為行業(yè)的風(fēng)向標(biāo)。到了今年,蘋(píng)果大刀闊斧的進(jìn)行界面改革,提出了扁平化設(shè)計(jì),同樣,很快又成為了行業(yè)內(nèi)的標(biāo)桿,無(wú)數(shù)廠家競(jìng)相模仿。而由于iOS的深度優(yōu)化,用戶在使用iOS的時(shí)候很少會(huì)感覺(jué)到頓卡感,無(wú)論什么操作都是極為流暢,大大的増強(qiáng)了用戶的體驗(yàn)。(3)系統(tǒng)穩(wěn)定性及安全性由于硬件整合度高,所以系統(tǒng)的穩(wěn)定性相對(duì)也就高。iOS系統(tǒng)在運(yùn)行過(guò)程中,很少會(huì)出現(xiàn)死機(jī),白屏,崩潰,報(bào)錯(cuò)等現(xiàn)象,系統(tǒng)無(wú)故障運(yùn)行時(shí)間非常長(zhǎng)。同時(shí)蘋(píng)果對(duì)于數(shù)據(jù)安全的要求非常高,所有推送信息必須經(jīng)過(guò)蘋(píng)果服務(wù)器,而且蘋(píng)果公司對(duì)于用戶的隱私保護(hù)要求非常嚴(yán)格,所以iOS也是一個(gè)安全性非常高的操作系統(tǒng)。(4)豐富的應(yīng)用在APPStore中,有35萬(wàn)以上的海量應(yīng)用供用戶使用,當(dāng)然,其中部分是需要付費(fèi)的。但是由此可以看出,用戶始終都可在iOS上發(fā)現(xiàn)新的驚喜和新的未知,這也是iOS,而APPStore同時(shí)也為開(kāi)發(fā)者提供了一個(gè)發(fā)布和銷(xiāo)售軟件的理想之地,同時(shí)也為用戶過(guò)濾了惡意軟件和垃圾軟件,也是iOS的魅力所在。2.1.2iOSSDK簡(jiǎn)介2007年10月17日,史蒂夫喬布斯在一封張貼于蘋(píng)果公司網(wǎng)頁(yè)上的公開(kāi)信上宣布軟件開(kāi)發(fā)工具包(SDK),并于2008年3月6日發(fā)布,允許開(kāi)發(fā)人員開(kāi)發(fā)iPhone和iPodtouch的應(yīng)用程序,并對(duì)其進(jìn)行測(cè)試,名為"iPhone手機(jī)模擬器",且需要擁有英特爾處理器且運(yùn)行MacOSXLeopard系統(tǒng)的Mac機(jī)才能使用,截止到現(xiàn)在,最新的版本已經(jīng)到了SDK9.3iPhoneSDK包含了用于開(kāi)發(fā)iPhone和iPodTouch應(yīng)用程序的一整套開(kāi)發(fā)工具,主要包括:(1)Xcode該集成開(kāi)發(fā)環(huán)境(IDE)用于管理、編輯與調(diào)試項(xiàng)目。Xcode中的IDE提供了大量的工具與功能,能極大減輕開(kāi)發(fā)工作量,特別是其中一個(gè)功能叫做CodeCompletion(代碼補(bǔ)全),它會(huì)顯示一個(gè)彈出列表,里面有可用的類(lèi)與成員(如方法、屬性等)。(2)iPhoneSimulator這是一個(gè)軟件模擬器,用于在Mac上模擬使用iPhone,它在Xcode運(yùn)行(或是調(diào)試)應(yīng)用程序時(shí)會(huì)自動(dòng)啟動(dòng)。Xcode會(huì)自動(dòng)將應(yīng)用程序安裝到iPhoneSimulator上進(jìn)行模擬真機(jī)運(yùn)行環(huán)境。(3)InterfaceBuilder提供了一個(gè)可視化編輯器,用于設(shè)計(jì)iPhone應(yīng)用程序的界面。可以在InterfaceBuilder中將視圖拖到窗口上并將各種視圖連接到變量和動(dòng)作上,這樣它們就能以編程的方式與代碼交互。(4)Instruments這是一個(gè)分析工具,可實(shí)時(shí)優(yōu)化應(yīng)用程序,用于動(dòng)態(tài)跟蹤與分析MacOSX和iPhone應(yīng)用程序的性能,包括對(duì)應(yīng)用程序進(jìn)行壓力測(cè)試,跟蹤應(yīng)用程序的內(nèi)存泄漏問(wèn)題,更深入地理解應(yīng)用程序的執(zhí)行行為,及跟蹤應(yīng)用程序中難重現(xiàn)的問(wèn)題等[3]。2.2AFNetworking框架在本項(xiàng)目中使用的框架稱(chēng)為AFNetworking框架,AFNetworking是一個(gè)為iOS和MacOSX制作的令人愉快的網(wǎng)絡(luò)庫(kù),它建立在URL裝載系統(tǒng)框架的頂層,內(nèi)置在Cocoa里,擴(kuò)展了強(qiáng)有力的高級(jí)網(wǎng)絡(luò)抽象。它的模塊架構(gòu)被良好的設(shè)計(jì),擁有豐富的功能。支持HTTP請(qǐng)求和基于REST的網(wǎng)絡(luò)服務(wù)(包括GET、POST、PUT、DELETE等)2.2.1HTTP請(qǐng)求AFHTTPRequestOperationManager封裝的共同模式與web應(yīng)用程序通過(guò)HTTP通信,包括創(chuàng)建請(qǐng)求,響應(yīng)序列化,網(wǎng)絡(luò)可達(dá)性監(jiān)控、運(yùn)營(yíng)管理和安全,以及請(qǐng)求。(1)HTTP請(qǐng)求之GET請(qǐng)求,示例代碼如下。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請(qǐng)求之POST請(qǐng)求,示例代碼如下。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的網(wǎng)絡(luò)服務(wù)(范文略)2.3Json序列化與反序列化在醫(yī)生小助手中,還用到了一些其他的技術(shù),例如Json、基于AFNetworking框架的圖片上傳、網(wǎng)絡(luò)圖片解析等。在醫(yī)生小助手中,移動(dòng)端的APP數(shù)據(jù)接口層傳輸數(shù)據(jù)統(tǒng)一使用的是Json格式,因此涉及到一些Json序列化與反序列化的技術(shù)。Json是一種數(shù)據(jù)傳輸格式。例如在SOA架構(gòu)中,我們以XML作為數(shù)據(jù)傳輸格式,但是在其他一整場(chǎng)景中,可能有更加合適的傳輸格式,Json就是其中一種。Json格式的數(shù)據(jù)結(jié)構(gòu)非常簡(jiǎn)單,其解析的難度要遠(yuǎn)遠(yuǎn)小于XML。實(shí)際上,Json格式就是系列鍵值對(duì)的集合,由于其簡(jiǎn)單性,甚至可以直接閱讀。序列化是將變量轉(zhuǎn)化為可保存或可傳輸?shù)淖址倪^(guò)程。無(wú)論是哪種平臺(tái)或者開(kāi)發(fā)語(yǔ)言,在以Json為格式傳輸數(shù)據(jù)時(shí),都必須先序列化數(shù)據(jù)或者數(shù)據(jù)集。Json序列化的過(guò)程實(shí)際上就是把數(shù)據(jù)和數(shù)據(jù)集變?yōu)殒I值對(duì)的字符串,然后將這個(gè)字符串返回給請(qǐng)求者。而反序列化正好巧反,請(qǐng)求者在獲得這個(gè)字符后,將其解析,并轉(zhuǎn)化成數(shù)據(jù)或者數(shù)據(jù)集便使用。2.4系統(tǒng)開(kāi)發(fā)與運(yùn)行環(huán)境設(shè)計(jì)2.4.1軟件環(huán)境(1)操作系統(tǒng):MacOSXEICapitan10.11.1或更高版本(2)開(kāi)發(fā)工具:Xcode7.32.4.2運(yùn)行環(huán)境(1)操作系統(tǒng):iOS7.0或更高版本……(范文略)3系統(tǒng)需求分析為了改善看病難,醫(yī)患關(guān)系緊張的情況,提高病人看病的效率,我們開(kāi)發(fā)了主要給醫(yī)生護(hù)士使用的專(zhuān)業(yè)APP。這款軟件是讓醫(yī)生和病人更容易溝通了解,提高病人的看病效率,讓醫(yī)生護(hù)士真正的走進(jìn)病人,服務(wù)病人,成為一款類(lèi)似家庭醫(yī)院的讓醫(yī)護(hù)人員使用的的專(zhuān)業(yè)APP。軟件分為兩個(gè)端:移動(dòng)端,PC端。而PC端又分為總管控和醫(yī)院后臺(tái),這讓平臺(tái)更加方便快捷分類(lèi)的管理醫(yī)護(hù)人員,具體的管理好對(duì)移動(dòng)端的數(shù)據(jù)分配及相關(guān)的數(shù)據(jù)統(tǒng)計(jì)。移動(dòng)端的兩個(gè)軟件“醫(yī)生小助手”和“蘇姍護(hù)理”分別給醫(yī)生和護(hù)士使用,讓醫(yī)護(hù)人員攜帶著移動(dòng)設(shè)備就能隨時(shí)隨地的辦公,方便快捷的溝通對(duì)病情進(jìn)行診斷,開(kāi)方治療,讓病人在家就能受到醫(yī)護(hù)人員的治療。以下將對(duì)醫(yī)生端“醫(yī)生小助手”進(jìn)行具體的功能及結(jié)構(gòu)的分析。3.1系統(tǒng)功能需求分析由需求分析可知,醫(yī)生小助手軟件主要用戶是醫(yī)生,供醫(yī)生錄入病人基本資料,醫(yī)生診斷錄入,及相應(yīng)的開(kāi)單,跟蹤治療流程及病人的信息管理等等。由此可知,軟件包括用戶信息板塊、病人信息板塊、醫(yī)生開(kāi)單板塊、治療流程板塊、賬戶板塊等五個(gè)功能模塊。其中用戶信息板塊包括對(duì)登錄注冊(cè)醫(yī)生的信息的錄入登錄軟件操作軟件,基本信息的完善與修改;病人信息板塊包括對(duì)病人的基本信息的錄入已查看已存在的病人的病歷;醫(yī)生開(kāi)單板塊包括開(kāi)檢查化驗(yàn)單、處方單和護(hù)理單,所開(kāi)單子將傳給后臺(tái)工作人員,進(jìn)行下一步護(hù)士上門(mén)服務(wù)的流程。治療流程板塊是對(duì)醫(yī)生所治療的病人的資料進(jìn)度進(jìn)行跟蹤,查看已經(jīng)反饋;醫(yī)生提現(xiàn)返現(xiàn)板塊包括返現(xiàn)的記錄,現(xiàn)有的賬戶余額(主要是診費(fèi)),對(duì)賬戶余額進(jìn)行提現(xiàn)。3.2功能描述和用例分析3.2.1功能描述醫(yī)生小助手的主要使用人群是醫(yī)生,醫(yī)生只要隨身攜帶一臺(tái)移動(dòng)設(shè)備就可以進(jìn)行隨時(shí)隨地的工作。首先醫(yī)生需要開(kāi)通一個(gè)賬戶,后臺(tái)審核通過(guò)成為平臺(tái)的醫(yī)生。當(dāng)有病人看病的情況下,對(duì)病人的基本信息及診斷的病情錄入設(shè)備,保存到PC管理端。在這基礎(chǔ)上,對(duì)病情需要進(jìn)行相應(yīng)的開(kāi)單,根據(jù)醫(yī)生端的開(kāi)單PC端分配病人給護(hù)士,護(hù)士上門(mén)服務(wù),醫(yī)生根據(jù)護(hù)士反饋的信息再次開(kāi)單,病情嚴(yán)重的轉(zhuǎn)到相應(yīng)的醫(yī)院進(jìn)行后需要的治療。醫(yī)生不斷根據(jù)跟蹤治療流程,對(duì)護(hù)士反饋分析診斷知道病情診治完成,醫(yī)生可結(jié)束治療。醫(yī)生端賬戶上會(huì)有相應(yīng)的診費(fèi)的返現(xiàn),對(duì)這些返現(xiàn)的金額可以提現(xiàn)到支付寶或者銀行卡。3.2.2系統(tǒng)用例圖醫(yī)生小助手的總體結(jié)構(gòu),如下圖所示:軟件包括用戶信息板塊、病人信息板塊、醫(yī)生開(kāi)單板塊、治療流程板塊、賬戶板塊等五個(gè)功能模塊。該系統(tǒng)用例圖如圖3.2所示。圖3.2醫(yī)生小助手用例圖4系統(tǒng)設(shè)計(jì)本章詳細(xì)描述了iOSAPP“醫(yī)生小助手”,數(shù)據(jù)接口層API和數(shù)據(jù)同步層的設(shè)計(jì)與實(shí)現(xiàn)。4.1概要設(shè)計(jì)本系統(tǒng)使用了AFNetworking框架主要用于數(shù)據(jù)訪問(wèn),通過(guò)一個(gè)AFHTTPRequestOperation實(shí)例對(duì)象,在APP端和服務(wù)器之間傳遞數(shù)據(jù)。iOSAPP“醫(yī)生小助手”是醫(yī)生用來(lái)對(duì)病人信息進(jìn)行錄入,對(duì)病人診斷后進(jìn)行開(kāi)方的端口,向醫(yī)生提供了業(yè)務(wù)操作最直接的交互界面,幾乎所有操作都在裝有“醫(yī)生小助手”的iOS設(shè)備上完成。數(shù)據(jù)交互部分主要是通過(guò)發(fā)生Http請(qǐng)求調(diào)用API接口,并將返回的Json字符串反序列化顯示在界面,設(shè)備首頁(yè)如下圖4-1所示。圖4.1首頁(yè)根據(jù)3.1節(jié)的系統(tǒng)功能分析可知“醫(yī)生小助手”包括用戶信息板塊、病人信息板塊、醫(yī)生開(kāi)單板塊、治療流程板塊、賬戶板塊等五個(gè)功能模塊,其功能結(jié)構(gòu)圖如圖4.2所示。圖4.2醫(yī)生小助手功能結(jié)構(gòu)圖4.2詳細(xì)設(shè)計(jì)4.2.1添加病人模塊設(shè)計(jì)對(duì)于每位第一次來(lái)醫(yī)院的新的病人而言,首先需要對(duì)病人的信息進(jìn)行一個(gè)錄入操作,方便后續(xù)管理與查閱,減輕醫(yī)生后續(xù)操作。它的流程圖如圖4.3所示。圖4.3添加病人信息4.2.2添加診斷模塊設(shè)計(jì)在添加錄入病人信息之后,需要對(duì)病人添加醫(yī)生的診斷信息,用于表示病人的癥狀和所屬的病人病癥屬于的信息。它的流程圖如圖4.4所示。圖4.4添加病人診斷4.2.3檢查單模塊設(shè)計(jì)在添加完病人診斷之后,需要對(duì)病人的病情有一個(gè)更為全面的了解,需要對(duì)病人做一系列的檢查。它的流程圖如圖4.5所示。圖4.5添加檢查單4.2.4處方單模塊設(shè)計(jì)在經(jīng)過(guò)詳細(xì)的檢查與化驗(yàn)之后,對(duì)病人的病情有了一個(gè)詳細(xì)的了解,之后就需要針對(duì)病人的病情進(jìn)行開(kāi)處方藥操作。它的流程圖如圖4.6所示。開(kāi)單(處方單)開(kāi)單(處方單)選擇處方藥分類(lèi)是否確認(rèn)開(kāi)單約定地點(diǎn)確認(rèn)開(kāi)單內(nèi)容提交開(kāi)單選擇處方藥物添加處方成組藥填寫(xiě)藥品用量與單位填寫(xiě)處方用法與頻次圖4.6添加處方單4.2.5護(hù)理單模塊設(shè)計(jì)圖4.7添加護(hù)理單5系統(tǒng)實(shí)現(xiàn)在APP的表現(xiàn)層本身并沒(méi)有進(jìn)行任何的業(yè)務(wù)邏輯的功能實(shí)現(xiàn),所以的工作功能都是調(diào)用API然后獲取Json字符串反序列化得到的結(jié)果集,并將結(jié)果顯示在界面上。5.1添加病人模塊實(shí)現(xiàn)在添加病人模塊中,我們需要錄入病人的姓名、聯(lián)系電話、性別、出生日期、年齡、家庭住址、家庭詳細(xì)地址、所屬醫(yī)院的信息。年齡是按照出生日期的選擇,通過(guò)選擇的日期到今天的日期來(lái)計(jì)算得出的。頁(yè)面及主要實(shí)現(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添加診斷模塊實(shí)現(xiàn)在添加病人診斷模塊中,我們可以看到之前所填寫(xiě)的病人姓名、性別、電話、詳細(xì)住址等信息,對(duì)病人的情況有一定的了解之后,可以在下方對(duì)病人的病況有一個(gè)詳細(xì)的描述,為病人的檢查開(kāi)單做準(zhǔn)備。在這個(gè)頁(yè)面我使用了iOS系統(tǒng)自帶的類(lèi)UITableViewCell,使用這個(gè)類(lèi)能夠相當(dāng)方便的生成列表結(jié)構(gòu),并自動(dòng)進(jìn)行內(nèi)存緩存處理。頁(yè)面及主要實(shí)現(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)建一個(gè)UIImageView控件用于存放頭像的圖標(biāo))//創(chuàng)建性別的頭像……(創(chuàng)建一個(gè)UIImageView控件用于存放性別的圖標(biāo))//創(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添加檢查單模塊實(shí)現(xiàn)在添加了病人詳細(xì)的病況描述之后,我們?yōu)榱藢?duì)病人的病情有一個(gè)全面并且清晰的了解或許需要對(duì)進(jìn)行一些檢查項(xiàng)目的檢查,或者對(duì)病人進(jìn)行開(kāi)藥、做護(hù)理等操作。類(lèi)似的頁(yè)面我們需要對(duì)頁(yè)面做一些適配操作,對(duì)于4、4s和6、6p等不同的屏幕尺寸進(jìn)行不同的大小展示,方便用戶操作,提升頁(yè)面的美觀度。在這里我主要使用了屏幕的寬與長(zhǎng)的比例對(duì)模塊進(jìn)行等比例放大縮小操作,這也是比較常用的一種適配方法。頁(yè)面及主要實(shí)現(xiàn)代碼如圖5.3所示。圖5.3選擇不同開(kāi)單界面-(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添加處方單模塊實(shí)現(xiàn)在通過(guò)對(duì)病人進(jìn)行一個(gè)全面的檢查化驗(yàn)之后,我們對(duì)病人的病情有了一個(gè)完整的了解,需要對(duì)病人進(jìn)行開(kāi)處方藥操作,則我們需要點(diǎn)擊圖5.3中的處方按鈕。需要在醫(yī)院的藥品庫(kù)中選擇相應(yīng)的治療藥物進(jìn)行治療,為選擇的處方藥物的用法用量進(jìn)行一個(gè)設(shè)置,處方單模塊頁(yè)面及主要實(shí)現(xiàn)代碼如圖5.4-5.6所示。圖5.4開(kāi)處方單-(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重復(fù)初始化)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設(shè)置表的內(nèi)容-(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處方藥物用法設(shè)置-(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添加護(hù)理單模塊實(shí)現(xiàn)在為病人添加完處方藥物進(jìn)行治療的過(guò)程中,我們需要對(duì)病人一些護(hù)理項(xiàng)目的操作,比如靜脈輸液、換藥等等,界面及主要實(shí)現(xiàn)代碼如圖5.7所示。圖5.7選擇護(hù)理項(xiàng)目-(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數(shù)據(jù)交互Http請(qǐng)求實(shí)現(xiàn)在本系統(tǒng)中,數(shù)據(jù)的傳輸格式為Json,總體集成思路是,移動(dòng)端發(fā)起一個(gè)Http請(qǐng)求,數(shù)據(jù)接口層接受請(qǐng)求并調(diào)用業(yè)務(wù)邏輯層的邏輯進(jìn)行處理,最后再將處理完成的數(shù)據(jù)序列化成Json字符串,數(shù)據(jù)接口層通過(guò)Http返回給APP,APP獲得Json字符串后進(jìn)行反序列化,然后展現(xiàn)在界面上。當(dāng)APP需要實(shí)現(xiàn)某些功能時(shí),首先發(fā)起HttpRequest請(qǐng)求。HttpRequest主要包含兩部分,第一是URL,即請(qǐng)求目標(biāo)網(wǎng)站地址,在本系統(tǒng)中就是API服務(wù)器地址,API的名稱(chēng)就連接在URL后面,例如獲取病人列表的API名稱(chēng)為GetPatient,參數(shù)有3個(gè):userid、type、page,分別表示用戶的唯一標(biāo)識(shí)ID,病人的類(lèi)型,page用于控制分頁(yè)處理。則拼接完成的URL就是1:8009/API//DoctorInterface.aspx?op=GetPatient&userid=7&type=1&page=1。接下來(lái)就是簡(jiǎn)單的Get接口的設(shè)置,代碼如下NSURLRequest*request=[NSURLRequestrequestWithURL:[NSURLURLWithString:strUrl]];AFHTTPRequestOperation*operation=[[AFHTTPRequestOperationalloc]initWithRequest:request];[operationsetCompletionBlockWithSuccess:^(AFHTTPRequestOperation*operation,idresponseObject)//成功如果發(fā)送的請(qǐng)求是正常且合法的,并且網(wǎng)絡(luò)連接正常。就會(huì)獲得API服務(wù)器端獲得返回結(jié)果,返回的結(jié)果為Json。在獲取結(jié)果的時(shí)候,先使用AFN框架,從請(qǐng)求中獲取結(jié)果,再講Json反序列化為字典:NSLog(@"%@",operation.responseString);NSDiction
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 古箏教室消防管理制度
- 公司婚嫁產(chǎn)假管理制度
- 培訓(xùn)機(jī)構(gòu)臺(tái)賬管理制度
- 醫(yī)院器械質(zhì)量管理制度
- 單位食堂雜工管理制度
- 印刷車(chē)間臺(tái)賬管理制度
- 高效備考軟件測(cè)試試題及答案大全
- 家庭保潔安全管理制度
- 公司應(yīng)收匯票管理制度
- 理論聯(lián)系實(shí)際談一談如何傳承發(fā)展中華優(yōu)-秀傳統(tǒng)文化?參考答案
- 順路接送免責(zé)協(xié)議書(shū)
- 《手術(shù)室圍術(shù)期的護(hù)理》課件
- 2025年企業(yè)合規(guī)管理工作計(jì)劃范文
- 施工安全常識(shí)試題及答案
- 2025屆湖北省T8聯(lián)盟壓軸卷1英語(yǔ)試題
- 泳池負(fù)責(zé)人試題及答案
- 2025年跨文化溝通能力考試試卷及答案
- 聾校義務(wù)教育數(shù)學(xué)課程標(biāo)準(zhǔn)解讀與實(shí)施
- 《企業(yè)數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)》課件
- 2025新版工程咨詢合同
評(píng)論
0/150
提交評(píng)論