python个人健康自助记录查询系统 毕业设计源码152015
Python個人健康自助記錄查詢系統(tǒng)
摘 要
目前隨著人們對健康認識的不斷深入,健康觀念也正在由有病治病向無病預(yù)防的方向改變,人們開始更加注重生活的質(zhì)量,追求更健康,更長壽。因此,開發(fā)一個面向個人和家庭,以健康服務(wù)為中心的個人健康自助記錄查詢系統(tǒng)有著重要的意義。本論文的研究工作通過圍繞這一系統(tǒng)的研究開發(fā)而展開。
本設(shè)計主要實現(xiàn)集人性化、高效率、便捷等優(yōu)點于一身的個人健康自助記錄查詢系統(tǒng),完成首頁、用戶管理(管理員、用戶)更多管理(基礎(chǔ)信息、健康記錄、不適分類、通知公告管理)等功能模塊。系統(tǒng)通過瀏覽器與服務(wù)器進行通信,實現(xiàn)數(shù)據(jù)的交互與變更。本系統(tǒng)通過科學(xué)的管理方式、便捷的服務(wù)提高了工作效率,減少了數(shù)據(jù)存儲上的錯誤和遺漏。個人健康自助記錄查詢系統(tǒng)完善了對應(yīng)的軟體架設(shè)以及程序編碼的工作,Python編程語言,MySQL數(shù)據(jù)庫,Ajax異步交互,根據(jù)Ajax異步模式等開發(fā)工具,完成了系統(tǒng)的主要模塊的頁面設(shè)計和功能實現(xiàn)。
關(guān)鍵詞:個人健康自助記錄查詢;Mysql數(shù)據(jù)庫;Python
Python personal health self-service record query system
Abstract
At present, with the deepening of people's understanding of health, the concept of health is also changing from disease-free treatment to disease-free prevention. People begin to pay more attention to the quality of life and pursue healthier and longer life. Therefore, it is of great significance to develop a personal health self-service record query system for individuals and families and centered on health services. The research work of this paper is carried out around the research and development of this system.
This design mainly realizes the personal health self-service record query system with the advantages of humanization, high efficiency and convenience, and completes the functional modules such as home page, user management (administrator, user) and more management (basic information, health records, discomfort classification, notice and announcement management). The system communicates with the server through the browser to realize the interaction and change of data. Through scientific management and convenient service, the system improves work efficiency and reduces errors and omissions in data storage. The personal health self-service record query system has improved the corresponding software erection and program coding. Python programming language, MySQL database and Ajax asynchronous interaction have completed the page design and function realization of the main modules of the system according to the Ajax asynchronous mode and other development tools.
Key words:Personal health self-service record query; Mysql database; Python
目 錄
第1章 緒論 1
1.1 研究背景與意義 1
1.2 研究內(nèi)容 1
1.3 本文的組織結(jié)構(gòu) 2
第2章 相關(guān)技術(shù)介紹 3
2.1 Pycharm簡介 3
2.2 MySQL描述 3
2.3 Python編程語言 3
2.4 Django框架 4
第3章 系統(tǒng)分析 5
3.1 可行性分析 5
3.1.1 技術(shù)可行性分析 5
3.1.2 經(jīng)濟可行性分析 5
3.1.3 操作可行性分析 5
3.2 功能需求分析 5
3.3 非功能需求分析 8
3.4 數(shù)據(jù)流程分析 8
第4章 系統(tǒng)設(shè)計 10
4.1 系統(tǒng)架構(gòu)設(shè)計 10
4.2 系統(tǒng)功能結(jié)構(gòu) 10
4.3 功能模塊設(shè)計 11
4.4 數(shù)據(jù)庫設(shè)計 11
4.4.1 概念模型 11
4.4.2 關(guān)系模型 12
4.4.3 數(shù)據(jù)表 12
第5章 系統(tǒng)實現(xiàn) 19
5.1 登錄模塊的實現(xiàn) 19
5.2 用戶子系統(tǒng)模塊的實現(xiàn) 20
5.2.1 用戶首頁模塊 20
5.2.2 基礎(chǔ)信息模塊 20
5.2.3 健康記錄模塊 22
5.3 管理員子系統(tǒng)模塊的實現(xiàn) 23
5.3.1 用戶管理模塊 23
5.3.2 個人資料管理模塊 24
5.3.3 基礎(chǔ)信息管理模塊 25
5.3.4 健康記錄管理模塊 27
5.3.5 不適分類管理模塊 2
第6章 系統(tǒng)測試 29
6.1 測試目的 29
6.2 測試過程 29
6.3 測試結(jié)果 30
第7章 總結(jié)與展望 31
參考文獻 32
致謝 34
緒論
研究背景與意義
隨著社會的發(fā)展以及健康知識的普及,人們對生活質(zhì)量的要求越來越高,對個人和家庭的健康也越來越重視,不再滿足于不生疾病,更看重于預(yù)防疾病和保健。雖然現(xiàn)代人對健康的關(guān)注意識比以往任何時候都強烈,但是在如何健康地飲食,如何科學(xué)地預(yù)防疾病,以及慢性疾病發(fā)生時如何長期地監(jiān)控疾病等方面,相信大多數(shù)人還是處于一個不了解的狀態(tài)。隨著社會和信息技術(shù)的不斷發(fā)展,各種電子醫(yī)療系統(tǒng)的應(yīng)用越來越廣泛,如電子病歷系統(tǒng)、電子健康記錄系統(tǒng)以及個人健康記錄系統(tǒng)。
目前,隨著計算機日益普及、網(wǎng)絡(luò)技術(shù)快速發(fā)展,計算機技術(shù)的應(yīng)用已經(jīng)滲透到生活的各個領(lǐng)域,成為各行各業(yè)在業(yè)務(wù)處理和管理工作中必不可少的輔助工具。計算機在醫(yī)療信息化領(lǐng)域中的應(yīng)用,不僅促進了人民健康水平的提高,也將推動醫(yī)療衛(wèi)生事業(yè)的飛速發(fā)展。隨著新興3G技術(shù)和手機終端的發(fā)展,移動醫(yī)療也發(fā)揮著越來越重要的作用,移動醫(yī)療就是通過移動通信技術(shù)提供與醫(yī)療相關(guān)的信息和服務(wù),人們可以使用移動設(shè)備進行快速的日常通信與數(shù)據(jù)傳輸。如何將信息通信技術(shù)應(yīng)用到個人健康自助記錄查詢中,為人們提供具備科學(xué)性、實時性、便捷性、個體化等特征的個人健康服務(wù),是當(dāng)前計算機應(yīng)用開發(fā)人員所面臨和深入研究的重大課題。此系統(tǒng)的開發(fā)目的主要是為了加強個人健康信息的管理,了解個人的健康狀況,隨時掌握個人的醫(yī)療信息,控制疾病危險因素,及早開始預(yù)防,在發(fā)病前進行有效干預(yù),可以有效的減少疾病發(fā)生的幾率,改善健康狀況,提高人民生命質(zhì)量。
研究內(nèi)容
個人健康自助記錄查詢系統(tǒng)的開發(fā)及實現(xiàn),所需要的工作內(nèi)容:
(1)首先是確定選題,確定好所要做的系統(tǒng),并對系統(tǒng)的背景及現(xiàn)在面臨的一些問題等進行系統(tǒng)的初步確認。
(2)系統(tǒng)確認完成后,結(jié)合系統(tǒng)開發(fā)的需求進行確認系統(tǒng)開發(fā)所使用的技術(shù),個人健康自助記錄查詢系統(tǒng)的開發(fā)使用Springboot框架,數(shù)據(jù)庫進行平臺的搭建開發(fā),確認好使用的技術(shù)進行技術(shù)分析,所使用的技術(shù)是否可以完成系統(tǒng)的實現(xiàn)。
(3)確定好系統(tǒng)使用的技術(shù),進行在線確認系統(tǒng)所劃分的用戶角色,并且根據(jù)用戶角色劃分確定所要設(shè)計的功能模塊,對個人健康自助記錄查詢系統(tǒng)的設(shè)計主要劃分別為管理員和用戶角色,并所使用的功能模塊也相應(yīng)不同,但是系統(tǒng)的數(shù)據(jù)庫實現(xiàn)的內(nèi)容是交互的,用戶可以隨時根據(jù)自己的需求進行信息查看,對于系統(tǒng)工作人員可以根據(jù)自己的分管內(nèi)容進行在線信息的處理及操作,管理員獲取到所有用戶的詳細數(shù)據(jù)信息,并根據(jù)需求進行第一時間處理解決。
(4)系統(tǒng)的功能模塊確認完成后進行程序及界面的設(shè)計,設(shè)計完成后,并且通過測試來判斷程序是否完善,對于系統(tǒng)測試,需要不同的用戶進行不同的內(nèi)容編輯及提交,及使用不同的測試方式找出程序中存在的漏洞,并對程序出現(xiàn)的漏洞問題進行在線解決處理,如果測試系統(tǒng)沒有任何問題時,可以將系統(tǒng)上傳進行正式操作使用。
本文的組織結(jié)構(gòu)
第一章是緒論,本文章的開頭部分,對本題目的研究背景和研究意義等一些做文字性的描述。
第二章研究了個人健康自助記錄查詢系統(tǒng)的所采用的開發(fā)技術(shù)和開發(fā)工具。
第三章是系統(tǒng)分析部分,包括系統(tǒng)總體需求描述、功能性角度分析系統(tǒng)需求、非功能性等各個方面分析系統(tǒng)是否可以實現(xiàn)。
第四章是系統(tǒng)設(shè)計部分,本文章的重要部分,提供了系統(tǒng)架構(gòu)的詳細設(shè)計和一些主要功能模塊的設(shè)計說明。
第五章是系統(tǒng)的具體實現(xiàn),介紹系統(tǒng)的各個模塊的具體實現(xiàn)。
第六章在前幾章的基礎(chǔ)上對系統(tǒng)進行測試和運行。
最后對系統(tǒng)進行了認真的總結(jié),以此對未來有一個新的展望。
相關(guān)技術(shù)介紹
Pycharm簡介
PyCharm是用于Python腳本語言的最流行的IDE。
1.每個文件都有其輸出窗口。
2.可以終止進程(只要點下按鈕就行)。
3.各種提示超強:①沒用的變量顏色會變灰②用錯了的變量下面會有紅色波浪線③書寫提示(sublime也有但較弱)。
4.索引功能超強。
MySQL描述
現(xiàn)在MySQL數(shù)據(jù)庫在網(wǎng)絡(luò)上它可以支撐許多個用戶,而且也可以適應(yīng)客服機和服務(wù)器的部署或者配置等,我們這里的服務(wù)器和客戶機其實就是一種軟件上的概念,并且我們使用的計算機硬件也與他們不存在一一對應(yīng)的關(guān)系。
MySQL是一款非常流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它的出現(xiàn)一直都是佼佼者,它不僅功能非常強大,而且使用起來非常方便,并且MySQL的跨平臺能力也很好,軟件開發(fā)人員非常喜歡它的這些強大的優(yōu)點。不同于其他關(guān)系型數(shù)據(jù)庫,對于數(shù)據(jù)庫的管理它有著自己的一套方案,通過對用戶設(shè)定相應(yīng)的權(quán)限和角色來達到對數(shù)據(jù)庫的管理。由此可見,MySQL是一個能夠適用于吞吐量高,可靠性高,效率高的一款數(shù)據(jù)庫管理軟件。
優(yōu)點一:MySQL中對于不同身份的用戶都設(shè)定其不同的權(quán)限來完成不同的業(yè)務(wù)邏輯,這使得MySQL在安全和完整性遠遠超出了其他關(guān)系型數(shù)據(jù)庫。
優(yōu)點二:對于那些動畫、圖形和聲音的數(shù)據(jù)類型MySQL也可以支持,這說明多數(shù)據(jù)類型MySQL也是可以支持的。
優(yōu)點三:MySQL還可以做到多個平臺的開發(fā),軟件開發(fā)的多種編程語言都可以實現(xiàn)對MySQL數(shù)據(jù)庫的操作。
Python編程語言
Python是一種開發(fā)語言,能夠以直譯的方式進行計算機語言,而且可以面向?qū)ο缶幊獭K怯蒅uido van Rossum在十九世紀(jì)八十年代末研發(fā)出來,并且在九一年公開發(fā)行使用。Python有很多特點,比如有簡潔的語法,清晰的語句,豐富的類庫。正式由于這些優(yōu)點,能夠非常快速的和其他語言進行結(jié)合,來實現(xiàn)各種功能模塊。很多人給它起了個外號叫“黏黏膠”語言。使用Python快速生成程序的原型,是現(xiàn)在很多程序員使用的方法。如果其中有比較特殊要求的地方,也非常方便的進行修改。
而且PyQt具有雙證,為它能夠跨平臺運行(例如UNIX,微軟和蘋果的平臺)提供了保證。
使用Python語言之前,要進行平臺的安裝,用戶需要根據(jù)不同的平臺,下載不同的版本,然后進行環(huán)境變量的配置,便可以進行運行。
Python 特點:
1.相對于其他計算機語言來說學(xué)習(xí)起來比較簡單:Python的關(guān)鍵字較少,結(jié)構(gòu)相對簡單,語法簡單,對于剛學(xué)編程語言的人來說更容易上手。
2.閱讀起來也相對簡單:Python代碼結(jié)構(gòu)簡潔明了,并在定義上看起來也非常清晰,所以在閱讀的過程中更加簡單。
3.維護起來方便:Python的維護簡單方便。
4.標(biāo)準(zhǔn)庫特別廣泛:Python的最大的最大優(yōu)勢是有非常多的庫,而且是跨平臺的,而且對系統(tǒng)的兼容性很好,比如在UNIX,Windows和Macintosh系統(tǒng)上都能夠進行兼容。
5.具有方便的互動模式:有了互動模式的支持,開發(fā)者可以從代碼就可以看到結(jié)果,這樣開發(fā)者對程序的測試與調(diào)試,變的更方便。
6.可移植性好:Python可以跨平臺運行。
7.擴展性非常好的:如果有關(guān)鍵的代碼,你可以用特殊的語言進行編寫,也能夠在系統(tǒng)中調(diào)試運行。
Django框架
Django是一個由Python編寫的具有完整架站能力的開源Web框架。使用Django,只要很少的代碼,Python的程序開發(fā)人員就可以輕松地完成一個正式網(wǎng)站所需要的大部分內(nèi)容,并進一步開發(fā)出全功能的Web服務(wù)。
Django本身基于MVC模型,即Model(模型)+View(視圖)+ Controller(控制器)設(shè)計模式,因此天然具有MVC的出色基因:開發(fā)快捷、部署方便、可重用性高、維護成本低等。Python加Django是快速開發(fā)、設(shè)計、部署網(wǎng)站的最佳組合。
B/S體系工作原理
B/S架構(gòu)采取瀏覽器請求,服務(wù)器響應(yīng)的工作模式。
用戶可以通過瀏覽器去訪問Internet上由Web服務(wù)器產(chǎn)生的文本、數(shù)據(jù)、圖片、動畫、視頻點播和聲音等信息;
而每一個Web服務(wù)器又可以通過各種方式與數(shù)據(jù)庫服務(wù)器連接,大量的數(shù)據(jù)實際存放在數(shù)據(jù)庫服務(wù)器中;
從Web服務(wù)器上下載程序到本地來執(zhí)行,在下載過程中若遇到與數(shù)據(jù)庫有關(guān)的指令,由Web服務(wù)器交給數(shù)據(jù)庫服務(wù)器來解釋執(zhí)行,并返回給Web服務(wù)器,Web服務(wù)器又返回給用戶。在這種結(jié)構(gòu)中,將許許多多的網(wǎng)連接到一塊,形成一個巨大的網(wǎng),即全球網(wǎng)。而各個企業(yè)可以在此結(jié)構(gòu)的基礎(chǔ)上建立自己的Internet。
在 B/S 模式中,用戶是通過瀏覽器針對許多分布于網(wǎng)絡(luò)上的服務(wù)器進行請求訪問的,瀏覽器的請求通過服務(wù)器進行處理,并將處理結(jié)果以及相應(yīng)的信息返回給瀏覽器,其他的數(shù)據(jù)加工、請求全部都是由Web Server完成的。通過該框架結(jié)構(gòu)以及植入于操作系統(tǒng)內(nèi)部的瀏覽器,該結(jié)構(gòu)已經(jīng)成為了當(dāng)今軟件應(yīng)用的主流結(jié)構(gòu)模式。
系統(tǒng)分析
可行性分析
本次設(shè)計基于B/S 模式下,運用基于Python技術(shù)采用的是Mysql數(shù)據(jù)庫實現(xiàn),總體的可行性共分為以下三個方面。
技術(shù)可行性分析
所謂的技術(shù)可行性就是在限定時間,前期擬定的功能能否被滿足。在開發(fā)設(shè)計上是否會遇上解決不了的問題。做完的項目能否被很好地應(yīng)用,如果存在缺點在后期的維護上是否存在很大的難度。在對這個系統(tǒng)評估后,認定已存在的技術(shù)能達成目標(biāo)。用Python技術(shù)來實現(xiàn)動態(tài)的頁面,嵌入低依賴性的設(shè)計模式,靈活的數(shù)據(jù)庫,配合穩(wěn)定的服務(wù)器,整個系統(tǒng)的運行效率大大提升。由此可見,在技術(shù)層面達成目標(biāo)不是非非之想。
經(jīng)濟可行性分析
在項目上使用的工具大部分都是是當(dāng)下流行開源免費的,所以在開發(fā)前期,開發(fā)時用于項目的經(jīng)費將會大大降低,不會讓開發(fā)該軟件在項目啟動期受到經(jīng)費的影響,所以經(jīng)濟上還是可行的。盡量用最少的花費去滿足用戶的需求。省下經(jīng)費用于人工費,以及設(shè)備費用。將在無紙化,高效率的道路上越走越遠。
操作可行性分析
本系統(tǒng)實現(xiàn)功能的操作很簡單,普通電腦的常見配置就可以運行本軟件,并且只要粗通電腦使用的基本常識就可以流暢的使用本軟件。電腦具備連接互聯(lián)網(wǎng)的能力,并且可以正常訪問系統(tǒng),并不需要操作者有什么高超的能力,只需了解業(yè)務(wù)流程,并且按照專業(yè)知識進行正確操作即可,所以個人健康自助記錄查詢系統(tǒng)具備操作可行性。
功能需求分析
在系統(tǒng)開發(fā)設(shè)計前,應(yīng)該對功能做初步設(shè)想,清楚這個管理系統(tǒng)有什么板塊,每個板塊有什么功能,整體的設(shè)計是否滿足使用者的需求,接著對所開發(fā)的系統(tǒng)功能進行的詳細分析總結(jié),從而設(shè)計出完整的系統(tǒng)并將其實現(xiàn)。用戶和開發(fā)人員的交流分析,使其達到最佳理解程度,使系統(tǒng)功能達到最佳。
用戶用例圖如下所示。
圖3-1 用戶用例圖
管理員用例圖如下所示。
圖3-2 管理員用例圖
個人健康自助記錄查詢系統(tǒng)在對需求做解析后,整個系統(tǒng)主要分為兩個部分:管理員和用戶,每個模塊下的分支功能不一樣。對功能做出如下說明:
用戶模塊:
賬號登錄認證。
管理個人資料信息,修改可修改的信息項。
基礎(chǔ)信息:用戶可以提交基礎(chǔ)信息,包括個人的不適類型、不適癥狀以及藥物治療信息等。
健康記錄:個人的健康記錄信息包括:用戶信息、基礎(chǔ)疾病、遺傳病史、藥物過敏史等。
通知公告:瀏覽系統(tǒng)通知公告信息。
管理員模塊:
維護普通用戶:審核普通用戶的賬號,可以凍結(jié)普通用戶的登錄權(quán)限,或者刪除普通用戶賬號。
基礎(chǔ)信息管理:對基礎(chǔ)信息進行維護管理。
健康記錄管理:對用戶上傳的健康記錄信息進行維護管理。
不適分類管理:對不適癥狀進行分類進行管理。
通知公告管理:對通知公告進行發(fā)布管理。
非功能需求分析
系統(tǒng)非功能需求有非常多,比如性能需求、可承載最大用戶數(shù)、穩(wěn)定性、易用性需求等。本系統(tǒng)分析時考慮到易用性需求,因為系統(tǒng)是給人使用的,所以必須充分從用戶的角度出發(fā),考慮用戶體驗,使系統(tǒng)易理解易上手易操作。
數(shù)據(jù)流程分析
一層數(shù)據(jù)流程圖包括了登錄、用戶功能和檢索維護等模塊,在登錄模塊使用到的數(shù)據(jù)存儲有用戶賬戶文檔,用戶功能模塊需要的存儲是用戶各功能模塊數(shù)據(jù)文檔,檢索維護是使用以上這些數(shù)據(jù)文檔通過關(guān)鍵詞進行檢索。
系統(tǒng)的一層數(shù)據(jù)流圖如下圖所示。
圖3-2系統(tǒng)數(shù)據(jù)流圖(一層)
二層數(shù)據(jù)流程是對一層數(shù)據(jù)流層圖中填寫登錄信息、用戶功能的細化。即:填寫登錄信息細化為填制信息、后臺審核,用戶功能細化為基礎(chǔ)信息管理、不適分類管理、健康記錄管理、通知公告管理)查看等操作。
系統(tǒng)的二層數(shù)據(jù)流圖如下圖所示。
圖3-4系統(tǒng)數(shù)據(jù)流圖(二層)
系統(tǒng)設(shè)計
系統(tǒng)架構(gòu)設(shè)計
目前B/S體系的系統(tǒng)主要的數(shù)據(jù)訪問方式是:通過瀏覽器頁面用戶可以進入系統(tǒng),系統(tǒng)可以自動對用戶向服務(wù)器發(fā)送的請求進行處理,處理請求是在系統(tǒng)后臺中進行的,用戶在瀏覽器頁面上進行相應(yīng)操作,就能夠看到服務(wù)端傳遞的處理結(jié)果。個人健康自助記錄查詢系統(tǒng)主要分為視圖-模型-控制三層架構(gòu)設(shè)計。在視圖層中,主要是操作在服務(wù)器端向客戶端反饋并顯示的數(shù)據(jù),在模型層中,主要處理相關(guān)的業(yè)務(wù)邏輯、數(shù)據(jù)整合等,最后的控制層它介于視圖和模型之間,主要是調(diào)整兩層之間的關(guān)系,最終落實數(shù)據(jù)的傳遞。
系統(tǒng)架構(gòu)圖如下圖所示。
圖4-1系統(tǒng)架構(gòu)圖
系統(tǒng)功能結(jié)構(gòu)
系統(tǒng)設(shè)計的目的是分析系統(tǒng)包括的所有功能結(jié)構(gòu),為開發(fā)人員設(shè)計開發(fā)和實現(xiàn)系統(tǒng)做好準(zhǔn)備工作。經(jīng)過前期的需求調(diào)查、分析和整理之后,確定的總體需求主要包括多個模塊,分別是:首頁、用戶管理(管理員、用戶)更多管理(基礎(chǔ)信息管理、健康記錄管理、不適分類管理,通知公告管理)。系統(tǒng)整體角色分為兩個部分,一是用戶、二是管理員。權(quán)限分布也是很明顯,用戶是在除去瀏覽信息之外還具有查詢和管理自己賬戶信息、基礎(chǔ)信息提交、健康記錄上傳等權(quán)限;管理員是最高權(quán)限擁有者。
系統(tǒng)功能結(jié)構(gòu)圖如下圖所示。
圖4-2系統(tǒng)功能結(jié)構(gòu)圖
功能模塊設(shè)計
健康記錄維護模塊
用戶來錄入個人健康記錄數(shù)據(jù),點擊信息錄入按鈕,依次填寫要錄入的健康信息數(shù)據(jù),點擊提交按鈕,將數(shù)據(jù)提交至數(shù)據(jù)庫,然后刷新健康記錄數(shù)據(jù)頁面,每條數(shù)據(jù)右邊有刪除和編輯按鈕,來完成相應(yīng)的刪除和更新功能。
基礎(chǔ)信息管理模塊
管理員和基礎(chǔ)信息存在管理關(guān)系,關(guān)系為一對多,管理用戶基礎(chǔ)信息,操作人為管理員,然后生成基礎(chǔ)信息列表,用戶可以提交個人基礎(chǔ)信息列表,管理員可以進行數(shù)據(jù)銷毀。
數(shù)據(jù)庫設(shè)計
概念模型
對于一個要開發(fā)的系統(tǒng)來說,E-R圖可以讓別人能更快更輕松的了解此系統(tǒng)的事務(wù)及它們之間的關(guān)系。根據(jù)系統(tǒng)分析階段所得出的結(jié)論確定了在個人健康自助記錄查詢系統(tǒng)中存在著多個實體分別是用普通用戶、管理員、(基礎(chǔ)信息管理、用戶管理、健康記錄、不適分類管理)系統(tǒng)總體ER圖如下圖所示。
圖4-4系統(tǒng)總體ER圖
關(guān)系模型
管理員(管理員id、用戶名、密碼、權(quán)限)
用戶(用戶id、姓名、密碼、姓名、性別、身份證號、電話、照片)
數(shù)據(jù)庫
數(shù)據(jù)庫邏輯結(jié)構(gòu)就是將E-R圖在數(shù)據(jù)庫中用具體的字段進行描述。用字段和數(shù)據(jù)類型描述來使對象特征實體化,最后形成具有一定邏輯關(guān)系的數(shù)據(jù)庫表結(jié)構(gòu)。個人健康自助記錄查詢系統(tǒng)所需要的部分數(shù)據(jù)結(jié)構(gòu)表如下表所示。
名稱 | 類型 | 長度 | 不是null | 主鍵 | 注釋 |
registered_user_id | int | 11 | 是 | 是 | 注冊用戶ID |
user_name | varchar | 64 | 是 | 否 | 用戶名 |
examine_state | varchar | 16 | 是 | 否 | 審核狀態(tài) |
recommend | int | 11 | 是 | 否 | 智能推薦 |
user_id | int | 11 | 是 | 否 | 用戶ID |
create_time | datetime | 0 | 是 | 否 | 創(chuàng)建時間 |
update_time | timestamp | 0 | 是 | 否 | 更新時間 |
名稱 | 類型 | 長度 | 不是null | 主鍵 | 注釋 |
basic_information_id | int | 11 | 是 | 是 | 基礎(chǔ)信息ID |
user_name | int | 11 | 否 | 否 | 用戶名 |
full_name | varchar | 64 | 否 | 否 | 姓名 |
gender | varchar | 64 | 否 | 否 | 性別 |
age | int | 11 | 否 | 否 | 年齡 |
height | varchar | 64 | 否 | 否 | 身高 |
weight | varchar | 64 | 否 | 否 | 體重 |
basic_diseases | text | 0 | 否 | 否 | 基礎(chǔ)疾病 |
genetic_history | text | 0 | 否 | 否 | 遺傳病史 |
history_of_drug_allergy | text | 0 | 否 | 否 | 藥物過敏史 |
recommend | int | 11 | 是 | 否 | 智能推薦 |
create_time | datetime | 0 | 是 | 否 | 創(chuàng)建時間 |
update_time | timestamp | 0 | 是 | 否 | 更新時間 |
名稱 | 類型 | 長度 | 不是null | 主鍵 | 注釋 |
discomfort_classification_id | int | 11 | 是 | 是 | 不適分類ID |
type_of_discomfort | varchar | 64 | 否 | 否 | 不適類型 |
recommend | int | 11 | 是 | 否 | 智能推薦 |
create_time | datetime | 0 | 是 | 否 | 創(chuàng)建時間 |
update_time | timestamp | 0 | 是 | 否 | 更新時間 |
名稱 | 類型 | 長度 | 不是null | 主鍵 | 注釋 |
health_records_id | int | 11 | 是 | 是 | 健康記錄ID |
user_name | int | 11 | 否 | 否 | 用戶名 |
full_name | varchar | 64 | 否 | 否 | 姓名 |
record_date | date | 0 | 否 | 否 | 記錄日期 |
type_of_discomfort | varchar | 64 | 否 | 否 | 不適類型 |
medication | varchar | 64 | 否 | 否 | 藥物治療 |
discomfort_symptoms | text | 0 | 否 | 否 | 不適癥狀 |
recommend | int | 11 | 是 | 否 | 智能推薦 |
create_time | datetime | 0 | 是 | 否 | 創(chuàng)建時間 |
update_time | timestamp | 0 | 是 | 否 | 更新時間 |
名稱 | 類型 | 長度 | 不是null | 主鍵 | 注釋 |
notice_announcement_id | int | 11 | 是 | 是 | 通知公告ID |
title | varchar | 64 | 否 | 否 | 標(biāo)題 |
relevant_attachments | varchar | 255 | 否 | 否 | 相關(guān)附件 |
publisher | varchar | 64 | 否 | 否 | 發(fā)布人 |
release_date | date | 0 | 否 | 否 | 發(fā)布日期 |
content | text | 0 | 否 | 否 | 內(nèi)容 |
recommend | int | 11 | 是 | 否 | 智能推薦 |
create_time | datetime | 0 | 是 | 否 | 創(chuàng)建時間 |
update_time | timestamp | 0 | 是 | 否 | 更新時間 |
名稱 | 類型 | 長度 | 不是null | 主鍵 | 注釋 |
score_id | int | 10 | 是 | 是 | 評分ID: |
user_id | int | 11 | 是 | 否 | 評分人: |
nickname | varchar | 64 | 否 | 否 | 昵稱: |
score_num | double | 5 | 是 | 否 | 評分: |
create_time | timestamp | 0 | 是 | 否 | 創(chuàng)建時間: |
update_time | timestamp | 0 | 是 | 否 | 更新時間: |
source_table | varchar | 255 | 否 | 否 | 來源表: |
source_field | varchar | 255 | 否 | 否 | 來源字段: |
source_id | int | 10 | 是 | 否 | 來源ID: |
系統(tǒng)實現(xiàn)
登錄模塊的實現(xiàn)
系統(tǒng)的登錄窗口是用戶的入口,用戶只有在登錄成功后才可以進入訪問。通過在登錄提交表單,后臺處理判斷是否為合法用戶,進行頁面跳轉(zhuǎn),進入系統(tǒng)中去。
登錄合法性判斷過程:用戶輸入賬號和密碼后,系統(tǒng)首先確定輸入輸入數(shù)據(jù)合法性,然后在login.Python頁面發(fā)送登錄請求,調(diào)用src下的mainctrl類的dopost方法來驗證。
用戶登錄模塊的IPO如下所示:
輸入:用戶名和密碼。
處理:
1)檢測用戶輸入的賬號、密碼是否正確及在數(shù)據(jù)庫已對應(yīng)存在。
2)從數(shù)據(jù)庫中提取記錄,并儲存在本地的session中(timeout默認=30min)。
3)根據(jù)用戶名,將其顯示在系統(tǒng)首頁上。
輸出:是否成功的信息。
登錄流程圖如下所示。
圖5-1登錄流程圖
系統(tǒng)登錄界面如下所示。
圖5-2系統(tǒng)登錄界面
用戶子系統(tǒng)模塊的實現(xiàn)
用戶注冊模塊
系統(tǒng)呈現(xiàn)出一種簡潔大方的首頁:界面簡約、鱗次櫛比,用戶能輕車熟路的使用。出于對系統(tǒng)使用群體廣泛的顧慮,應(yīng)有良好性能的后臺。
如下圖所示為系統(tǒng)的注冊界面。
圖5-3系統(tǒng)注冊界面
基礎(chǔ)信息模塊
基礎(chǔ)信息界面中,用戶可以進行基礎(chǔ)信息的提交。
基礎(chǔ)信息流程圖如下所示。
圖5-4基礎(chǔ)信息流程圖
基礎(chǔ)信息界面如圖所示。
圖5-5基礎(chǔ)信息界面
健康記錄模塊
健康記錄模塊,用戶通過健康信息提交,將健康記錄數(shù)據(jù)賦值提交,調(diào)用CommDAO的insert方法將上交數(shù)據(jù)插入記錄表中,最后查看個人的歷史健康記錄,可以銷毀歷史健康記錄數(shù)據(jù)。
健康記錄如下所示。
圖5-6健康記錄流程圖
健康記錄界面如圖所示。
圖5-7健康記錄界面
管理員子系統(tǒng)模塊的實現(xiàn)
用戶管理模塊
用戶在yhzhgl查看用戶信息,先使用sql語句查詢出所有用戶表的數(shù)據(jù),然后調(diào)用PageManager.getPages(url,4,sql, request ),返回一個ArrayList的對象,在for循環(huán)里,使用Python得到每個ArrayList對象的數(shù)據(jù),在Python頁面中解析ArrayList對象,得到其各個鍵值對的值。
用戶管理界面如下圖所示。
圖5-8用戶管理界面
個人資料管理模塊
用戶點擊登錄填寫賬號信息登錄后,會切換內(nèi)容為“某某用戶歡迎您”和歷史訂單,并給出注銷鏈接。當(dāng)用戶登錄成功后會將個人信息保存在session作用域中,點擊自己的用戶名時,會跳轉(zhuǎn)到個人詳細信息頁面,由后臺通過Freemarker取出session作用域中的用戶信息進行動態(tài)渲染,例如,郵箱、電話號碼、用戶名等等。同時頁面上會顯示修改個人信息和修改密碼的按鈕,這時客戶可以修改自己的登錄密碼以保障賬號的安全性,防止被人竊取賬號,通過UserController.java的updatePassword()實現(xiàn),同時也可以根據(jù)自己的個人信息是否變動做出相應(yīng)的修改,通過updateUserInfo()實現(xiàn)。
密碼修改流程圖如下所示。
基礎(chǔ)信息管理模塊
管理員對用戶提交的基礎(chǔ)信息進行維護管理操作。基礎(chǔ)信息管理流程圖如下所示。
圖5-10基礎(chǔ)信息管理流程圖
基礎(chǔ)信息管理界面如下圖所示。
圖5-11基礎(chǔ)信息管理界面
健康記錄管理模塊
健康記錄管理,調(diào)用getData方法獲取所有數(shù)據(jù)并且進行分頁,把獲取到的所有數(shù)據(jù)顯示到視圖上,這時候只需要用腳本方法便能快速查找,不涉及對數(shù)據(jù)庫操作。
健康記錄管理流程圖如下所示。
圖5-12健康記錄管理流程圖
健康記錄管理界面如下圖所示。
圖5-13健康記錄管理界面
不適分類管理模塊
管理員可以將不適信息進行分類維護管理,將信息添加至數(shù)據(jù)列表中。
不適分類管理界面如下圖所示。
圖5-14不適分類管理界面
系統(tǒng)測試
測試目的
在對該系統(tǒng)進行完詳細設(shè)計和編碼之后,就要對個人健康自助記錄查詢系統(tǒng)的程序進行測試,檢測程序是否運行無誤,反復(fù)進行測試和修改,使之最后成為完整的軟件,滿足用戶的需求,實現(xiàn)預(yù)期的功能。
測試過程
在軟件的測試過程中,通常測試人員需要針對不同的功能模塊設(shè)計多種測試用例。通過測試用例能夠及時發(fā)現(xiàn)代碼業(yè)務(wù)邏輯上是否與真實的業(yè)務(wù)邏輯相對應(yīng),及時發(fā)現(xiàn)代碼上或邏輯上的缺陷,以此來來完善系統(tǒng),提高軟件產(chǎn)品的質(zhì)量,使軟件具有良好的用戶體驗。
登錄測試用例表如下所示。
表6-1登錄測試用例
測試性能 | 用戶或操作員登錄系統(tǒng) | ||
用例目的 | 測試用戶或操作員登錄系統(tǒng)時功能是否正常 | ||
前提條件 | 進入用戶登錄頁面或操作員登錄頁面 | ||
輸入條件 | 預(yù)期輸出 | 實際情況 | |
各項信息不予填寫,直接點擊登陸按鈕 | 不允許登錄,提示填寫賬號相關(guān)信息 | 一致 | |
填寫錯誤的登錄名或密碼后點擊登錄系統(tǒng) | 提示用戶名或密碼錯誤,要求重新填寫進行登錄 | 一致 | |
填寫與驗證碼信息不一致的信息 | 系統(tǒng)顯示出提示信息,表明驗證碼錯誤,要求重新填寫 | 一致 | |
健康記錄測試用例表如下所示。
表6-2健康記錄測試用例
測試性能 | 用戶進行健康記錄的操作 | ||
用例目的 | 測試用戶進行健康記錄操作時,該功能是否正常 | ||
前提條件 | 用戶進入健康記錄詳情頁 | ||
輸入條件 | 預(yù)期輸出 | 實際情況 | |
輸入個人健康信息點擊“提交”按鈕 | 界面跳轉(zhuǎn)至提交界面 | 一致 | |
在健康信息界面,輸入必填項,點擊“提交”按鈕 | 提示“上傳成功”,并返回上一級界面 | 一致 | |
在報修界面,填寫信息的時候未輸入完整,點擊“提交”按鈕 | 提示“上傳失敗” | 一致 | |
測試結(jié)果
經(jīng)過對此系統(tǒng)的測試,得出該系統(tǒng)足以滿足用戶日常需求,在功能項目和操作等方面也能滿足操作員對于其他用戶的管理。但是,還有很多功能有待添加,這個系統(tǒng)僅能滿足大部分的需求,還需要對此系統(tǒng)的功能更進一步的完善,這樣使用起來才能更加的完美。
總結(jié)與展望
通過個人健康自助記錄查詢系統(tǒng)的開發(fā),本人鞏固了之前學(xué)過的知識,如今將平時所學(xué)到的知識融合在設(shè)計中,在設(shè)計過程中,做了很多的準(zhǔn)備,首先,在數(shù)據(jù)庫系統(tǒng)的設(shè)計過程中,尤其是在數(shù)據(jù)庫的工作原理、工作特點,對其深刻的討論,與此同時,對于小型站點來說,最好服務(wù)器的選擇,其次,利用所學(xué)的知識點分析所做的系統(tǒng),并在此基礎(chǔ)上設(shè)計。
目前本系統(tǒng)已經(jīng)上線,正在試運行階段,用戶反饋良好,基本完成用戶所需,試運行過程中沒有出現(xiàn)阻斷性問題,有一些不足和小問題也及時予以修正,系統(tǒng)上線后,為了保證數(shù)據(jù)的安全性,對系統(tǒng)進行了備份操作,系統(tǒng)備份是每兩個月備份一次,數(shù)據(jù)庫備份為每周備份一次,系統(tǒng)部署在云平臺服務(wù)器中。
本次系統(tǒng)上線成功后,得到了用戶的高度認可,但是在功能上和性能上還需做進一步的研究處理,使其有更高的性能和更好的用戶體驗。
系統(tǒng)在以后的升級過程中,需要解決一系列用戶所提出的問題,例如打印過程中如何避免瀏覽器的兼容性問題,大量用戶訪問時,如何保持較高的響應(yīng)速度,在系統(tǒng)今后的升級過程中將著重解決這些安全性問題。
參考文獻
[1]吳雨渲,嚴(yán)張凌.基于微服務(wù)架構(gòu)的個人健康管理系統(tǒng)的設(shè)計與實現(xiàn)[J].信息與電腦(理論版),2020,32(15):97-99.
[2]樊換換. 個人健康管理系統(tǒng)的設(shè)計與實現(xiàn)[D].北京郵電大學(xué),2020.DOI:10.26969/d.cnki.gbydu.2020.002212.
[3]楊芳. 社區(qū)健康自助系統(tǒng)的研究與設(shè)計[D].貴州大學(xué),2019.
[4]劉東.基于MVC模式的個人健康管理系統(tǒng)[J].電子技術(shù)與軟件工程,2019(06):169-170.
[5]丁笑維.基于大數(shù)據(jù)的個人健康管理系統(tǒng)[J].電腦編程技巧與維護,2018(07):114-115+119.DOI:10.16184/j.cnki.comprg.2019.07.038.
[6]劉秀芝,劉玉昌,董恩宏.自助式健康檢測對提高慢性病人自我管理能力的作用[J].江蘇預(yù)防醫(yī)學(xué),2019,28(03):346-347.DOI:10.13668/j.issn.1006-9070.2019.03.41.
[7]黃愉然.淺談基于大數(shù)據(jù)的個人健康管理系統(tǒng)設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2019,13(15):11-12.DOI:10.14004/j.cnki.ckt.2017.1611.
[8]吳波. 自助健康基本管理與服務(wù)系統(tǒng)設(shè)計與實現(xiàn)[D].江西師范大學(xué),2019.
[9]王瑜,江小蓉,蘭麗云.智能個性化體檢自助系統(tǒng)在健康管理中心的應(yīng)用價值[J].中國數(shù)字醫(yī)學(xué),2018,10(08):101-102.
[10]陳華.淺談進行自助式健康管理對社區(qū)糖尿病患者治療依從性的影響[J].當(dāng)代醫(yī)藥論叢,2018,13(12):107-108.
[11]陳穎. 基于時間感知的個人健康管理系統(tǒng)設(shè)計與實現(xiàn)[D].大連海事大學(xué),2018.
[12]劉玉昌.信息化自助式健康檢測模式對社區(qū)糖尿病患者健康管理的效果[J].上海醫(yī)藥,2018,36(10):44-46.
[13]單文英. 基于J2EE平臺MVC模式的個人健康管理系統(tǒng)的設(shè)計與實現(xiàn)[D].南昌大學(xué),2018.
[14]姚琴,王華瓊,方亞洲,趙軍平,李勁松.基于云計算平臺的個人健康管理系統(tǒng)[J].中國數(shù)字醫(yī)學(xué),2018,7(01):55-58.
[15].健康管理:能不能自助?[J].中國新時代,2018(06):126-127.
致謝
本次設(shè)計歷時3個月。在這個畢業(yè)設(shè)計中,它離不開指導(dǎo)教師的指導(dǎo),使事情基本順利。指導(dǎo)老師無論是在畢業(yè)設(shè)計歷經(jīng)中,還是在論文做完中都給了了我特別大的助益。另1個方面,教師認真負責(zé)的工作姿態(tài),謹慎的教學(xué)精神厚重的理論水準(zhǔn)都使我獲益匪淺。他勤懇謹慎的教學(xué)育人學(xué)習(xí)姿態(tài)也給我留下了特別特別深的感覺。我從老師那里學(xué)到了很多東西。在理論和實踐中,我的技能得到了特別大的提高。在此,特向教師表示由衷的感激。
經(jīng)過對該畢業(yè)設(shè)計的全部研究和開發(fā),我的系統(tǒng)研發(fā)經(jīng)歷了從需求分析到實現(xiàn)詳細功能,再到最終測試和維護的特殊進展。讓我對系統(tǒng)研發(fā)有了更深層次的認識。如今我的動手本領(lǐng)單獨處理疑惑的本領(lǐng)也獲取到了特別大的演練學(xué)習(xí)增多,這是這次畢業(yè)設(shè)計最好的收獲。
最后,在整個系統(tǒng)開發(fā)過程中,我周圍的同學(xué)和朋友給了我很多意見,所以我很快就確認了系統(tǒng)的商業(yè)思想。在次,我由衷的向他們表示感激。
點贊+收藏+關(guān)注 → 私信領(lǐng)取本源代碼、數(shù)據(jù)庫
總結(jié)
以上是生活随笔為你收集整理的python个人健康自助记录查询系统 毕业设计源码152015的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LM2576
- 下一篇: python的Tkinter库简单应用—