《基于微信小程序的專家門診預(yù)約系統(tǒng)設(shè)計(jì)》11000字(論文)_第1頁
《基于微信小程序的專家門診預(yù)約系統(tǒng)設(shè)計(jì)》11000字(論文)_第2頁
《基于微信小程序的專家門診預(yù)約系統(tǒng)設(shè)計(jì)》11000字(論文)_第3頁
《基于微信小程序的專家門診預(yù)約系統(tǒng)設(shè)計(jì)》11000字(論文)_第4頁
《基于微信小程序的專家門診預(yù)約系統(tǒng)設(shè)計(jì)》11000字(論文)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

I頁共37頁【內(nèi)容摘要】在移動(dòng)端發(fā)展日漸強(qiáng)大的今天,擁有便利性、易用性、高用戶數(shù)等特點(diǎn)的微信小程序成為了更多人的生活“伙伴”。在此背景下本項(xiàng)目為了緩解掛號(hào)難、專家號(hào)掛號(hào)更難的問題,使用微信開發(fā)者工具設(shè)計(jì)微信小程序前端界面,搭配SSM框架對(duì)專家門診預(yù)約系統(tǒng)進(jìn)行框架設(shè)計(jì),詳細(xì)設(shè)計(jì)了前端功能界面和預(yù)約掛號(hào)業(yè)務(wù)流程,創(chuàng)建相對(duì)應(yīng)的MySQL數(shù)據(jù)庫表提供后臺(tái)數(shù)據(jù)存取支持,實(shí)現(xiàn)微信小程序?qū)<议T診預(yù)約系統(tǒng)的開發(fā)。使用微信小程序?qū)<议T診預(yù)約系統(tǒng),不僅可以提高醫(yī)院門診掛號(hào)的工作效率,節(jié)約醫(yī)患雙方的時(shí)間,又合理的利用了門診資源,發(fā)揮了專家的優(yōu)勢。本系統(tǒng)無須安裝,打開手機(jī)掃一掃或者搜索一下微信小程序便可實(shí)現(xiàn)靈活快捷使用,真正做到了“足不出戶選醫(yī)生”?!娟P(guān)鍵詞】預(yù)約掛號(hào);Spring框架;Mybatis框架;MySQL;Tomcat前言目前關(guān)于專家門診預(yù)約系統(tǒng)的微信小程序已經(jīng)有較為完善的系統(tǒng),但仍有許多醫(yī)院通過官網(wǎng)或其他傳統(tǒng)形式進(jìn)行掛號(hào)。關(guān)乎民生的就醫(yī)掛號(hào)問題,一直以來都被世人密切關(guān)注。“三長一短”中的掛號(hào)時(shí)間長問題依舊是一大難題。在移動(dòng)互聯(lián)網(wǎng)、大數(shù)據(jù)時(shí)代這樣的背景下,開發(fā)此微信小程序?qū)<议T診預(yù)約系統(tǒng)將一直遵循著以方便群眾就醫(yī)、提高醫(yī)院門診掛號(hào)的工作效率為主要目標(biāo),通過微信小程序?qū)<议T診預(yù)約系統(tǒng)來方便人民群眾的生活的同時(shí)有效的減少掛號(hào)時(shí)間長這一難題。開發(fā)技術(shù)與開發(fā)環(huán)境介紹開發(fā)框架SpringMVC負(fù)責(zé)將整個(gè)請(qǐng)求的控制轉(zhuǎn)發(fā)并且調(diào)用表示層從而進(jìn)行顯示;Spring框架實(shí)現(xiàn)核心業(yè)務(wù)對(duì)象的管理,實(shí)現(xiàn)業(yè)務(wù)邏輯;Mybatis框架作為數(shù)據(jù)對(duì)象的持久層,可以為系統(tǒng)提供數(shù)據(jù)管理。SpringMVC框架采用SpringMVC框架的原因是因?yàn)镾pringMVC功能強(qiáng)大,使用起來非常的靈活,是Spring的一個(gè)低耦合、可插拔的模塊。使用SpringMVC框架,可以使得代碼層面模塊分為四層架構(gòu)模型REF_Ref3261\r\h[4]。每個(gè)模塊層面都有自己的分工,好處是將小程序系統(tǒng)的后臺(tái)功能模塊層面顯示的更為明確,方便開發(fā)者管理開發(fā)。Spring框架給整個(gè)項(xiàng)目裝配bean的Spring框架,在項(xiàng)目中可以提供非常多的技術(shù)支持,可以說是一個(gè)很全面的功能齊全的大型供貨工廠,它使用起來非常的簡單,不需要麻煩的去一個(gè)個(gè)“new”對(duì)象,而是可以在配置文件中寫好指定的名稱或特定的參數(shù)去調(diào)用實(shí)體類Entity的構(gòu)造方法來實(shí)例化對(duì)象REF_Ref3637\r\h[5]REF_Ref28251\r\h。Spring框架還很“大方”,它可以支持其他框架配合使用,其內(nèi)部更是“大方”的提供了一些優(yōu)秀的框架方便開發(fā)者使用。MyBatis框架MyBatis框架技術(shù)可以將業(yè)務(wù)實(shí)體與數(shù)據(jù)庫表聯(lián)系起來,對(duì)操作數(shù)據(jù)庫的增刪改查功能來說非常方便。MyBatis可以說是控制層-Controller層中一部分,也就是Dao層-持久層,它可以做到將數(shù)據(jù)持久化。MyBatis框架技術(shù)使用起來相當(dāng)?shù)撵`活,它不會(huì)對(duì)現(xiàn)有項(xiàng)目的結(jié)構(gòu)、程序代碼或者數(shù)據(jù)庫強(qiáng)加其他的影響REF_Ref3950\r\h[6],同時(shí)它使用起來也很簡便,在.XML文件中寫與MySQL數(shù)據(jù)庫中高度相似的增刪改查語句,它還可以讓項(xiàng)目中數(shù)據(jù)的增刪改查語句單獨(dú)寫在一個(gè).XML文件中,降低耦合度的同時(shí),又便于開發(fā)者的開發(fā)和更好的去集中管理,對(duì)于后期的優(yōu)化代碼質(zhì)量還很友善,它還可以重用,在一些SQL語句一樣的情況下,可以直接調(diào)用該方法名的方法,減少代碼編寫量。對(duì)于數(shù)據(jù)庫中有外鍵關(guān)系的數(shù)據(jù)庫表來說,它還提供映射標(biāo)簽,通過映射關(guān)系可以實(shí)現(xiàn)數(shù)據(jù)庫表之間的有關(guān)聯(lián)的增加數(shù)據(jù)、刪除數(shù)據(jù)、修改數(shù)據(jù)、查詢數(shù)據(jù)REF_Ref4313\r\h[7]等操作。微信開發(fā)者工具微信小程序分為視圖層和邏輯層。微信小程序中渲染頁面結(jié)構(gòu)在視圖層完成REF_Ref4463\r\h[8],而微信小程序的.js文件便是微信小程序邏輯層,數(shù)據(jù)的請(qǐng)求、接口的調(diào)用、數(shù)據(jù)的邏輯處理等都可以通過.js文件來處理。本系統(tǒng)通過后臺(tái)的URL地址傳輸數(shù)據(jù)到微信小程序的.js文件中,微信小程序接受請(qǐng)求成功后在.js文件中使用this.setData()傳遞和賦值參數(shù),從URL獲取回來的數(shù)據(jù)可以保存到頁面儲(chǔ)存數(shù)據(jù)的data{}中,之后.js頁面發(fā)送請(qǐng)求并渲染數(shù)據(jù)到.wxml文件中,從而可以在.wxml獲取數(shù)據(jù)并顯示數(shù)據(jù)信息在頁面中。微信小程序前端頁面的樣式則是通過.wxss文件來設(shè)置頁面中組件的樣式,用class中屬性名的值來使得樣式與組件樣式綁定從而顯示出排版合適、簡潔大方的界面。本小程序傳遞的數(shù)據(jù)類型是鍵值對(duì)的方式,從而使用默認(rèn)的item.鍵名在wx:for循環(huán)中取數(shù)據(jù)。微信小程序的結(jié)構(gòu)(如圖1)。圖1小程序結(jié)構(gòu)圖MySQL數(shù)據(jù)庫數(shù)據(jù)庫的選擇是使用MySQL關(guān)系型數(shù)據(jù)庫,其數(shù)據(jù)庫體積小、數(shù)據(jù)處理速度快、成本低REF_Ref4946\r\h[10],應(yīng)用非常廣泛。使用MySQL數(shù)據(jù)庫,在數(shù)據(jù)庫中設(shè)計(jì)和編寫不同的表REF_Ref4659\r\h[9],添加表之間的關(guān)系(主鍵、外鍵),為后臺(tái)調(diào)用數(shù)據(jù)時(shí)提供數(shù)據(jù),是后臺(tái)數(shù)據(jù)的“倉庫”。在MySQL數(shù)據(jù)庫中的查詢數(shù)據(jù)、修改數(shù)據(jù)、添加數(shù)據(jù)、刪除數(shù)據(jù)語句與本系統(tǒng)在.XML文件中查詢數(shù)據(jù)、修改數(shù)據(jù)、添加數(shù)據(jù)、刪除數(shù)據(jù)語句基本一致,使用方便的同時(shí)還方便開發(fā)者進(jìn)行測試檢驗(yàn)。Tomcat服務(wù)器技術(shù)眾所周知,Tomcat服務(wù)器是一個(gè)免費(fèi)的、開放源代碼的Web應(yīng)用服務(wù)器。配置Tomcat后運(yùn)行Tomcat時(shí)是它實(shí)際上是運(yùn)行JSP頁面和servletREF_Ref5191\r\h[11],可以運(yùn)行JSP頁面從而實(shí)現(xiàn)后臺(tái)管理員管理醫(yī)生、科室和排班,醫(yī)生查看患者等功能。開發(fā)環(huán)境操作系統(tǒng)Windows10;服務(wù)端開發(fā)工具使用的是EclipseIDEVersion:2020-03(4.15.0);Web服務(wù)器采用ApacheTomcatv9.0;JDK采用JDKVersion:1.8.0_311;微信小程序界面采用微信開發(fā)者工具開發(fā)。系統(tǒng)需求分析系統(tǒng)可行性分析技術(shù)可行性本文作者對(duì)軟件工程的設(shè)計(jì)思想、SSM框架技術(shù)和數(shù)據(jù)庫技術(shù)知識(shí)有一定的掌握,為系統(tǒng)的開發(fā)奠定了知識(shí)基礎(chǔ)。開發(fā)本微信小程序的技術(shù)要求中等,以Windows10為操作系統(tǒng),使用EclipseIDE軟件作為開發(fā)后臺(tái)軟件,使用MySQL數(shù)據(jù)庫可以把前端獲取的數(shù)據(jù)存儲(chǔ)起來,獲取獲取數(shù)據(jù)庫的數(shù)據(jù)顯示在前端界面上,可以當(dāng)作數(shù)據(jù)存儲(chǔ)的“倉庫”,使用微信開發(fā)者工具編寫前端代碼,因此在技術(shù)方面是可行的。用戶操作可行性用戶只需要通過微信打開微信小程序即可進(jìn)行相關(guān)操作,無需進(jìn)行下載、安裝等操作。普通用戶通過微信授權(quán)登錄即可實(shí)現(xiàn)查看醫(yī)生、科室以及預(yù)約掛號(hào),取消掛號(hào)等操作。社會(huì)因素可行性分析從2018年國務(wù)院發(fā)布的《關(guān)于促進(jìn)“互聯(lián)網(wǎng)+醫(yī)療健康”發(fā)展的意見》中提出充分利用互聯(lián)網(wǎng)等信息技術(shù),可知建立覆蓋就診前、就診中、就診后的線上線下相結(jié)合的醫(yī)療服務(wù)模式是受到社會(huì)的廣泛認(rèn)同和關(guān)注的REF_Ref5681\r\h[12]。近年來頒布了許多政策來緩解掛號(hào)難的問題,以及互聯(lián)網(wǎng)技術(shù)發(fā)展和移動(dòng)醫(yī)療技術(shù)快速發(fā)展的背景下REF_Ref5681\r\h[12],基于微信小程序的專家預(yù)約掛號(hào)系統(tǒng)的開發(fā)是必然的也是可行的。需求分析功能需求該微信小程序系統(tǒng)要求從登錄模塊開始,不同的用戶擁有不同的頁面以及功能權(quán)限,所有的用戶都可以通過微信授權(quán)登錄后,通過科室列表,選擇相對(duì)應(yīng)科室后,顯示出該科室的所有醫(yī)生,用戶點(diǎn)擊選擇醫(yī)生后可以查看該醫(yī)生的號(hào)源信息,通過點(diǎn)擊日期可以查看醫(yī)生的出診可預(yù)約人數(shù)情況,并選擇有號(hào)源的日期進(jìn)行預(yù)約掛號(hào)。用戶預(yù)約掛號(hào)后該醫(yī)生的當(dāng)天日期的號(hào)源可預(yù)約人數(shù)減少1,在預(yù)約時(shí)間前可以取消預(yù)約,取消預(yù)約后該醫(yī)生的當(dāng)天日期的號(hào)源可預(yù)約人數(shù)加1;當(dāng)某一個(gè)醫(yī)生的某天的可預(yù)約人數(shù)等于預(yù)約的總?cè)藬?shù)時(shí),顯示“已約滿”且用戶無法再點(diǎn)擊預(yù)約。用戶在個(gè)人主頁可以查看預(yù)約掛號(hào)信息,待就診信息、全部的預(yù)約掛號(hào)信息等。醫(yī)生登錄后,可以查看當(dāng)天掛了自己號(hào)源的患者的信息,點(diǎn)擊完成就診后,患者就診狀態(tài)變成已就診。在管理員添加醫(yī)生的出診信息成功后,患者可以看到當(dāng)天到未來第五天的醫(yī)生的排班信息,若沒有該醫(yī)生當(dāng)天沒有排班信息則顯示“當(dāng)天沒有號(hào)源”。管理員登錄后,在管理員頁面可以查看所有科室信息、所有醫(yī)生信息和全部醫(yī)生的出診排班信息;并對(duì)醫(yī)生信息、科室信息和醫(yī)生的出診時(shí)間進(jìn)行增刪改查數(shù)據(jù)等功能。非功能需求患者預(yù)約掛號(hào)后,沒有及時(shí)就診,會(huì)造成號(hào)源的浪費(fèi)所以設(shè)計(jì)黑名單功能,當(dāng)患者逾期未就診,達(dá)到三次逾期未就診的情況,則在一定的時(shí)間內(nèi)無法再次預(yù)約掛號(hào)。管理員可以查看每個(gè)醫(yī)生每天的接診人數(shù)、所有醫(yī)生的接診人數(shù)等。患者可以分別查看待就診信息、已就診信息、以及取消訂單信息。在醫(yī)生排班頁面,根據(jù)患者選擇的科室以及相對(duì)應(yīng)的醫(yī)生信息顯示出對(duì)應(yīng)醫(yī)生的個(gè)人簡介。系統(tǒng)用例分析本微信小程序系統(tǒng)主要的用戶角色包括:管理員、醫(yī)生、患者(普通用戶)。圖2小程序用戶角色圖不同的角色擁有不同的權(quán)限以及不同的管理用例,下面將介紹核心用例:圖3管理員管理科室、醫(yī)生、排班管理用例后臺(tái)管理-科室管理添加科室信息表1添加科室信息用例用例名稱新增科室信息用例IDHIS_1角色SM用例說明管理員添加新的科室信息前置條件管理員通過賬戶密碼完成登錄基本事件流①管理員進(jìn)入管理科室頁面②在新增科室輸入框中輸入科室名稱、圖標(biāo)③管理員點(diǎn)擊“確定添加”按鈕④系統(tǒng)保存新增的科室信息并在科室管理頁面刷新顯示科室信息其他事件流①管理員取消新增科室,則取消新增操作②管理員未輸入科室名稱,系統(tǒng)彈窗提示輸入科室名稱,且無法點(diǎn)擊新增科室信息③管理員未輸入科室圖標(biāo),可以點(diǎn)擊新增科室信息異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無修改科室信息表2修改科室信息用例用例名稱修改科室信息用例IDHIS_2角色SM用例說明管理員修改科室信息前置條件管理員通過賬戶密碼完成登錄

續(xù)表2基本事件流①管理員進(jìn)入管理科室頁面②在科室管理頁面,點(diǎn)擊“修改”科室按鈕③在修改彈窗中,輸入新的科室信息④管理員點(diǎn)擊“確定修改”按鈕⑤系統(tǒng)保存修改的科室信息并在科室管理頁面刷新顯示科室信息其他事件流①管理員取消修改科室信息,則取消新增操作②管理員未輸入新的科室信息,點(diǎn)擊保存“確定修改”按鈕,保存原有的科室信息③管理員點(diǎn)擊“重置”按鈕,修改彈窗中的科室信息被清空,可以輸入新的科室信息④管理員點(diǎn)擊“重置”按鈕,管理員未輸入新的科室信息,提示“請(qǐng)輸入”異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無刪除科室信息表3刪除科室信息用例用例名稱刪除科室信息用例IDHIS_3角色SM用例說明管理員刪除科室信息前置條件管理員通過賬戶密碼完成登錄

續(xù)表3基本事件流①管理員進(jìn)入管理科室頁面②在科室管理頁面,點(diǎn)擊“刪除”科室按鈕③提示彈窗“確認(rèn)刪除?”④管理員點(diǎn)擊“確認(rèn)刪除”按鈕⑤系統(tǒng)刪除科室信息并在科室管理頁面刷新顯示科室信息其他事件流①管理員取消刪除科室信息,則取消操作異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無后臺(tái)管理-醫(yī)生管理添加醫(yī)生信息表4添加醫(yī)生信息用例用例名稱新增醫(yī)生信息用例IDHIS_4角色SM用例說明管理員添加醫(yī)生信息前置條件管理員通過賬戶密碼完成登錄基本事件流①管理員進(jìn)入管理醫(yī)生頁面②在新增醫(yī)生輸入框中輸入醫(yī)生名稱、頭像、簡介、科室id等信息③管理員點(diǎn)擊“確定添加”按鈕④系統(tǒng)保存新增的醫(yī)生信息并在醫(yī)生管理頁面刷新顯示醫(yī)生

續(xù)表4其他事件流①管理員取消新增醫(yī)生信息按鈕,則取消新增操作②管理員未輸入醫(yī)生名稱,系統(tǒng)彈窗提示輸入醫(yī)生名稱,且無法點(diǎn)擊新增醫(yī)生信息③管理員未輸入醫(yī)生頭像,可以點(diǎn)擊新增醫(yī)生信息④管理員未輸入科室信息,系統(tǒng)彈窗提示輸入信息,且無法點(diǎn)擊新增醫(yī)生信息異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無修改醫(yī)生信息表5修改醫(yī)生信息用例用例名稱修改醫(yī)生信息用例IDHIS_5角色SM用例說明管理員修改醫(yī)生信息前置條件管理員通過賬戶密碼完成登錄基本事件流①管理員進(jìn)入管理醫(yī)生頁面②在醫(yī)生管理頁面,點(diǎn)擊“修改”醫(yī)生按鈕③在修改彈窗中,輸入新的醫(yī)生信息④管理員點(diǎn)擊“確定修改”按鈕⑤系統(tǒng)保存修改的醫(yī)生信息并在醫(yī)生管理頁面刷新顯示醫(yī)生信息

續(xù)表5其他事件流①管理員取消修改醫(yī)生信息按鈕,則取消修改操作②管理員未輸入新的醫(yī)生信息,點(diǎn)擊保存“確定修改”按鈕,保存原有的醫(yī)生信息③管理員點(diǎn)擊“重置”按鈕,修改彈窗中的醫(yī)生信息被清空,可以輸入新的醫(yī)生信息④管理員點(diǎn)擊“重置”按鈕,管理員未輸入新的醫(yī)生信息,提示“請(qǐng)輸入”異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無刪除醫(yī)生信息表6刪除醫(yī)生信息用例用例名稱刪除醫(yī)生信息用例IDHIS_6角色SM用例說明管理員刪除醫(yī)生信息前置條件管理員通過賬戶密碼完成登錄基本事件流①管理員進(jìn)入管理醫(yī)生頁面②在醫(yī)生管理頁面,點(diǎn)擊“刪除”醫(yī)生信息按鈕③彈窗提示“確認(rèn)刪除?”④管理員點(diǎn)擊“確認(rèn)刪除”按鈕⑤系統(tǒng)刪除醫(yī)生信息并在醫(yī)生管理頁面刷新顯示醫(yī)生信息其他事件流①管理員取消刪除醫(yī)生信息,則取消操作異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異常或錯(cuò)誤

續(xù)表6后置條件無后臺(tái)管理-排班管理添加排班信息表7添加醫(yī)生排班信息用例用例名稱新增排班信息用例IDHIS_7角色SM用例說明管理員新增醫(yī)生排班信息前置條件管理員通過賬戶密碼完成登錄基本事件流①管理員進(jìn)入管理醫(yī)生排班頁面②在新增醫(yī)生排班輸入框中輸入醫(yī)生名稱、排班時(shí)間、可預(yù)約總?cè)藬?shù)等信息③管理員點(diǎn)擊“確定添加”按鈕④系統(tǒng)保存新增的醫(yī)生排班信息并在醫(yī)生排班管理頁面刷新顯示醫(yī)生排班其他事件流①管理員取消新增醫(yī)生排班信息按鈕,則取消新增操作②管理員未輸入醫(yī)生名稱,系統(tǒng)彈窗提示輸入醫(yī)生名稱,且無法點(diǎn)擊新增醫(yī)生排班信息③管理員未輸入醫(yī)生排班日期,系統(tǒng)彈窗提示輸入信息,且無法點(diǎn)擊新增醫(yī)生排班信息④管理員未輸入可預(yù)約總?cè)藬?shù),系統(tǒng)彈窗提示輸入信息,且無法點(diǎn)擊新增醫(yī)生信息異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無修改排班信息表8修改醫(yī)生排班信息用例用例名稱修改醫(yī)生排班信息用例IDHIS_8角色SM用例說明管理員修改醫(yī)生排班信息前置條件管理員通過賬戶密碼完成登錄基本事件流①管理員進(jìn)入管理醫(yī)生排班頁面②在醫(yī)生排班管理頁面,點(diǎn)擊“修改”醫(yī)生排班按鈕③在修改彈窗中,輸入新的醫(yī)生排班信息④管理員點(diǎn)擊“確定修改”按鈕⑤系統(tǒng)保存修改的醫(yī)生排班信息并在醫(yī)生管理頁面刷新顯示醫(yī)生排班信息其他事件流①管理員取消修改醫(yī)生排班信息按鈕,則取消修改操作②管理員未輸入新的醫(yī)生排班信息,點(diǎn)擊保存“確定修改”按鈕,保存原有的醫(yī)生排班信息③管理員點(diǎn)擊“重置”按鈕,修改彈窗中的醫(yī)生排班信息被清空,可以輸入新的醫(yī)生排班信息④管理員點(diǎn)擊“重置”按鈕,管理員未輸入新的醫(yī)生排班信息,提示“請(qǐng)輸入”異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無刪除排班信息表9刪除醫(yī)生排班信息用例用例名稱刪除醫(yī)生排班信息用例IDHIS_9角色SM用例說明管理員刪除醫(yī)生排班信息前置條件管理員通過賬戶密碼完成登錄基本事件流①管理員進(jìn)入管理醫(yī)生排班頁面②在醫(yī)生排班管理頁面,點(diǎn)擊“刪除”醫(yī)生排班信息按鈕③彈窗提示“確認(rèn)刪除?”④管理員點(diǎn)擊“確認(rèn)刪除”按鈕⑤系統(tǒng)刪除醫(yī)生排班信息并在醫(yī)生排班管理頁面刷新顯示醫(yī)生排班信息其他事件流①管理員取消刪除醫(yī)生排班信息,則取消操作異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無微信小程序-普通用戶登陸患者(普通用戶)授權(quán)微信登陸。表10患者登陸用例用例名稱患者(普通用戶)授權(quán)微信登陸用例IDHIS_10角色USER用例說明患者(普通用戶)授權(quán)微信登陸前置條件患者暫未進(jìn)行微信授權(quán)登陸

續(xù)表10基本事件流①用戶進(jìn)入微信小程序個(gè)人頁面②在個(gè)人頁面,點(diǎn)擊“登陸”按鈕③彈窗提示“允許授權(quán)”與“拒絕授權(quán)”按鈕④用戶點(diǎn)擊“允許授權(quán)”按鈕⑤授權(quán)登陸小程序成功其他事件流①用戶點(diǎn)擊“允許授權(quán)”按鈕②授權(quán)登陸小程序失敗,可再次點(diǎn)擊登陸異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異?;蝈e(cuò)誤后置條件無微信小程序-患者預(yù)約掛號(hào)患者(普通用戶)根據(jù)選擇的科室信息后,跳轉(zhuǎn)相關(guān)醫(yī)生頁面,選擇醫(yī)生后點(diǎn)擊預(yù)約掛號(hào)。表11患者預(yù)約掛號(hào)用例用例名稱患者(普通用戶)預(yù)約掛號(hào)用例IDHIS_11角色USER用例說明患者(普通用戶)預(yù)約掛號(hào)前置條件患者授權(quán)微信登陸

續(xù)表11基本事件流①用戶微信授權(quán)登陸②在首頁,點(diǎn)擊“科室”圖標(biāo),跳轉(zhuǎn)科室頁面③在科室頁面,選擇科室,跳轉(zhuǎn)醫(yī)生頁面④在醫(yī)生頁面,選擇醫(yī)生及預(yù)約時(shí)間,跳轉(zhuǎn)預(yù)約頁面⑤點(diǎn)擊預(yù)約按鈕⑥系統(tǒng)保存提交掛號(hào)信息,并刷新顯示在預(yù)約訂單頁面其他事件流①用戶在首頁直接點(diǎn)擊醫(yī)生信息,跳轉(zhuǎn)醫(yī)生頁面②選擇醫(yī)生及預(yù)約時(shí)間,跳轉(zhuǎn)預(yù)約頁面③點(diǎn)擊預(yù)約按鈕④系統(tǒng)保存提交掛號(hào)信息,并刷新顯示在預(yù)約訂單頁面①用戶在首頁直接點(diǎn)擊醫(yī)生信息,跳轉(zhuǎn)醫(yī)生頁面②選擇醫(yī)生及預(yù)約時(shí)間,跳轉(zhuǎn)預(yù)約頁面③點(diǎn)擊取消按鈕④取消掛號(hào)操作異常事件流系統(tǒng)出現(xiàn)故障,彈窗提示異常或錯(cuò)誤后置條件無系統(tǒng)總體設(shè)計(jì)系統(tǒng)的業(yè)務(wù)流程用戶層面用戶進(jìn)來小程序后,在首頁可以按照導(dǎo)航欄選擇頁面,或在首頁中直接選擇醫(yī)生后選擇日期進(jìn)行掛號(hào);進(jìn)行預(yù)約掛號(hào)前,需要進(jìn)行微信授權(quán)登陸,登陸成功后便可選擇科室、醫(yī)生、時(shí)間進(jìn)行掛號(hào);在預(yù)約就診的時(shí)間前可以取消掛號(hào),取消當(dāng)天的某個(gè)醫(yī)生的掛號(hào)信息后才能繼續(xù)預(yù)約掛號(hào)該醫(yī)生;同一天用戶可以掛多個(gè)醫(yī)生的號(hào),但不能掛同一個(gè)醫(yī)生的號(hào)(取消后可繼續(xù)掛號(hào)),流程(如圖4)。圖4患者掛號(hào)流程圖醫(yī)生層面醫(yī)生通過微信授權(quán)登錄系統(tǒng)后,可以實(shí)現(xiàn)普通用戶的全部功能,醫(yī)生擁有普通用戶額外的權(quán)限和頁面。醫(yī)生點(diǎn)擊醫(yī)生頁面后,可以查看當(dāng)天掛號(hào)的患者信息,并在就診完成后(模擬就診完成后掛號(hào)流程結(jié)束)點(diǎn)擊完成按鈕后修改患者看診狀態(tài),完成掛號(hào)流程(如圖5)。圖5醫(yī)生問診流程圖管理員層面管理員通過賬戶密碼登錄后,可以查看相關(guān)的科室和醫(yī)生信息,并對(duì)相關(guān)的科室信息和醫(yī)生信息進(jìn)行增加相關(guān)數(shù)據(jù)、刪除相關(guān)數(shù)據(jù)、修改相關(guān)數(shù)據(jù)、查詢相關(guān)數(shù)據(jù)功能。管理員點(diǎn)擊排班后跳轉(zhuǎn)醫(yī)生排班頁面,可以進(jìn)行添加醫(yī)生的出診排班信息、修改醫(yī)生的出診排班信息、刪除醫(yī)生的出診排班信息等操作(如圖6)。圖6管理員管理排班、科室、醫(yī)生、用戶流程圖系統(tǒng)功能模塊患者登錄注冊(cè)模塊普通用戶(患者)登陸:通過微信授權(quán)直接登錄。用戶個(gè)人中心頁面:用戶在個(gè)人中心可以查看就診記錄、全部就診記錄、已取消的就診記錄、待就診的就診記錄。醫(yī)生登錄注冊(cè)模塊微信小程序端醫(yī)生登陸:微信授權(quán)登陸,需要判斷用戶是否是醫(yī)生(醫(yī)生數(shù)據(jù)庫表中有醫(yī)生的微信的標(biāo)識(shí))判斷是醫(yī)生登陸后顯示醫(yī)生頁面,醫(yī)生登陸也可以顯示普通用戶頁面。PC端醫(yī)生登陸:通過醫(yī)生的賬戶密碼登陸,需要判斷是否是醫(yī)生權(quán)限或管理員權(quán)限,判斷是醫(yī)生權(quán)限后則顯示該醫(yī)生的患者預(yù)約信息。管理員登錄注冊(cè)模塊管理員登陸:通過賬戶密碼登陸。掛號(hào)模塊預(yù)約掛號(hào)方式一:通過頁面醫(yī)生介紹,進(jìn)入醫(yī)生出診時(shí)間頁面,選擇可掛號(hào)的時(shí)間,輸入姓名、確定預(yù)約時(shí)間、預(yù)約的科室、醫(yī)生后點(diǎn)擊確定預(yù)約即完成預(yù)約掛號(hào)。預(yù)約掛號(hào)方式二:通過掛號(hào)頁面,選擇科室,通過科室篩選出的屬于該科室的醫(yī)生的信息后,選擇可掛號(hào)的日期,輸入姓名、確定預(yù)約時(shí)間、預(yù)約的科室、醫(yī)生后點(diǎn)擊確定預(yù)約即完成預(yù)約掛號(hào)。預(yù)約掛號(hào)方式三:通過科室下拉框,選擇科室后從根據(jù)科室篩選出的醫(yī)生列表中選擇醫(yī)生后可以根據(jù)時(shí)間來進(jìn)行預(yù)約掛號(hào)。預(yù)約掛號(hào)人數(shù):患者預(yù)約掛號(hào)某個(gè)醫(yī)生的某天的號(hào)源后,該醫(yī)生的當(dāng)天的號(hào)源可預(yù)約人數(shù)相對(duì)應(yīng)減少1,當(dāng)患者在預(yù)約日期前取消時(shí),點(diǎn)擊取消預(yù)約則該醫(yī)生當(dāng)天的號(hào)源可預(yù)約人數(shù)相對(duì)應(yīng)增加1(每一個(gè)預(yù)約訂單只可取消一次);當(dāng)某醫(yī)生的某天可預(yù)約人數(shù)等于可預(yù)約總?cè)藬?shù)時(shí),患者無法再繼續(xù)預(yù)約該醫(yī)生的號(hào)源,該醫(yī)生的號(hào)源信息顯示為“已約滿”否則為“可預(yù)約”??剖夷K科室顯示:通過用戶點(diǎn)擊掛號(hào)跳轉(zhuǎn)到選科室頁面,方式一:通過頁面科室圖標(biāo)和文字介紹選擇科室;方式二:通過下拉框來選擇科室。醫(yī)生模塊醫(yī)生頁面:顯示當(dāng)天掛號(hào)的患者列表,點(diǎn)擊完成就診后,刷新頁面,在醫(yī)生頁面顯示該患者已就診,患者的預(yù)約頁面顯示已就診。智能回復(fù)模塊智能回復(fù):通過用戶輸入病癥或相關(guān)疾病的關(guān)鍵詞,小程序通過關(guān)鍵詞判斷后,自動(dòng)回復(fù)推薦可以預(yù)約掛號(hào)的科室。黑名單模塊 黑名單功能:患者掛號(hào)后逾期未就診,記錄達(dá)到三次則被記錄為黑名單人員,在規(guī)定的一個(gè)月內(nèi)不能進(jìn)行掛號(hào)功能。系統(tǒng)詳細(xì)設(shè)計(jì)科室列表頁面在后端中通過SQL查詢語句查詢所有的數(shù)據(jù)庫表中科室表的信息,用HashMap把數(shù)據(jù)通過鍵值對(duì)的形式返回一個(gè)數(shù)組,微信小程序前端JS中通過GET方法獲取這個(gè)數(shù)據(jù)信息,并把這個(gè)數(shù)組信息顯示科室信息到科室頁面中。主要的后端代碼如下:@RequestMapping("/queryDeptAndLevel")@ResponseBodypublicMap<String,Object>queryDeptAndLevel(){Map<String,Object>map=newHashMap<>();List<Dept>deptList=deptService.queryAllDept();map.put("deptList",deptList);returnmap;}主要的前端JS代碼和WXML代碼如下:

getDeptList()

{

wx.request({

url:

'http://localhost:8888/his/home/queryDeptAndLevel',

method:

'GET',

success:

(res)

=>

{

this.setData({

deptList:

res.data.deptList

})

}

})

}<view

class="grid-list">

<view

class="grid-item"

wx:for="{{deptList}}"

wx:key="deptId"

data-item="{{item}}"

bindtap="queryBtnClick">

<image

src="{{item.deptIcon}}"></image>

<text>{{item.deptName}}</text>

</view></view>醫(yī)生列表頁面通過科室頁面選擇科室后,在前端頁面中獲取鼠標(biāo)點(diǎn)擊事件時(shí)點(diǎn)擊的科室信息,把獲取的科室信息中的科室id傳到獲取數(shù)據(jù)的URL上,再通過GET方法獲取相對(duì)應(yīng)科室的所有醫(yī)生的信息。主要的前端JS代碼如下:

getAllpatient(){

wx.request({

url:

'http://localhost:8888/his/home/selectPatientBydoctor?doctorId='+app.globalData.doctorId+'®isteredDate='+app.globalData.today,

method:

'GET',

success:

res

=>

{

this.setData({

patientList:

res.data.patientList,

})

}

})

},患者掛號(hào)頁面通過患者輸入的患者姓名、選擇的科室信息、相對(duì)應(yīng)的鼠標(biāo)點(diǎn)擊時(shí)獲取到的醫(yī)生的id、預(yù)約日期等,從而通過POST請(qǐng)求在掛號(hào)表中存入一條掛號(hào)信息,掛號(hào)信息主要包括:患者編號(hào)、患者姓名、掛號(hào)日期、主治醫(yī)生等。主要的前端JS代碼如下:

wx.request({

url:

'http://localhost:8888/his/home/insertRegister?patientName='+_this.data.input+'®isteredDate='+_this.data.date+'&dept.deptId='+_this.data.deptId+'&doctor.doctorId='+_this.data.doctorId+'&openId='+app.globalData.openid+'&time='+app.globalData.time,

data:{

registeredDate:

_this.data.date,

deptId:

_this.data.deptId,

doctorId:

_this.data.doctorId

},

method:'POST',

header:{

'content-type':'application/x-www-form-urlencoded'

}

})數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫概念設(shè)計(jì)本小程序設(shè)計(jì)實(shí)體包括掛號(hào)信息、用戶信息、醫(yī)生信息、科室信息等。具體各實(shí)體屬性總結(jié)如下:掛號(hào)實(shí)體信息主要包括用戶微信的唯一標(biāo)識(shí)、患者編號(hào)、患者姓名、科室編號(hào)、醫(yī)生姓名、掛號(hào)日期、就診狀態(tài)等。具體實(shí)體屬性(如圖7)。圖7掛號(hào)實(shí)體屬性圖用戶實(shí)體屬性主要包括用戶昵稱、密碼、用戶微信標(biāo)識(shí)等。具體實(shí)體屬性(如圖8)。圖8用戶實(shí)體屬性圖醫(yī)生實(shí)體屬性主要包括醫(yī)生編號(hào)、醫(yī)生姓名、醫(yī)生簡介、醫(yī)生微信標(biāo)識(shí)等。具體實(shí)體屬性(如圖9)。圖9醫(yī)生實(shí)體屬性圖科室實(shí)體屬性主要包括科室編號(hào)、科室名稱、科室圖標(biāo)等。具體實(shí)體屬性(如圖10)。圖10科室實(shí)體屬性圖通過以上的實(shí)體及屬性分析總結(jié)出來本微信小程序系統(tǒng)的E-R(如圖11)。圖11系統(tǒng)E-R圖數(shù)據(jù)庫邏輯設(shè)計(jì)通過所總結(jié)出來的實(shí)體屬性以及微信小程序系統(tǒng)的E-R圖,將本微信小程序系統(tǒng)的數(shù)據(jù)總結(jié)為以下四張表(主要)。掛號(hào)數(shù)據(jù)表主要記錄患者掛號(hào)信息以及相關(guān)科室及醫(yī)生信息。表12his_register掛號(hào)表字段名稱數(shù)據(jù)類型長度是否為空約束說明patientIdint4Nonull主鍵患者編號(hào),自增patientNamevarchar255null患者姓名deptIdint4null外鍵科室編號(hào)doctorIdint4null外鍵醫(yī)生編號(hào)registeredDatedate0null掛號(hào)日期seeStatusint4null1:未就診2:已就診registeredStatusint4null1:已掛號(hào)2:已退號(hào)openIdvarchar255null微信標(biāo)識(shí)timeint4null1:上午2:下午用戶數(shù)據(jù)表主要記錄用戶登錄的個(gè)人信息及管理員信息。表13his_user用戶表字段名稱數(shù)據(jù)類型長度是否為空約束說明nickNamevarchar255null用戶昵稱userIdint4Nonull主鍵用戶編號(hào),自增usernamevarchar255null用戶賬戶passwordvarchar4null用戶密碼openIdvarchar255null微信標(biāo)識(shí)userTypeint4null用戶標(biāo)識(shí)醫(yī)生數(shù)據(jù)表主要記錄醫(yī)生的個(gè)人信息。表14his_doctor醫(yī)生表字段名稱數(shù)據(jù)類型長度是否為空約束說明doctorIdint4Nonull主鍵醫(yī)生編號(hào),自增doctorNamevarchar255null醫(yī)生姓名avatarUrlvarchar255null醫(yī)生頭像deptIdint4null外鍵科室編號(hào)doctorLevelvarchar255null醫(yī)生級(jí)別doctorSpeciltyvarchar255null醫(yī)生簡介passwordvarchar255null密碼openIdvarchar255null微信標(biāo)識(shí)userTypeint4null用戶標(biāo)識(shí)科室數(shù)據(jù)表主要記錄科室信息。表15his_dept科室表字段名稱數(shù)據(jù)類型長度是否為空約束說明deptIdint4Nonull主鍵科室編號(hào),自增deptNamevarchar255null科室名稱deptIconlongtext0null科室圖標(biāo)系統(tǒng)測試軟件測試的目的和意義軟件測試的目的之一就是在軟件發(fā)布之前發(fā)現(xiàn)軟件缺陷,從而提高軟件質(zhì)量。通過軟件測試而發(fā)現(xiàn)軟件缺陷,分析導(dǎo)致該缺陷的原因并進(jìn)行度量分析,從而確保軟件產(chǎn)品的質(zhì)量REF_Ref6168\r\h[13],而不僅僅是找出軟件的缺陷。通過分析缺陷產(chǎn)生的原因和缺陷的分布特征,可以幫助項(xiàng)目經(jīng)理或測試人員改進(jìn)其工作REF_Ref6432\r\h[14]。同時(shí)還可以使得開發(fā)人員更早的發(fā)現(xiàn)并修復(fù)問題,以免造成更大的危害。測試主要內(nèi)容用戶登錄功能測試用戶沒有登錄是否能掛號(hào)。用戶登錄后能否掛號(hào)。醫(yī)生登錄功能測試醫(yī)生登錄后是否顯示醫(yī)生頁面。醫(yī)生權(quán)限頁面,有患者掛號(hào)前提下是否顯示患者掛號(hào)信息。掛號(hào)功能測試用戶掛某個(gè)醫(yī)生的號(hào)后,該醫(yī)生的號(hào)源人數(shù)是否增加。用戶取消某個(gè)醫(yī)生的掛號(hào)后,該醫(yī)生的號(hào)源人數(shù)是否減少。用戶掛號(hào)成功后醫(yī)生頁面是否能顯示患者掛號(hào)信息。某個(gè)醫(yī)生的號(hào)源達(dá)到總?cè)藬?shù)時(shí),患者是否還能掛號(hào)。用戶是否可以同時(shí)掛某個(gè)醫(yī)生的某天的號(hào)無數(shù)次。功能測試登錄系統(tǒng)功能測試用戶通過微信授權(quán)登錄后是否可以顯示微信登錄成功,用戶確認(rèn)登錄后該用戶信息是否顯示;用戶拒絕登錄后,是否還會(huì)顯示用戶信息以及能否再次登錄。表16系統(tǒng)用戶登錄測試用例測試編號(hào)HIS_001測試項(xiàng)描述用戶微信授權(quán)是否成功前置條件用戶未登錄用例編號(hào)操作期望結(jié)果001用戶點(diǎn)擊允許授權(quán)登錄成功002用戶點(diǎn)擊拒絕授權(quán)登錄失敗003①用戶點(diǎn)擊拒絕授權(quán)②點(diǎn)擊登錄允許授權(quán)登錄成功用戶掛號(hào)功能測試在主頁,點(diǎn)擊掛號(hào)后是否可以跳轉(zhuǎn)頁面并提示用戶需要登錄后才可以預(yù)約掛號(hào),用戶成功登錄后是否可以成功掛號(hào),是否有掛號(hào)信息顯示。用戶是否掛同一個(gè)醫(yī)生同一天的號(hào)。表17系統(tǒng)用戶掛號(hào)用例表測試編號(hào)HIS_002測試項(xiàng)描述用戶掛號(hào)是否有相對(duì)應(yīng)提示前置條件用戶點(diǎn)擊掛號(hào)用例編號(hào)操作期望結(jié)果001用戶在首頁點(diǎn)擊掛號(hào)提示先登錄再掛號(hào),跳轉(zhuǎn)頁面

續(xù)表17002用戶在醫(yī)生頁面點(diǎn)擊掛號(hào)提示先登錄再掛號(hào),跳轉(zhuǎn)頁面003①用戶已成功掛某醫(yī)生號(hào)②再次點(diǎn)擊掛該醫(yī)生號(hào)提示您今日已掛該醫(yī)生號(hào)004用戶登錄后點(diǎn)擊掛號(hào)掛號(hào)成功005①用戶已成功掛某醫(yī)生號(hào)②用戶取消掛該醫(yī)生號(hào)掛號(hào)成功用戶取消掛號(hào)功能測試在用戶掛號(hào)成功后,是否有掛號(hào)成功的掛號(hào)信息顯示,以及是否可以取消掛號(hào),取消掛號(hào)后是否可以重新掛號(hào)。表18系統(tǒng)用戶取消掛號(hào)用例表測試編號(hào)HIS_003測試項(xiàng)描述用戶取消掛號(hào)是否有相對(duì)應(yīng)提示前置條件用戶點(diǎn)擊取消掛號(hào)用例編號(hào)操作期望結(jié)果001在訂單頁面點(diǎn)擊取消掛號(hào)提示取消掛號(hào)成功醫(yī)生登錄顯示醫(yī)生頁面醫(yī)生用戶登錄后是否顯示醫(yī)生頁面,能否行使醫(yī)生權(quán)限;醫(yī)生授權(quán)登錄后是否可以查看掛號(hào)患者信息。表19醫(yī)生登錄用例表測試編號(hào)HIS_004測試項(xiàng)描述醫(yī)生登錄后判斷是否有醫(yī)生權(quán)限頁面前置條件登錄的用戶權(quán)限是醫(yī)生用例編號(hào)操作期望結(jié)果001醫(yī)生點(diǎn)擊允許授權(quán)登錄成功,顯示醫(yī)生頁面002醫(yī)生點(diǎn)擊拒絕授權(quán)登錄失敗

續(xù)表19003①醫(yī)生點(diǎn)擊拒絕授權(quán)②點(diǎn)擊登錄允許授權(quán)登錄成功,顯示醫(yī)生頁面004醫(yī)生點(diǎn)擊允許授權(quán)登錄成功,顯示醫(yī)生頁面系統(tǒng)運(yùn)行效果圖12主頁圖13醫(yī)生顯示圖14登錄圖15科室顯示圖16掛號(hào)圖17掛號(hào)信息圖18掛號(hào)圖19取消掛號(hào)圖20管理員后臺(tái)醫(yī)生管理圖21管理

溫馨提示

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

評(píng)論

0/150

提交評(píng)論