《基于SpringBoot的私人牙醫(yī)管理系統(tǒng)設(shè)計》17000字(論文)_第1頁
《基于SpringBoot的私人牙醫(yī)管理系統(tǒng)設(shè)計》17000字(論文)_第2頁
《基于SpringBoot的私人牙醫(yī)管理系統(tǒng)設(shè)計》17000字(論文)_第3頁
《基于SpringBoot的私人牙醫(yī)管理系統(tǒng)設(shè)計》17000字(論文)_第4頁
《基于SpringBoot的私人牙醫(yī)管理系統(tǒng)設(shè)計》17000字(論文)_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGEPAGE5第一章緒論在這個經(jīng)濟迅速發(fā)展、人們生活水平不斷提高的時代,中國百姓對牙齒的日漸重視,形成了網(wǎng)絡(luò)狀的口腔醫(yī)療網(wǎng)絡(luò)[1],但是,我國民營企業(yè)的口腔發(fā)展體系仍舊不夠完善。據(jù)第四次全國口腔健康流行病學(xué)調(diào)查,發(fā)現(xiàn)我國還缺少一個完善的口腔管理系統(tǒng)來支持現(xiàn)有的私人牙科診所進行管理。隨著人們對口腔醫(yī)學(xué)的講究,帶動了私人牙醫(yī)管理系統(tǒng)的發(fā)展。對于發(fā)展后數(shù)據(jù)量的增大,本系統(tǒng)的設(shè)計是有重要意義的。1.1研究背景及意義隨著人們生活水平的提高,社會節(jié)奏的加快,從而導(dǎo)致人們的工作量增大,身體的負荷量承受加重,與此同時人們更注重身體健康,重視身體各部分的全面保養(yǎng)。在這一背景下,牙科診所剛好逢迎了這一趨勢,滿足了人們對口腔護理的要求。我國口腔醫(yī)學(xué)專業(yè)期刊上的某牙科診所是一家民營性質(zhì)的醫(yī)院,日門診量在50-100左右,年營業(yè)規(guī)模在2000-5000萬[2]。雖然和市內(nèi)的其它綜合牙科醫(yī)院比起來,營業(yè)規(guī)模略顯不足,但也算是中等規(guī)模的一家醫(yī)院。隨著中國老齡化程度的加深,各公立牙??漆t(yī)院為了方便患者就診,同時加強醫(yī)院管理,紛紛采取用了各類就診系統(tǒng)和藥品采購管理系統(tǒng)等,比如都有自己的掛號診療系統(tǒng),患者除了可以現(xiàn)場使用就診卡掛號,也可以通過網(wǎng)絡(luò)在線掛號就診,節(jié)約患者的就診時間。目前,隨著國家醫(yī)療體制的改革,國家越來越鼓勵建立私人醫(yī)療機構(gòu),越來越多私人醫(yī)院的出現(xiàn),導(dǎo)致醫(yī)療機構(gòu)之間的競爭也是越來越激烈。一方面,這家牙??漆t(yī)院擁有良好的科技技術(shù),先進的設(shè)備,有優(yōu)秀的專家以及醫(yī)護人員,然而卻沒有一個好的在線掛號診療系統(tǒng)方便患者。另一方面,隨著互聯(lián)網(wǎng)的興起,該醫(yī)院沒有好的一個醫(yī)院系統(tǒng)來更好的展示自己,正是這個原因,特開發(fā)本私人牙醫(yī)管理系統(tǒng)。本系統(tǒng)主要可以讓患者足不出戶,在家就可先選擇好自己心儀的醫(yī)生進行掛號,醫(yī)生同時可以查看到自己門診的掛號病人情況,在線開處方,方便患者和醫(yī)生對信息的記錄。另一方面,該系統(tǒng)可以很好的對醫(yī)院整體的藥品信息進行管理,管理員后臺可以登錄,調(diào)整藥品信息、系統(tǒng)信息和醫(yī)生等相關(guān)信息,讓系統(tǒng)展現(xiàn)更好的內(nèi)容給患者查看。1.2國內(nèi)外研究現(xiàn)狀據(jù)國內(nèi)第四次全國口腔健康流行病學(xué)調(diào)查顯示,當(dāng)前“居民口腔健康知識知曉率”為60.1%,84.9%的人對口腔保健持積極態(tài)度,預(yù)防口腔疾病和咨詢檢查就診的比例分別為40%、43.2%”[3]。就口腔牙科的發(fā)展趨勢來看,本國從明清時期開始,我國就有牙科醫(yī)學(xué)的雛形,之后中國的牙醫(yī)數(shù)量也隨之增加,但本國牙醫(yī)方面的專業(yè)人才匱乏,牙科診所也缺少相應(yīng)的管理系統(tǒng)[4]。在美國,20世紀10年代至50年代就有了牙科診所的發(fā)展,1917年,喬治·伊斯曼在羅切斯特牙科診所設(shè)立了牙科服務(wù)部門。20世紀60年代伴隨著醫(yī)務(wù)工作的深度發(fā)展,1960年布萊克比提出了在牙科學(xué)校內(nèi)建立社會牙科系。20世紀70年代~80年代牙科醫(yī)學(xué)逐步融入整個社會工作中;自20世紀90年代以來,牙科在社會工作中已經(jīng)逐步成為一種保健模式[5]。所以說牙科醫(yī)學(xué)的發(fā)展在當(dāng)今時代是盛行的,隨之牙科醫(yī)院行業(yè)將需要一個強大的信息化管理系統(tǒng)來管理龐大的數(shù)據(jù)資源。國內(nèi)早在2011年就存在基于.Net的牙科診所管理系統(tǒng)的設(shè)計與實現(xiàn),此系統(tǒng)主要以管理患者的信息為核心模塊,簡化了診所業(yè)務(wù)成本,減少了醫(yī)護人員的勞動強度,同時實現(xiàn)了醫(yī)院更規(guī)范化的信息管理[6]。在國外現(xiàn)階段對牙科診所已經(jīng)有了基于最新框架Vue.js的智能診所系統(tǒng),該系統(tǒng)采用輕量級框架Vue.js,強調(diào)了MVVM模式、組件化和單頁面支持的特點[7]。對于目前國內(nèi)外最流行使用的SpringBoot框架前后端分離技術(shù)來講,不同學(xué)者也都有相關(guān)的介紹。如霍福華學(xué)者在期刊中指出SpringBoot微服務(wù)架構(gòu)簡化了傳統(tǒng)的ssm下過于煩瑣的手工配置,讓視圖層與模型層進行分離,讓數(shù)據(jù)進行更有效的處理[8]。巢晟盛學(xué)者在期刊中講述了這種MVVM模型相比傳統(tǒng)的MVC模型,降低了軟件設(shè)計的耦合度,提高了開發(fā)效率,增加了應(yīng)用模塊測試性能的及時性[9]。1.3研究內(nèi)容本文對基于SpringBoot框架的私人牙醫(yī)管理系統(tǒng)的設(shè)計與實現(xiàn)的研究內(nèi)容主要分為以下四部分:第一部分是對本私人牙醫(yī)管理系統(tǒng)進行相關(guān)技術(shù)介紹,通過技術(shù)可行性、經(jīng)濟可行性和操作可行性對系統(tǒng)進行可行性分析。然后通過前期文獻的查閱和綜述,對此類似系統(tǒng)作邏輯分析,結(jié)合自身的能力、經(jīng)驗以及獨有的創(chuàng)新想法,對整個系統(tǒng)進行功能梳理。本系統(tǒng)將采用分角色登錄,通過患者、醫(yī)生、管理員等不同角色有不同的功能權(quán)限,繪制其用例圖。同時對部分核心功能,如醫(yī)生管理,掛號模塊、患者管理等進行詳細的用例規(guī)約文檔編寫。最后對本開發(fā)系統(tǒng)進行非功能性需求和所需系統(tǒng)環(huán)境進行分析。第二部分是對本系統(tǒng)進行系統(tǒng)設(shè)計,確認此系統(tǒng)前后端分離使用的不同開發(fā)框架,對系統(tǒng)總體架構(gòu)設(shè)計和包結(jié)構(gòu)進行說明。最后根據(jù)第一部分需求分析進行數(shù)據(jù)庫設(shè)計,并通過類圖來表明類與類之間的關(guān)系。第三部分是對私人牙醫(yī)管理系統(tǒng)的實現(xiàn),通過實際的代碼編寫開發(fā)前后端,對患者管理、預(yù)約掛號、藥品管理等核心功能點進行詳細的系統(tǒng)實現(xiàn)記錄。第四部分是對已經(jīng)完成的系統(tǒng)及核心的功能點進行測試,編寫測試用例并記錄測試結(jié)果。對整個系統(tǒng)通過測試進行分析,確定是否構(gòu)成滿足需求的一個完整系統(tǒng),最后總結(jié)寫出測試報告。1.4研究方法(1)文獻資料法本系統(tǒng)主要通過查找相關(guān)文獻,了解目前一些主要的項目開發(fā)技術(shù),包括主流的框架,數(shù)據(jù)結(jié)構(gòu)的使用等,盡量采用更符合目前的主流開發(fā)技術(shù)進行系統(tǒng)的開發(fā)。(2)調(diào)查法通過詢問醫(yī)療機構(gòu)以及社會調(diào)研等獲取相關(guān)的常見信息,查看并了解目前大醫(yī)院采用的一些掛號系統(tǒng)以及藥品管理系統(tǒng)等基本信息,找尋并設(shè)計本系統(tǒng)的基本功能需求。(3)互聯(lián)網(wǎng)查詢法互聯(lián)網(wǎng)的使用如今是非常廣泛的,通過百度等相關(guān)網(wǎng)站可以更快的查詢到一些知識,省去了不少的時間。但是在互聯(lián)網(wǎng)的使用上,盡量還是以概念為基礎(chǔ)理論信息作為查詢的重點。(4)書籍討論法以大學(xué)課本上的知識為重點,如果遇到問題再向同學(xué)或者老師進行咨詢,這樣可以更有針對性的提高自己對課本知識的掌握。另外,也可以閱讀相關(guān)系統(tǒng)開發(fā)技術(shù)的書籍,總的來說,系統(tǒng)的開發(fā)總體采用大學(xué)所學(xué)的知識,部分采用目前主流企業(yè)采用的框架知識。1.5本文組織結(jié)構(gòu)本文分為六章,以下是各章節(jié)概述:第一章:緒論。本章主要介紹了開發(fā)本系統(tǒng)的目的和意義,以及系統(tǒng)的主要研究內(nèi)容和方法等。第二章:系統(tǒng)分析。本章介紹了系統(tǒng)需要用到的相關(guān)技術(shù),對系統(tǒng)進行可行性分析和系統(tǒng)非功能性需求分析。分析了私人牙醫(yī)管理系統(tǒng)的整體功能需求,并通過用例圖和用例規(guī)約可以清晰地查看到各類角色的需求,更直觀的展示整個項目。第三章:系統(tǒng)設(shè)計。本章主要介紹私人牙醫(yī)管理系統(tǒng)的總體結(jié)構(gòu)設(shè)計、分析數(shù)據(jù)各實體之間的聯(lián)系,設(shè)計數(shù)據(jù)庫表字段內(nèi)容,最終設(shè)計出完整的數(shù)據(jù)庫模型。第四章:系統(tǒng)實現(xiàn)。本章主要介紹了系統(tǒng)的各個模塊的詳細實現(xiàn),包括業(yè)務(wù)邏輯,界面以及主要核心代碼等。第五章:系統(tǒng)測試。系統(tǒng)測試是系統(tǒng)在上線之前的最后一個階段。本章主要介紹了系統(tǒng)的測試目的,包括目前主流的黑盒測試和白盒測試等,同時對系統(tǒng)的核心功能進行測試并編寫記錄其結(jié)果,從而減少后期在實際應(yīng)用中出現(xiàn)問題。第六章:總結(jié)與展望。對本次畢業(yè)項目進行總結(jié),并分析項目存在的不足之處,進行加以改進。

第二章系統(tǒng)分析系統(tǒng)分析是系統(tǒng)開發(fā)的一個關(guān)鍵環(huán)節(jié),它在系統(tǒng)的設(shè)計和實現(xiàn)上起到了一個承上啟下的位置。系統(tǒng)需求分析是對所需要做的系統(tǒng)進行一個需求的挖掘,如果分析的準確可以精準地解決現(xiàn)實中碰到的問題。如果分析不到位會影響后期系統(tǒng)的實現(xiàn)。一個系統(tǒng)的優(yōu)秀程度需求分析占據(jù)了非常大的比例,如果需求分析不到位,后面的系統(tǒng)設(shè)計要實現(xiàn)就是一個偏離導(dǎo)航的設(shè)計。本項目是一款基于牙科診所的管理系統(tǒng),以方便患者、醫(yī)生、管理員角色登錄系統(tǒng)進行相關(guān)操作。本章主要對此系統(tǒng)開發(fā)的關(guān)鍵技術(shù)、可行性、系統(tǒng)需求、非功能性需求、系統(tǒng)環(huán)境進行了介紹。2.1系統(tǒng)關(guān)鍵技術(shù)2.1.1SpringBoot框架SpringBoot是由Pivotal團隊提供的全新框架,是基于Spring框架的二次開發(fā)框架[10]。這一框架簡化了Spring煩瑣的配置過程,可以自動配置Spring,提供starter簡化Maven配置。它有許多特點,其一采用JavaConfig的方式進行Spring配置,提供了大量注解,從而提高了工作效率;其二是所有的SpringBoot項目都只存在一個配置文件,容易找出配置出錯的的地方;其三是提供了三種內(nèi)置的Servlet容器,所以開發(fā)人員不再需要安裝外部的Tomcat容器,也不需要部署相應(yīng)的WAR文件,使得部署簡單明了。2.1.2Maven技術(shù)如今Maven的使用越來越普通,maven應(yīng)用的包定位技術(shù)能夠更好的對項目使用到的依賴包的版本進行規(guī)范與統(tǒng)一。隨著計算機技術(shù)的不斷發(fā)展,計算機各類插件的版本更新速度不斷加快,版本沖突成為系統(tǒng)開發(fā)過程中的困難因素,通過maven進行包管理,可以很好地規(guī)范這個問題。其次,隨著系統(tǒng)功能越來越龐大,復(fù)雜性不斷增加,所依賴的包也越來越多。傳統(tǒng)的一個SSM項目,不通過maven進行管理,jar包都有100M甚至更大,這樣嚴重影響項目的使用和管理。通過maven可以在本地建立maven倉庫,引入包坐標之后,會自動和本地倉庫進行關(guān)聯(lián),減少項目的體積,提高項目的運行效率。本系統(tǒng)通過maven技術(shù)的使用,大大縮小了系統(tǒng)所占內(nèi)存,而且在改變引入包時變得更加方便。2.1.3Vue.js框架Vue框架是一款非常優(yōu)秀的前端框架,vue的產(chǎn)生是伴隨著前后端徹底分離而產(chǎn)生的,如今隨著前端項目越來越龐大,如何加強前臺代碼的復(fù)用性和提高系統(tǒng)的可維護性成為前臺工程師的一個重要方向[11]。近年來Vue的盛行證明可解決這一問題,vue把組件開發(fā)深深地引入代碼的書寫過程中。與以前的前端頁面不同的是,如今vue更注重單頁面開發(fā)技術(shù),也就是SPA(singalpageapplication),然后通過router技術(shù)進行頁面的跳轉(zhuǎn),使用導(dǎo)航守衛(wèi)進行規(guī)范跳轉(zhuǎn)的路徑。所以說,vue是為了前后臺徹底分離做了一系列的技術(shù)保證。2.2系統(tǒng)可行性分析系統(tǒng)可行性分析是對系統(tǒng)的可行性進行一個探討。在探討系統(tǒng)的可行性上主要從技術(shù)上的可行性和經(jīng)濟上的可行性以及操作可行性面進行分析,如果三個層面都通過,我們則認為此系統(tǒng)開發(fā)是可行的。2.2.1技術(shù)可行性本系統(tǒng)使用到的技術(shù)是比較豐富的,包括Java語言,前臺html、css以及前臺框架vue.js,后臺SpringBoot框架等,最重要的還是系統(tǒng)開發(fā)的思路以及數(shù)據(jù)結(jié)構(gòu)算法,包括各種數(shù)據(jù)類型的掌握、遞歸算法、樹結(jié)構(gòu)等都需要較好的Java基礎(chǔ)。系統(tǒng)架構(gòu)上將采用B/S架構(gòu),用戶可以通過瀏覽器直接對平臺數(shù)據(jù)信息進入訪問,在設(shè)計上可重復(fù)使用中間層代碼,通過中間層訪問數(shù)據(jù)庫,這樣做縮短了開發(fā)周期并節(jié)省了資源。采用免費的MySql數(shù)據(jù)庫設(shè)計,節(jié)約了系統(tǒng)成本,并且容易安裝,操作簡單,具有更廣泛的應(yīng)用型[12]。同時隨著網(wǎng)絡(luò)時代的到來,如果有不懂的,可以通過查詢相關(guān)文件,或者百度等方式進行查閱資料,所以總的來說,系統(tǒng)開發(fā)的技術(shù)可行性是沒有問題的。2.2.2經(jīng)濟可行性系統(tǒng)的開發(fā)用到的很多軟件,包括idea、mysql、tomcat等,大部分的軟件是開源的,比如mysql、tomcat和vue.js等,開源意味著免費,這樣可以極大的減少開發(fā)成本。另外,idea雖然是付費軟件,但是網(wǎng)上有比較多的破解方式,十分的方便,在一些諸如圖標字體、第三方插件的使用上,基本是遵從免費的原則,總的來說所需要的物質(zhì)成本減少。同時系統(tǒng)的開發(fā)減少其人力成本,不再需要更多的人來管理數(shù)據(jù),系統(tǒng)中的數(shù)據(jù)都是相互關(guān)聯(lián)的,其質(zhì)量得到了保證,不會造成數(shù)據(jù)丟失的問題。隨著口腔牙科的發(fā)展,人們對口腔的健康越來越重視,私人牙科的發(fā)展隨之也越來越好,前期系統(tǒng)開發(fā)的投入成本,將方便后期管理,帶來更好的經(jīng)濟效益。經(jīng)估算總效益是會大于成本的,所以說開發(fā)此系統(tǒng)的經(jīng)濟是可行的。2.2.3操作可行性系統(tǒng)整體來說主要以設(shè)計簡潔為主,相關(guān)主頁上都有設(shè)定相關(guān)的指引,這樣可以大大的提高系統(tǒng)的可操作性。通過使用更豐富的圖標字體,來簡單的實現(xiàn)相關(guān)操作,這樣做的好處是提高了系統(tǒng)的友好性。系統(tǒng)除了用戶的掛號功能以及藥品管理等基本功能之外,為了更好的展示系統(tǒng)的人性化設(shè)計,比如管理員登錄可以很快了解到近七天的收入統(tǒng)計圖。2.3系統(tǒng)需求分析本項目分為前端網(wǎng)頁和后端管理系統(tǒng),前端主要是基于Vue.js框架的網(wǎng)頁,用戶成功登錄可以瀏覽基本信息,包括醫(yī)院廣告的輪播圖、醫(yī)生介紹、新聞熱點、關(guān)于我們的診所簡介等信息。用戶進入個人中心,可以查看和修改基本信息、進行充值余額;用戶可以進行掛號管理模塊,本模塊可以在線選擇對應(yīng)科室和醫(yī)生進行線上預(yù)約,若所選擇的時間段該醫(yī)生已經(jīng)被預(yù)約,會提示選擇其他時間段進行預(yù)約。預(yù)約完后,可以查看我的掛號單記錄,對掛號進行付款、取消操作。就診后可以通過掛號單查看到自己的病歷和開藥記錄,查看藥單時可以對藥單進行支付。未注冊的用戶則需通過填寫用戶名、密碼、手機號、身份證等基本信息進行注冊。后端管理系統(tǒng)主要分為醫(yī)生和管理員兩個角色分別進行登錄,進行不同角色功能操作。醫(yī)生成功登錄后臺系統(tǒng),可以擁有掛號管理、患者管理和賬號管理權(quán)限。賬號管理模塊包括查看和修改個人信息;患者管理模塊包括對患者刪除、修改和查看操作;掛號管理模塊可以查看預(yù)約本醫(yī)生的所有患者掛號單列表,對其掛號單進行狀態(tài)修改(等待就診、接診中、完成、取消),對等待就診的掛號單可以按時進行就診操作,編寫病歷并開出藥單,對所有掛號單可以查看病例和開藥記錄信息。管理員成功登錄系統(tǒng),可以進行新聞管理、科室管理、藥品管理、患者管理、醫(yī)生管理、掛號管理、收入統(tǒng)計、系統(tǒng)管理等功能權(quán)限。對前臺輪播圖、新聞等網(wǎng)頁信息進行增刪改查操作,然后發(fā)布到前臺網(wǎng)頁;對科室、醫(yī)生和藥品信息都可以進行增刪改查操作,進行管理;對患者管理和掛號管理可以進行信息的刪除、修改和查詢操作,其中掛號管理中包含對醫(yī)生所寫病例和開藥記錄的管理;收入統(tǒng)計模塊可以查看通過echart圖對近七天的掛號費和藥單費進行統(tǒng)計圖分析;在系統(tǒng)管理模塊,可以對用戶和醫(yī)生角色分配相應(yīng)的權(quán)限,對后臺菜單欄進行管理操作。2.4系統(tǒng)用例分析2.4.1用例分析用例圖是系統(tǒng)分析階段不可缺少的UML建模圖,是用戶與系統(tǒng)交互最簡單的形式。通過用例圖可以展示用戶與其用例之間的關(guān)系,比較直觀地了解系統(tǒng)各個角色用戶需要設(shè)定的相關(guān)功能,系統(tǒng)的角色主要就三類,分別是系統(tǒng)管理員、醫(yī)生和患者用戶。其中,患者用戶可以登錄瀏覽本診所前臺網(wǎng)站頁面,了解基本的診所信息,進行預(yù)約掛號、掛號記錄查看、余額充值操作;醫(yī)生可以對患者進行管理,對掛號單進行就診,編寫病例并開藥;系統(tǒng)管理員主要對前臺網(wǎng)頁、科室、藥品、患者、醫(yī)生信息、掛號單行進行管理,可以查看近七天收入統(tǒng)計,對角色分配權(quán)限。后臺除基本的登錄和退出功能外,所有角色還用對自己賬號進行管理的權(quán)限。具體各角色用例圖如圖2.1-圖2.3所示。圖2.1用戶用例圖圖2.2醫(yī)生用例圖圖2.3管理員用例圖2.4.2用例規(guī)約用例規(guī)約是對項目進行需求分析得到的關(guān)于用戶和系統(tǒng)之間交互作用的文本型描述文檔。主要目的是通過其交互,從外部角度描述私人牙醫(yī)管理系統(tǒng)的行為,表達了系統(tǒng)應(yīng)該做什么。用例規(guī)約是繪制用例圖描述完后,對功能需求的進一步詳細分析,是下一階段系統(tǒng)設(shè)計的基礎(chǔ)。如表2.1-表2.4所示是對部分功能的用例規(guī)約描述。表2.1掛號管理用例規(guī)約用例編號MedicalRecord_Management_01用例名稱掛號管理用例優(yōu)先級中參與者醫(yī)生、管理員前置條件管理員或者醫(yī)生成功登錄基本事件流醫(yī)生或管理員點擊右側(cè)掛號管理菜單欄2-1、輸入患者姓名,點擊搜索按鈕,可以進行搜索2-2、選擇對應(yīng)掛號單ID,點擊病例按鈕,可以查看和修改病例詳情信息2-3、選擇對應(yīng)掛號單ID,點擊開藥記錄按鈕,可以進行對藥單進行增刪操作2-4、選擇對應(yīng)掛號單ID,點擊刪除按鈕,可以進行對藥單進行刪除2-5、選擇對應(yīng)掛號單ID,點擊修改狀態(tài)按鈕,可以修改掛號單狀態(tài)后置條件點擊按鈕自動刷新頁面,更新數(shù)據(jù)約束規(guī)則無備注無成功場景頁面刷新后會出現(xiàn)操作更新后的數(shù)據(jù)失敗場景顯示原數(shù)據(jù),操作失敗表2.2預(yù)約掛號用例規(guī)約用例編號User_Order_02用例名稱預(yù)約掛號用例優(yōu)先級高參與者普通患者用戶前置條件該患者已經(jīng)成功登錄到本系統(tǒng)基本事件流進入前臺網(wǎng)頁,輸入賬號密碼成功登錄,進入首頁醫(yī)師大廳選擇科室,瀏覽該科室所有醫(yī)生的基本信息選科所需要預(yù)約的醫(yī)生點擊預(yù)約掛號按鈕,進行預(yù)約時間選擇。后置條件彈出預(yù)約成功,患者的預(yù)約信息記錄到系統(tǒng)中。約束規(guī)則患者只能選擇預(yù)約時間晚于當(dāng)前時間?;颊咧荒苓x擇所需醫(yī)生空閑時間進行預(yù)約備注無成功場景成功掛號,可以點擊掛號記錄查看掛號單失敗場景提示掛號失敗表2.3藥品管理用例規(guī)約用例編號Drug_Management_03用例名稱藥品管理用例優(yōu)先級中參與者管理員前置條件管理員已經(jīng)登錄成功基本事件流1、成功登錄,進入首頁2、點擊右側(cè)基礎(chǔ)信息中的藥品管理,進入藥品管理頁面2-1輸入要搜索的藥品名稱,點擊搜索按鈕2-2選擇某一藥品,點擊修改按鈕,可以重新編輯藥品信息2-3選擇某一藥品,點擊查看按鈕,可以查看藥品的詳細信息2-4勾選藥品,點擊刪除按鈕,可以進行批量刪除操作后置條件點擊按鈕自動刷新頁面,更新藥品數(shù)據(jù)約束規(guī)則無備注無成功場景頁面刷新后會出現(xiàn)操作更新后的數(shù)據(jù)失敗場景顯示原數(shù)據(jù),操作失敗表2.4收入統(tǒng)計用例規(guī)約用例編號Outpatient_service_Management_04用例名稱收入統(tǒng)計用例優(yōu)先級中參與者管理員前置條件管理員已經(jīng)登錄成功基本事件流成功登錄,進入管理員界面點擊收入統(tǒng)計菜單欄后置條件無約束規(guī)則近七天有掛號費收入和藥品費收入備注無成功場景展示近七天掛號費折線統(tǒng)計圖和藥費柱狀統(tǒng)計圖失敗場景頁面為空2.5系統(tǒng)非功能性需求易用性需求:本文對此私人牙醫(yī)管理系統(tǒng)進行分角色登錄描述,對每個角色進行了詳細的功能歸納,不同角色登錄可以很清晰地通過菜單欄找到對應(yīng)的模塊,保持了頁面的簡潔,使之更多平民百姓更容易操作??煽啃孕枨螅涸擁椖抗δ茉O(shè)計完善,頁面跳轉(zhuǎn)自如,提高了網(wǎng)站的包容性,極好地處理了對錯誤的解決,保證了運行更穩(wěn)定流暢,減少了bug出現(xiàn)。采用java開發(fā)語言、SpringBoot框架進行開發(fā),具有更好的消息可靠性機制。安全性需求:由于系統(tǒng)內(nèi)部存在著許多用戶的重要私人信息與數(shù)據(jù),通過設(shè)置不同角色權(quán)限,來保證其安全性,防止信息外泄、丟失給用戶造成不必要的損失。兼容性需求:此項目采用MySq數(shù)據(jù)庫語言,該語言體積小,速度快,提供的接口支持多種語言連接操作,具有更好的兼容性操作。同時,采用B/S架構(gòu)開發(fā),在設(shè)計中應(yīng)對各種主流瀏覽器,都有良好的適應(yīng)性,讓項目在各個瀏覽器都能正常顯示。2.6系統(tǒng)環(huán)境下表2.5是本系統(tǒng)所需的系統(tǒng)配置環(huán)境。表2.5系統(tǒng)配置環(huán)境名稱版本語種平臺開發(fā)語言Java1.8.0_121英語平臺框架B/S英語平臺開發(fā)軟件idea2021.1.3英語數(shù)據(jù)庫MySQL5.5.57英語2.7本章小結(jié)本章節(jié)對此私人牙醫(yī)管理系統(tǒng)項目進行系統(tǒng)相關(guān)技術(shù)介紹、系統(tǒng)可行性分析、非功能性分析以及用例圖模型和用例規(guī)約描述說明。其中需求分析主要參考醫(yī)院管理系統(tǒng),結(jié)合時代發(fā)展和社會需求,作出了本項目的詳細功能劃分,通過其用例規(guī)約文檔進行進一步描述,從而使得對本項目的系統(tǒng)分析更加清晰完整。

第三章系統(tǒng)設(shè)計3.1系統(tǒng)總體架構(gòu)設(shè)計3.1.1總體架構(gòu)設(shè)計本系統(tǒng)開發(fā)采用自上而下的開發(fā)模式,首先需要確定系統(tǒng)的開發(fā)架構(gòu),如今主流的開發(fā)架構(gòu)有兩個,一個是APP,針對不同的操作系統(tǒng),需要開發(fā)不同的APP,比如目前流行的IOS系統(tǒng),安卓系統(tǒng)和windows系統(tǒng)等,這樣的架構(gòu)稱為C/S架構(gòu),這樣的系統(tǒng)的好處就是獨立性強,但對操作系統(tǒng)等相關(guān)知識需要有更多的掌握,開發(fā)難度相對較大。另外一個模式是針對瀏覽器開發(fā)的B/S項目,通過瀏覽器的解析作用,可以非常方便的展示客戶端的界面。而且,伴隨著瀏覽器功能越來越強大,對前臺代碼的識別能力也越來越強,減少我們浪費不必要的時間。所以本系統(tǒng)采用B/S的架構(gòu)進行開發(fā),使用的調(diào)試瀏覽器主要是谷歌瀏覽器、火狐瀏覽器和IE瀏覽器。如圖3.1所示是本系統(tǒng)的B/S架構(gòu)的結(jié)構(gòu)圖,系統(tǒng)采用現(xiàn)在流行的restful請求方式,來調(diào)用控制器的代碼。圖3.1B/S模式示意圖3.1.2系統(tǒng)包結(jié)構(gòu)設(shè)計本系統(tǒng)后臺采用分層架構(gòu)進行開發(fā),在com.brean包下分別為模型層entity、數(shù)據(jù)持久層dao、業(yè)務(wù)邏輯層service、控制層service,而dao層訪問resources下mapper包的數(shù)據(jù)庫xml文件。另外為了讓系統(tǒng)的結(jié)構(gòu)更加清晰,在com.bean.modules包下建立了from表單包、oauth2協(xié)議包、Redis緩存包等。與此同時,mon是公共包,負責(zé)裝注解包、切面包、異常包、工具包、過濾器包、校驗器包等;com.bean.config包是配置包,包含文件下載配置類、跨域配置類、swagger類、Redis配置類、mybatis-plus配置類等。這樣的好處就是可以很清晰的把系統(tǒng)的各種類放到相應(yīng)的包中,方便管理。系統(tǒng)后端包結(jié)構(gòu)設(shè)計如圖3.2所示。圖3.2系統(tǒng)后端包結(jié)構(gòu)圖3.2數(shù)據(jù)持久化數(shù)據(jù)持久化簡單來說就是指把域?qū)ο笥谰帽4娴綌?shù)據(jù)庫中,詳細來說就是指將內(nèi)存中的數(shù)據(jù)模型轉(zhuǎn)換為存儲模型,又將其存儲模型轉(zhuǎn)化為內(nèi)存中的數(shù)據(jù)模型,這兩種操作的統(tǒng)稱。數(shù)據(jù)持久化封裝了數(shù)據(jù)訪問細節(jié),減少了訪問數(shù)據(jù)庫的次數(shù),增加了應(yīng)用程序運行的速度,提高了代碼重用性。私人牙醫(yī)管理系統(tǒng)有患者類、醫(yī)生類、科室類、藥品信息類、開藥記錄類、病歷類、掛號記錄類、用戶類。用戶類與患者類、醫(yī)生類分別是一對一的關(guān)系;科室類與醫(yī)生類屬于一對多的關(guān)系,一個醫(yī)生屬于一個科室;開藥記錄類與藥品信息類屬于一對一關(guān)系;掛號記錄類與開藥記錄類一對多的關(guān)系,一條掛號記錄可以有多條開藥記錄,與病歷類為一對一的關(guān)系;患者類、醫(yī)生類均與掛號記錄類屬于一對多的關(guān)系,一個患者可以有多條掛號記錄,一個醫(yī)生也可以有多條掛號記錄;病歷類與患者類和醫(yī)生課均為一對一的關(guān)系。具體的關(guān)系如圖3.3所示圖3.3類與類之間的關(guān)聯(lián)圖3.3數(shù)據(jù)庫設(shè)計根據(jù)以上的實體屬性圖,數(shù)據(jù)庫便可以設(shè)計出來了,在數(shù)據(jù)庫設(shè)計上,為了減少數(shù)據(jù)庫聯(lián)表查詢的難度,部分的表格是沒有完全采用三范式的方式,三范式表格的建立在大型應(yīng)用上是必須要使用的,這樣可以加快數(shù)據(jù)庫的訪問效率,但是會增加大量的連接查詢內(nèi)容。所以根據(jù)上面的類圖分析得到本私人牙醫(yī)管理系統(tǒng)中有關(guān)聯(lián)的一共有個8類,分析得到19張數(shù)據(jù)庫表。它們分別為:患者信息表、醫(yī)生信息表、科室表、藥品信息表、開藥記錄表、病歷表、掛號記錄表、關(guān)于我們的信息表、輪播圖信息表、新聞表、系統(tǒng)驗證碼表、系統(tǒng)配置信息表、系統(tǒng)日志表、菜單表、角色表、角色與菜單對應(yīng)關(guān)系表、系統(tǒng)用戶表、用戶與角色對應(yīng)關(guān)系表、系統(tǒng)用戶Token表。數(shù)據(jù)庫表的詳細屬性設(shè)計如表3.1到3.19所示表3.1患者信息表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否name姓名varchar(10)否是phone手機號varchar(11)否是email郵箱varchar(20)否是id_card身份證varchar(18)否是age年齡int(3)否是address家庭住址varchar(20)否是create_time創(chuàng)建時間datetime否是user_id用戶idint(11)否是avatar頭像varchar(255)否是money余額int(10)否是表3.2醫(yī)生信息表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否name姓名varchar(10)否是code工號varchar(3)否是gander性別varchar(1)否是phone電話varchar(11)否是dept_id科室idint(11)否是title職稱varchar(10)否是nation民族varchar(10)否是place籍貫varchar(20)否是create_time入職時間datetime否是user_id用戶idint(11)否是education學(xué)歷varchar(5)否是introduction介紹varchar(255)否是register_num掛號費int(3)否是avatar頭像varchar(255)否是 表3.3科室表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否name科室名稱varchar(10)否是parent_id上級科室int(10)否是orders科室順序varchar(10)否是create_time創(chuàng)建時間datetime否是表3.4藥品信息表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否name藥品名稱varchar(10)否是type藥品類型處方/非處方varchar(10)否是attending功能主治varchar(50)否是spec規(guī)格包裝varchar(20)否是manufacture生產(chǎn)日期datetime否是guarantee保質(zhì)期datetime否是factory生產(chǎn)廠家varchar(20)否是create_time創(chuàng)建時間datetime否是images藥品圖片varchar(255)否是price價格varchar(10)否是表3.5開藥記錄表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否user_id用戶idint(11)否是name藥品名稱varchar(10)否是num藥品數(shù)量int(10)否是register_id掛號idint(11)否是create_time創(chuàng)建時間datetime否是images藥品圖片varchar(255)否是status狀態(tài)0未支付1已支付int(1)否是price價格int(10)否是表3.6病歷表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否user_id患者idint否是doctor_id醫(yī)生idint否是title標題varchar(15)否是userName患者姓名varchar(10)否是symptom主訴病狀varchar(50)否是diagnosis鑒別診斷varchar(50)否是advice醫(yī)囑varchar(50)否是discharge出院記錄varchar(50)否是create_time創(chuàng)建時間datetime否是register_id掛號記錄int(11)否是表3.7掛號記錄表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否start_time開始時間datetime否是end_time結(jié)束時間datetime否是user_id患者IDint否是doctor_id醫(yī)生IDint否是status狀態(tài)0待付款1等待接診2完成3取消int(1)否是create_time創(chuàng)建時間datetime否是register_num掛號費int(3)否是表3.8關(guān)于我們的信息表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否name名稱varchar(10)否是mobile聯(lián)系方式varchar(11)否是address地址varchar(20)否是email郵箱varchar(20)否是qq客服QQvarchar(11)否是introduction簡介longtext否是表3.9輪播圖信息表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否images輪播圖varchar(255)否是orders輪播圖順序int(10)否是表3.10新聞表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDint是否title標題varchar(15)否是content內(nèi)容longtext否是urls原文鏈接varchar(255)否是create_time創(chuàng)建時間datetime否是表3.11系統(tǒng)驗證碼表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空uuiduuidchar(36)是否code驗證碼varchar(6)否否expire_time過期時間datetime否是表3.12系統(tǒng)配置信息表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDbigint(20)是否param_key參數(shù)關(guān)鍵字varchar(50)否是param_value參數(shù)值varchar(2000)否是status狀態(tài)0:隱藏1:顯示tinyint(4)否是remark備注varchar(500)否是表3.13系統(tǒng)日志表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDbigint(20)是否username用戶名varchar(50)否是operation用戶操作varchar(50)否是method請求方法varchar(200)否是params請求參數(shù)varchar(5000)否是time執(zhí)行時長(毫秒)bigint(20)否否ipIP地址varchar(64)否是create_date創(chuàng)建時間datetime否是表3.14菜單表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空menu_id父菜單ID,一級菜單為0bigint(20)是否parent_id菜單名稱bigint(20)否是name菜單URLvarchar(50)否是url菜單URLvarchar(200)否是perms授權(quán)varchar(500)否是type類型0:目錄1:菜單2:按鈕int(11)否是icon菜單圖標varchar(50)否是order_num排序int(11)否是表3.15角色表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空role_id角色IDbigint(20)是否role_name角色名稱varchar(100)否是remark備注varchar(100)否是create_user_id創(chuàng)建者IDbigint(20)否是create_time創(chuàng)建時間datetime否是表3.16角色與菜單對應(yīng)關(guān)系表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDbigint(20)是否role_id角色IDbigint(20)否是menu_id菜單IDbigint(20)否是表3.17系統(tǒng)用戶表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空user_idIDbigint(20)是否username用戶名varchar(20)否否password密碼varchar(100)否是email郵箱varchar(20)否是mobile手機號varchar(11)否是status狀態(tài)0:禁用1:正常tinyint(4)否是create_user_id創(chuàng)建者IDbigint(20)否是create_time創(chuàng)建時間datetime否是name名稱varchar(10)否是avatar圖像varchar(255)否是type類型0管理員1患者2醫(yī)生int(1)否是id_card身份證號varchar(18)否是表3.18用戶與角色對應(yīng)關(guān)系表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空idIDbigint(20)是否user_id用戶IDbigint(20)否是role_id角色IDbigint(20)否是表3.19系統(tǒng)用戶Token表字段表示注釋數(shù)據(jù)類型是否主鍵是否可為空user_idIDbigint(20)是否token臨時令牌varchar(100)否否expire_time過期時間datetime否是update_time更新時間datetime否是3.4本章小結(jié)本章節(jié)主要闡述了私人牙醫(yī)平臺的系統(tǒng)設(shè)計,對私人牙醫(yī)系統(tǒng)進行了概要設(shè)計,搭建了系統(tǒng)初步的開發(fā)平臺框架結(jié)構(gòu),其中還包括數(shù)據(jù)結(jié)構(gòu)持久化層的類圖、數(shù)據(jù)庫表的概要設(shè)計等,為系統(tǒng)的開發(fā)實現(xiàn)做足了前期準備。

第四章系統(tǒng)實現(xiàn)本章節(jié)主要針對私人牙醫(yī)管理系統(tǒng)的主要功能進行詳細設(shè)計,完成本次系統(tǒng)的界面設(shè)計和代碼實現(xiàn)。本系統(tǒng)前臺頁面通過采用vue框架進行代碼的書寫,后臺使用SpringBoot框架和三層結(jié)構(gòu)進行書寫,具體如下。4.1開發(fā)環(huán)境的搭建一個系統(tǒng)運行依賴JDK環(huán)境,還需要據(jù)庫和開發(fā)軟件,idea安裝好了之后,則需要配置JDK。本系統(tǒng)是使用maven進行包管理的,所以還需要配置好maven的相關(guān)內(nèi)容,當(dāng)然數(shù)據(jù)庫也需先安裝并配置好。由于系統(tǒng)使用的是springboot框架,所以系統(tǒng)默認使用嵌入的tomcat,不需要另外進行tomcat配置。如圖4.1所示是JDK的配置:圖4.1IDEA中JDK配置圖以上都配置好以后,就需要編寫springboot的配置文件,springboot的配置文件分別在application-dev.yml和application.yml編寫,application-dev.yml主要包含spring的數(shù)據(jù)源配置,其中包括了數(shù)據(jù)庫配置;application.yml主要包括服務(wù)器端口和編碼的配置、mybatis-plus的配置、springboot的jackson日期轉(zhuǎn)換和redis配置等,具體如下圖4.2-圖4.5所示:圖4.2application-dev.yml配置圖圖4.3application.yml配置圖圖4.4application.yml配置圖圖4.5application.yml配置圖4.2預(yù)約掛號4.2.1界面設(shè)計用戶登錄成功后,可以在導(dǎo)航欄醫(yī)師大廳中清晰看到所有醫(yī)生,包含醫(yī)生照片、姓名和預(yù)約費用信息;界面有醫(yī)生輸入框、科室輸入框和一個查詢按鈕,可以進行科室模糊查詢;點擊一個醫(yī)生,可以進入醫(yī)生詳細介紹界面,此界面清新明了,讓患者更易尋找到自己所需預(yù)約的醫(yī)生,具體界面圖如圖4.6-4.7所示。圖4.6科室選擇效果圖圖4.7預(yù)約醫(yī)生效果圖4.2.2業(yè)務(wù)邏輯設(shè)計用戶登錄成功,進入前臺主頁的醫(yī)師大廳查看所有醫(yī)生信息,輸入醫(yī)生和選擇科室可以進行模糊查詢。選擇自己所需的醫(yī)生,查看某醫(yī)生具體信息,點擊預(yù)約掛號按鈕進行掛號,當(dāng)某預(yù)約時間段已有其他患者預(yù)約該醫(yī)生,則提示重新選擇預(yù)約時間。選擇預(yù)約時間后,點擊支付則自動扣除余額,預(yù)約成功;當(dāng)余額不足時,提示支付失敗,說明預(yù)約失敗。具體業(yè)務(wù)邏輯如圖4.8序列圖所示。圖4.8預(yù)約掛號序列圖4.2.3核心代碼實現(xiàn)創(chuàng)建list泛型集合對象,來封裝獲取到掛號記錄類register的開始時間和結(jié)束時間,通過CollectionUtils工具類來判斷l(xiāng)ist集合是否為空,若不為空則說明該時間段已經(jīng)被預(yù)約過。QueryWrapper是用來mybatis-plus中實現(xiàn)查詢的對象封裝操作類,通過此類來獲取用戶類member的余額進行支付判斷。核心代碼如圖4.9所示。圖4.9預(yù)約掛號核心代碼4.3掛號管理4.3.1界面設(shè)計管理員或醫(yī)生成功登錄,點擊掛號管理,可以查看到掛號信息界面,該頁面包括掛號者姓名,醫(yī)生姓名,掛號費,預(yù)約時間段、掛號狀態(tài)等信息。操作欄包括修改狀態(tài)、病例、開藥記錄、病例四個按鈕。具體界面如圖4.10所示。圖4.10掛號管理界面效果圖4.3.2業(yè)務(wù)邏輯設(shè)計患者登錄成功后,點擊圖像下方菜單的掛號記錄,進入掛號記錄中心,該中心顯示此患者所掛號的所有列表信息,輸入框輸入醫(yī)生姓名可以進行模糊查詢;點擊批量刪除,可以進行多條掛號單刪除。選擇操作欄的病歷操作,可以進行病例查看;選擇開藥記錄可以查看開藥詳細信息;同時也可進行取消預(yù)約和單條掛號單刪除操作。此功能活動圖如圖4.11所示。圖4.11患者掛號管理活動圖醫(yī)生或管理員成功登錄后臺系統(tǒng),同樣可以擁有患者登錄情況下對掛號管理的權(quán)限,同時增添了修改掛號單狀態(tài)功能(狀態(tài)為接診中、等待就診、完成和取消)、新增和刪除開藥記錄功能、修改病例功能等。此功能活動圖如圖4.12所示。圖4.12醫(yī)生/管理員掛號管理活動圖4.3.3核心代碼實現(xiàn)Vue端通過scope.row使用ElementUI表格模板進行數(shù)據(jù)渲染,scope.row相當(dāng)于當(dāng)前行的數(shù)據(jù)對象,通過@click綁定點擊事件方法:修改狀態(tài)的方法addOrUpdateHandle,處理病歷的方法medicalHandle,處理開藥記錄的方法drugRecordHandle,刪除的方法deleteHandle。在script腳本中的methods定義上述方法。具體核心代碼如圖4.13-4.15所示。圖4.13掛號管理核心代碼圖4.14掛號管理核心代碼圖4.15掛號管理核心代碼4.4收入統(tǒng)計4.4.1界面設(shè)計管理員登錄成功,點擊右側(cè)菜單欄,管理員找到收入統(tǒng)計,頁面顯示近七天掛號費的折線統(tǒng)計圖和近七天藥品費的柱狀統(tǒng)計圖,具體界面圖如4.16所示。圖4.16收入統(tǒng)計效果圖4.4.2業(yè)務(wù)邏輯設(shè)計患者可以進行預(yù)約掛號,支付掛號費;醫(yī)生對掛號進行就診,根據(jù)主訴和診斷等開出藥單,患者登錄可以支付藥單。管理員對掛號費用和開藥費用進行統(tǒng)計,繪制成折線圖和柱狀圖。具體業(yè)務(wù)邏輯如圖4.17序列圖所示。圖4.17收入統(tǒng)計序列圖4.4.3核心代碼實現(xiàn)頁面通過axios的adornUrl發(fā)送get請求http地址,后臺通過controller接收Map參數(shù)params,調(diào)用service層繼承的serviceImp類的echart()方法進行統(tǒng)計圖繪制。在vue頁面中Methods下進行初始化折線圖initChartLine(title,data)和柱狀圖initChartBar(title,data)參數(shù)配置。具體核心代碼如圖4.18-4.20所示。圖4.18收入統(tǒng)計核心代碼圖4.19折線圖初始化參數(shù)配置核心代碼圖4.20控制類eachart()方法核心代碼4.5藥品管理4.5.1界面設(shè)計管理員登錄成功后,點擊右側(cè)菜單欄藥品管理,可以看到各種藥品信息列表,最右側(cè)操作欄點擊“修改”、“刪除”按鈕均可進行相應(yīng)的改查操作,列表上面有輸入框、查詢按鈕、新增按鈕和批量刪除按鈕,均可進行相應(yīng)的操作。管理藥品界面清楚簡潔,具體界面圖如圖4.21所示。圖4.21藥品管理效果圖4.5.2業(yè)務(wù)邏輯設(shè)計管理員登錄成功,方可以進行藥品管理,界面對藥品進行增刪改查操作,數(shù)據(jù)同步更新到數(shù)據(jù)庫,然后通過服務(wù)端重新傳送藥品最新數(shù)據(jù)到藥品管理界面。具體業(yè)務(wù)邏輯如圖4.22序列圖所示。圖4.22藥品管理序列圖4.5.3核心代碼實現(xiàn)管理員后臺展示的動態(tài)數(shù)據(jù)存在數(shù)據(jù)庫中,由服務(wù)端去取出數(shù)據(jù),在前端使用Vuex進行管理菜單,菜單讀取方式為redis緩存機制,這種方式可以加快菜單的加載速度。進入管理頁面,通過不同按鈕對藥品進行操作,觸發(fā)DrugController的增刪改查方法。前端通過url找到其Controller,后端再把查詢出的結(jié)果返回回來,最后return返回給vue。具體核心代碼如圖4.23所示。圖4.23藥品管理核心代碼4.6本章小結(jié)本章通過對私人牙醫(yī)管理系統(tǒng)的預(yù)約掛號、掛號管理、收入統(tǒng)計、藥品管理等部分核心功能的效果界面以及業(yè)務(wù)邏輯闡述,每個功能的核心代碼展示,使得更清新明了地展示整個平臺核心功能的實現(xiàn)過程。第四章系統(tǒng)實現(xiàn)PAGEPAGE51第五章系統(tǒng)測試系統(tǒng)測試是指在測試中識別系統(tǒng)產(chǎn)品服務(wù)的正確性和質(zhì)量的過程,本章通過對已完成的項目進行測試,在規(guī)定的條件環(huán)境下,對各個功能模塊進行測試,確保系統(tǒng)在后期運行時候盡量出現(xiàn)少的bug,同時可以在測試過程中不斷發(fā)現(xiàn)錯誤,提高其系統(tǒng)穩(wěn)定性,優(yōu)化程序算法,從而改善用戶體驗。5.1測試目的系統(tǒng)測試主要是驗證本私人牙醫(yī)管理系統(tǒng)是否符合規(guī)范,通過對每個功能進行系統(tǒng)測試,盡早的找出系統(tǒng)缺陷,并且協(xié)助軟件開發(fā)人員,確保每個功能缺陷都能在合適的階段進行正確的處理[13]。檢查是否滿足用戶的業(yè)務(wù)邏輯需求、功能需求以及是否符合系統(tǒng)設(shè)計的基本原則,同時是為了評估系統(tǒng)產(chǎn)品是否完成了它應(yīng)該做的事情,包括其降低開發(fā)成本、提高性能。5.2測試計劃本項目主要采用黑盒測試,黑盒測試一種以運用等價類劃分為主要方法的計算機軟件測試方法[14],主要測試用戶的各個功能模塊,包括登錄注冊、預(yù)約掛號、掛號查看、病歷管理、醫(yī)生管理、病例管理、藥品管理等功能點。本小節(jié)主要針對各個功能模塊列出了測試計劃,具體測試計劃如表5.1所示。表5.1測試計劃表完成時間功能名2022.2.6用戶登錄用戶注冊管理員登錄醫(yī)生登錄2022.2.9瀏覽頁面信息預(yù)約掛號編輯賬戶信息修改密碼充值付款查詢病例查看掛號單2022.2.12就診修改病例刪除病例添加病例收入統(tǒng)計科室管理2022.2.16新聞發(fā)布新聞編輯刪除新聞查看新聞增加患者修改患者查詢患者刪除患者2022.2.24添加藥品修改藥品信息查詢藥品信息刪除藥品增加醫(yī)生修改醫(yī)生查看醫(yī)生刪除醫(yī)生修改管理員信息5.3系統(tǒng)兼容性測試(1)瀏覽器兼容性問題:隨著ES6標準的制定,目前主流的瀏覽器都是符合ES6標準的,尤其是以谷歌為核心的內(nèi)核,然后IE瀏覽器的早期版本使用的是微軟自己的內(nèi)容,對信息的兼容性產(chǎn)生影響。測試結(jié)果表明,目前的主要瀏覽器包括谷歌,IE,360,火狐瀏覽器最近的版本的運行都是沒有問題的,狀態(tài)良好,就是使用IE的早期版本會有圖片展示問題,通過對代碼的修改,進行了改善,所以總的來說瀏覽器兼容性是沒有問題的。(2)JDK、tomcat等兼容性問題。JDK這里使用的1.8的版本,tomcat是springboot自動搭配的9.0版本,mysql是5.5版本,自己嘗試了使用1.7以上的版本的JDK,是可以的,1.7以下的版本不兼容。Mysql版本如果出現(xiàn)沖突,需要更改配置文件中的類信息,tomcat兼容性較好,8版本以上都兼容。5.4測試用例測試用例是對某一特定項目進行測試任務(wù)的描述,對各個功能進行測試,檢查是否存在bug。測試用例簡單來說就是為了特殊的一組測試輸入、執(zhí)行條件以及預(yù)期結(jié)果,用來確認某人特定功能是否符合項目需求。用戶登錄系統(tǒng)測試用例如表5.2所示表5.2用戶登錄系統(tǒng)測試用例項目/軟件私人牙醫(yī)管理系統(tǒng)版本1.0作者張三功能模塊名用戶登錄編號Test_01編制人張三修改歷史無編制時間2022-02-09功能特性用戶成功登錄,展示后臺頁面測試目標測試用戶通過正確的用戶名和密碼可否登錄正常預(yù)置條件未登錄的情況下測試數(shù)據(jù)無操作描述1、進入登錄頁面2、輸入正確的用戶名和密碼期望結(jié)果用戶名和密碼正確的時候,跳轉(zhuǎn)到登錄成功首頁界面,反之則顯示錯誤信息,提示重新輸入實際結(jié)果測試人員張三開發(fā)人員張三測試日期2022-03-04掛號查看測試用例如表5.3所示表5.3掛號查看測試用例項目/軟件私人牙醫(yī)管理系統(tǒng)版本1.0作者張三功能模塊名掛號查看編號Test_02編制人張三修改歷史無編制時間2022-02-09功能特性醫(yī)生登錄后,可以查看所預(yù)約本人的掛號單測試目標測試掛號查看功能是否正常預(yù)置條件該醫(yī)生有患者掛號測試數(shù)據(jù)無操作描述點擊醫(yī)生角色登錄查看掛號信息期望結(jié)果可以查看到該醫(yī)生下所有掛號信息實際結(jié)果測試人員張三開發(fā)人員張三測試日期2022-03-043、病歷管理如表5.4所示表5.4病歷管理項目/軟件私人牙醫(yī)管理系統(tǒng)版本1.0作者張三功能模塊名病例管理編號Test_03編制人張三修改歷史無編制時間2022-02-09功能特性管理員或醫(yī)生可以對病例進行刪改查操作管理測試目標測試病例是否能正常進行刪改查操作預(yù)置條件管理員或醫(yī)生正常登錄的情況下測試數(shù)據(jù)無操作描述管理員或醫(yī)生登錄界面點擊菜單欄掛號管理,點擊掛單號右側(cè)的病例按鈕進行修改病例、刪除病例、查看病例操作期望結(jié)果對應(yīng)病例進行刪改查操作,操作后數(shù)據(jù)均符合要求實際結(jié)果測試人員張三開發(fā)人員張三測試日期2022-03-044、藥品管理測試用例如表5.5所示表5.5藥品管理測試用例項目/軟件私人牙醫(yī)管理系統(tǒng)版本1.0作者張三功能模塊名藥品管理編號Test_04編制人張三修改歷史無編制時間2022-02-09功能特性管理員可以對藥品進行增刪改查操作管理測試目標測試藥品是否能正常進行增刪改查操作預(yù)置條件管理員正常登錄情況下測試數(shù)據(jù)無操作描述管理員登錄點擊藥品管理按鈕添加或刪除藥品期望結(jié)果修改后的相應(yīng)藥品信息符合邏輯實際結(jié)果測試人員張三開發(fā)人員張三測試日期2022-03-045、添加醫(yī)生測試用例如表5.6所示表5.6添加醫(yī)生測試用例項目/軟件私人牙醫(yī)管理系統(tǒng)版本1.0作者張三功能模塊名添加醫(yī)生編號Test_05編制人張三修改歷史無編制時間2022-02-09功能特性管理員可以添加新來的醫(yī)生測試目標管理員添加醫(yī)生否是正常預(yù)置條件管理員正常登錄情況下測試數(shù)據(jù)無操作描述管理員登錄選擇菜單欄醫(yī)生管理,點擊填寫新加醫(yī)生信息點擊提交按鈕期望結(jié)果添加成功,跳轉(zhuǎn)到醫(yī)生管理界面,可以查看添加的醫(yī)生信息實際結(jié)果測試人員張三開發(fā)人員張三測試日期2022-03-046、收入統(tǒng)計用例如表5.7所示表5.7收入統(tǒng)計測試用例項目/軟件私人牙醫(yī)管理系統(tǒng)版本1.0作者張三功能模塊名收入統(tǒng)計編號Test_06編制人張三修改歷史無編制時間2022-02-09功能特性管理員可以查看收入統(tǒng)計的分析圖測試目標檢查收入統(tǒng)計是否符合實際預(yù)置條件管理員成功登錄測試數(shù)據(jù)無操作描述1、管理員登錄2、點擊菜單欄的收入統(tǒng)計3、查看到收入統(tǒng)計的echart分析圖期望結(jié)果能夠清楚看到收入統(tǒng)計的數(shù)據(jù)分析圖實際結(jié)果測試人員張三開發(fā)人員張三測試日期2022-03-045.5功能測試報告測試報告是指把測試的過程和結(jié)果編寫成文檔,通過文檔發(fā)現(xiàn)問題并進行缺陷分析,為完善軟件項目存在的質(zhì)量問題提供了依據(jù),同時為軟件驗收和交付打下了基礎(chǔ)。本項目測試報告如表5.8所示編號功能名稱功能描述輸入內(nèi)容輸出內(nèi)容發(fā)現(xiàn)問題測試結(jié)果測試時間測試人1用戶登錄是否不同角色登錄顯示不同管理頁面輸入三者角色不同的手機號和密碼不同角色成功進入不同管理頁面無√2022/03/04張三2掛號查看查看掛號信息略看到掛號信息無√2022/03/04張三3病例管理對病例進行管理醫(yī)生或管理員進行病例管理操作略無√2022/03/04張三4藥品管理對藥品進行管理管理員對藥品進行管理操作略無√2022/03/04張三5添加醫(yī)生添加新入職的醫(yī)生輸入新加醫(yī)生信息醫(yī)生列表顯示新加醫(yī)生出現(xiàn)錯誤,無

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論