基于JavaEE的社區(qū)醫(yī)院遠(yuǎn)程掛號系統(tǒng)論文_第1頁
基于JavaEE的社區(qū)醫(yī)院遠(yuǎn)程掛號系統(tǒng)論文_第2頁
基于JavaEE的社區(qū)醫(yī)院遠(yuǎn)程掛號系統(tǒng)論文_第3頁
基于JavaEE的社區(qū)醫(yī)院遠(yuǎn)程掛號系統(tǒng)論文_第4頁
基于JavaEE的社區(qū)醫(yī)院遠(yuǎn)程掛號系統(tǒng)論文_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

畢業(yè)設(shè)計Word基于javaee的社區(qū)醫(yī)院遠(yuǎn)程掛號系統(tǒng)的設(shè)計與實(shí)現(xiàn)摘要如今計算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)發(fā)展趨勢良好,大眾都普遍承認(rèn)了這種信息傳遞媒介的便利性和有效性。自動化、智能化的醫(yī)院預(yù)約掛號管理系統(tǒng)已成為現(xiàn)代化醫(yī)院管理運(yùn)營中無法繞過的一部分,患者只需坐在家中,就可以掛醫(yī)院的門診號,這樣就使得門診掛號更加便捷、安全、高效。本系統(tǒng)主要服務(wù)于醫(yī)院的醫(yī)生和患者。在系統(tǒng)設(shè)計中,使用Struts2框架,采用B/S模式。數(shù)據(jù)庫采用mySql,服務(wù)器端程序使用java語言在Eclipse開發(fā)工具下進(jìn)行編寫,網(wǎng)頁采用的是JSP技術(shù),使用了JavaScript、jQuery、easyUI來進(jìn)行交互,使我們的展示更加生動、具有表現(xiàn)力。首先通過對系統(tǒng)的各方面分析,介紹系統(tǒng)的可行性。第二,通過系統(tǒng)各模塊簡介,簡單介紹系統(tǒng)構(gòu)成:用戶信息管理模塊、掛號系統(tǒng)模塊、掛號報表模塊。第三,說明系統(tǒng)實(shí)現(xiàn)所用到的各項技術(shù)的功能。最后,對已經(jīng)實(shí)現(xiàn)的系統(tǒng)功能進(jìn)行簡單測試。關(guān)鍵詞:預(yù)約掛號;醫(yī)院管理;系統(tǒng);信息化;Struts2;B/S;mySqlAbstractNowadays,thedevelopmentofcomputertechnologyandnetworktechnologyisgood,thepublicgenerallyrecognizedtheconvenienceandeffectivenessoftheinformationdeliverymedia.Computerizedhospitalappointmentregistrationmanagementsystemhasbecomeinthemodernhospitaloperationessentialpart.Thedoctorjustsitathome,youcanhangonhospitaloutpatient,candohomesinhospitalregistration",whichcaneffectivelyreducethedoctor'swaitingtime,strengthenthepatientregistrationconvenience,safety,highefficiency.Thissystemismainlyfordoctorsandpatientsinhospitals.Inthesystemdesign,theuseofStruts2framework,usingB/Smodel.Databaseusingmysql,serverapplicationsusingtheJavalanguageintheeclipsedevelopmenttoolstowrite,pageusesistheJSPtechnology,usingJavaScript,jQuery,easyUItointeract.Firstofall,throughtheanalysisofallaspectsofthesystem,thefeasibilityofthesystemisintroduced.Second,throughtheintroductionofthesystemeachmodule,abriefintroductionofthesystemcomponents:userinformationmanagementmodule,registrationsystemmodule,registrationreportmodule.Third,explainthefunctionofthetechnologyusedinthesystem.Finally,thefunctionofthesystemhasbeenimplementedtocarryoutasimpletest.Keywords:Appointmentregistration;hospitalmanagement;system;informationtechnology;Struts2;B/S;mySql目錄TOC\o"1-3"\h\u1.前言 11.1選題背景和意義 11.2選題目的 11.3國內(nèi)外發(fā)展現(xiàn)狀 21.3.1預(yù)約掛號 21.3.2預(yù)約掛號模式 21.3.3不同掛號模式各自的優(yōu)勢 21.3.4當(dāng)前預(yù)約診療服務(wù)存在的問題 31.4主要解決的問題 42.相關(guān)技術(shù)及開發(fā)環(huán)境 52.1B/S模型

52.2Struts框架

62.2.1控制器(Controller)

62.2.2模型(Model)

72.2.3視圖(View)

72.2.4struts-config.xml

72.3Tomcat6.0 82.4Jsp技術(shù) 82.5easyUI技術(shù) 82.6Eclipse開發(fā)工具 92.7MySQL數(shù)據(jù)庫簡介 92.8SQLyog圖形化管理MYSQL數(shù)據(jù)庫工具 93.需求分析 113.1系統(tǒng)功能需求分析 113.1.1不同用戶注冊及登陸功能 123.1.2用戶對患者信息進(jìn)行增刪改以及按條件查詢 123.1.3對患者的掛號信息進(jìn)行增刪改以及按條件查詢 123.2系統(tǒng)的性能需求 134.系統(tǒng)可行性分析 144.1技術(shù)可行性 144.2經(jīng)濟(jì)可行性 144.3操作可行性 144.4社會可行性 154.5面向的用戶 155.系統(tǒng)的具體設(shè)計與實(shí)現(xiàn) 165.1數(shù)據(jù)庫設(shè)計 165.1.1數(shù)據(jù)庫的總體設(shè)計 165.1.2系統(tǒng)功能模塊設(shè)計 185.1.3掛號管理模塊: 195.2系統(tǒng)的實(shí)施環(huán)境 205.2.1服務(wù)器端 205.2.2客戶端 205.3系統(tǒng)功能的實(shí)現(xiàn) 205.3.1注冊頁面模塊 205.3.2登陸頁面模塊 225.3.3主操作頁面 245.3.4歡迎頁面 255.3.5用戶信息管理 265.3.6掛號信息管理 305.3.7掛號報表 366.測試 396.1測試概述 396.1.1測試目的 396.1.2測試范圍 396.1.3測試原則 396.2測試詳細(xì)情況 396.2.1測試環(huán)境與配置 396.2.2測試類型 406.3測試總結(jié) 417.總結(jié) 428.致謝 439.參考文獻(xiàn) 44附錄:外文資料 45外文原文 45中文翻譯 55Word1.前言1.1選題背景和意義作為社會組織的一個重要組成部分,社會醫(yī)療事業(yè)是和人民生活息息相關(guān)的領(lǐng)域。隨著人們生活水平的日益提高,人們對自身所受醫(yī)療保健的要求也日益升高。醫(yī)院需要提供更高質(zhì)量的服務(wù)給大家。而醫(yī)院又是一個必須處理大量紛繁復(fù)雜的信息的機(jī)構(gòu),利用信息管理系統(tǒng)改進(jìn)醫(yī)院管理是大勢所趨。在手工業(yè)時代,對醫(yī)院的各項管理的方式是以紙、筆為主要工具。時光荏苒,隨著信息量的急速增多,這種傳統(tǒng)的手工操作的管理方式已無法快速、無誤的實(shí)現(xiàn)各項管理工作。當(dāng)醫(yī)院意識到這點(diǎn)以后,都更加重視醫(yī)院管理了。在進(jìn)入20世紀(jì)以后,伴隨著信息技術(shù)的發(fā)展以及計算機(jī)的遍及,很多醫(yī)院開始使用電腦進(jìn)行預(yù)約管理。從而提高了處理的速度與精度。醫(yī)院預(yù)約掛號系統(tǒng)的便利性主要表現(xiàn)在以下幾方面:使工作效率有了很大進(jìn)步,同時使管理中出現(xiàn)的問題得到了顯著降低,解決了異地和不便出家門的患者看病需要一遍遍跑醫(yī)院的現(xiàn)狀,大大減少了人們等待掛號的時長等等。該系統(tǒng)不光是具有其他門診掛號系統(tǒng)的功能,還可以分析和統(tǒng)計不同患者的流量、各醫(yī)生的就診量,在方便患者就診的同時,還讓醫(yī)院的資源得到了更好的利用,工作效率也提高不少。當(dāng)前國內(nèi)部分醫(yī)院使用了某些中小型的醫(yī)療管理系統(tǒng),盡管滿足了之前的某些醫(yī)療管理需求,但是伴隨著醫(yī)院管理體制的不斷改進(jìn)和完善,之前的醫(yī)療管理系統(tǒng)還不能滿足新的業(yè)務(wù)需求,因此,開發(fā)出新的適應(yīng)業(yè)務(wù)發(fā)展要求的,可擴(kuò)展性優(yōu)秀的管理軟件的需求迫在眉睫。其中掛號是提高醫(yī)院服務(wù)質(zhì)量的一個復(fù)雜而又重要的部分,尤其是在需要高水平的醫(yī)療服務(wù)和大量的門診服務(wù)的醫(yī)院。出于便利和快捷等因素的綜合考慮,用Browser/Web模式來設(shè)計預(yù)約掛號系統(tǒng)相對符合需求。通過提供便捷的掛號信息管理服務(wù),用戶可自主預(yù)約科室,時間。1.2選題目的醫(yī)療事業(yè)與我們的生活密不可分,為了幫助醫(yī)生管理紛繁復(fù)雜的患者信息,我們希望能夠完成一個實(shí)用的且功能較為完善的信息處理系統(tǒng)。由于門診掛號排隊時間長,而且環(huán)境擁擠混亂,我們提出了本課題,通過該預(yù)約掛號系統(tǒng),患者就能夠在網(wǎng)上實(shí)現(xiàn)預(yù)約掛號,而無須再受排隊之苦。系統(tǒng)要具有友好的界面,簡單的操作等特點(diǎn),以便于對雙方所輸入的信息進(jìn)行增刪改查等操作。因?yàn)橛辛烁冗M(jìn)的軟件,當(dāng)然更加符合當(dāng)今醫(yī)院為人民服務(wù)的理念。以前,病人預(yù)約就診與查詢管理都非常麻煩,需要消耗大量的人力與財力,并且每個醫(yī)院甚至同一個醫(yī)院的不同部門所采用的查詢和統(tǒng)計的方式都不一樣,錯記/漏記時有發(fā)生,有時甚至因此而導(dǎo)致醫(yī)患關(guān)系緊張?,F(xiàn)在,醫(yī)院預(yù)約掛號管理系統(tǒng)可以很好的解決以病人掛號麻煩,醫(yī)院處理信息出錯多等問題,并且該系統(tǒng)也逐漸成為了所有醫(yī)療機(jī)構(gòu)平時管理掛號業(yè)務(wù)流程的一個不可或缺的部分,同時,醫(yī)院預(yù)約掛號管理也是現(xiàn)代化醫(yī)院的核心環(huán)節(jié)之一,是患者看病的開端,是醫(yī)院管理中的重點(diǎn)之一。并且掛號管理系統(tǒng)還能為患者提供就診信息以及方便的查詢方式,很好的滿足了廣大人民群眾對于看病的需求。所以,醫(yī)院里有這樣一套預(yù)約掛號管理系統(tǒng)就顯得非常必要。1.3國內(nèi)外發(fā)展現(xiàn)狀目前醫(yī)院掛號分為門診掛號和預(yù)約掛號,我們著重討論預(yù)約掛號。1.3.1預(yù)約掛號:預(yù)約掛號的概念是相對于直接到醫(yī)院現(xiàn)場掛號的一種新型掛號方式,指患者不需要通過直接去現(xiàn)場預(yù)約、而采用或電話或網(wǎng)絡(luò)預(yù)約等形式的門診掛號方式。這種形式不僅能緩解患者的掛號難,而且為患者安排一個更合理的治療時間,減少等待時間,更能解決醫(yī)院掛號管理信息混亂的問題,也讓醫(yī)院根據(jù)具體情況來更科學(xué)的組織各個科室資源。1.3.2預(yù)約掛號模式:國內(nèi)預(yù)約掛號模式主要有以下幾種:1.在醫(yī)院進(jìn)行排隊是最早期也是最常見和最通用的一種掛號模式。由于信息技術(shù)的快速發(fā)展,某些醫(yī)院放置了自動掛號機(jī),通過自動掛號機(jī)掛號也是一種掛號方式。2.電話預(yù)約掛號:人工和自動兩種方式?;颊咄ㄟ^撥打醫(yī)院專設(shè)的電話,按照語音提示完成一系列掛號動作是系統(tǒng)自動掛號;人工掛號相當(dāng)于移動網(wǎng)絡(luò)服務(wù)提供商提供的人工服務(wù)。3.網(wǎng)上掛號系統(tǒng):這是當(dāng)今很重要的一種掛號形式?;颊呖梢酝ㄟ^互聯(lián)網(wǎng)直接預(yù)約該醫(yī)院數(shù)天內(nèi)某一具體時間段內(nèi)的號碼。1.3.3不同掛號模式各自的優(yōu)勢:預(yù)約掛號模式可以很好的分流患者,更好的避免患者集中排隊掛號,有效防止交叉感染,也可以提高門診的工作效率,節(jié)省參與者的時間。門診預(yù)約可以減輕患者就醫(yī)時的不安和焦慮等情緒,使就醫(yī)氛圍變好,也保持患者良好的心境,有利于患者康復(fù)。1.3.4當(dāng)前預(yù)約診療服務(wù)存在的問題:

1.人們對預(yù)約診療服務(wù)并不了解,認(rèn)知與接受程度不夠高,還需要普及相關(guān)知識。2.由于醫(yī)院沒有很清楚的認(rèn)識到預(yù)約診療服務(wù)的重要性,以及由于發(fā)展初期所需要投入的人力、物力、財力以及技術(shù)方面的影響,醫(yī)院開展該服務(wù)的積極性并不高。3.雖然有一小部分醫(yī)院成立了預(yù)約診療平臺,也出現(xiàn)了很少的集約式預(yù)約診療平臺,但是總體來說比較零散,且覆蓋范圍并不大,影響力有待進(jìn)一步增強(qiáng)。4.社會信用體系的缺失,醫(yī)生和患者往往出現(xiàn)晚點(diǎn)和錯過的預(yù)約現(xiàn)象,使得服務(wù)質(zhì)量受到很大的影響。5.預(yù)約患者與現(xiàn)場排隊掛號患者之間的矛盾:某些醫(yī)院不能處理好兩者之間的矛盾引發(fā)糾紛。由于國內(nèi)現(xiàn)在的預(yù)約掛號模式還有很多缺陷,因此找到適合國情的服務(wù)模式已經(jīng)成為病院門診管理的重點(diǎn)所在,也成為門診服務(wù)模式改進(jìn)的首要工作之一。加強(qiáng)醫(yī)院與預(yù)約患者的信用管理:據(jù)報道,當(dāng)前我國醫(yī)院患者的失約率居然在10%以上,有的竟然達(dá)到了50%。在許多醫(yī)院,由于醫(yī)生還要做科研和教學(xué),醫(yī)療,會議和咨詢等工作,所以有失約情況。實(shí)名制預(yù)約掛號不僅僅要培養(yǎng)患者養(yǎng)成誠信的習(xí)慣,同時也對醫(yī)生的誠信服務(wù)提出了更高要求。對于開展預(yù)約掛號的醫(yī)院要盡量做到科學(xué)合理的安排各個醫(yī)生的時間,對患者不失約,若有不得已的變動,一定要提前通知預(yù)約患者來調(diào)整就診時間,盡量不要因?yàn)獒t(yī)生的問題而使醫(yī)患關(guān)系緊張,甚至引發(fā)醫(yī)患糾紛。預(yù)約掛號服務(wù)是預(yù)約診療服務(wù)的重要組成部分,是醫(yī)療改革的焦點(diǎn)。提高預(yù)約掛號服務(wù)質(zhì)量可以使大部分患者享受到更方便,更優(yōu)質(zhì)的治療服務(wù),因此患者可以切實(shí)地受益于醫(yī)院的改革和發(fā)展成果。未來的工作應(yīng)該集中在預(yù)約掛號的時間、服務(wù)方式、涵蓋范圍、管理規(guī)范等方面,,使病人更方便享受預(yù)約服務(wù)的便利。最后,還需要讓預(yù)約范圍擴(kuò)大,同時提供人性化、精確化的預(yù)約服務(wù),使支持系統(tǒng)完善,提高預(yù)約診療服務(wù)的利用效率。隨著國內(nèi)就診患者的年齡以及受教育程度的提高和對網(wǎng)絡(luò)資源的依賴程度的提高,以及網(wǎng)絡(luò)功能和宣傳手段的不斷優(yōu)化和人民觀念的不斷改變,網(wǎng)上預(yù)約掛號的前景十分可觀,但預(yù)約掛號系統(tǒng)仍要繼續(xù)完善和優(yōu)化,并需要優(yōu)先對已習(xí)慣這種資源的患者進(jìn)行推廣,以促進(jìn)這一掛號方式的普及。1.4主要解決的問題通過醫(yī)院的網(wǎng)上掛號系統(tǒng)能夠讓廣大人民群眾提前大致了解醫(yī)療情況,根據(jù)自身情況合理的安排就醫(yī)計劃,減少候診時間,方便就醫(yī),旨在縮短看病流程,節(jié)約患者時間,并且能有效解決醫(yī)院掛號難的問題。預(yù)約掛號大部分是通過醫(yī)療機(jī)構(gòu)提供的網(wǎng)絡(luò)或電話進(jìn)行,所以基本上是免費(fèi)或者只收取很少的手續(xù)費(fèi)。預(yù)約掛號必須提前添加患者個人基本信息,能夠促進(jìn)"實(shí)名制”的推行,還不用在醫(yī)院掛號窗口排隊,不僅為患者提供了便利,還改善了就醫(yī)環(huán)境。網(wǎng)上預(yù)約正在悄然改變城市患者的醫(yī)療理念,預(yù)約看病將變得越來越深入人心。2.相關(guān)技術(shù)及開發(fā)環(huán)境2.1B/S模型

B/S:Browser/Server,即瀏覽器/服務(wù)器,大部分用HTTP協(xié)議。訪問過程:首先打開瀏覽器,在瀏覽器中輸入網(wǎng)址,瀏覽器按照網(wǎng)址向?qū)?yīng)的IP發(fā)送request訪問請求,接收該請求之后,服務(wù)器通過一系列處理返回請求,最后瀏覽器顯示服務(wù)器返回的網(wǎng)頁。注:以上是一個簡略的執(zhí)行過程,中間還省略了一系列詳細(xì)過程。B/S模式最大特點(diǎn)是:客戶機(jī)上只要安裝一個瀏覽器,用戶可以通過這個瀏覽器去訪問互聯(lián)網(wǎng)上的多種類型的信息。如圖2-1所示:圖2-1

B/S模型結(jié)構(gòu)圖B/S的通信模式是使用使用http來實(shí)現(xiàn)的。瀏覽器與服務(wù)器之間的交互,是一次http通信過程,包括以下7個步驟:

(1)建立TCP連接;

(2)瀏覽器向服務(wù)器發(fā)送請求命令(即http請求);

(3)瀏覽器發(fā)送請求頭信息;

(4)服務(wù)器應(yīng)答(即http響應(yīng));

(5)服務(wù)器發(fā)送應(yīng)答頭信息

(6)服務(wù)器向?yàn)g覽器發(fā)送數(shù)據(jù)

(7)服務(wù)器關(guān)閉TCP連接注:http請求與響應(yīng)格式,見網(wǎng)址:/shaoge/archive/2009/08/14/1546019.html項目利用了典型的MVC三層結(jié)構(gòu),分為中間層(業(yè)務(wù)邏輯層)、表現(xiàn)層和數(shù)據(jù)服務(wù)層。業(yè)務(wù)邏輯層是傳統(tǒng)的JSP技術(shù),具有跨平臺特性,且性能穩(wěn)定,為它成為業(yè)務(wù)邏輯層技術(shù)奠定了牢固的基礎(chǔ)??刂茖优c業(yè)務(wù)邏輯層細(xì)分為以下幾種。該系統(tǒng)的MVC框架采用Struts。Service層(就是業(yè)務(wù)邏輯層),負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯。2.2Struts框架

Struts框架中與MVC模式相關(guān)的有3個:模型(Model),實(shí)際上就是一個Action類,程序員可以通過它來實(shí)現(xiàn)商業(yè)邏輯,struts-config.xml文件描述的配置信息描述了控制器(Controller)向Action的轉(zhuǎn)發(fā)過程。控制器(Controller),實(shí)際上是一個Servlet,將客戶端請求轉(zhuǎn)發(fā)到特定的Action類里。struts框架的各個部分以及相互之間的運(yùn)作:

使用Struts前,我們一定要配置好JSP服務(wù)器,這樣就能夠讓服務(wù)器在有用戶請求時,知道該怎樣處理,當(dāng)然這些配置信息都在服務(wù)器啟動時通過web.xml文件讀入的。我們可以在web.xml定義多個Controller,同時為每個應(yīng)用定義一個Controller。2.2.1控制器(Controller)

Controller是這個框架中的樞紐,當(dāng)客戶端與服務(wù)器交互的時候,全部由它來控制。Controller在web.xml中設(shè)置org.apache.struts.action.ActionServlet的一個實(shí)例,在一個完整的控制過程中,也就是處理一個HTTP請求時,在控制過程之初,這個SERVLET會從配置文件Struts-config.xml中獲取與控制動作相對應(yīng)的配置信息,Controller通過這些配置信息來決定HTTP請求該發(fā)往哪里,而Action只有在接收到發(fā)來的請求后,才能實(shí)現(xiàn)真正的邏輯。2.2.2模型(Model)

在整個Model過程中,我們通常用JavaBean來保存一些信息來在對象之間傳遞。由于在框架里,真正處理邏輯功能的是Model對象,該對象也是框架中應(yīng)用需求實(shí)現(xiàn)相關(guān)性最大的部分。通常是一個Model對象對應(yīng)一個請求頁面,但也可以是一個Model對象跟多個請求頁面對應(yīng)??刂破鲗⒅苯影颜埱筠D(zhuǎn)到View對象,若struts-config.xml配置文件并未明確指出這個Model對象所對應(yīng)的Action。2.2.3視圖(View)

View對象一般都是指JSP頁面。Struts框架通過標(biāo)簽庫讓開發(fā)者將JSP整合到該框架中。在Struts中,JavaBean中的數(shù)據(jù)來自于由標(biāo)簽定義的JSP頁面,該頁面能夠?qū)⒂脩敉ㄟ^表單輸入的數(shù)據(jù)傳遞給javabean,也就是ActionFormBean。2.2.4struts-config.xml

struts-config.xml文件可以說是框架的核心脊梁。web.xml文件只是定義了一個請求,知道它應(yīng)該被轉(zhuǎn)發(fā)到哪里,之后全部的工作都由struts-config.xml進(jìn)行管理控制??梢哉fstruts-config.xml是整個Struts框架的"CPU”,所有請求與動作的映射關(guān)系只有它才最清楚,隨著當(dāng)前應(yīng)用系統(tǒng)的不斷復(fù)雜多變,XML的配置文件越來越多,如果整個系統(tǒng)只使用一個這樣的配置文件,那么整個系統(tǒng)的維護(hù)是很容易的。用一個配置文件來描述控制過程中的操作請求和關(guān)系,而不是將對象之間的關(guān)系固定在代碼中,有變動的時候,只需要改變配置文件就好了,而不是再重新編譯發(fā)布程序了。Controller可以確定何種請求該調(diào)用何種對象是通過struts-config.xml文件的配置信息確定的,并且這些信息都是在系統(tǒng)初始化時就存入內(nèi)存中的。2.3Tomcat6.0Tomcat對于一個初學(xué)者來說,只要在一臺機(jī)器上配置好Tomcat,就可利用它響應(yīng)HTML頁面的訪問請求。2.4Jsp技術(shù)JSP全名是JavaServerPages,中文名是java服務(wù)器頁面,但其根源是簡化的Servlet,是一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。用JSP開發(fā)出的Web應(yīng)用是跨平臺的,可以在多種不同的操作系統(tǒng)上運(yùn)行。JSP技術(shù)封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯是使用類似于xml的scriptlets與tags實(shí)現(xiàn)的。JSP(JavaServerPages)是一種動態(tài)的頁面技術(shù),把表示邏輯從Servlet中抽出是它的主要目的。優(yōu)點(diǎn):(1)一次編寫,到處運(yùn)行。(2)系統(tǒng)的多平臺支持。跟ASP相比,JSP的優(yōu)勢非常明顯。(3)強(qiáng)大的可伸縮性。(4)Java不僅有大量非常優(yōu)秀的開發(fā)工具,而且很多是免費(fèi)的,并且很多還能夠在多平臺下運(yùn)行。(5)支持服務(wù)器端組件。缺點(diǎn):為了使用者更加方便,使產(chǎn)品更加的復(fù)雜。2.5easyUI技術(shù)jQueryEasyUI是UI插件的集合,一些開發(fā)者只懂簡單的HTML標(biāo)簽,不會編寫麻煩的javascript,對css樣式也沒有深入的了解,他們卻可以使用jQueryEasyUI寫出功能豐富并且美觀的UI界面。jQueryEasyUI是一個前臺UI界面插件,雖然功能上不如extjs好,但頁面效果也是非常漂亮的,同時jQueryEasyUI還支持各種themes。現(xiàn)有的功能也足夠用了,而且比extjs更加的輕量級。jQueryEasyUI有以下特點(diǎn):1、基于jquery用戶界面插件的集合2、為一些當(dāng)前用于交互的js應(yīng)用提供必要的功能3、EasyUI支持兩種渲染方式:javascript方式(如:$('#p').panel({...}))和html標(biāo)記方式(如:class="easyui-panel")4、支持HTML5(通過data-options屬性)5、開發(fā)產(chǎn)品時可節(jié)省時間和資源6、簡單,但很強(qiáng)大7、支持?jǐn)U展,可根據(jù)自己的需求擴(kuò)展控件8、目前各項不足正以版本遞增的方式不斷完善2.6Eclipse開發(fā)工具Eclipse是一個可擴(kuò)展的開發(fā)平臺。Eclipse為高度集成的工具開發(fā)提供品質(zhì)優(yōu)秀、功能齊全的平臺,是一個開源的軟件開發(fā)項目。CDT支持C開發(fā)、JDT支持Java開發(fā)、EclipsePlatform是一個開放的可擴(kuò)展IDE、PDE用來支持插件開發(fā),提供了一個通用的開發(fā)平臺。軟件開發(fā)包EclipseSDK(軟件開發(fā)者包)是EclipsePlatform、JDT和PDE所生產(chǎn)的組件合并。2.7MySQL數(shù)據(jù)庫簡介MySQL是一個目前屬于

Oracle

旗下公司但是由瑞典MySQLAB公司開發(fā)的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在WEB應(yīng)用的數(shù)據(jù)庫方面MySQL是非常不錯的。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),通過將數(shù)據(jù)存放在不同表而不是一個大倉庫內(nèi)來提升速度以及靈活性。MySQL通過使用訪問數(shù)據(jù)庫最常用標(biāo)準(zhǔn)化SQL語言來訪問。MySQL的跟其他數(shù)據(jù)庫相比,速度又快,體積也不大,因?yàn)殚_源,所以成本也低,因此MySQL數(shù)據(jù)庫可以說是中小型網(wǎng)站開發(fā)的不二之選。2.8SQLyog圖形化管理MYSQL數(shù)據(jù)庫工具SQLyog是一個可以在任何地點(diǎn)管理MYSQL數(shù)據(jù)庫的工具。SQLyog有如下特點(diǎn):1、基于C++和MySQLAPI編程;2、方便快捷的數(shù)據(jù)庫同步與數(shù)據(jù)庫結(jié)構(gòu)同步工具;3、易用的數(shù)據(jù)庫、數(shù)據(jù)表備份與還原功能;4、支持導(dǎo)入導(dǎo)出HTML、CSV、XML等多種格式的數(shù)據(jù);5、直接運(yùn)行批量SQL腳本文件,速度極快;6、新版本更是增加了強(qiáng)大的數(shù)據(jù)遷移。3.需求分析3.1系統(tǒng)功能需求分析醫(yī)院預(yù)約掛號管理系統(tǒng)是通過分析用戶的業(yè)務(wù)流程,提供一個網(wǎng)上注冊信息的平臺。那么一個較完整的系統(tǒng)大致要求具有以下功能:基本流程:普通用戶只能看見自己賬號下的患者信息以及掛號信息,醫(yī)院工作人員可以看見該系統(tǒng)中所有用戶以及患者掛號信息。如圖3-1:圖3-1業(yè)務(wù)流程圖如圖3-2:圖3-2用例圖3.1.1不同用戶注冊及登陸功能應(yīng)該允許管理員以及普通用戶注冊和登錄,并且區(qū)分不同用戶的權(quán)限。根據(jù)用戶不同顯示不同信息。3.1.2用戶對患者信息進(jìn)行增刪改以及按條件查詢一個用戶可以添加多位患者,可以為多位患者掛號,同時可以對自己用戶下的患者進(jìn)行增加、刪除以及修改和導(dǎo)出操作。同時,還應(yīng)該可以對患者信息進(jìn)行按不同條件查詢。3.1.3對患者的掛號信息進(jìn)行增刪改以及按條件查詢由于該系統(tǒng)是實(shí)名制掛號,所以掛號用戶必須存在于數(shù)據(jù)庫中,也就是說,如果該用戶要在該醫(yī)院掛號,那么他們必須已經(jīng)在該醫(yī)院注冊過信息,只要該用戶在該醫(yī)院注冊過信息,不登錄也可以直接掛號。當(dāng)然用戶也可以為其下面所屬的所有患者掛號。只有擁有管理員權(quán)限的用戶才可以為所有用戶掛號以及對所有用戶和其掛號信息進(jìn)行增刪改查操作,同時所有用戶只能默認(rèn)查到今天以及之后的掛號信息,如果要看今天之前未處理的掛號信息,則需要專門對時間進(jìn)行查詢。3.2系統(tǒng)的性能需求該系統(tǒng)在性能功能上應(yīng)達(dá)到如下需求:1.簡單友好的界面,易于理解。用戶只需點(diǎn)擊你喜歡的內(nèi)容就可以實(shí)現(xiàn)。2.我們在以傳統(tǒng)的瀑布模型做為基礎(chǔ)的前提下,進(jìn)行軟件的一系列分析,系統(tǒng)設(shè)計,數(shù)據(jù)結(jié)構(gòu)設(shè)計,系統(tǒng)的實(shí)現(xiàn),系統(tǒng)測試,系統(tǒng)維護(hù)。3.在結(jié)構(gòu)上應(yīng)具有很好的可擴(kuò)展性,便于將來的功能擴(kuò)展和維護(hù)。4.響應(yīng)時間不能過長,應(yīng)及時響應(yīng)用戶需求。4.系統(tǒng)可行性分析在實(shí)施一個項目之前,首先要對將要實(shí)施的項目進(jìn)行可行性研究,確定項目是否能夠進(jìn)行,是否值得進(jìn)行。并非所有問題都有簡單而明顯的解決方案,其實(shí)很多問題都無法在預(yù)定的系統(tǒng)范圍內(nèi)解決?;ㄙM(fèi)時間、人力、軟硬件資源和經(jīng)費(fèi)在不可能解決的問題上是非常愚蠢的事情。4.1技術(shù)可行性本系統(tǒng)基于Windows平臺,采用B/S三層體系結(jié)構(gòu)、JAVA語言編程、mySQL數(shù)據(jù)庫和Structs框架技術(shù)設(shè)計并實(shí)現(xiàn)醫(yī)院預(yù)約掛號管理系統(tǒng)。該系統(tǒng)可以實(shí)現(xiàn)在網(wǎng)上(通過瀏覽器)上進(jìn)行用戶信息錄入、修改及反饋的控制和管理。目前我已經(jīng)擁有的性能足夠的開發(fā)工具作為硬件與軟件方面的資源,滿足本系統(tǒng)的要求。雖然我之前已經(jīng)學(xué)到的知識并不足以支撐我完成這個系統(tǒng),但是通過互聯(lián)網(wǎng)與圖書館的資料以及導(dǎo)師和同學(xué)的幫助,在規(guī)定的期限內(nèi)能夠基本完成本系統(tǒng)所需的開發(fā)任務(wù),所以從技術(shù)上來說是可行的。4.2經(jīng)濟(jì)可行性在同學(xué)的幫助下,我在自己的筆記本上安裝并且完善了該項目所需要的開發(fā)工具和環(huán)境,除了電費(fèi)之外,基本不需要其他費(fèi)用。4.3操作可行性由于現(xiàn)在科技的飛速發(fā)展,計算機(jī)早已普及生活的方方面面,先進(jìn)的科技條件為人們帶來更多便利,這使人們對新的系統(tǒng)提出更多新的要求。該系統(tǒng)是基于成熟的B/S模式,這種模式具有良好的開放性。本系統(tǒng)主要從操作方式是否可以被群眾接受的觀點(diǎn)考慮。開發(fā)人員應(yīng)該盡量簡化操作步驟,開發(fā)一種操作方便、美觀友好的操作界面,使用戶能盡快上手,功能符合醫(yī)生與患者的需求用戶可以在任何地點(diǎn)使用該系統(tǒng),可跨平臺用同樣的瀏覽器訪問該系統(tǒng)。該系統(tǒng)平臺是直接面向管理員和患者的,界面簡單,用戶只需會使用鼠標(biāo)、鍵盤就可以對系統(tǒng)進(jìn)行管理及預(yù)約等操作。所以,本系統(tǒng)對用戶要求極低,只需具備基本的計算機(jī)操作知識與素養(yǎng),不需要特殊的技術(shù)能力。而管理員只需定期維護(hù)后臺。4.4社會可行性當(dāng)今社會,人們越來越離不開計算機(jī)之類的電子產(chǎn)品,而且對電子產(chǎn)品的應(yīng)用也越來越熟練,。所以我們的醫(yī)院預(yù)約掛號系統(tǒng)對于現(xiàn)代人而言,是可以快速學(xué)會并使用的。而且,現(xiàn)在國家也在大力推動傳統(tǒng)產(chǎn)業(yè)電子化、科技化、信息化,推動互聯(lián)網(wǎng)加產(chǎn)業(yè),醫(yī)院預(yù)約掛號系統(tǒng)剛好順應(yīng)時代潮流,響應(yīng)國家號召??偠灾?,該系統(tǒng)從技術(shù)、經(jīng)濟(jì)、使用、社會等角度來看是完全可靠的。4.5面向的用戶1.患者:只要有一臺聯(lián)網(wǎng)且安裝了瀏覽器的計算機(jī),患者通過登錄提供的網(wǎng)址進(jìn)入網(wǎng)頁,先注冊成為用戶或者用已有的賬號登陸,就可以進(jìn)行添加患者信息,為患者掛號,查找預(yù)約信息和個人資料的操作了。2.醫(yī)院用戶:管理員可以查看全部用戶信息,全部掛號信息。5.系統(tǒng)的具體設(shè)計與實(shí)現(xiàn)5.1數(shù)據(jù)庫設(shè)計5.1.1數(shù)據(jù)庫的總體設(shè)計數(shù)據(jù)庫是醫(yī)院網(wǎng)絡(luò)預(yù)約掛號系統(tǒng)的核心部分.它不僅反映數(shù)據(jù)本身的內(nèi)容,而且反映數(shù)據(jù)庫之間的聯(lián)系(為了后期維護(hù)以及擴(kuò)展方便,所有外鍵都沒有設(shè)置在數(shù)據(jù)庫里,但是關(guān)聯(lián)關(guān)系還在)。以下是該數(shù)據(jù)庫的E-R圖。如圖5-1如圖5-1數(shù)據(jù)庫E-R圖此軟件文檔系統(tǒng)采用MySQL數(shù)據(jù)庫管理系統(tǒng)。Orderinfo:掛號信息表Patient:患者實(shí)名制信息表T_doctorinfo:醫(yī)生或管理員表Userinfo:用戶表(1)Orderinfo:掛號信息表結(jié)構(gòu)表5-1掛號信息表掛號信息表結(jié)構(gòu)(Orderinfo)字段名稱字段描述字段類型備注ghid主鍵IDintPKpatientId患者idintFKghNo掛號單號碼varcharofficeName科室名稱varcharghDesc病情描述varchardate預(yù)約時間datePatient:患者實(shí)名制信息表結(jié)構(gòu)表5-2患者實(shí)名制信息表患者實(shí)名制信息表結(jié)構(gòu)(Patient)字段名稱字段描述字段類型備注patientId患者idintPKuserId登陸用戶idintFKpatientName患者名字varcharsex性別varcharbirthday出生日期dateidNumber身份證號碼varchartel電話varcharpatientDesc個人描述varchar(3)doctorinfo:醫(yī)生或管理員表醫(yī)生或管理員表(doctorinfo)id主鍵IDintPKuserId登陸賬號idintFKId_card身份證號varcharname姓名varchargender性別varcharOffice_name科室名varcharage年齡int表5-3醫(yī)生或管理員表(4)Userinfo:用戶表表5-4用戶表字段名稱字段描述字段類型備注userId主鍵IDintPKuserName用戶名varcharpassword密碼varcharrole角色(患者、管理員)varchar5.1.2系統(tǒng)功能模塊設(shè)計該系統(tǒng)的使用者為兩類用戶:一是預(yù)約者,二是醫(yī)院內(nèi)部管理人員。根據(jù)權(quán)限的不同這個系統(tǒng)總體功能可以分為三大模塊:用戶管理模塊:該模塊可以增加患者個人信息,一個用戶賬號可以掛多個患者,多次掛號。對患者信息的增刪改,以及按條件查詢。1.增加患者信息:點(diǎn)擊增加按鈕,彈出增加患者頁面彈框,需要輸入的患者個人信息包括姓名,身份證號,性別,出生日期,所屬用戶(普通用戶只能看見自己和選擇,醫(yī)院工作人員可以看見全部用戶),聯(lián)系電話,家庭住址。填完后保存,會顯示保存成功或失敗。2.修改用戶信息:在用戶信息欄中選中要修改的用戶,然后點(diǎn)擊修改按鈕(如果沒有選擇用戶,則會彈出一條提示信息,請選擇一條要編輯的數(shù)據(jù)?。?,正常情況下會彈出編輯患者資料頁面(跟添加頁面一樣的,但是里面填了當(dāng)前患者信息),可以修改患者資料,修改完成后點(diǎn)擊保存,若不想修改了,可以點(diǎn)擊關(guān)閉。3.刪除用戶信息:在用戶信息欄中選中要刪除的用戶,然后點(diǎn)擊刪除按鈕(如果沒有選擇用戶,則會彈出一條提示信息,請選擇要刪除的數(shù)據(jù)?。?,正常情況下會彈出提示信息:您確認(rèn)要刪掉這1條數(shù)據(jù)嗎?點(diǎn)擊確認(rèn)或取消。4.按條件查找用戶信息:在搜索欄中可以按照患者姓名,性別,出生日期范圍,所屬用戶信息中的一個或多個進(jìn)行篩選。5.1.3掛號管理模塊:不需要登陸就掛號:為了方便患者操作,我們可以允許患者不需要登陸就直接掛號,但是有要求實(shí)名制,所以我們要求所有未登錄直接掛號的患者必須已經(jīng)存在于醫(yī)院的數(shù)據(jù)庫中,換句話說就是該患者至少在該醫(yī)院已經(jīng)實(shí)名制掛號過一次。(2)登陸后掛號:用戶可以從已經(jīng)在用戶管理模塊添加過基本信息的患者中挑選一位掛到特定的醫(yī)院科室。以及已掛號信息的增刪改,以及按條件查詢。1.增加掛號信息:點(diǎn)擊增加按鈕,彈出增加掛號信息,選擇用戶信息里面的患者,掛號日期和科室,填寫備注信息就可以掛號成功了。2.修改掛號信息:在掛號信息欄中選中要修改的信息,然后點(diǎn)擊修改按鈕(如果沒有選擇用戶,則會彈出一條提示信息,請選擇一條要編輯的數(shù)據(jù)!),正常情況下會彈出編輯患者信息(跟添加頁面一樣的,但是里面填了當(dāng)前掛號信息),修改完成后點(diǎn)擊保存,若不想改了,可以關(guān)閉。3.刪除掛號信息:在掛號信息欄中選中要刪除的掛號信息,然后點(diǎn)擊刪除按鈕(如果沒有選擇掛號信息,則會彈出一條提示信息,請選擇要刪除的數(shù)據(jù)?。?,正常情況下會彈出提示信息:您確認(rèn)要刪掉這1條數(shù)據(jù)嗎?點(diǎn)擊確認(rèn)或取消。4.按條件查找用戶信息:在搜索欄中可以按照患者姓名,性別,出生日期范圍,所屬用戶、所屬科室信息中的一個或多個進(jìn)行篩選。報表模塊:能夠方便每一位用戶了解自己賬戶上的掛號情況,以及方便醫(yī)院管理員了解各個科室的就診情況。5.2系統(tǒng)的實(shí)施環(huán)境5.2.1服務(wù)器端服務(wù)器:CPU2G操作系統(tǒng):Windows7JDK(JavaDevelopmentKit):JDK6.0數(shù)據(jù)庫:MySQL數(shù)據(jù)庫Web服務(wù)器:Tomcat6.0瀏覽器:IE6.0及以上5.2.2客戶端計算機(jī):可正常上網(wǎng)娛樂即可操作系統(tǒng):WindowsXP、Windows7、Windows8等都可以瀏覽器:IE6.0以上5.3系統(tǒng)功能的實(shí)現(xiàn)系統(tǒng)主要功能模塊有:未登錄掛號模塊、不同用戶注冊模塊、登錄模塊、用戶信息管理模塊、掛號管理模塊、報表統(tǒng)計模塊六大模塊,每個模塊分別完成不同功能,各個模塊共同完成整個系統(tǒng)功能。5.3.1注冊頁面模塊注冊頁面能夠注冊不同權(quán)限用戶(普通用戶和管理員用戶),因?yàn)榈顷懞筮€要錄入患者詳細(xì)信息,所以注冊模塊不需要很復(fù)雜,只需要擁有簡單的注冊功能就可以了:如圖5-2

圖5-2注冊界面主要代碼實(shí)現(xiàn):<ulclass="login"><li><spanclass="left">用戶名:</span><spanstyle="left"><inputtype="text"name="user.userName"id="userName1"/></span></li><li><spanclass="left">密碼:</span><spanstyle="left"><inputtype="password"name="user.password"id="password1"/></span></li><li><spanclass="left">再次輸入密碼:</span><spanstyle="left"><inputtype="password"name="password2"id="password2"/></span></li><li><spanclass="left">身份:</span><spanstyle="left"><selectid="role"name="user.role"id="role"> <optionvalue="1"selected="selected">普通用戶</option> <optionvalue="0">醫(yī)院管理員</option></select> </span></li></ul><spanstyle="margin:15px"><buttonvalue="注冊"onclick="registerAction()">注冊</button></span> <spanstyle="margin:10px"><buttonvalue="重置"onclick="resetRegister()">重置</button></span></li>后臺部分:Connectionconn=ConnectionFactory.getConnection(); Statementcs=null;Stringsql=AllSql.saveUser(user); try{ cs=conn.createStatement();cs.execute(sql); }catch(SQLExceptione){ e.printStackTrace(); return"Dao層保存錯誤?。?!"; }finally{try{if(cs!=null)cs.close();if(conn!=null)conn.close();}catch(SQLExceptione){e.printStackTrace();}}return"success";}5.3.2登陸頁面模塊登錄頁面是讓不同用戶登入掛號系統(tǒng)。用戶可以根據(jù)之前注冊的用戶名和密碼登入系統(tǒng),并在該用戶下進(jìn)行權(quán)限范圍內(nèi)的操作。如圖:5-3圖5-3登陸界面主要代碼實(shí)現(xiàn):HttpServletRequestrequest;LoginRegisterServiceservice=(LoginRegisterService)BeanFactory.getBean("LoginRegisterService");publicStringexecute()throwsException{//獲取SessionHttpSessionsession=request.getSession();if(user==null){error="請重新輸入";returnERROR;}if(StringUtil.isEmpty(user.getUserName())||StringUtil.isEmpty(user.getPassword())){error="用戶名或密碼為空!";returnERROR;}if(StringUtil.isEmpty(imageCode)){error="驗(yàn)證碼為空!"returnERROR;}if(!imageCode.equals(session.getAttribute("sRand"))){error="驗(yàn)證碼錯誤!";returnERROR;}Connectioncon=null;try{//con=dbUtil.getCon();UsercurrentUser=service.login(user);if(currentUser==null){error="用戶名或密碼錯誤!";returnERROR;}else{session.setAttribute("currentUser",currentUser);if(currentUser.getRole()==0){return"admin";}else{return"user";}}}catch(Exceptione){e.printStackTrace();System.out.println("######:::ERROR:"+e.getMessage());error="服務(wù)器端異常。。。。";}returnERROR;}5.3.3主操作頁面該頁面為用戶登陸后才能進(jìn)入的頁面,同時也是之后所有操作的主頁面。該頁面主要用了easyUI的treeData組件,同時也為折后用戶信息管理、掛號管理以及報表統(tǒng)計頁面留下了空間。如圖5-4所示:圖5-4主操作頁面主要前臺代碼:<scripttype="text/javascript">$(function(){vartreeData=[text:"病人掛號信息系統(tǒng)",iconCls:"icon-menu",children:[{text:"用戶信息管理",iconCls:"icon-user",attributes:{url:"patientInfoManage.jsp"}},{text:"掛號系統(tǒng)管理",iconCls:"icon-manage",attributes:{url:"guahaoManage.jsp"}},{text:"掛號報表統(tǒng)計",iconCls:"icon-chart",attributes:{url:"chart.jsp"}}]}];//實(shí)例化樹菜單$("#tree").tree({data:treeData,lines:true,onClick:function(node){if(node.attributes){openTab(node.text,node.attributes.url,node.iconCls);}}});//新增TabfunctionopenTab(text,url,iconCls){if($("#tabs").tabs('exists',text)){$("#tabs").tabs('select',text);}else{varcontent="<iframeframeborder='0'scrolling='auto'style='width:100%;height:100%;background-color:#772480;'src="+url+"></iframe>";$("#tabs").tabs('add',{title:text,closable:true,content:content,iconCls:iconCls});}}});</script></head>5.3.4歡迎頁面歡迎頁面是主頁面的默認(rèn)頁面,也是用戶登陸后看到的第一個頁面,主要提醒用戶這是一個遠(yuǎn)程掛號系統(tǒng)。如圖5-5圖5-5歡迎界面5.3.5用戶信息管理用戶信息管理系統(tǒng)主要是為了實(shí)現(xiàn)實(shí)名制掛號的需求而完成的,該模塊要求用戶需要填寫每一位患者的詳細(xì)信息,當(dāng)然也可以對患者信息進(jìn)行增刪改以及按條件查詢的操作,在進(jìn)行修改和刪除時必須選中要修改的內(nèi)容,否則會提示要求您進(jìn)行選擇。最后為了能更方便的看到各個用戶詳細(xì)信息,還對有某些字段進(jìn)行了排序,還增加了導(dǎo)出表格信息的功能。如圖5-6:圖5-6患者信息管理界面如圖5-7:圖5-7添加患者基本信息主要代碼:前臺:<scripttype="text/javascript">//提交新增患者數(shù)據(jù)functionsavePatient(){$("#fm").form("submit",{url:url,onSubmit:function(){if($('#sex').combobox("getValue")==""){$.messager.alert("系統(tǒng)提示","請選擇性別");returnfalse;}if($('#userId').combobox("getValue")==""){$.messager.alert("系統(tǒng)提示","請選擇所屬用戶");returnfalse;}return$(this).form("validate");},success:function(result){if(result.errorMsg){$.messager.alert("系統(tǒng)提示",result.errorMsg);return;}else{$.messager.alert("系統(tǒng)提示","保存成功");resetValue();$("#dlg").dialog("close");$("#dg").datagrid("reload");}}});}functiondeletePatient(){//獲得選中數(shù)據(jù)對象varselectedRows=$("#dg").datagrid('getSelections');if(selectedRows.length==0){$.messager.alert("系統(tǒng)提示","請選擇要刪除的數(shù)據(jù)!");return;}varstrIds=[];//要刪除組合for(vari=0;i<selectedRows.length;i++){strIds.push(selectedRows[i].patientId);}varids=strIds.join(",");$.messager.confirm("系統(tǒng)提示","您確認(rèn)要刪掉這<fontcolor=red>"+selectedRows.length+"</font>條數(shù)據(jù)嗎?",function(r){if(r){$.post("patient!delete",{delIds:ids},function(result){if(result.success){$.messager.alert("系統(tǒng)提示","您已成功刪除<fontcolor=red>"+result.delNums+"</font>條數(shù)據(jù)!");$("#dg").datagrid("reload");}else{$.messager.alert('系統(tǒng)提示',result.errorMsg);}},"json");}});}functionopenPatientModifyDialog(){//修改患者資料varselectedRows=$("#dg").datagrid('getSelections');f(selectedRows.length!=1){$.messager.alert("系統(tǒng)提示","請選擇您需要編輯的特定數(shù)據(jù)!");return;}varrow=selectedRows[0];$("#dlg").dialog("open").dialog("setTitle","編輯患者資料");$("#patientName").val(row.patientName);$("#sex").combobox("setValue",row.sex);$("#birthday").datebox("setValue",row.birthday);$("#userId").combobox("setValue",row.userId);$("#patientDesc").val(row.patientDesc);$("#tel").val(row.tel);$("#idNumber").val(row.idNumber);url="patient!save?patientId="+row.patientId;}functionsearchPatient(){//查詢符合條件的用戶$('#dg').datagrid('load',{s_patientName:$('#s_patientName').val(),s_sex:$('#s_sex').combobox("getValue"),s_bbirthday:$('#s_bbirthday').datebox("getValue"),s_ebirthday:$('#s_ebirthday').datebox("getValue"),s_userId:$('#s_userId').combobox("getValue")});}</script>后臺:if(patient==null){patient=newPatient();}currentUser=(User)session.getAttribute("currentUser");request.setAttribute("error",error);

returnnull;}if(currentUser.getRole()!=0){patient.setUserId(currentUser.getUserId());}

if(s_patientName!=null){patient.setPatientName(s_patientName);patient.setSex(s_sex);if(StringUtil.isNotEmpty(s_userId)){patient.setUserId(Integer.parseInt(s_userId));}}try{JSONObjectresult=newJSONObject();JSONArrayjsonArray=service.patientList(pageBean,patient,s_bbirthday,s_ebirthday);inttotal=service.patientCount(patient,s_bbirthday,s_ebirthday);result.put("rows",jsonArray);result.put("total",total);ResponseUtil.write(ServletActionContext.getResponse(),result);}catch(Exceptione){e.printStackTrace();System.out.println("####ERROR:::"+e.getMessage());}returnnull;}publicStringsave()throwsException{if(StringUtil.isNotEmpty(patientId)){patient.setPatientId(Integer.parseInt(patientId));}Connectioncon=null;try{intsaveNums=0;JSONObjectresult=newJSONObject();if(StringUtil.isNotEmpty(patientId)){saveNums=service.patientModify(patient);}else{saveNums=service.patientAdd(patient);}if(saveNums>0){result.put("success","true");}else{result.put("success","true");result.put("errorMsg","保存失敗");}ResponseUtil.write(ServletActionContext.getResponse(),result);}catch(Exceptione){e.printStackTrace();}returnnull;}publicStringdelete()throwsException{Connectioncon=null;try{JSONObjectresult=newJSONObject();intdelNums=service.patientDelete(delIds);if(delNums>0){result.put("success","true");result.put("delNums",delNums);}else{result.put("errorMsg","刪除失敗");}ResponseUtil.write(ServletActionContext.getResponse(),result);}catch(Exceptione){e.printStackTrace();System.out.println("####:Error:"+e.getMessage());}returnnull;}publicStringuserNameComboList()throwsException{Connectioncon=null;HttpSessionsession=request.getSession();currentUser=(User)session.getAttribute("currentUser");if(currentUser.getRole()!=0){JSONArrayjsonArray=newJSONArray();JSONObjectjsonObject=newJSONObject();jsonObject.put("userName","請選擇...");jsonArray.add(jsonObject);jsonObject.put("userId",currentUser.getUserId());jsonObject.put("userName",currentUser.getUserName());jsonArray.add(jsonObject);ResponseUtil.write(ServletActionContext.getResponse(),jsonArray);}else{try{JSONArrayjsonArray=newJSONArray();JSONObjectjsonObject=newJSONObject();jsonObject.put("userId","");jsonObject.put("userName","請選擇...");jsonArray.add(jsonObject);jsonArray.addAll(service.userList());ResponseUtil.write(ServletActionContext.getResponse(),jsonArray);}catch(Exceptione){e.printStackTrace();}}returnnull;}publicStringpatientNameComboList()throwsException{Connectioncon=null;if(patient==null){patient=newPatient();}//獲取Session,判斷當(dāng)前用戶類型HttpSessionsession=request.getSession();currentUser=(User)session.getAttribute("currentUser");//con=dbUtil.getCon();JSONArrayjsonArray=newJSONArray();JSONObjectjsonObject=newJSONObject();jsonObject.put("patientId","");jsonObject.put("patientName","請選擇...");jsonArray.add(jsonObject);if(currentUser.getRole()!=0){try{patient.setUserId(currentUser.getUserId());jsonArray.addAll(service.patientList(null,patient,null,null));ResponseUtil.write(ServletActionContext.getResponse(),jsonArray);}catch(Exceptione){e.printStackTrace();

}}else{//管理員用戶try{jsonArray.addAll(service.patientList(null,patient,null,null));ResponseUtil.write(ServletActionContext.getResponse(),jsonArray);}catch(Exceptione){e.printStackTrace();}}returnnull;}5.3.6掛號信息管理(1)不登錄就直接掛號:為了方便患者掛號,特地新添加的一種新功能,不需要登陸系統(tǒng)就可以直接掛號,同時為了響應(yīng)實(shí)名制、防止黃牛掛多個號或者有人惡意掛號,我們要求這種掛號方式僅支持已經(jīng)存在于該系統(tǒng)中的患者,即該患者在本系統(tǒng)中錄入過個人信息。如圖5-8所示圖5-8掛號管理界面主要代碼:functionsaveGh(){$("#fm").form("submit",{url:"GuaHao!save",onSubmit:function(){if($('#patientId').combobox("getValue")==""){ $.messager.alert("系統(tǒng)提示","請選一個患者");returnfalse;} if($('#officeName').combobox("getValue")==""){ $.messager.alert("系統(tǒng)提示","請選擇科室");returnfalse;} return$(this).form("validate");},success:function(result){if(result.errorMsg){ $.messager.alert("系統(tǒng)提示",result.errorMsg);return;}else{$.messager.alert("系統(tǒng)提示","掛號成功,請按時就診,掛號信息一日內(nèi)有效?。。。?);resetValue(); $("#dlg").dialog("close");$("#dg").datagrid("reload");}}});}<formid="fm"method="post"><divclass="MainOrder"><ul><liclass="top"></li><liclass="top2"></li><liclass="topA"></li><liclass="topB"> <span><imgsrc="images/login/logo.png"alt=""style=""/></span></li><liclass="topC"></li><liclass="topD"><div><tablecellspacing="5px;"> <tr> <td>患者姓名:</td> <td><inputclass="easyui-combobox"id="patientId"name="guahao.patientId"style="width:155px"data-options="editable:false,valueField:'patientId',textField:'patientName',url:'patient!patientNameComboList'"/></td> </tr> <tr><td>選擇日期:</td> <td><inputclass="easyui-datebox"name="guahao.date"id="ghDate"required="true"editable="false"/></td> </tr> <tr><td>選擇科室:</td> <td><selectclass="easyui-combobox"id="officeName"name="guahao.officeName"editable="false"panelHeight="auto"style="width:155px"> <optionvalue="">請選擇...</option> <optionvalue="外科">外科</option> <optionvalue="兒科">兒科</option

溫馨提示

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

評論

0/150

提交評論