版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于SSH的醫(yī)院在線掛號(hào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)目錄TOC\o"1-3"\h\u目錄 [9],醫(yī)院在線掛號(hào)系統(tǒng)的各主要功能模塊的實(shí)體聯(lián)系如圖4-4所示:圖4-4醫(yī)院掛號(hào)系統(tǒng)實(shí)體圖(2)數(shù)據(jù)庫(kù)表的設(shè)計(jì)本系統(tǒng)的hospital數(shù)據(jù)庫(kù)中主要的數(shù)據(jù)表如圖4-5所示,包含appointment表,doctor表,drugs表hospitalization表,illness表,login表,medicalhistory表,option表,patient表和seek表。圖4-5所有表4.4.3數(shù)據(jù)庫(kù)表結(jié)構(gòu)說(shuō)明(1)appointment表,主鍵是字段id,如表4-1所示。表4-1預(yù)約表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度主鍵否小數(shù)點(diǎn)idint11是0patientidInt11否0doctoridint11否0timedate0否0(2)doctor表,主鍵是字段name,如表4-2所示。表4-2醫(yī)生信息表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度主鍵否小數(shù)點(diǎn)idint10是0namevarchar255否0ageint11否0certIdvarchar255否0sexint10否0departmentvarchar255否0addressvarchar255否0loginidint11否0texttext0否0expertint10否0(3)drugs表,主鍵是字段id,如表4-3所示。表4-3藥物信息表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度主鍵否小數(shù)點(diǎn)idint10是0namevarchar255否0typeint10否0pricedecimal10否2numberint11否0texttext0否0(4)hospitalization表,主鍵是字段uesrid,如表4-5所示。表4-5住院信息表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度主鍵否小數(shù)點(diǎn)idint11是0floorvarchar10否0bedvarchar255否0doorvarchar255否0medicalnamevarchar255否0patientidint11否0intimedate0否0outtimedate0否05系統(tǒng)實(shí)現(xiàn)5.1登錄頁(yè)面的實(shí)現(xiàn)系統(tǒng)的首頁(yè)如圖5-1所示。圖5-1系統(tǒng)首頁(yè)圖點(diǎn)擊首頁(yè)導(dǎo)航欄中的登錄注冊(cè)按鈕進(jìn)行登錄或注冊(cè),如圖5-2所示。圖5-2用戶(hù)注冊(cè)圖5.2管理員功能模塊的實(shí)現(xiàn)管理員在系統(tǒng)里的主要作用是對(duì)用戶(hù)信息,醫(yī)生信息等進(jìn)行管理,管理員和用戶(hù)的登錄界面是同一個(gè),輸入管理員的賬號(hào)點(diǎn)擊登錄,系統(tǒng)會(huì)自動(dòng)分辨用戶(hù)的類(lèi)型,即可進(jìn)入管理員的界面。管理員在網(wǎng)站登錄界面,輸入自己的賬號(hào),密碼點(diǎn)擊登錄后即可進(jìn)入管理員登錄界面,如圖5-2所示:圖5-3管理員登錄圖登錄部分代碼:
importmon.CommonService;
importcom.hospital.dao.DoctorMapper;
importcom.hospital.dao.LoginMapper;
importcom.hospital.dao.PatientMapper;
importcom.hospital.entity.Doctor;
importcom.hospital.entity.Login;
importcom.hospital.entity.Patient;
importcom.hospital.service.LoginService;
importorg.springframework.beans.factory.annotation.Autowired;
importorg.springframework.stereotype.Service;
importjava.util.List;
@Service
publicclassLoginServiceImplimplementsLoginService{
@Autowired
LoginMapperloginMapper;
@Autowired
PatientMapperpatientMapper;
@Autowired
DoctorMapperdoctorMapper;
@Override
publicList<Login>findAllAdmin(Stringusername){
returnloginMapper.findAllAdmin(username);
}
@Override
publicStringaddAmin(Loginlogin){
Stringmessage;
if(loginMapper.findByUsername(login.getUsername())!=null){
message=CommonService.add_message_error2;
}
else{
message=loginMapper.insertAdmin(login)>0?CommonService.add_message_success:CommonService.add_message_error;
}
returnmessage;
}
@Override
publicStringupdateAdmin(Loginlogin){
Stringmessage;
if(loginMapper.findByUsername(login.getUsername())!=null){
message=CommonService.add_message_error2;
}
else{
message=loginMapper.updateByPrimaryKeySelective(login)>0?CommonService.upd_message_success:CommonService.upd_message_error;
}
returnmessage;
}
@Override
publicStringdelAdmin(Integerid){
returnloginMapper.deleteByPrimaryKey(id)>0?CommonService.del_message_success:CommonService.del_message_error;
}
@Override
publicLogingetAdmin(Integerid){
returnloginMapper.selectByPrimaryKey(id);
}
@Override
publicStringlogin(Loginlogin){
Stringmessage="";
Loginlogin2=loginMapper.findByUsername(login.getUsername());
if(login2!=null){
if(!login2.getPassword().equals(login.getPassword())){
message="密碼錯(cuò)誤";
}
else{
login.setId(login2.getId());
login.setRole(login2.getRole());
message="登錄成功"+login2.getRole();
}
}
else{
message="用戶(hù)名不存在";
}
returnmessage;
}
@Override
publicStringregist(Loginlogin){
Stringmessage;
Doctordoctor=doctorMapper.getDoctorByCertId(login.getCertId());
Patientpatient=patientMapper.findPatientByCertId(login.getCertId());
if(doctor!=null){
if(doctor.getLoginid()==null){
login.setRole(2);
loginMapper.insert(login);
doctor.setLoginid(loginMapper.findByUsername(login.getUsername()).getId());
doctorMapper.updateByPrimaryKeySelective(doctor);
message="注冊(cè)成功";
}
else{
message="該證件號(hào)已被注冊(cè)";
}
}
elseif(patient!=null){
if(patient.getLoginid()==null){
login.setRole(3);
loginMapper.insert(login);
patient.setLoginid(loginMapper.findByUsername(login.getUsername()).getId());
patientMapper.updateByPrimaryKeySelective(patient);
message="注冊(cè)成功";
}
else{
message="該證件號(hào)已被注冊(cè)";
}
}
elseif(loginMapper.findByUsername(login.getUsername())!=null){
message="該用戶(hù)名已被注冊(cè)";
}
elseif(loginMapper.findByUsername(login.getUsername())==null&&(login.getCertId()==null||login.getCertId().trim().equals(""))){
login.setRole(1);
loginMapper.insert(login);
message="注冊(cè)成功";
}
else{
message="該證件信息未入庫(kù),不能注冊(cè)該醫(yī)生或者患者";
}
returnmessage;
}
}5.3用戶(hù)掛號(hào)模塊的實(shí)現(xiàn)用戶(hù)進(jìn)入系統(tǒng)后點(diǎn)擊掛號(hào),輸入需要填寫(xiě)的掛號(hào)信息,如圖5-3所示:圖5-4用戶(hù)掛號(hào)信息圖5-5用戶(hù)查詢(xún)信息5.4醫(yī)生信息模塊的實(shí)現(xiàn)醫(yī)生信息的管理是依靠管理員來(lái)進(jìn)行操作的,主要是讓系統(tǒng)管理員對(duì)醫(yī)生的信息及時(shí)的進(jìn)行修改,在后臺(tái)管理的頁(yè)面中點(diǎn)擊系統(tǒng)管理下拉列表中的醫(yī)生管理,即可對(duì)醫(yī)生的信息進(jìn)行添加,修改,刪除等操作,界面如圖5-4所示:圖5-6醫(yī)生信息6項(xiàng)目測(cè)試6.1系統(tǒng)測(cè)試軟件的系統(tǒng)測(cè)試的目的是為了檢查出系統(tǒng)研發(fā)完成后,功能代碼是否存在邏輯錯(cuò)誤或者是與詳細(xì)需求說(shuō)明分析存在不符,通過(guò)軟件測(cè)試員的測(cè)試對(duì)不符合預(yù)期的地方做出改動(dòng),使得系統(tǒng)最終成品與我們的預(yù)期相吻合。軟件測(cè)試主要是采用人工方式或者軟件自動(dòng)測(cè)試的方法來(lái)進(jìn)行,主要檢測(cè)開(kāi)發(fā)完成的系統(tǒng)是否能夠正常運(yùn)行,測(cè)試的結(jié)果與客戶(hù)所要求的是否一致,是否能夠?qū)崿F(xiàn)當(dāng)初所設(shè)計(jì)的所有功能,最后就是是否有報(bào)錯(cuò)的情況發(fā)生。6.1.1單元測(cè)試單元測(cè)試就是測(cè)試系統(tǒng)中最小的單元模塊。本系統(tǒng)在編寫(xiě)代碼的過(guò)程當(dāng)中,就是一直在進(jìn)行,只要發(fā)現(xiàn)漏洞或者出現(xiàn)錯(cuò)誤就會(huì)及時(shí)的修正和解決。6.1.2組件測(cè)試組件測(cè)試也叫類(lèi)集成測(cè)試,它是在單元測(cè)試的基礎(chǔ)上,按照客戶(hù)需求進(jìn)行組裝成模塊,使得各部分的功能模塊達(dá)到客戶(hù)所需要的狀態(tài)。組件測(cè)試的主要方法就是測(cè)試軟件各單元模塊結(jié)合在一起是否能正常工作,最后還要測(cè)試所有模塊結(jié)合在一起是否能正常工作。經(jīng)過(guò)測(cè)試證明,本系統(tǒng)可以滿(mǎn)足客戶(hù)需求。6.2測(cè)試環(huán)境系統(tǒng)的測(cè)試環(huán)境由硬件環(huán)境、操作系統(tǒng)、數(shù)據(jù)庫(kù)環(huán)境和軟件環(huán)境組成。(1)硬件環(huán)境:處理器一臺(tái),配置Intel(R)Core(TM)i5-7200UCPU@2.50GHz2.70GHz,64位操作系統(tǒng),基于x64的處理器。(2)操作系統(tǒng):Windows10系統(tǒng)(3)數(shù)據(jù)庫(kù)環(huán)境:MySQL數(shù)據(jù)庫(kù)(4)軟件環(huán)境:SSH框架開(kāi)發(fā)、IntelliJIDEA6.3系統(tǒng)功能模塊測(cè)試6.3.1用戶(hù)模塊測(cè)試(1)用戶(hù)注冊(cè)測(cè)試,如圖6-1所示:圖6-1用戶(hù)注冊(cè)(2)用戶(hù)掛號(hào)測(cè)試,如圖6-2所示:圖6-2用戶(hù)掛號(hào)(3)查詢(xún)醫(yī)生測(cè)試,如圖6-3所示:圖6-3查詢(xún)醫(yī)生(4)查詢(xún)醫(yī)院藥品測(cè)試,如圖6-4所示:圖6-4查詢(xún)醫(yī)院藥品6.3.2管理員模塊測(cè)試(1)管理員登錄頁(yè)面測(cè)試,如圖6-5所示:圖6-5管理員登錄頁(yè)面測(cè)試(2)管理員修改密碼測(cè)試,如圖6-6所示:圖6-6管理員修改密碼測(cè)試(3)管理用戶(hù)信息測(cè)試,如圖6-7所示:圖6-7管理用戶(hù)信息測(cè)試6.3.3模塊測(cè)試結(jié)果(1)用戶(hù)模塊測(cè)試結(jié)果:在登錄時(shí)沒(méi)有輸入賬號(hào)會(huì)提示相關(guān)信息,如圖6-8所示圖6-8提示用戶(hù)名不存在在登錄時(shí)賬號(hào)或密碼錯(cuò)誤會(huì)提示相關(guān)信息,如圖6-9所示:圖6-9提示密碼錯(cuò)誤在注冊(cè)時(shí)輸入已經(jīng)注冊(cè)過(guò)的賬號(hào)會(huì)提示相關(guān)信息,如圖6-10所示圖6-10重復(fù)注冊(cè)在注冊(cè)成功時(shí)會(huì)提示相關(guān)信息,如圖6-11所示圖6-11提示注冊(cè)成功(2)數(shù)據(jù)庫(kù)測(cè)試:表6-1測(cè)試數(shù)據(jù)庫(kù)編號(hào)測(cè)試內(nèi)容預(yù)測(cè)結(jié)果實(shí)際結(jié)果A數(shù)據(jù)庫(kù)信息是否一致是正確B輸出數(shù)據(jù)是否正確是正確所有的模塊測(cè)試之后,可以看出該系統(tǒng)基本可以實(shí)現(xiàn)醫(yī)院在線掛號(hào)系統(tǒng)的需求,且能正常運(yùn)行以及符合客戶(hù)所預(yù)期的目標(biāo)。結(jié)論從冬天到夏天,從開(kāi)題到定稿。一邊還因?yàn)橐咔闆](méi)來(lái)的及與母校好好告別,一邊埋頭于畢業(yè)設(shè)計(jì)的制作,在從頭梳理畢業(yè)設(shè)計(jì)的過(guò)程里,不覺(jué)有苦反倒意外的感到充實(shí),在遇到無(wú)法解決的錯(cuò)誤時(shí)充滿(mǎn)熱情的去詢(xún)問(wèn)老師和同學(xué),獨(dú)自在網(wǎng)絡(luò)社區(qū)里找出問(wèn)題的答案,當(dāng)時(shí)覺(jué)得一個(gè)頭兩個(gè)大?;仡^去看反而是一種收獲,在畢業(yè)設(shè)計(jì)和論文中,我所做的不僅僅是這幾年書(shū)本知識(shí)的簡(jiǎn)單總結(jié),更是對(duì)四年里和實(shí)習(xí)過(guò)程中所學(xué)知識(shí)的一種檢驗(yàn)和運(yùn)用,大大提高了自己的掌握知識(shí)的能力。這次的醫(yī)院在線掛號(hào)系統(tǒng)作為本科學(xué)業(yè)中的最終的作業(yè)和交給學(xué)校的答卷,包含了在校期間學(xué)習(xí)的專(zhuān)業(yè)課程和實(shí)驗(yàn)的總結(jié)應(yīng)用,也是我踏上工作崗位的一塊敲門(mén)磚,讓我學(xué)會(huì)了如何解決問(wèn)題,如何面對(duì)難題,在沒(méi)有老師在身邊細(xì)心指導(dǎo)的時(shí)候,我該如何去獨(dú)立完成作業(yè)和任務(wù),提升了本人的實(shí)地考察能力和獨(dú)立設(shè)計(jì)眼光,我明白最重要的一點(diǎn)就是要及時(shí)的和指導(dǎo)老師進(jìn)行溝通交流,同窗們的新鮮想法設(shè)計(jì)思路對(duì)我都有不小的幫助聽(tīng)取指導(dǎo)意見(jiàn),明白了團(tuán)隊(duì)精神的重要作用和意義。在此真誠(chéng)的感謝學(xué)校能夠給我這個(gè)鍛煉成長(zhǎng)的機(jī)會(huì)。這次畢業(yè)設(shè)計(jì)已經(jīng)完成,還有許多需要改進(jìn)的地方,但在完成的過(guò)程中,我確實(shí)學(xué)到了許多東西,也積累了很多的經(jīng)驗(yàn)。但由于個(gè)人能力不足,學(xué)識(shí)有限,依然有很多不足之處,與老師的期望還有很大差距,還有很多問(wèn)題需要進(jìn)一步解決,希望這次的畢業(yè)設(shè)計(jì)能讓我在以后學(xué)習(xí)工作中激勵(lì)我繼續(xù)進(jìn)步。參考文獻(xiàn)郭爽.基于SSH框架
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030新加坡物流倉(cāng)儲(chǔ)行業(yè)市場(chǎng)深度研究及發(fā)展路徑與投資前景預(yù)測(cè)分析報(bào)告
- 2025-2030新加坡水泥包裝行業(yè)市場(chǎng)供應(yīng)需求分析及投資風(fēng)險(xiǎn)評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030新加坡地產(chǎn)行業(yè)市場(chǎng)供需政策評(píng)估風(fēng)險(xiǎn)預(yù)警發(fā)展規(guī)劃報(bào)告
- 2025-2030文化遺產(chǎn)數(shù)字化保護(hù)現(xiàn)狀分析及行業(yè)投資機(jī)遇報(bào)告
- 2025-2030文化遺產(chǎn)保護(hù)行業(yè)市場(chǎng)詳細(xì)分析及發(fā)展趨勢(shì)與投資價(jià)值研究報(bào)告
- 2025-2030文化藝術(shù)產(chǎn)業(yè)市場(chǎng)化運(yùn)作模式發(fā)展研究報(bào)告
- 2025-2030文化旅游行業(yè)市場(chǎng)現(xiàn)狀旅游消費(fèi)及投資趨勢(shì)評(píng)估規(guī)劃分析研究報(bào)告
- 水毀治理專(zhuān)項(xiàng)施工方案技術(shù)要點(diǎn)
- 物業(yè)費(fèi)預(yù)收管理及客戶(hù)回饋獎(jiǎng)勵(lì)方案
- 2025年隱患排查培訓(xùn)試題及答案
- 供電一把手講安全課
- 本科實(shí)習(xí)男護(hù)生職業(yè)認(rèn)同感調(diào)查及影響因素分析
- T-GDWCA 0035-2018 HDMI 連接線標(biāo)準(zhǔn)規(guī)范
- 合肥機(jī)床行業(yè)現(xiàn)狀分析
- 面板堆石壩面板滑模結(jié)構(gòu)設(shè)計(jì)
- 無(wú)人機(jī)裝調(diào)檢修工培訓(xùn)計(jì)劃及大綱
- 國(guó)家開(kāi)放大學(xué)《森林保護(hù)》形考任務(wù)1-4參考答案
- GB 31604.1-2023食品安全國(guó)家標(biāo)準(zhǔn)食品接觸材料及制品遷移試驗(yàn)通則
- 殯葬服務(wù)心得體會(huì) 殯儀館工作心得體會(huì)
- 電力線路維護(hù)檢修規(guī)程
- 春よ、來(lái)い(春天來(lái)了)高木綾子演奏長(zhǎng)笛曲譜鋼琴伴奏
評(píng)論
0/150
提交評(píng)論