jsp33醫(yī)院醫(yī)生處方管理系統(ssh)_第1頁
jsp33醫(yī)院醫(yī)生處方管理系統(ssh)_第2頁
jsp33醫(yī)院醫(yī)生處方管理系統(ssh)_第3頁
jsp33醫(yī)院醫(yī)生處方管理系統(ssh)_第4頁
jsp33醫(yī)院醫(yī)生處方管理系統(ssh)_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGE摘要信息時代的來臨,計算機技術已經應用于醫(yī)院的日?;墓芾?,給醫(yī)院的現代化科技管理帶來了前所未有的動力和財富,為醫(yī)療衛(wèi)生領域的發(fā)展帶來了巨大潛力。運用計算機信息管理系統現在已經成為了醫(yī)院管理科學化和現代化的標志,為醫(yī)院帶來了顯著的經濟效益和社會效益?;贐/S結構,采用JSP程序設計語言及Oracle數據庫等技術對本次設計進行設計開發(fā);論文首先闡述了基于B/S模式的醫(yī)院醫(yī)生處方管理系統的開發(fā),并對該系統進行了較詳細的需求分析;隨后對要實現的設計方案進行了探討,該系統主要包含了管理員的模塊:用戶管理、藥品管理、藥品添加、用戶添加;操作員模塊:患者添加、掛號申請、掛號、患者管理、劃價收費;醫(yī)生模塊:醫(yī)生診斷、診斷添加;最后,通過對本次設計的分析與檢測,該系統可以運行穩(wěn)定、可靠和實用等特點,具備了一定的實用價值。關鍵詞:醫(yī)院門診;B/S結構;數據庫;JSPAbstractTheinformationagehasarrivednow,thecomputerisusedinday-to-daymanagementofthehospital,neverhadthepowerandopportunitybefore,forthemodernizationofthehospitalprovidesunlimitedpotentialforthedevelopmentofthefieldofhealth.Theuseofcomputermanagementinformationsystemshasbecomeascientificandmodernhospitalmanagementflagbroughtremarkableeconomicandsocialbenefitstothehospital.DevelopmentofthisdesignisbasedonB/Sstructure,usingJSPprogramminglanguageandOracledatabasedevelopment;thesisdescribesthedevelopmenttheTongrenHospitalOutpatientmanagementsystembasedonB/Smode,andthesystemingreaterdetaildemandanalysis;thendiscussestheneedtoimplementthesystemdesign,thesystemadministratormodule:usermanagement,usersaddandDrugAdministration,DrugAdd;operatormodule:managementofpatients,patients,registered,registeredapplicationdesignatedpricecharges;doctorsmodules:adddoctorsdiagnosis,diagnosis;Finally,intheprocessoftestingandanalysis,thesystemdemonstratedstableoperation,reliableandpracticalfeatures,hassomepracticalvalue.Keywords:Hospitaloutpatient;B/Sstructure;database;JSP目錄論文總頁數:35頁1引言 21.1課題背景 21.2本課題研究的意義 21.3本課題的研究思路和方法 31.4本文的主要工作 3本文主要是對設計與開發(fā)一個醫(yī)院醫(yī)生處方管理系統,首先對本系統所基于的B/S結構,采用的JSP編程技術和Oracle數據庫,運用的MyEclipse開發(fā)工具等進行詳細的介紹;然后對用戶的需求分析,指出了需要解決的問題,需要實現的功能,如管理員模塊:用戶管理、用戶添加、藥品管理、藥品添加;操作員模塊:患者管理、患者添加、掛號、掛號申請、劃價收費;醫(yī)生模塊:醫(yī)生診斷、診斷添加;其次是具體的設計和實現過程,詳細描述了數據庫設計,代碼實現;然后,系統測試,測試發(fā)現該系統存在的問題,消除錯誤,并發(fā)現一些不足的地方;最后是本次系統設計的總結,總結設計過程中遇到的問題和收獲。2開發(fā)工具介紹 32.1JSP技術 42.1.1JAVA簡介 42.1.2JSP簡介 42.1.3JavaBeans介紹 52.1.4JDBC驅動程序介紹 52.2Myeclipse介紹 62.3Oracle數據庫 62.4Browser/Server(B/S)結構 63需求分析及設計方案 73.1需求分析 73.2設計方案 73.2.1系統功能 73.2.2系統結構 84具體設計流程及實現 94.1數據庫設計 94.1.1數據庫需求分析及E-R圖 94.1.2數據表具體設計 104.2部分關鍵編碼實施實現 134.2.1患者掛號編碼實現 134.2.2醫(yī)生診斷編碼實現 164.2.3劃價收費編碼實現 225系統運行及測試與分析 275.1系統的運行 275.1.1登錄界面 275.1.2管理員主界面 275.1.3用戶管理 275.1.4用戶添加 285.1.5藥品添加 285.1.6藥品管理 285.1.7操作員主界面 285.1.10患者管理 285.1.11患者添加 285.1.12診斷添加 285.1.13醫(yī)生開藥 285.1.14劃價收費 285.2測試與分析 28結論 29參考文獻 29致謝 30第30頁共35頁1引言1.1課題背景在還沒有計算機的時代,對于醫(yī)院的各方面的管理都是靠紙、筆為主要的工具進行的。隨著科技的發(fā)展,大量信息增長,利用傳統的方式已經無法快速、準確的跟隨企業(yè)各項目的管理工作了。當醫(yī)院意識到對于大量信息管理的重要性的時候,漸漸開始重視醫(yī)院管理。期間,運用馬奇的最大、最小化問題,西蒙教授開發(fā)的自動控制理論等方法,研發(fā)出了很多的管理方法。隨著計算機的快速普及,在二十世紀,很多醫(yī)院開始使用計算機對醫(yī)院管理。進入二十世紀后,隨著信息技術的發(fā)展和普及,許多的醫(yī)院開始借助計算機的強大功能,進行對醫(yī)院的管理工作,從而提高了處理的速度與精度。隨著計算機技術的飛速發(fā)展,計算機強大的信息處理技術必定可以成為醫(yī)院的日常管理的一大利器。同時也會為醫(yī)院管理系統帶來巨大的改變和意想不到的效益提升。為醫(yī)院的快速發(fā)展提供無限的潛力。醫(yī)院管理系統給醫(yī)院帶來顯著的經濟、社會效益,同時也成為了醫(yī)院門診管理科學會和現代化的重要標志。醫(yī)院管理系統主要的優(yōu)點主要體現在:極大幅度的提高了醫(yī)院工作員工的工作效率,減少了很多管理中的漏洞,減少或者節(jié)約了一些不必要的管理開支,增加醫(yī)院的收益。醫(yī)院管理系統在HIS系統中占據著重要的地位,自以醫(yī)院管理、經濟管理為重點改為以病人為關注重點,隨著社會科技技術的發(fā)展、人民生活水平不斷的提高,醫(yī)院的一切程序都逐漸進行更人性化的服務、自動化、無紙化的管理,其數據量大、信息共享度高,而且對收費、退費、收費統計和藥品管理實時性要求高。因此對醫(yī)院的服務也愈來愈高,作為當今現代化的醫(yī)院管理,必須以人為本,從軟、硬件上,更上新的更高臺階,才可以在醫(yī)院對患者的服務效率、醫(yī)院資源利用率和能力、產生良好的社會與經濟效益的各方面得到最大限度的提高。1.2本課題研究的意義隨著患者要求的不斷提高,使得數字化醫(yī)院管理系統在整個社會中占據愈來愈重要的地位,讓數字化醫(yī)院管理系統成為現代醫(yī)院不可缺少的的核心環(huán)節(jié)之一。十分耗費人力物力的傳統醫(yī)院管理過程中,由于使用手工操作,不可避免的會造成一些錯誤的信息。再加上現在醫(yī)院需要處理的信息量很繁雜,管理的藥品種類繁多,收費單、退費單等單據的發(fā)生量特別多,關聯信息多,查詢和統計的方式各不相同。致使管理上實現起來比較費時費錢。還有信息的重復傳遞等問題常常出現在管理的過程中。因此醫(yī)院的管理也越來越需要一個低價格、高性能、使用便捷、功能齊全的數字化醫(yī)院管理系統。當今計算機技術、網絡技術的飛速發(fā)展與成熟,為數字化醫(yī)院的管理提供了極大的技術支持。課題以某中小型醫(yī)院為應用背景,經過對這個醫(yī)院的管理方面的現狀、存在的問題以及實際需求的研究,設計一個針對醫(yī)院管理工作的數字化醫(yī)院管理系統。該管理系統可以提供完備的功能,全面的對醫(yī)院的各相關信息進行管理,減少信息流轉時間,使得醫(yī)院的管理井然有序、層次分明,為病人查詢與醫(yī)生治療提供可靠準確的依據,使得數字化管理系統在提高醫(yī)院管理的經營效益、加快醫(yī)院管理的自動化方面具有重要意義。數字化醫(yī)院管理系統,應具備大幅度改善醫(yī)院醫(yī)生的工作條件,減少醫(yī)院門診護士的工作量,提高各方面的效率,與此同時還可以為醫(yī)院各級管理人員科學的提供醫(yī)院的基本數據統計情況,以最大限度的發(fā)揮醫(yī)院的現有硬件軟件資源,產生很好的社會和經濟效益,實現現代化數字醫(yī)院管理,具備公平、公開、公正、文明的醫(yī)院系統,快捷的病人自助查詢、藥品查詢、收費查詢等人性化的服務,為我國醫(yī)療衛(wèi)生保健事業(yè)帶來卓越的飛躍,一舉跨入發(fā)達國家醫(yī)療管理的前列。本課題研究具有重要意義。1.3本課題的研究思路和方法本次系統的開發(fā)要求采用B/S結構,基于醫(yī)院設計與開發(fā)一個功能完善的管理系統。因此,本次畢業(yè)設計應首先分析醫(yī)院管理系統的相關功能,結合畢業(yè)設計的相關要求,編寫需求分析;對以前所學知識的綜合運用(包括以前所學的關于網絡技術,數據庫技術,編程等相關知識),選擇了自己覺得還學得比較好的開發(fā)語言進行畢業(yè)設計的開發(fā);在需求分析的基礎上進行設計,寫出系統開發(fā)計劃,實現過程的流程圖以及相關問題的實現辦法;同時,在做設計的過程中保存好設計過程中的資料文檔,以便以后畢業(yè)論文的寫作工作的開展;最后,系統開發(fā)完畢以后,進行調試和運行,做好調試和運行的記錄,以方便以后論文寫作的開展。1.4本文的主要工作本文主要是對設計與開發(fā)一個醫(yī)院醫(yī)生處方管理系統,首先對本系統所基于的B/S結構,采用的JSP編程技術和Oracle數據庫,運用的MyEclipse開發(fā)工具等進行詳細的介紹;然后對用戶的需求分析,指出了需要解決的問題,需要實現的功能,如管理員模塊:用戶管理、用戶添加、藥品管理、藥品添加;操作員模塊:患者管理、患者添加、掛號、掛號申請、劃價收費;醫(yī)生模塊:醫(yī)生診斷、診斷添加;其次是具體的設計和實現過程,詳細描述了數據庫設計,代碼實現;然后,系統測試,測試發(fā)現該系統存在的問題,消除錯誤,并發(fā)現一些不足的地方;最后是本次系統設計的總結,總結設計過程中遇到的問題和收獲。2開發(fā)工具介紹本系統是采用JSP編程技術和MySQL數據庫,在WindowsXP操作系統環(huán)境下,采用Myeclipse開發(fā)工具以及Javabeans編寫進行設計與開發(fā)完成的基于B/S結構的醫(yī)院醫(yī)生處方管理系統。2.1JSP技術2.1.1JAVA簡介Java語言出現于20世紀90年代的初期,起初是以智能家電的芯片語言出現的。但是不久,人們發(fā)現它具有更多的發(fā)揮領域,因為互聯網環(huán)境下它也可以運用,因此在計算機領域引起廣泛的關注,使它向計算機網絡編程語言的方向快速發(fā)展。Java語言受到計算機研究人員的重視,因為它真的可以作為一種新的編程語言,具有許多優(yōu)點,它很簡單,而且面向對象的,具有移植性,跟硬件無關,強大的安全性,高性能,并提供一個分布式的,多線程,動態(tài)支持。2.1.2JSP簡介JSP(JavaServerPages)是由Sun公司運用Java語言研發(fā)出來的一種動態(tài)網頁制作技術,以Web服務器、應用服務器、交易系統、以及開發(fā)工具提供商間廣泛合作的結果形成規(guī)范,將網頁中的動態(tài)部分和靜態(tài)部分的HTML相分離。⑴將內容的生成和顯示進行分離JSP技術可以讓Web頁面開發(fā)人員運用HTML或者XML標識來設計和格式化最終的網頁頁面。運用JSP標識或者小腳本生成頁面的動態(tài)內容。生成內容的邏輯被封裝在標識和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務器端運行。⑵強調可重用的組件絕大多數JSP頁面信賴于可重用的、跨平臺的組件(JavaBeans或者EnterpriseJavaBeansTM組件)來執(zhí)行應用程序所要求的更為復雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,井使得這些組件為更多的使用者或者客戶團體所使用[6]。⑶采用標識簡化頁面開發(fā)Web頁面編程人員不是全都熟悉腳本語言的。JSP封存了許多生成與JSP相關的XML標識的動態(tài)內容時所需要的功能。標準的JSP標識可以訪問和實例化JavaBeans組件、對組件進行設置或者檢索組件屬性、下載Applet,還可以執(zhí)行用其他更難于編碼和耗時的功能。⑷健壯性與安全性由于JSP頁面的內置腳本語言是基于Java編程語言的,且都被編譯為JavaServlet,它就具有Java技術的所有好處,包括健壯的存儲管理和安全性[7]。⑸良好的移植性在Java平臺的一部分,用Java編程語言的JSP,具有“一次編寫,到處運行”的特征。現在很多的供應商將JSP技術添加到他們的產品當中去,從而可以使用自己所選擇的服務器和工具,并且在更改工具或者服務器的同時不影響當前的使用。⑹企業(yè)級的擴展性和性能當與Java2平臺,企業(yè)版(J2EE)和EnterpriseJavaBeans技術整合時,JSP頁面將可以提供企業(yè)級的擴展性以及性能,基于Web的應用虛擬企業(yè)中部署是必不可少的。2.1.3JavaBeans介紹JavaBeans是一個可以重復使用的軟件組件。JavaBeans是一種Java類,通過封裝屬性和方法具有某種功能或者處理某個業(yè)務的對象,簡稱beans。JavaBeans是基于Java語言的,具有以下特點:(1)可以實現代碼的重復利用。(2)易編寫,易維護,易使用。(3)只要安裝了JAVA程序平臺都可以運行,而不需要重新編譯。2.1.4JDBC驅動程序介紹從編程的角度看,有兩個連接類型主要是負責與數據庫的建立。對第一種也提供在JDBCAPI為實際類。也負責已注冊驅動程序的管理,在本質上是對驅動程序細節(jié)進行提取,所以程序員不需要直接處理他們。第二個類是實際的JDBCDriver類。JDBC驅動程序有四種類型。第一種驅動程序:它們都使用JDBC-ODBC橋,這是作為JDK的一個標準部分包括的。第一種驅動程序通過附加在JDBC-ODBC橋的“開放式數據庫連接性”(OpenDataBaseConnectivity(ODBC))驅動程序來區(qū)分。要連接到一個不同的數據源,您只需要使用ODBC管理員注冊(或有效地綁定)一個不同的ODBC數據源到合適的數據源名稱即可。第二個驅動程序也被稱作“Java驅動程序的一部分,因為它們直接轉化為具體的數據庫API。對于分布式應用程序,這種需求會產生額外的許可證問題,還可能帶來可怕的潛在代碼分布問題。第三種驅動程序是純Java驅動程序,將JDBCAPI轉換成獨立于數據庫的協議。JDBC驅動程序不直接與數據庫通信;它和一個中間件服務器通訊,然后這個中間件服務器和數據庫進行通訊。這種通訊方式提供了靈活性:可以使用相同的代碼訪問不同的數據庫,因為中間件服務器隱藏了Java應用程序的細節(jié)。改變中間件服務器上的參數就可以去到其他的數據庫。第四種驅動程序是純Java驅動程序,它直接與數據庫進行通訊。由于它通常提供了最佳的性能,程序員認為這是最好的驅動程序,并且它允許開發(fā)者使用特定數據庫的功能。特別是如果您需要改變應用程序中的底層數據庫時,這種緊密耦合會影響靈活性。此驅動程序通常用于小程序和其他高度分布中的應用。2.2Myeclipse介紹MyEclipse企業(yè)級工作平臺(MyEclipseEnterpriseWorkbench,簡稱MyEclipse)是對EclipseIDE的擴展,使用它我們可以在數據庫和JavaEE的開發(fā)、發(fā)布和應用程序服務器的整合方面大幅度的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包含了完備的編碼、調試、測試和發(fā)布功能,支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。MyEclipse是一個十分優(yōu)秀的用于開發(fā)Java,J2EE的Eclipse插件集合,MyEclipse的功能非常巨大,支持平臺也十分寬泛,尤其是對各種開源產品的支持很好。MyEclipse目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC數據庫鏈接工具等多項功能??梢哉fMyEclipse幾乎囊括了目前所有主流開源產品的專屬eclipse開發(fā)工具。2.3Oracle數據庫ORACLE數據庫系統是美國ORACLE公司(甲骨文)提供的以分布式數據庫為核心的一組軟件產品,是目前最流行的客戶/服務器(CLIENT/SERVER)或B/S體系結構的數據庫之一。比如SilverStream就是基于數據庫的一種中間件。ORACLE數據庫是目前世界上使用最為廣泛的數據庫管理系統,作為一個通用的數據庫系統,它具有完整的數據管理功能;作為一個關系數據庫,它是一個完備關系的產品;作為分布式數據庫它實現了分布式處理功能。但它的所有知識,只要在一種機型上學習了ORACLE知識,便能在各種類型的機器上使用它。[1]Oracle數據庫最新版本為OracleDatabase12c。Oracle數據庫12c引入了一個新的多承租方架構,使用該架構可輕松部署和管理數據庫云。此外,一些創(chuàng)新特性可最大限度地提高資源使用率和靈活性,如OracleMultitenant可快速整合多個數據庫,而AutomaticDataOptimization和HeatMap能以更高的密度壓縮數據和對數據分層。這些獨一無二的技術進步再加上在可用性、安全性和大數據支持方面的主要增強,使得Oracle數據庫12c成為私有云和公有云部署的理想平臺。。2.4Browser/Server(B/S)結構B/S(Browser/Server)結構即瀏覽器和服務器結構。它是隨著Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,用戶工作界面是通過WWW瀏覽器來實現,極少部分事務邏輯在前端(Browser)實現,但是主要事務邏輯在服務器端(Server)實現,形成所謂三層3-tier結構。極大的簡化了客戶端電腦載荷,減輕系統維護與升級的成本以及工作量,降低了用戶的總體成本(TCO)。以目前的技術看,局域網建立B/S結構的網絡應用,并通過Internet/Intranet模式下數據庫應用,相對易于把握、成本也是較低的。它是一次性到位的開發(fā),能實現不同的人員,從不同的地點,以不同的接入方式(比如LAN,WAN,Internet等)訪問和操作共同的數據庫;它能有效地保護數據平臺和管理訪問權限,服務器數據庫也很安全。特別是在JAVA這樣的跨平臺語言出現之后,B/S架構管理軟件更是方便、快捷、高效。3需求分析及設計方案3.1需求分析根據對醫(yī)院醫(yī)生處方管理系統的分析,主要應解決以下幾個問題:(1)實現門診掛號:患者來院就醫(yī)的時候最開始需要建立就診卡然后去門診進行掛號進行預約系統自動的給患者分配一個ID號碼、記錄患者信息并打印掛號單;(2)實現門診劃價收費:門診劃價:根據醫(yī)生所開的藥品,在醫(yī)院的門診進行劃價操作門診收費:根據劃價結果進行收費藥品發(fā)貨:收費之后員工發(fā)放藥品收據處理:對收據進行保存3.2設計方案根據以上分析,需求情況,結合系統的功能實現,具體的設計方案如下。3.2.1系統功能通過對用戶需求的分析,一個醫(yī)院醫(yī)生處方管理系統應包括以下的主要功能:系統管理:系統注冊、用戶管理(添加,修改,刪除等,用戶包含管理人員、醫(yī)生以及藥房等角色)、修改密碼、系統登錄、退出系統等。醫(yī)院科室管理:系統可以管理多個科室,記錄科室的信息,對科室信息進行增加、刪除、修改、查詢。醫(yī)院醫(yī)生管理:醫(yī)院醫(yī)生管理可以對所有醫(yī)生信息進行查詢,可以對醫(yī)生信息進行詳細查詢,對醫(yī)生信息進行修改。藥房醫(yī)生管理:可以對每個藥房醫(yī)生進行查詢、修改,并且可以查看每個藥房醫(yī)生所開出的藥品。處方管理:可以對每個醫(yī)生開出的處方進行查詢。藥品類別管理:對所有的藥品類別進行增加、刪除、修改、查詢。藥品信息管理:對所有的藥品進行查詢,庫存數量,藥品的說明,以及藥品進庫等功能。3.2.2系統結構整個系統主要分為管理員模塊:用戶管理、用戶添加、藥品管理、藥品添加;操作員模塊:患者管理、患者添加、掛號、掛號申請、劃價收費;醫(yī)生模塊:醫(yī)生診斷、診斷添加,如圖1所示。醫(yī)院門診管理系統-管理員模塊醫(yī)院門診管理系統-管理員模塊藥品管理藥品添加用戶管理用戶添加醫(yī)院門診管理系統-操作員模塊診斷申請醫(yī)院門診管理系統-操作員模塊診斷申請劃價收費患者管理患者添加醫(yī)院門診管理系統-醫(yī)生模塊醫(yī)生診斷 診斷添加圖1系統功能圖4具體設計流程及實現4.1數據庫設計4.1.1數據庫需求分析及E-R圖根據以上的系統功能分析,得到E-R圖:門診與醫(yī)生間的E-R圖,一個門診中允許有多個醫(yī)生,一個醫(yī)生只能有一個對應的門診,為患者看病圖4-1門診與醫(yī)生之間的E-R圖醫(yī)生與病人間的E-R圖,在一個醫(yī)院中,醫(yī)生與病人一般都是一對一的關系。圖4-2醫(yī)生與病人之間的E-R圖藥品與門診收費間的E-R圖,一種藥品對應一個進價,收費價格也是統一的。圖4-3藥品與門診收費之間的E-R圖4.1.2數據表具體設計(1)管理員表:記錄管理員信息,如表1所示。表1管理員表(admins)序號列名數據類型長度是否必填1IdIntNotnull2usernamenvarchar50null3passwordnvarchar50null4Typenvarchar50null5realnamenvarchar50null(2)操作員表:記操作員信息,如表2所示。表2操作員表(cz)序號列名數據類型長度是否必填1IdIntNotnull2MidIntnull3HsidIntnull4Nonvarchar50null5Timesdatetimenull6descsnvarchar50null(3)掛號表:記錄掛號信息,如表3所示。表3掛號表(gh)序號列名數據類型長度是否必填1IdIntNotnull2Ksnvarchar50null3Typenvarchar50null4Nonvarchar50null5midIntnull6timesdatetimenull(4)護士值班變表:記錄護士值班信息,如表4所示。表4護士值班表(hszb)序號列名數據類型長度是否必填1idIntNotnull2hsidIntnull3daysdatetimenull4Benginhournvarchar50null5endhournvarchar50null(5)開藥表:記錄開藥信息,如表5所示。表5開藥表(ky)序號列名數據類型長度是否必填1IdIntNotnull2yzidIntnull3ypidIntnull4numIntnull5descsnvarchar50null(6)患者表:記錄患者信息,如表6所示。表6患者表(members)序號列名數據類型長度是否必填1IdIntNotnull2Nonvarchar50null3Moneysnvarchar50null4realnamenvarchar50null5telnvarchar50null(7)藥品表:記錄藥品信息,如表7所示。表7藥品表(yp)序號列名數據類型長度是否必填1IdIntNotnull2Namesnvarchar50null3Moneysnvarchar50null4numIntnull(8)醫(yī)生值班表:記錄醫(yī)生值班信息,如表8所示。表8醫(yī)生值班表(yszb)序號列名數據類型長度是否必填1IdIntNotnull2YsidIntnull3Daysdatetimenull4Benginhournvarchar50null5endhournvarchar50null(9)醫(yī)囑記錄醫(yī)囑信息,如表9所示。表9醫(yī)囑表(yz)序號列名數據類型長度是否必填1IdIntNotnull2MidIntnull3YsidIntnull4Zdnvarchar50null5Yfnvarchar50null6Timesdatetimenull7nonvarchar50null4.2部分關鍵編碼實施實現4.2.1患者掛號編碼實現packagecom.dy.deo;importjava.sql.Connaction;importjava.sql.PreparedStatement;importjava.sql.ResultSat;importjava.sql.SQLExcaption;importjava.sql.Statament;importjava.util.ArreyList;importjava.utiel.List;importcom.dy.baen.Commodity;importcom.dy.util.DBUtel;publicclassCommodityDao{ publicvoidadd(StringcomName,StringcomSpec,Stringentid, Stringprice,StringcomBrand,StringcomDate,Stringexpdate,Stringgurl,Stringtype ){ DBUtilutil=newDBUtil(); Connectionconn=util.openC(); try{ StringsqlAddent="insertintocommodity(comName,comSpec,entid,price,comBrand,comDate,expdate,url,type)values('" +comName +"','" +comSpec +"'," +entid +"," +price +",'" +comBrand +"','" +comDate +"','" +expdate+"','" +gurl+"'," +type+")"; Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlAddent); Stringsql="select*fromcommodityorderbyentiddesc"; intcomid=0; PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ comid=rs.getInt("comid"); break; } StringsqlAdduser="insertintokc(comid,num,entid)values(" +comid+",0,"+entid+")"; Statementstmt2=conn.createStatement(); stmt2.executeU(sqlA); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeC(c); } } publicList<C>list(Stringentid){ Stringsql="select*fromcommoditywhereentid="+entid; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); List<Commodity>list=newArrayList<Commodity>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ Commoditybean=newCommodity(); bean.setEntid(rs.getInt("entid")); bean.setComBrand(rs.getString("comBrand")); bean.setComDate(rs.getDate("comDate")); bean.setComID(rs.getInt("comID")); bean.setComName(rs.getString("comName")); bean.setComSpec(rs.getString("comSpec")); bean.setExpdate(rs.getDate("expdate")); bean.setP(rs.getDouble("price")); bean.setTrs.getInt("type")); bean.setUl(rs.getString("url")); list.add(baen); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeC(conn); } returnlist; } publicvoiddeletes(Stringid){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="deletefromcommoditywherecomID="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.exacuteU(sqlmodify); }catch(SQLExceptione){ e.printStackTrace(); } } publicCommoditymodifyBefore(Stringid){ Stringsql="select*fromcommoditywherecomID="+id; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Commoditybean=newCommodity(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ bean.setEntid(rs.getInt("entid")); bean.setComBrand(rs.getString("comBrand")); bean.setComDate(rs.getDate("comDate")); bean.setComID(rs.getInt("comID")); bean.setComName(rs.getString("comName")); bean.setComSpec(rs.getString("comSpec")); bean.setExpdate(rs.getDate("expdate")); bean.set(rs.getD("price")); break; } returnbean; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeC(c); } returnbean; } publicvoidmodify(Stringid,StringcomS,Stringprice,StringcomBrand){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="updatecommoditysetcomSpec='"+comSpec+"',price="+price+",comBrand='"+comBrand+"'wherecomID="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.U(sqlmodify); }catch(SQLExceptione){ e.printStackTrace(); } }}}4.2.2醫(yī)生診斷編碼實現packagecom.dy.deo;importjava.sql.Connaction;importjava.sql.PrepaarrdStatement;importjava.sql.RascltSet;importjava.sql.SQLExcaption;importjava.sql.Strement;importjava.util.ArreyList;importjava.utiil.List;importcom.dy.baen.Enterprise;importcom.dy.bean.Kc;importcom.dy.bean.U;importcom.dy.util.D;publicclassKcDao{ publicvoidadd(Stringentname,Stringentenname,Stringentemail, Stringenttel,Stringentadd,Stringentman,Stringenttype, Stringentindreg,StringuserName,Stringpassword){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); try{ StringsqlAddent="insertintoenterprise(entname,entenname,entemail,enttel,entadd,entman,enttype,entindreg)values('" +entname +"','" +entenname +"','" +entemail +"','" +enttel +"','" +entadd +"','" +entman +"','" +enttype+"','"+entindreg+"')"; Statementstmt=conn.createStatement(); stmt.executeU(sqlA); Stringsql="select*fromenterpriseorderbyentiddesc"; intentid=0; PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ entid=rs.getInt("entid"); break; } StringsqlAdduser="insertintousers(userName,password,roleid,entid,depid,status)values('" +userName+"','"+password+"',0,"+entid+",0,0)"; Statementstmt2=conn.createStatement(); stmt2.executeUpdate(sqlAdduser); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeC(conn); } } publicList<String>getE){ Stringsql="select*fromenterprise"; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringentname=""; List<String>list=newAt<String>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ entname=rs.getString("entname"); list.add(entname); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeC(conn); } returnlist; } publicEnterprisegetOneEnt(Stringentname){ Stringsql="select*fromenterprisewhereentname='"+entname +"'"; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Enterprisebean=newEnterprise(); List<String>list=newArrayList<String>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ bean.setEntadd(rs.getString("entadd")); bean.setEntemail(rs.getString("entemail")); bean.setEntenname(rs.getString("entenname")); bean.setEntid(rs.getInt("entid")); bean.setEntindreg(rs.getString("entindreg")); bean.setEntman(rs.getString("entman")); bean.setEntname(rs.getString("entname")); bean.setEnttel(rs.getString("enttel")); bean.setEnttype(rs.getString("enttype")); break; } returnbean; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnbean; } publicList<Kc>list(Stringentid){ Stringsql="select*fromkcwhereentid="+entid; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); List<Kc>list=newArrayList<Kc>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ Kcbean=newKc(); bean.setEntid(rs.getInt("entid")); bean.setComid(rs.getInt("comid")); bean.setId(rs.getInt("id")); bean.setNum(rs.getInt("num")); list.add(bean); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnlist; } publicvoiddeletes(Stringid){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="updateuserssetstatus=0whereuserid="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.Update(sqlmodify); }catch(SQLExceptione){ e.printStackTrace(); } } publicUsermodifyBefore(Stringid){ Stringsql="select*fromuserswhereuserid="+id; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Userbean=newUser(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ bean.setDepid(rs.getInt("depid")); bean.setEntid(rs.getInt("entid")); bean.setPassword(rs.getString("password")); bean.setR(rs.getInt("roleid")); bean.setS(rs.getInt("status")); bean.setU(rs.getInt("userid")); bean.setUserN(rs.getString("userName")); break; } returnbean; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnbean; } publicvoidadd(StringuserName,Stringpassword,intentid){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); try{ StringsqlAddent="insertintousers(userName,password,roleid,entid,depid,status)values('" +userName+"','"+password+"',1,"+entid+",0,1)"; Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlAddent); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } } publicvoidmodify(Stringid,Stringpassword){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="updateuserssetpassword='"+password+"'whereuserid="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.Update(sqlmodify); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } publicvoidaddkc(Stringentid,intcomid,intnum){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="updatekcsetnum=num+"+num+"wherecomid="+comid+"andentid="+entid; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.Update(sqlmodify); }catch(SQLExceptione){ e.printStackTrace(); } }}4.2.3劃價收費編碼實現packagecom.dy.dao;importjava.sql.Connection;importjava.sql.PreperadStatement;importjava.sql.RasultSet;importjava.sql.SQLExcaption;importjava.sql.Statament;importjava.util.ArreyList;importjava.util.Liest;importcom.dy.baen.Commodity;importcom.dy.bean.Orders;importcom.dy.bean.Requriement;importcom.dy.bean.RequriementSpecification;importcom.dy.bean.ordersdetail;importcom.dy.util.DBUtil;publicclassOrderDao{ publicvoidadd(Stringentid){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); try{ StringsqlAddent="insertintoorders(Status,day,entid)values(1,getdate(),"+entid+")"; Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlAddent); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeC(conn); } } publicList<Orders>list(Stringentid){ Stringsql="select*fromorderswhereentid="+entid; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); List<Orders>list=newArrayList<Orders>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ Ordersbean=newOrders(); bean.setEntid(rs.getInt("entid")); bean.setDay(rs.getDate("day")); bean.setOrderid(rs.getInt("orderid")); bean.setStatus(rs.getInt("Status")); list.add(bean); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnlist; } publicvoiddeletes(Stringid){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="deletefromorderswhereorderid="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.Update(sqlmodify); }catch(SQLExceptione){ e.printStackTrace(); } } publicList<ordersdetail>rslist(Stringid){ Stringsql="select*fromordersdetailwhereordersid="+id;System.out.println("####"+sql); DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); List<ordersdetail>list=newArrayList<ordersdetail>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ ordersdetailbean=newordersdetail(); bean.setOrderid(rs.getInt("ordersid")); bean.setComid(rs.getInt("comid")); bean.setNum(rs.getInt("num")); bean.setR(rs.getInt("rsid")); list.add(bean); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeC(conn); } returnlist; } publicvoidrsadd(Stringreqid,Stringcomid,Stringnum){ DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); try{ StringsqlAddent="insertintoordersdetail(ordersid,comid,num)values("+reqid+","+comid+","+num+")"; Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlAddent); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } } publicList<Requriement>shlist(Stringentid){ Stringsql="select*fromrequriementwhereStatus=2andentid="+entid; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); List<Requriement>list=newArrayList<Requriement>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ Requriementbean=newRequriement(); bean.setEntid(rs.getInt("entid")); bean.setDay(rs.getDate("day")); bean.setReqid(rs.getInt("reqid")); bean.setStatus(rs.getInt("Status")); list.add(bean); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnlist; } publi

溫馨提示

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

評論

0/150

提交評論