畢業(yè)論文-醫(yī)院預約掛號管理系統(tǒng)_第1頁
畢業(yè)論文-醫(yī)院預約掛號管理系統(tǒng)_第2頁
畢業(yè)論文-醫(yī)院預約掛號管理系統(tǒng)_第3頁
畢業(yè)論文-醫(yī)院預約掛號管理系統(tǒng)_第4頁
畢業(yè)論文-醫(yī)院預約掛號管理系統(tǒng)_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

畢業(yè)論文PAGEIII畢業(yè)論文醫(yī)院預約掛號管理系統(tǒng)專業(yè)名稱:計算機科學與技術(shù)班級:學生姓名:指導教師:完成時間:2015年5月畢業(yè)論文I摘要21世紀是一個網(wǎng)絡高速發(fā)展的時代,隨著計算機的高速發(fā)展,計算機網(wǎng)絡已經(jīng)應用到各行各業(yè)也深入到人們的日常生活中。隨著人口增長,醫(yī)院的掛號窗口前經(jīng)常排著長長的隊,這極大的浪費了前來就診人的時間和精力,有的時候可能排隊就要用去幾個小時。這對時間不充裕的人來說是個十分頭疼的問題。人們?yōu)榱私鉀Q醫(yī)院掛號難的問題,通過網(wǎng)絡技術(shù)來實現(xiàn)預約掛號。本論文描述的是一個基于JSP技術(shù)的網(wǎng)上醫(yī)院掛號系統(tǒng)。主要是以JAVAEE為開發(fā)基礎。以Myeclipse10位開發(fā)工具,使用MySQL為系統(tǒng)的主要數(shù)據(jù)庫,選用Navicat為數(shù)據(jù)庫的可視化設計工具。系統(tǒng)為JavaScript動態(tài)網(wǎng)頁。本系統(tǒng)操作簡單,使用方便,對于中小型的醫(yī)院具有良好的實用價值。本論文對系統(tǒng)中涉及到的幾個關(guān)鍵技術(shù)和框架做了詳細介紹,完成了網(wǎng)上醫(yī)院掛號系統(tǒng)的實現(xiàn)。文章從以下幾個方面對系統(tǒng)的實現(xiàn)進行了介紹:首先,本文介紹了網(wǎng)上醫(yī)院掛號系統(tǒng)的市場需求和可行性分析。介紹了網(wǎng)上醫(yī)院掛號系統(tǒng)的發(fā)展現(xiàn)狀,同時從技術(shù)和操作等方面對系統(tǒng)的成功實現(xiàn)進行了論述。其次,本文主要詳細描述了網(wǎng)上醫(yī)院掛號系統(tǒng)需要的技術(shù)框架,并說明了系統(tǒng)框架的作用和具體的搭建過程。最后,論文詳細描述了整個醫(yī)院預約掛號系統(tǒng)的實現(xiàn)過程。關(guān)鍵詞:醫(yī)院掛號;S2SH;JSP

ABSTRACTThe21stcenturyisaneraofrapiddevelopmentofthenetwork,withtherapiddevelopmentofcomputers,computernetworkhasbeenappliedtoallwalksoflifehavepenetratedintopeople'sdailylives.Withpopulationgrowth,oftenbeforethehospitalregisteredawindowalongrowteam,whichcametoanenormouswasteofpeople'stimeandenergytreatment,sometimesforseveralhoursmaybespentqueuingisnecessary.Thistimeisnotsufficientpeopleisaverytroublesomeproblem.Peopleinordertosolvethehospital,networktechnologytoachieveanappointment.ThispaperdescribesaJSP-basedonlinehospitalregistrationsystem.JAVAEEmainlyforthedevelopmentofthefoundation.InMyeclipse10bitdevelopmenttools,MySQLdatabaseusingthemainsystem,thechoiceofvisualdesigntoolNavicatdatabase.JavaScriptdynamicwebsystems.Inthispaper,thesysteminvolvedinseveralkeytechnologiesandframeworksintroducedindetail,completeandonlinehospitalregistrationsystem.Articlesfromthefollowingaspectsofimplementationofthesystemwereintroduced:First,thispaperintroducestheonlinehospitalregistrationsystemdemandandfeasibilityanalysis.Itintroducedthedevelopmentoftheonlinehospitalregistrationsystem,butintermsoftechnologyandoperationsforthesuccessfulimplementationofthesystemarediscussed.Secondly,thispaperdescribesindetailthetechnicalframeworkoftheonlinehospitalregistrationsystemneeds,andexplainswhatthesystemframeworkandconcretebuildingprocess.Finally,thepaperdescribesindetailthehospitalappointmentregistrationsystemthroughouttheimplementationprocess.

Keywords:hospitalregistration,S2SH,JSP

目錄1緒論 12網(wǎng)上預約掛號系統(tǒng)分析 32.1市場定位分析 32.2系統(tǒng)可行性分析 32.2.1技術(shù)可行性分析 32.2.2操作可行性分析 42.2.3經(jīng)濟可行性分析 43系統(tǒng)的開發(fā)環(huán)境及技術(shù)簡介 63.1系統(tǒng)開發(fā)環(huán)境 63.1.1MyEclipse 63.1.2數(shù)據(jù)庫簡介 63.1.3Tomcat 63.2系統(tǒng)開發(fā)的思想與技術(shù) 73.2.1JSP技術(shù)與MVC模式 73.2.2SSH框架 84概要設計 104.1系統(tǒng)目標 104.2系統(tǒng)的主要功能 104.3程序流程圖 105系統(tǒng)數(shù)據(jù)庫的設計與實現(xiàn) 125.1數(shù)據(jù)庫概念結(jié)構(gòu)設計 125.1.1數(shù)據(jù)庫概念設計 125.1.2數(shù)據(jù)庫表結(jié)構(gòu) 135.2系統(tǒng)數(shù)據(jù)庫的設計 176系統(tǒng)功能實現(xiàn) 226.1系統(tǒng)功能模塊 226.2程序?qū)Ω鞅淼念悎D的實現(xiàn) 236.2.1用戶表的實現(xiàn) 236.2.2時間表的實現(xiàn) 236.2.3醫(yī)生表的實現(xiàn) 246.2.4房間表的實現(xiàn) 246.2.5角色表的實現(xiàn) 246.2.6角色源表的實現(xiàn) 256.2.7應用表的實現(xiàn) 256.2.8應用源表的實現(xiàn) 256.3系統(tǒng)功能實現(xiàn)S2SH只要框架的配置文件 266.3.1Hibernate配置文件 266.3.2Struts配置文件 276.3.3Spring配置文件 276.4系統(tǒng)主要功能模塊的實現(xiàn) 296.4.1網(wǎng)站頁面 296.4.2用戶登陸頁面 316.4.3管理后臺頁面 336.4.4預約頁面 366.4.5預約查詢的實現(xiàn) 387系統(tǒng)的調(diào)試與測試 407.1軟件測試的目的 407.2軟件測試的任務 407.3測試內(nèi)容 407.4測試環(huán)境 407.5配置測試環(huán)境 417.5.1配置tomcat 417.5.2添加項目的tomcat部署 417.5.3tomcat的運行 427.6.1用戶信息管理測試 427.6.2預約功能測試 437.6.3科室信息管理測試 43結(jié)束語 43致謝 45參考文獻 46畢業(yè)論文I醫(yī)院預約掛號管理系統(tǒng)1緒論1.1課題背景掛號如今已經(jīng)成為病人到醫(yī)院就診的第一道程序,早些年病人排隊掛號費時費力,過程比較繁雜,秩序也比較容易混亂。隨著科技的發(fā)展和進步預約掛號系統(tǒng)已經(jīng)成為現(xiàn)代化醫(yī)院必不可少的系統(tǒng)了。這市醫(yī)務工作者的工作量減少了許多,也方便了管理和收集病人信息。在患者方面預約掛號為他們節(jié)省了很多時間和不必要的麻煩。計算機的醫(yī)院信息系統(tǒng)已成為現(xiàn)在各大醫(yī)院必不可少的基礎設施而預約掛號作為該系統(tǒng)的第一步更加重要。預約掛號系統(tǒng)是計算機科技飛速發(fā)展的一個產(chǎn)物,利用互聯(lián)網(wǎng)實現(xiàn)的?;颊咄ㄟ^在線預約掛號系統(tǒng)來預約為自己醫(yī)治的醫(yī)生。這方便了患者,患者再也不用去醫(yī)院排隊掛號,同時也改善了醫(yī)院的環(huán)境,節(jié)約了就醫(yī)時間。總體來說預約掛號系統(tǒng)有兩大優(yōu)勢:一是避免了排隊掛號的高峰期和低谷期的影響,原來高峰期掛號人員多而且經(jīng)常有插隊擁擠等不良現(xiàn)象,造成了就醫(yī)環(huán)境混亂也容易引發(fā)不必要的爭吵。二是避免了了排隊隊伍過長導致醫(yī)生就醫(yī)時間短,不認真問診等現(xiàn)象。這些現(xiàn)象導致就醫(yī)質(zhì)量有所下降。同事也避免了低谷期就醫(yī)人數(shù)少甚至沒有,造成的醫(yī)生溜號的現(xiàn)象。保證了醫(yī)院的資源得到最大化的利用。而當醫(yī)院開通網(wǎng)上掛號預約服務以后,求醫(yī)者只需坐在家中,輕點兒下鼠標,就可以掛上醫(yī)院專家門診號,可以做到“足不出戶而當醫(yī)院開通網(wǎng)上掛號預約服務以后,求醫(yī)者只需坐在家中,輕點兒下鼠標,就可以掛上醫(yī)院專家門診號,可以做到“足不出戶選醫(yī)生”。網(wǎng)上預約正悄然改變著都市求醫(yī)者的看病觀念。擁有相對固定的個人醫(yī)生和習慣。預約看病,將不再遙遠,所以應用必將越來越廣泛。1.2課題目的本論文主要描述的是一套完整的網(wǎng)上醫(yī)院預約掛號系統(tǒng)。本系統(tǒng)分為前后兩部分,前臺主要實現(xiàn)用戶的網(wǎng)上預約掛號等流程,后臺主要是是實現(xiàn)管理員對用戶預約,坐診時間等內(nèi)容的管理。1.3課題意義本系統(tǒng)的開發(fā)和使用可以極大的改變醫(yī)院掛號模式。人們可以直接從網(wǎng)上預約掛號,極大減少了預約掛號的時間。本系統(tǒng)是預約掛號系統(tǒng),所有信息都是由醫(yī)院發(fā)布,所有的信息真實性可以得到保證。

2網(wǎng)上預約掛號系統(tǒng)分析2.1市場定位分析網(wǎng)上預約掛號系統(tǒng)的創(chuàng)建的創(chuàng)始目的就是面向廣大醫(yī)患人群,由于不同的醫(yī)患人群對于醫(yī)院掛號的需求不同,因此,醫(yī)院掛號系統(tǒng)應具有自己醫(yī)院的特色,同時應適應自己的醫(yī)院就醫(yī)人群特色。所以,成功的網(wǎng)上預約掛號系統(tǒng)應該定義于廣大的消費者的需求,提供完善的網(wǎng)上預約掛號就醫(yī)服務。網(wǎng)上預約掛號系統(tǒng)相對于傳統(tǒng)的紙質(zhì)掛號系統(tǒng)有著極大的便利性,紙質(zhì)掛號浪費了患者的很多時間,而網(wǎng)上預約掛號只需要在家中電腦上預約即可。相對于傳統(tǒng)的掛號系統(tǒng),這樣的操作也增加了信息的準確性,科學的系統(tǒng)管理將大大減少掛號的失誤率。同時,醫(yī)院醫(yī)生的排版信息也將出現(xiàn)在系統(tǒng)中,這樣,醫(yī)患們可以直接在網(wǎng)上產(chǎn)看自己想要就診的醫(yī)生信息,并及時預約。2.2系統(tǒng)可行性分析該系統(tǒng)的可行性主要從技術(shù)的可行性,操作的可行性和經(jīng)濟的可行性三個方面來論證。通過論證也充分的說明了本系統(tǒng)的實現(xiàn)是可行的。2.2.1技術(shù)可行性分析本系統(tǒng)主要是通過運用S2sh框架,建立一套完整的網(wǎng)上預約掛號平臺。本設計只在滿足網(wǎng)上預約掛號的基本功能,主要采用了JSP技術(shù)開發(fā)整個系統(tǒng)。JSP開發(fā)的系統(tǒng)具有可靠、可擴展和可重用等特點。患者信息是十分保密的信息,是完全不可泄露的,所以我使用JSP和MySQL結(jié)合,來實現(xiàn)系統(tǒng)數(shù)據(jù)的保密性。用戶可以通過登陸網(wǎng)站來瀏覽相應的醫(yī)生門診信息,同時可以查看醫(yī)生的就診信息?;颊咄ㄟ^網(wǎng)上預約來預約就診。2.2.2操作可行性分析當今科技的發(fā)展是十分迅速的,計算機早已經(jīng)應用的生活的方方面面,這使得人們的工作學習環(huán)境更加的優(yōu)越,在這個背景下人們對工作效率和可操作性的要求越來越高。本系統(tǒng)平臺主要面向患者和管理員。本系統(tǒng)做成的頁面和大眾頁面沒有太大的不同,簡單明了?;颊吆凸芾韱T只需要鍵盤鼠標就可以完成對頁面的操作,如預約掛號或后臺管理等。由于本系統(tǒng)的操作不需要太強的專業(yè)性所以一般人都可以完成,系統(tǒng)維護方面有一定的專業(yè)知識,不過專業(yè)的技術(shù)人員也比較好找,因為畢竟不是特別高深的專業(yè)知識。操作起來也不是特別的困難。2.2.3經(jīng)濟可行性分析本系統(tǒng)的開發(fā)所需要的成本比較低,只需要開發(fā)者購買開發(fā)該系統(tǒng)所需要的參考資料和一些必要的開放工具,其余的費用就比較少了。同該系統(tǒng)的所需費用相比其帶來的效益是十分大的。首先它可以從網(wǎng)絡上來預約掛號如專家和專科號等。這就解決了在醫(yī)院排長隊的困擾,同時也改善了醫(yī)院的環(huán)境,使在醫(yī)院排長隊的混亂局面得到了改善。同時也使得醫(yī)院更加的現(xiàn)代化和國際化,也讓前來就診的患者有一個比較舒暢的心情。這一切都體現(xiàn)在以患者為中心的理念。一次在經(jīng)濟可行性方面分析本系統(tǒng)也是可行的。通過對上述技術(shù)可行性,操作可行性,經(jīng)濟可行性的分析充分證明的本系統(tǒng)的可行性。2.3系統(tǒng)功能需求系統(tǒng)分為管理員和用戶兩個用戶角色。系統(tǒng)管理員的主要功能為:預約信息的查詢與修改、用戶信息的查詢與修改、醫(yī)生信息的查詢與修改、科室信息的查詢與修改;用戶的主要功能有預約信息查詢、預約、用戶信息修改。主要的系統(tǒng)用例圖如下:圖2-1系統(tǒng)用例圖前臺用戶主要需要的功能有:(1)預約查詢:可以查詢醫(yī)生和相關(guān)的科室信息,同時也可以查詢約時間表。(2)預約:登陸的用戶可以通過按照自己的實際情況,對相關(guān)科室的相關(guān)醫(yī)生進行預約服務。(3)用戶信息修改:用戶可以修改自己的個人信息。后臺管理員主要需要的功能有:(1)用戶信息修改:管理員可以在管理員頁面中對用戶進行添加刪除和修改等操作。(2)預約信息修改:管理員可以對預約信息進行修改。(3)醫(yī)生信息修改:管理員可以對醫(yī)生信息進行添加、刪除和修改。(4)科室信息修改:管理員可以對科室信息進行添加、刪除和修改。

3系統(tǒng)的開發(fā)環(huán)境及技術(shù)簡介3.1系統(tǒng)開發(fā)環(huán)境3.1.1MyEclipse本醫(yī)院掛號系統(tǒng)所使用的主要開發(fā)工具就是Myeclipse。Myeclipse是一個功能極為豐富的java項目開發(fā)軟件。Myeclipse是對EclipseIDE的這一種擴展。使用這個工具,我們可以輕松的完整數(shù)據(jù)庫和JavaEE的開發(fā)和發(fā)布以及在Tomcat服務器的整合。使用Myeclipse可以極高的提高工作效率。Myeclipse包括了完備的編碼、調(diào)試、測試和發(fā)布功能。完美支持HTML、SSH、JSP、CSS等。3.1.2數(shù)據(jù)庫簡介數(shù)據(jù)庫使用的是MySQL開源數(shù)據(jù)庫。MySQL是最常用的關(guān)系型數(shù)據(jù)庫之一。目前屬于Oracle公司。MySQL這種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng)的實現(xiàn)原理主要是將數(shù)據(jù)存儲在數(shù)據(jù)庫的不同表當中,而不是存儲在一個大型的文件內(nèi)。這樣做的好處就是用戶在使用數(shù)據(jù)庫存儲數(shù)據(jù)的時候可以更加的靈活,同時也保證了數(shù)據(jù)的穩(wěn)定性。體積小,運行速度快是MySQL的最大特點,同時以為其開源的性質(zhì),所以開發(fā)成本也很低。數(shù)據(jù)庫管理軟件使用的是Navicat。Navicat是一個操作十分簡單的可視化數(shù)據(jù)庫管理系統(tǒng)。他的主要作用就是簡化用戶數(shù)據(jù)庫的操作,是用戶可以直接的使用圖形化界面就對數(shù)據(jù)庫進行操作,而不需要再使用SQL代碼來操作數(shù)據(jù)庫。這個軟件極大的降低了數(shù)據(jù)庫的使用門檻,讓更多地開發(fā)者可以更加便捷的使用數(shù)據(jù)庫來完整他們的系統(tǒng)。3.1.3TomcatTomcat是一個在中小型網(wǎng)站中被廣泛使用的輕量級的應用服務器。Tomcat本質(zhì)上就是Apache服務器的擴展。他們只用在MyEclipse中搭建好Tomcat服務框架,Tomcat便可以獨立運行。3.2系統(tǒng)開發(fā)的思想與技術(shù)3.2.1JSP技術(shù)與MVC模式本系統(tǒng)采用的是JavaScript技術(shù),并使用的B/S模式來開發(fā)。B/S結(jié)構(gòu),既Browser/Server結(jié)構(gòu),是在Internat逐漸發(fā)展的今天,對原有的C/S結(jié)構(gòu)進行的一種改進。形成了我們所熟知的三層MVC格式。B/S是一種全新的軟件系統(tǒng)架構(gòu)。B/S模式的特點是:用戶可以通過瀏覽器去訪問Internet上的文本、數(shù)據(jù)等。這個框架就是通過Web服務器與數(shù)據(jù)庫向連接。用戶將大量的數(shù)據(jù)存儲在數(shù)據(jù)庫中,系統(tǒng)使用JSP、ASP等對數(shù)據(jù)庫進行操作。在系統(tǒng)運行過程中,用戶通過對Web服務器發(fā)出請求,Web服務器將指令通過JSP對數(shù)據(jù)庫進行操作,然后將結(jié)果再通過Web服務器返回給用戶。圖3-1B/S模式圖從上圖可以看出,這種結(jié)構(gòu)的特點就是,用戶可以不使用客戶端來對系統(tǒng)進行操作,也不用擔心軟件與系統(tǒng)部件兼容的問題。本系統(tǒng)采用的是JSP技術(shù)。Web技術(shù)迅猛發(fā)展的今天,www服務的根本就是HTML語言。JSP就是一種在HTML語言的基礎上使用腳本語言對網(wǎng)頁進行編程。隨著JAVA的發(fā)展,JSP在快速的發(fā)展,已經(jīng)成為了基本系統(tǒng)多必不可少的技術(shù)。JSP相對于ASP有著明顯的優(yōu)勢。ASP相對于JSP來說比較簡單,但是安全性和功能易用性都比較低,并不實用于大型的網(wǎng)站。而本醫(yī)院掛號系統(tǒng)有著很強的專業(yè)型和實用性,所以我選用JSP來開發(fā)這套系統(tǒng)。所使用的框架式S2SH。S2SH指的是Struts、Hibernate和Spring。這個框架在程序中相當于一座橋梁。使用這個橋梁可以讓我們輕松地實現(xiàn)數(shù)據(jù)庫與系統(tǒng)的鏈接。SSH框架有著典型的MVC結(jié)構(gòu)特征。MVC分為三層結(jié)構(gòu),為表現(xiàn)層、中間層和數(shù)據(jù)服務層。表現(xiàn)層使用的是JSP技術(shù);中間層使用的是現(xiàn)在時下最流行的Srping+Hibernate;而負責控制業(yè)務邏輯層和表現(xiàn)層之間的交互的就是StrutsSSH框架1.Struts2框架Struts2是一個開源項目,基于Apache。主要提供了對MVC系統(tǒng)的底層支持。它主要使用的技術(shù)是Servlet、JSP和Customtaglibrary?;緲?gòu)成如圖3-2所示。 圖3-2Struts框架工作流程2.Spring框架Spring是個輕量級的容器,主要是用來實現(xiàn)IoC容器和非入侵性的框架。Spring框架由以下七個部分組成圖3-3Spring框架構(gòu)成3.Hibernate框架Hibernate是一個開源的ORM持久層框架。提供了極為強大的對象到關(guān)系型數(shù)據(jù)庫的持久化服務。圖3-4Hibernate框架

4概要設計4.1系統(tǒng)目標在計算機網(wǎng)絡發(fā)達的今天,運用先進的數(shù)據(jù)庫知識和先進的開發(fā)平臺,我們可以設計并使用一些真正改變我們?nèi)粘I畹南到y(tǒng)。有著優(yōu)秀人機交互界面的醫(yī)院網(wǎng)上掛號系統(tǒng)就是這樣的一個系統(tǒng)。通過使用這個系統(tǒng),患者們可以更加快捷的在網(wǎng)上完成掛號預約。4.2系統(tǒng)的主要功能醫(yī)院網(wǎng)上預約掛號系統(tǒng)需要實現(xiàn)的主要功能有:(1)預約查詢:可以查詢醫(yī)生和相關(guān)的科室信息,同時也可以查詢約時間表。(2)預約:登陸的用戶可以通過按照自己的實際情況,對相關(guān)科室的相關(guān)醫(yī)生進行預約服務。(3)用戶信息修改:用戶可以修改自己的個人信息。(4)管理員模塊:管理員可以通過系統(tǒng)對醫(yī)生、科室信息、用戶等信息進行添加、刪除和修改的操作。4.3程序流程圖用戶預約流程圖圖:圖4-3用戶預約流程圖圖4-4用戶登錄流程圖

5系統(tǒng)數(shù)據(jù)庫的設計與實現(xiàn)5.1數(shù)據(jù)庫概念結(jié)構(gòu)設計5.1.1數(shù)據(jù)庫概念設計圖5-1數(shù)據(jù)庫概念設計上圖為系統(tǒng)的關(guān)系模型。我在設計整個系統(tǒng)的使用一共使用了八張表,分別為用戶表t_user、時間表t_timeset、醫(yī)生表t_room_doctor、房間表t_room、角色表t_role、角色源表t_role_resource、應用表t_apply、應用源表t_apply_resource。系統(tǒng)E-R圖為科室科室管理預約用戶醫(yī)生管理員管理管理管理管理 n 1 1 n 11 1 n n n圖5-2E-R圖5.1.2數(shù)據(jù)庫表結(jié)構(gòu)應用表表5.1應用表名類型長度小數(shù)點空IdInt110YesTimeDatetime00NotimesetIdInt110NouserIdInt110NoStatusInt110NoapplyNoInt110no應用源表表5.2應用源表名類型長度小數(shù)點空IdInt110YesNameVarchar2550NoLevelInt110NoUrlVarchar2550NoRemarkVarchar2550NosortInt110NoparentIdInt110no角色表表5.3角色表名類型長度小數(shù)點空IdInt110YesNameVarchar2000NoRemarkVarchar2550NoTypeint10No角色源表表5.4角色源表名類型長度小數(shù)點空roleIdInt110YesresourceIdint110No房間表-表5.5房間表名類型長度小數(shù)點空IdInt110YesNameVarchar1000NoRemarkVarchar6000NoLevelInt110NoSortInt110No醫(yī)生表表5.6醫(yī)生表名類型長度小數(shù)點空IdInt110YesroomIdInt110NouserIdInt110No時間表表5.7時間表名類型長度小數(shù)點空IdInt110YesWeekInt110NoHalfInt110NoCountInt110NouserIdInt110No用戶表表5.8用戶表名類型長度小數(shù)點空IdInt110YesWeekInt110NoHalfInt110NoCountInt110NouserIdint110NoroomIdInt110No5.2系統(tǒng)數(shù)據(jù)庫的設計根據(jù)系統(tǒng)的需求分析和功能模塊的劃分。因此系統(tǒng)的定義數(shù)據(jù)庫我在設計整個系統(tǒng)的使用一共使用了八張表,分別為用戶表t_user、時間表t_timeset、醫(yī)生表t_room_doctor、房間表t_room、角色表t_role、角色源表t_role_resource、應用表t_apply、應用源表t_apply_resource。因表均使用Navicat建立。所以并沒有使用SQL語句,而直接使用可視化界面建立。應用表表5.9應用表idtimetimesetiduserIdstayusappilNo142015-01-159121152015-04-1511110應用源表表5.10應用源表idnamelevelurlremarksortparemtid1個人管理116更新密碼2Web/ids/updatepasswere1115基礎數(shù)據(jù)199716科室醫(yī)生設置2Web/app/roomUserMan221517科室管理2Web/app/firstRoomMan111519個人信息2Web/ids/updateUserInfo2120預約掛號1221我要預約2Web/app/applyDoctorIn12022預約審核2Web/app/applyAudit.jsp222027預約查詢2Web/app/applyList.jsp332028人員管理2Web/ids/userManage,jsp1001530坐診時間安排2Web/app/timesetManage3315角色表表5.11角色表idnameremarktype1普通用戶12醫(yī)師13管理員1角色源表表5.12角色源表roleidresourceId162636316317119219319121321222322227327328330房間表表5.13房間表idnametimesetiduserIdstayusappilNo1內(nèi)科112內(nèi)分泌科2113心血管內(nèi)科2214神經(jīng)內(nèi)科2315呼吸內(nèi)科2416小兒內(nèi)科2517消化內(nèi)科2618外科129神經(jīng)外科27810小兒外科28811泌尿外科29812胸外科210813心外科211814普通外科212815婦產(chǎn)科1316產(chǎn)科2131517婦科2141518眼科1419眼科2151820其他科室11021腦病科21620醫(yī)生表表5.14醫(yī)生表idroomIduserId291581015時間表表5.15時間表idweekhalfcountuserIdroomId921231591122223159120212159用戶表表5.16用戶表idadminnameloginNamesextel11adminTest234admin22335120Test2330402198805026310Test1130管理員2511722196011118253gly1140醫(yī)生張三1111112yishi2150醫(yī)生李四121212putong1160小明111Yisheng21

6系統(tǒng)功能實現(xiàn)6.1系統(tǒng)功能模塊系統(tǒng)主要分為兩個模塊,一個是用戶模塊,一個是管理員模塊。用戶模塊的主要功能是查詢預約、預約、用戶信息修改功能。管理員的主要功能是預約信息查詢與修改、用戶信息查詢與修改、醫(yī)生信息查詢與修改、科室信息查詢與修改。總功能如下圖6-1所示圖6-1系統(tǒng)功能模塊分析6.2程序?qū)Ω鞅淼念悎D的實現(xiàn)6.2.1用戶表的實現(xiàn)<hibernate-mappingpackage="org.hosp.entity"><classname="UserPO"table="t_user"><idname="id"><generatorclass="native"/></id><propertyname="admin"/><propertyname="loginName"/><propertyname="name"/><propertyname="idCard"/><propertyname="password"/><propertyname="sex"/><propertyname="tel"/><propertyname="email"/><propertyname="remark"/><propertyname="createTime"/><propertyname="valid"/><propertyname="img"/><many-to-onename="rolePO"class="RolePO"column="roleId"/>6.2.2時間表的實現(xiàn)<classname="TimesetPO"table="t_timeset"><idname="id"><generatorclass="native"/></id><propertyname="week"/><propertyname="half"/><propertyname="count"/><many-to-onename="userPO"class="UserPO"column="userId"lazy="false"/><many-to-onename="roomPO"class="RoomPO"column="roomId"lazy="false"/>6.2.3醫(yī)生表的實現(xiàn)<classname="RoomDoctorPO"table="t_room_doctor"><idname="id"><generatorclass="native"/></id><many-to-onename="roomPO"class="RoomPO"column="roomId"lazy="false"/><many-to-onename="userPO"class="UserPO"column="userId"lazy="false"/>6.2.4房間表的實現(xiàn)<classname="RoomPO"table="t_room"><idname="id"><generatorclass="native"/></id><propertyname="name"/><propertyname="level"/><propertyname="remark"/><propertyname="sort"/><propertyname="time"/><many-to-onename="parent"class="RoomPO"column="parentId"lazy="false"/>6.2.5角色表的實現(xiàn)<classname="RolePO"table="t_role"><idname="id"><generatorclass="native"/></id><propertyname="name"/><propertyname="remark"/><propertyname="type"/><bagcascade="save-update"inverse="false"lazy="true"name="resourcePOs"table="t_role_resource"><keycolumn="roleId"/><many-to-manyclass="ResourcePO"column="resourceId"/><bagcascade="save-update"lazy="true"name="userPOs"><keycolumn="roleId"/><one-to-manyclass="UserPO"/>6.2.6角色源表的實現(xiàn)<classname="RolePO"table="t_role"><idname="id"><generatorclass="native"/><propertyname="name"/><propertyname="remark"/><propertyname="type"/><bagcascade="save-update"inverse="false"lazy="true"name="resourcePOs"table="t_role_resource"> <keycolumn="roleId"/><many-to-manyclass="ResourcePO"column="resourceId"/><bagcascade="save-update"lazy="true"name="userPOs"><keycolumn="roleId"/><one-to-manyclass="UserPO"/>6.2.7應用表的實現(xiàn)<classname="ApplyPO"table="t_apply"><idname="id"><generatorclass="native"/></id><propertyname="time"/><propertyname="status"/><propertyname="applyNo"/><many-to-onename="timesetPO"class="TimesetPO"column="timesetId"lazy="false"/><many-to-onename="userPO"class="UserPO"column="userId"lazy="false"/>6.2.8應用源表的實現(xiàn)<classname="ResourcePO"table="t_resource"><idname="id"><generatorclass="native"/></id><propertyname="name"/><propertyname="level"/><propertyname="url"/><propertyname="remark"/><propertyname="sort"/><many-to-onename="parent"class="ResourcePO"column="parentId"lazy="false"/><bagcascade="all"lazy="true"name="children"><keycolumn="parentId"/><one-to-manyclass="ResourcePO"/>6.3系統(tǒng)功能實現(xiàn)S2SH只要框架的配置文件6.3.1Hibernate配置文件<session-factory><propertyname="proxool.pool_alias">proxoolPool</property><propertyname="proxool.xml">proxool.xml</property><propertyname="vider_class">org.hibernate.connection.ProxoolConnectionProvider</property><propertyname="dialect">org.hibernate.dialect.MySQL5Dialect</property><propertyname="connection.driver_class">com.mysql.jdbc.Driver</property><propertyname="show_sql">false</property><propertyname="connection.autocommit">false</property><propertyname="hbm2ddl.auto">false</property><mappingresource="org/hosp/entity/User.hbm.xml"/><mappingresource="org/hosp/entity/Role.hbm.xml"/><mappingresource="org/hosp/entity/Resource.hbm.xml"/><mappingresource="org/hosp/entity/Room.hbm.xml"/><mappingresource="org/hosp/entity/RoomDoctor.hbm.xml"/><mappingresource="org/hosp/entity/Timeset.hbm.xml"/><mappingresource="org/hosp/entity/Apply.hbm.xml"/>6.3.2Struts配置文件<struts><!--將struts交給spring管理--><constantname="struts.objectFactory"value="spring"/><constantname="struts.enable.DynamicMethodInvocation"value="false"/><constantname="struts.devMode"value="false"/><constantname="struts.action.extension"value="do"/><packagename="struts2"extends="struts-default"><result-types><result-typename="json"class="org.apache.struts2.json.JSONResult"></result-type><actionname="loginSystem"class="loginAction"method="loginSystem"><resultname="success"type="redirect">index.jsp</result><resultname="error">login.jsp</result></action><actionname="logoutSystem"class="loginAction"method="logoutSystem"><includefile="struts_ids.xml"/><includefile="struts_app.xml"/>6.3.3Spring配置文件<beanid="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><propertyname="configLocation"value="classpath:hibernate.cfg.xml"/> </bean><beanid="txManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager"><propertyname="sessionFactory"ref="sessionFactory"></property> </bean><tx:adviceid="txAdvice"transaction-manager="txManager"><tx:attributes><tx:methodname="create*"propagation="REQUIRED"rollback-for="Exception,RuntimeException"/><tx:methodname="add*"propagation="REQUIRED"rollback-for="Exception,RuntimeException"/><tx:methodname="update*"propagation="REQUIRED"rollback-for="Exception,RuntimeException"/><tx:methodname="delete*"propagation="REQUIRED"rollback-for="Exception,RuntimeException"/><tx:methodname="*"read-only="true"/></tx:attributes></tx:advice><aop:config><aop:pointcutid="txAdviceOperation"expression="execution(*org.hosp.manager..*.*(..))"/><aop:advisorpointcut-ref="txAdviceOperation"advice-ref="txAdvice"/></aop:config><beanid="idsManager"class="org.hosp.manager.IdsManager"scope="prototype"><propertyname="sessionFactory"ref="sessionFactory"></property><beanid="appManager"class="org.hosp.manager.AppManager"scope="prototype"><propertyname="sessionFactory"ref="sessionFactory"></property><beanid="springUtil"class="org.hosp.util.SpringUtil"></bean><!--ids部分bean--><beanid="loginAction"class="org.hosp.action.LoginAction"scope="prototype"></bean><beanid="userAction"class="org.hosp.action.UserAction"scope="prototype"></bean><beanid="resAction"class="org.hosp.action.ResourceAction"scope="prototype"></bean><beanid="roleAction"class="org.hosp.action.RoleAction"scope="prototype"></bean> <!--科室--><beanid="roomAction"class="org.hosp.action.RoomAction"scope="prototype"></bean><beanid="roomDoctorAction"class="org.hosp.action.RoomDoctorAction"scope="prototype"></bean><beanid="timesetAction"class="org.hosp.action.TimesetAction"scope="prototype"></bean><beanid="applyAction"class="org.hosp.action.ApplyAction"scope="prototype"></bean>6.4系統(tǒng)主要功能模塊的實現(xiàn)6.4.1網(wǎng)站頁面圖6-2即為醫(yī)院預約掛號系統(tǒng)的首頁。在首頁中,用戶可以通過醫(yī)院注冊的賬號登錄系統(tǒng),即可使用醫(yī)院的預約服務。點擊首頁的左側(cè)的我要預約,便可使用系統(tǒng)提供的預約服務。同時,在頁面中便出現(xiàn)了醫(yī)院的科室信息和醫(yī)生的排班時間。圖6-2網(wǎng)站頁面代碼:UserVOcurrentUser=AppContext.getCurrentUserVO();StringuserName=currentUser.getName();StringroleName=currentUser.getRoleName();StringmainUrl="_web/ids/userManage.jsp";if(currentUser.getRoleId()==1){//普通用戶 mainUrl="_web/app/applyDoctorIndex.jsp";}elseif(currentUser.getRoleId()==2){//醫(yī)生 mainUrl="_web/app/applyList.jsp";}<metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"/><title>后臺管理</title><linkrel="stylesheet"type="text/css"href="_css/main.css"/><linkrel="stylesheet"type="text/css"href="_js/themes/default/easyui.css"/><linkrel="stylesheet"type="text/css"href="_js/themes/icon.css"/><linkrel="stylesheet"type="text/css"href="_css/index.css"/><scripttype="text/javascript"src="_js/jquery.min.js"></script><scripttype="text/javascript"src="_js/jquery.easyui.min.js"></script><scripttype="text/javascript"src="_js/jquery.query.js"></script><script>$(document).ready(function(){});functionexpand(el){childObj=document.getElementById("child"+el);if(childObj.style.display=='none'){childObj.style.display='block';}else{childObj.style.display='none';}return;}functionexitSystem(){if(confirm('確定要退出系統(tǒng)嗎?')){$.ajax({type:"post",url:'logoutSystem.do',dataType:'text',success:function(data){if(data=='success'){window.location.href="login.jsp";<bodyclass="easyui-layout"><divregion="north"border="false"style="height:60px;overflow:hidden;"><tablecellSpacing=0cellPadding=0class="topTable"><tdstyle="width:450px;"><imgclass="topLeftImg"src="_images/header_left.jpg"/><tdclass="midTopTd"valign="middle"><%=userName%><spanclass="roleSpan">[<%=roleName%>]</span>  <astyle="color:#fff"onclick="exitSystem();"href="javascript:void(0);">退出系統(tǒng)</a><tdstyle="text-align:right;width:268px;"><imgclass="topRightImg"src="_images/header_right.jpg"/><tdcolspan="3"style="background-color:#1c5db6;height:4px;"><divregion="west"border="false"class="leftMenuDiv"><%List<ResourceVO>vos=ResourceUtil.getCurrentUserSecondResources();for(ResourceVOvo:vos){%><tablecellspacing="0"cellpadding="0"border="0"style="width:150px"><tdbackground="_images/menu_bt.jpg"style="padding-left:30px"><ahref="javascript:void(0);"onclick="expand(<%=vo.getId()%>)"class="menuParent"><%=vo.getName()%></a><tableid="child<%=vo.getId()%>"cellSpacing="0"cellPadding="0"style="width:100%;border:0;"><%for(ResourceVOchild:vo.getChildren()){%><trstyle="height:20px;"><tdstyle="width:30px;text-align:center"><imgsrc="_images/menu_icon.gif"><ahref="<%=child.getUrl()%>"class="sysMenu"target="mainFrame"><%=child.getName()%></a><divid="mainPanel"region="center"border="false"><iframeid="mainFrame"name="mainFrame"src="<%=mainUrl%>"style="width:100%;height:100%;"frameborder="0"></iframe>這些代碼是主頁面index.jsp的代碼。6.4.2用戶登陸頁面在用戶登錄頁面中,用戶使用在醫(yī)院注冊的用戶名和密碼登錄系統(tǒng)。在用戶的登錄操作中,系統(tǒng)將驗證是否為正確的用戶名和密碼,如果正確,則登錄成功,反之,則提示密碼錯誤。圖6-3用戶登錄界面注冊的主要代碼為:<TITLE>醫(yī)院預約掛號系統(tǒng)-登錄</TITLE><METAcontent="text/html;charset=utf-8"http-equiv=Content-Type><linkrel="stylesheet"type="text/css"href="_css/main.css"/><linkrel="stylesheet"type="text/css"href="_css/login.css"/><linkrel="stylesheet"type="text/css"href="_jplugins/qqmsg/msgbox.css"<scripttype="text/javascript"src="_js/jquery.min.js"></script><scripttype="text/javascript"src="_jplugins/qqmsg/msgbox.js"></script><script>$(document).ready(function(){ varerrorMsg='<s:propertyvalue="errorMsg"/>'; if(errorMsg!=''){ ZENG.msgbox.show(errorMsg,5,2000);}});functionvalidate(){ varuserName=$('#userName').val(); if(userName==''){ alert("請輸入用戶名!"); returnfalse;} varpassword=$('#password').val(); if(password==''){ alert("請輸入密碼!"); returnfalse; }returntrue;}<DIVclass=login_box><DIVclass=login_title>醫(yī)院預約掛號系統(tǒng)</DIV><DIVclass=login_left></DIV><DIVclass=login_right><DIVclass=msg><DIVid=resultclass="resultnone"></DIV></DIV><DIVclass=login_form><formaction="loginSystem.do"id="loginForm"name="loginForm"method="post"onSubmit="returnvalidate();"autocomplete="off"><LABEL>帳  號:</LABEL><INPUTid=userNameclass=input-textstyle="width:150px;"type=textname=userName><LABEL>密  碼:</LABEL><INPUTclass=input-textstyle="width:150px;"type=passwordname=password><INPUTvalue=1type=hiddenname=ajax><INPUTclass=buttonvalue=登錄type=submit><INPUTid=resetclass=buttonvalue=重置type=resetname=reset>6.4.3管理后臺頁面在管理后臺頁面中,管理員使用管理員賬號登錄后臺管理便可使用后臺管理等功能。在后臺管理頁面中,管理員可以修改用戶信息和管理員的信息。同時管理員也可以修改醫(yī)院的科室信息和醫(yī)生的排班信息。圖6-4管理后臺頁面基本代碼為:<title>人員管理</title><linkrel="stylesheet"type="text/css"href="../../_css/main.css"/><linkrel="stylesheet"type="text/css"href="../../_css/content.css"/><linkrel="stylesheet"type="text/css"href="../../_js/themes/default/easyui.css"/><linkrel="stylesheet"type="text/css"href="../../_js/themes/icon.css"/><linkrel="stylesheet"type="text/css"href="../../_css/ids/index.css"/><scripttype="text/javascript"src="../../_js/jquery.min.js"></script><scripttype="text/javascript"src="../../_js/jquery.easyui.min.js"></script><scripttype="text/javascript"src="../../_js/easyui-lang-zh_CN.js"></script><scripttype="text/javascript"src="../../_js/jquery.query.js"></script><scripttype="text/javascript"src="../../_js/common.js"></script><script>$(document).ready(function(){loadData();initCombo();});functioninitCombo(){$('#roleCombo').combobox({url:'fetchRoleCombo.do?comboPrefix=1',valueField:'id',textField:'text',editable:false,onLoadSuccess:function(data){$(this).combobox('setValue',0);if(data.length>2){$('#roleComboTD').show();}},onSelect:function(){search();}});}functionloadData(){$('#dg').datagrid({ url:'fetchUserList.do?containSelf=0',height:300,columns:[[{field:'id',hidden:'true',width:10,align:'center'},{field:'ck',checkbox:'true',width:20,align:'center'},{field:'loginName',title:'登錄名',width:40,align:'left'},{field:'name',title:'真實姓名',width:40,align:'left'},{field:'sexStr',title:'性別',width:20,align:'center'},{field:'idCard',title:'身份證號',width:50,align:'center'},{field:'createTimeStr',title:'創(chuàng)建時間',width:40,align:'center'},{field:'roleName',title:'角色',width:30,align:'left'}functionsearch(){$('#dg').datagrid('options').queryParams.keyword=$('#keyword').val();$('#dg').datagrid('options').queryParams.roleId=$('#roleCombo').combobox('getValue');$('#dg').datagrid("reload");

溫馨提示

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

評論

0/150

提交評論