(附源码)php养老院管理系统 毕业设计 202026
PHP養老院管理系統
摘?要
隨著互聯網趨勢的到來,各行各業都在考慮利用互聯網將自己推廣出去,最好方式就是建立自己的互聯網系統,并對其進行維護和管理。在現實運用中,應用軟件的工作規則和開發步驟,采用php技術建設養老院管理系統。
本設計主要實現集人性化、高效率、便捷等優點于一身的養老院管理系統,完成首頁、用戶管理(管理員、家屬用戶、護工用戶)更多管理(老人用戶、入住繳費、薪資管理、請假管理、健康管理、飲食管理、問題記錄)等功能模塊。系統通過瀏覽器與服務器進行通信,實現數據的交互與變更。只需通過一臺電腦,動動手指就可以操作系統,實現數據通信管理。整個系統的設計過程都充分考慮了數據的安全、穩定及可靠等問題,而且操作過程簡單。本系統通過科學的管理方式、便捷的服務提高了工作效率,減少了數據存儲上的錯誤和遺漏。
經過本人的綜合考慮,養老院管理系統的設計是基于PHP技術、Mysql數據庫、Apache服務器的方式設計,以ZendStudio和Dreamweaver為開發工具,在ZendStudio集成環境下調試并允許,并運用Photoshop技術美化網頁,輔之以CSS技術。
關鍵詞:數據通信;PHP語言;關系型數據庫;數據存儲
PHP nursing home management system
Abstract
With the advent of the Internet trend, all walks of life are considering using the Internet to promote themselves. The best way is to establish their own Internet system and maintain and manage it. In practical application, according to the working rules and development steps of the application software, PHP technology is used to build the nursing home management system.
This design mainly realizes the nursing home management system integrating the advantages of humanization, high efficiency and convenience, and completes the functional modules such as home page, user management (administrators, family members and nursing workers) and more management (elderly users, check-in payment, salary management, leave management, health management, diet management and problem record). The system communicates with the server through the browser to realize the interaction and change of data. You can operate the system and realize data communication management by moving your fingers through a computer. The safety, stability and reliability of data are fully considered in the design process of the whole system, and the operation process is simple. Through scientific management and convenient service, the system improves work efficiency and reduces errors and omissions in data storage.
After my comprehensive consideration, the design of nursing home management system is based on PHP technology, MySQL database and Apache server. Zendstudio and Dreamweaver are used as development tools, debugged and allowed in zendstudio integrated environment, and Photoshop technology is used to beautify web pages, supplemented by CSS technology.
Keywords: data communication; PHP language; Relational database; data storage
目??錄
第1章 緒論
1.1 研究背景
1.2 開發意義
1.3 本文的組織結構
第2章 相關技術介紹
2.1 系統開發平臺
2.2 平臺開發相關技術
2.2.2 ?mysql數據庫介紹
2.2.3 ?MySQL環境配置
2.2.4 ?B/S架構
第3章 系統分析
3.1 可行性分析
3.1.1 技術可行性分析
3.1.2 經濟可行性分析
3.1.3 操作可行性分析
3.2 功能需求分析
3.3 非功能需求分析
3.4 數據流程分析
第4章 系統設計
4.1 系統架構設計
4.2 系統功能結構
4.3 功能模塊設計
4.4 數據庫設計
4.4.1 概念模型
4.4.2 關系模型
4.4.3 數據表
第5章 系統實現
5.1 登錄模塊的實現
5.2 用戶子系統模塊的實現
5.2.1 用戶首頁模塊
5.2.2 注冊模塊
5.2.3 老人賬單模塊
5.2.4 請假模塊
5.3 管理員子系統模塊的實現
5.3.1 用戶管理模塊
5.3.2 個人資料模塊
5.3.3 老人管理模塊
5.3.4 醫護人員管理模塊
5.3.5 醫護人員工資模塊
第6章 系統測試
6.1 測試目的
6.2 測試過程
6.3 測試結果
第7章 總結與展望
參考文獻
致謝
養老院是集醫療、護理、康復、膳食、社工等服務服務于一體的綜合行養老院,經過我們前期的調查,院方大部分工作采用手工操作方式,會帶來工作效率過低,運營成本過大的問題。?
院方可用合理的較少投入取得更好的服務效果,在滿足社會需求、注重社會效益的同時,獲得相應的經濟效益,從而提高院方的長遠發展能力,增強內部控制能力,在人、財、物的綜合運營管理上得到更多、更好的方法和手段,用有限的資源取得最合理的社會和經濟效益的產出。?
養老院管理系統分為老人檔案管理系統和內部管理系統等兩部分組成。養員檔案管理是以滿足院方各個科室業務管理需要為基礎,對醫療、護理、康復、膳食、業務等業務進行綜合性信息化管理。養老院內部管理系統以院方人、財、物綜合管理為核心,包含財務管理、人力資源管理、績效管理、管理層決策智能分析等功能,系統采取一體化的運營模式,可作為提高院方綜合運營能力的有效手段。
養老院在關愛老年人身心健康、提供必要的社會幫助方面發揮著不可或缺的重要作用,同社會中其他性質的企業一樣,養老院同樣需要高效率和高標準的管理系統,以達到為廣大老年客戶提供高水準服務的目的。當前的養老院機構的現狀和存在的問題有以下兩個方面:1、信息化基礎薄弱。養老院當前信息化的一些基礎信息采集不足,無法滿足信息共享、統計、查詢等業務的需要。2、信息流轉不暢。當前養老院信息的傳遞依靠傳統方式,缺乏高效流轉,且流轉渠道不暢。
養老院服務的規模化和多樣性對管理和服務工作帶來了挑戰,對于現代養老機構而言,傳統的管理方式已難以適應現代化養老服務的需要,而采用信息化集成管理,可以使養老機構的管理和服務工作更加便捷和高效。
第一章是緒論,本文章的開頭部分,對本題目的研究背景和研究意義等一些做文字性的描述。
第二章研究了養老院管理系統的所采用的開發技術和開發工具。
第三章是系統分析部分,包括系統總體需求描述、功能性角度分析系統需求、非功能性等各個方面分析系統是否可以實現。
第四章是系統設計部分,本文章的重要部分,提供了系統架構的詳細設計和一些主要功能模塊的設計說明。
第五章是系統的具體實現,介紹系統的各個模塊的具體實現。
第六章在前幾章的基礎上對系統進行測試和運行。
最后對系統進行了認真的總結,以此對未來有一個新的展望。
此次管理系統的關鍵技術和架構由B/S結構、php和mysql數據庫,是本系統的關鍵開發技術,對系統的整體、數據庫、功能模塊、系統頁面以及系統程序等設計進行了詳細的研究與規劃。
在該養老院管理系統中,Element UI能給用戶提供更多的方便,其特點一是方便學習,方便快捷;二是有非常大的信息儲存量,主要功能是用在對數據庫中查詢和編程。其功能有比較靈活的數據應用,只需利用小部分代碼就能實現非常強大的功能。因此,利用Element UI 技術進行系統代碼管理是該系統數據庫的首選。
??2.2.1 MVVM模式介紹:
MVVM是Model-View-ViewModel的簡寫。它本質上就是MVC 的改進版。MVVM 就是將其中的View 的狀態和行為抽象化,讓我們將視圖 UI 和業務邏輯分開。當然這些事 ViewModel 已經幫我們做了,它可以取出 Model 的數據同時幫忙處理 View 中由于需要展示內容而涉及的業務邏輯。微軟的WPF帶來了新的技術體驗,如Silverlight、音頻、視頻、3D、動畫……,這導致了軟件UI層更加細節化、可定制化。同時,在技術層面,WPF也帶來了 諸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由來便是MVP(Model-View-Presenter)模式與WPF結合的應用方式時發展演變過來的一種新型架構框架。它立足于原有MVP框架并且把WPF的新特性糅合進去,以應對客戶日益復雜的需求變化。
??2.2.2 ?mysql數據庫介紹?
利用MYSQL的數據獨立性、安全性等特點,在軟件項目中對數據進行操作,可以保證數據準確無誤,并降低了程序員的應用開發時間。
MYSQL的特點是支持多線程,能方便的對系統資源充分利用,有效提高速度,還提供多種方式途徑來對數據庫進行連接;MYSQL的功能相對弱小、規模也小,但本系統要求不高,MYSQL完全可以滿足本系統使用。
利用MYSQL建立系統數據庫,不僅有利于數據處理業務的早期整合,還能利于發展后兩種數據擴展的操作。
2.2.3 ?MySQL環境配置
本系統的數據使用的是MySQL,所以要將MySQL安裝到指定目錄,如果下載的是非安裝的MySQL壓縮包,直接解壓到指定目錄就可以了。然后點擊C:\Program Files\MySQL\bin\winMySQLadmin.exe這個文件其中C:\Program Files\MySQL是MySQL安裝目錄。輸入winMySQLadmin的初始用戶、密碼(注:這不是MySQL里的用戶、密碼)隨便填不必在意,確定之后右下角任務的啟動欄會出現一個紅綠燈的圖標,紅燈亮代表服務停止,綠燈亮代表服務正常,左擊這個圖標->winnt->install the service 安裝此服務,再左擊這個圖標->winnt->start the service 啟動MySQL服務。
修改MySQL數據庫的root密碼。用cmd進入命令行模式輸入如下命令:
cd C:\Program Files\MySQL\bin
MySQLadmin -u root -p password 123
回車出現Enter password: ,這是要輸入原密碼. 剛安裝時密碼為空,所以直接回車,此時MySQL 中賬號 root 的密碼被改為 123 安裝完畢。
2.2.4 ?B/S架構?
B/S結構是目前使用最廣泛的結構模式,它不但能讓系統的開發更加的簡單,易操作,而且還能夠對其進行維護。在使用B/S結構時只要在計算機中安裝好數據庫和一些很常用的瀏覽器就行了。數據庫和瀏覽器就會進行信息連接,能實現很多功能,此結構通過能上網的電腦是可以直接進行使用,而且在使用中極大的減少了工作的維護。基于B/S的軟件數據庫之間都是獨立使用的,因此是非常可靠的。因為基于此結構可以清晰的看到系統正在處理的所有業務,還能夠及時的讓管理人員根據當時的實際情況做出相應的對策,這樣能避免用戶的損失。B/S結構的管理模式是集中式的,用戶使用此系統在生成數據后就可以將這此數據存儲到系統的數據庫中,方便以后使用滿足人們的所有的需求。
?
圖2-1 ?三層結構圖
2.2.5 ?Thinkphp框架介紹:
ThinkPHP是為了簡化企業級應用開發和敏捷WEB應用開發而誕生的。最早誕生于2006年初,2007年元旦正式更名為ThinkPHP,并且遵循Apache2開源協議發布。ThinkPHP從誕生以來一直秉承簡潔實用的設計原則,在保持出色的性能和至簡的代碼的同時,也注重易用性。并且擁有眾多原創功能和特性,在社區團隊的積極參與下,在易用性、擴展性和性能方面不斷優化和改進。?
ThinkPHP是一個快速、兼容而且簡單的輕量級國產PHP開發框架,誕生于2006年初,原名FCS,2007年元旦正式更名為ThinkPHP,遵循Apache2開源協議發布,從Struts結構移植過來并做了改進和完善,同時也借鑒了國外很多優秀的框架和模式,使用面向對象的開發結構和MVC模式,融合了Struts的思想和TagLib(標簽庫)、RoR的ORM映射和ActiveRecord模式。
ThinkPHP可以支持windows/Unix/Linux等服務器環境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多種數據庫以及PDO擴展,ThinkPHP框架本身沒有什么特別模塊要求,具體的應用系統運行環境要求視開發所涉及的模塊。
作為一個整體開發解決方案,ThinkPHP能夠解決應用開發中的大多數需要,因為其自身包含了底層架構、兼容處理、基類庫、數據庫訪問層、模板引擎、緩存機制、插件機制、角色認證、表單處理等常用的組件,并且對于跨版本、跨平臺和跨數據庫移植都比較方便。并且每個組件都是精心設計和完善的,應用開發過程僅僅需要關注您的業務邏輯。
一個完整的系統,可行性分析是必須要有的,因為他關系到系統生存問題,對開發的意義進行分析,能否通過本系統來補充線下養老院管理系統查詢模式中的缺限,去解決其中的不足等,通過對本系統,不僅能使工作量不斷地減少,還能使工作和管理的效率更加高。所以開發該系統能實現更大的意義和價值, 系統完成后,能否達到預期效果就要通過可行性分析,分析之后,決定此系統是否開發。該養老院管理系統的開發設計中,對技術、經濟、操作方面進行了可行性分析;?
所謂的技術可行性就是在限定時間,前期擬定的功能能否被滿足。在開發設計上是否會遇上解決不了的問題。做完的項目能否被很好地應用,如果存在缺點在后期的維護上是否存在很大的難度。在對這個系統評估后,認定已存在的技術能達成目標。用php技術來實現動態的頁面,嵌入低依賴性的設計模式,靈活的數據庫,配合穩定的服務器,整個系統的運行效率大大提升。由此可見,在技術層面達成目標不是非非之想。
在項目上使用的工具大部分都是是當下流行開源免費的,所以在開發前期,開發時用于項目的經費將會大大降低,不會讓開發該軟件在項目啟動期受到經費的影響,所以經濟上還是可行的。盡量用最少的花費去滿足用戶的需求。省下經費用于人工費,以及設備費用。將在無紙化,高效率的道路上越走越遠。
本系統實現功能的操作很簡單,普通電腦的常見配置就可以運行本軟件,并且只要粗通電腦使用的基本常識就可以流暢的使用本軟件。電腦具備連接互聯網的能力,并且可以正常訪問系統,并不需要操作者有什么高超的能力,只需了解業務流程,并且按照專業知識進行正確操作即可,所以養老院管理系統具備操作可行性。
在系統開發設計前,應該對功能做初步設想,清楚這個管理系統有什么板塊,每個板塊有什么功能,整體的設計是否滿足使用者的需求,接著對所開發的系統功能進行的詳細分析總結,從而設計出完整的系統并將其實現。用戶和開發人員的交流分析,使其達到最佳理解程度,使系統功能達到最佳。
用戶用例圖如下所示。
?
?
圖3-1 用戶用例圖
管理員用例圖如下所示。
?
?
圖3-2 管理員用例圖
醫護人員用例圖如下所示。
?
圖3-3 護工人員用例圖
養老院管理系統在對需求做解析后,整個系統主要分為兩個部分:管理員和普通用戶、醫護人員,每個模塊下的分支功能不一樣。對功能做出如下說明:
普通用戶模塊:
賬號注冊。
賬號登錄認證。
管理個人資料信息,修改可修改的信息項。
老人賬單查詢,同時查看歷史已有賬單的記錄。
醫護人員模塊:
提交請假,同時查看歷史已提交的請假記錄。
發布老人,并可以銷毀某個老人,更新老人數據,模糊搜索老人數據等。
健康管理錄入,同時查看歷史已有健康管理的記錄。
醫護人員工資錄入,同時查看歷史已錄入工資的記錄。
管理員模塊:
維護普通用戶,審核普通用戶的賬號,可以凍結普通用戶的登錄權限,或者刪除普通用戶賬號。
醫護人員工資錄入,同時查看歷史已錄入工資的記錄。
發布醫護人員,并可以銷毀某個醫護人員,更新醫護人員數據,模糊搜索醫護人員數據等。
管理老人賬單數據。
維護醫護人員工資數據。
查看醫護人員提交的請假數據,管理員有權利維護它。
系統非功能需求有非常多,比如性能需求、可承載最大用戶數、穩定性、易用性需求等。本系統分析時考慮到易用性需求,因為系統是給人使用的,所以必須充分從用戶的角度出發,考慮用戶體驗,使系統易理解易上手易操作。
零層數據流程圖包括了登錄注冊、用戶功能和檢索維護等模塊,在登錄注冊模塊使用到的數據存儲有用戶賬戶文檔,用戶功能模塊需要的存儲是用戶各功能模塊數據文檔,檢索維護是使用以上這些數據文檔通過關鍵詞進行檢索。
系統的零層數據流圖如下圖所示。
?
圖3-2系統數據流圖(零層)
一層數據流程圖是對零層數據流程圖的細化,將登錄注冊細分為填制登錄注冊數據和完善數據,用戶功能細分為用戶基本功能和用戶主要功能。
系統的一層數據流圖如下圖所示。
?
圖3-3系統數據流圖(一層)
二層數據流程是對一層數據流層圖中填寫登錄注冊信息、用戶功能的細化。即:填寫登錄注冊信息細化為填制信息、后臺審核,用戶功能細化為個人資料修改、老人查詢、老人賬單查詢、醫護人員資料修改、用戶注冊查看、老人錄入、工資查詢、請假申請、老人賬單錄入等操作。
系統的二層數據流圖如下圖所示。
?
圖3-4系統數據流圖(二層)
目前B/S體系的系統主要的數據訪問方式是:通過瀏覽器頁面用戶可以進入系統,系統可以自動對用戶向服務器發送的請求進行處理,處理請求是在系統后臺中進行的,用戶在瀏覽器頁面上進行相應操作,就能夠看到服務端傳遞的處理結果。養老院管理系統主要分為視圖-模型-控制三層架構設計。在視圖層中,主要是操作在服務器端向客戶端反饋并顯示的數據,在模型層中,主要處理相關的業務邏輯、數據整合等,最后的控制層它介于視圖和模型之間,主要是調整兩層之間的關系,最終落實數據的傳遞。
系統架構圖如下圖所示。
?
圖4-1系統架構圖
系統設計的目的是分析系統包括的所有功能結構,為開發人員設計開發和實現系統做好準備工作。經過前期的需求調查、分析和整理之后,確定的總體需求主要包括多個模塊,分別是:留言管理、老人管理、醫護人員管理、工資管理、請假管理、老人賬單管理、倉庫管理、請假統計。系統整體角色分為三個部分,一是游客、二是普通用戶、最后是管理員。權限分布也是很明顯,游客即是無需任何驗證便可瀏覽相關信息;普通用戶是在除去瀏覽信息之外還具有查詢和管理自己賬戶信息、個人資料修改、老人查詢、老人賬單查詢、用戶注冊查看、老人錄入、工資查詢、請假申請、老人賬單錄入等權限;管理員是最高權限擁有者。
系統功能結構圖如下圖所示。
?
圖4-2系統功能結構圖
用戶管理模塊
該模塊是為所有用戶登錄設計的,如注冊用戶這種普通用戶登錄后只能進行自己的普通功能操作(如個人信息修改),管理員和超級管理員登錄后有不同的權限,管理員不能超越權限。超級管理員能對整個系統的數據進行管理,主要是用戶的登錄權限以及用戶登錄后在系統里的操作權限。
老人賬單模塊
老人存在賬單記錄,關系為一對多,根據老人編號來將老人數據傳入到賬單數據中,操作人為醫護人員,然后生成賬單列表,醫護人員查看個人歷史賬單列表,可以進行數據銷毀。
老人維護模塊
操作人來錄入老人數據,點擊老人錄入按鈕,依次填寫要錄入的老人數據,點擊提交按鈕,將數據提交至數據庫,然后刷新老人數據頁面,每條數據右邊有刪除和編輯按鈕,來完成相應的刪除和更新功能。
醫護人員工資模塊
醫護人員存在工資關系,關系為一對多,根據醫護人員編號來將醫護人員數據傳入到工資數據中,操作人為管理員,然后生成工資列表,醫護人員查看個人歷史工資列表,可以進行數據銷毀。
醫護人員維護模塊
操作人來錄入醫護人員數據,點擊醫護人員錄入按鈕,依次填寫要錄入的醫護人員數據,點擊提交按鈕,將數據提交至數據庫,然后刷新醫護人員數據頁面,每條數據右邊有刪除和編輯按鈕,來完成相應的刪除和更新功能。
新聞維護模塊
管理員點擊新聞管理菜單,點擊新聞添加子菜單,添加新聞數據,填寫標題、內容、類別、圖片,提交成功后,新聞數據頁面刷新,新數據成功載入頁面。
請假維護模塊
根據請假維護的流程,醫護人員提交請假數據,在個人后臺便可以查看到歷史提交的請假數據,管理員來維護請假數據,審批確認已存在的請假數據。
留言信息管理模塊
用戶登錄系統后,可在留言板進行留言,管理員在后臺可以查看或搜索留言信息,同時可回復或刪除留言信息。
打印和導出模塊
系統多個頁面可以進行打印功能,包括信息詳細頁,信息列表頁,打印時調用外部打印機,完成打印設置即可打印,在信息列表頁可以將該信息列表導出至excel中,用戶選擇保存excel文件的路徑,既可以下載至本地,在excel中可以自由編輯。
對于一個要開發的系統來說,E-R圖可以讓別人能更快更輕松的了解此系統的事務及它們之間的關系。根據系統分析階段所得出的結論確定了在養老院管理系統中存在著多個實體分別是用普通用戶、管理員、老人、賬單、醫護人員、工資、請假、留言。
系統總體ER圖如下圖所示。
?
圖4-4系統總體ER圖
管理員(管理員id、用戶名、密碼、權限)
老人(老人id、用戶名、老人姓名、性別、出生日期、入住日期、身份證號、緊急聯系人、聯系電話)
賬單(賬單id、用戶名、老人姓名、性別、身份證號、賬單名稱、賬單金額、相關附件、是否支付)
醫護人員(醫護人員id、工號、密碼、員工姓名、性別、身份證、電話、入職日期)
工資(工資id、工號、員工姓名、發薪月份、基本工資、提成、獎金、考勤扣款、五險一金、實發工資、發薪日)
請假(請假id、請假單號、請假日期、請假天數、請假類型、申請人、是否審核、審核回復)
數據庫邏輯結構就是將E-R圖在數據庫中用具體的字段進行描述。用字段和數據類型描述來使對象特征實體化,最后形成具有一定邏輯關系的數據庫表結構。養老院管理系統所需要的部分數據結構表如下表所示。
| check_in_payment | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| check_in_payment_id | int | 11 | 否 | 主鍵 | 入住繳費ID |
| old_man_name | varchar | 64 | 是 | 老人姓名 | |
| family_user | int | 11 | 是 | 家屬用戶 | |
| bed_fee | int | 11 | 是 | 床位費 | |
| nursing_fee | int | 11 | 是 | 護理費 | |
| board_expenses | int | 11 | 是 | 伙食費 | |
| medical_expenses | int | 11 | 是 | 醫療費 | |
| supplies_cost | int | 11 | 是 | 用品費 | |
| water_and_electricity | int | 11 | 是 | 水電費 | |
| total_charge | varchar | 64 | 是 | 總計收費 | |
| occupancy_conditions | text | 0 | 是 | 入住條件 | |
| charge_details | text | 0 | 是 | 收費詳情 | |
| pay_state | varchar | 16 | 否 | 支付狀態 | |
| pay_type | varchar | 16 | 是 | 支付類型 微信、支付寶、網銀 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| diet_management | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| diet_management_id | int | 11 | 否 | 主鍵 | 飲食管理ID |
| dining_stage | varchar | 64 | 是 | 用餐階段 | |
| dinner_time | time | 0 | 是 | 用餐時間 | |
| food_pictures | varchar | 255 | 是 | 餐品圖片 | |
| meal_details | text | 0 | 是 | 餐品詳情 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| elderly_users | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| elderly_users_id | int | 11 | 否 | 主鍵 | 老人用戶ID |
| old_man_name | varchar | 64 | 否 | 老人姓名 | |
| gender_of_the_elderly | varchar | 64 | 是 | 老人性別 | |
| old_age | varchar | 64 | 是 | 老人年齡 | |
| family_members_of_the_elderly | int | 11 | 是 | 老人家屬 | |
| family_name | varchar | 64 | 是 | 家屬姓名 | |
| family_gender | varchar | 64 | 是 | 家屬性別 | |
| family_relations | varchar | 64 | 是 | 家屬關系 | |
| family_phone | varchar | 16 | 是 | 家屬電話 | |
| nurse_no | int | 11 | 是 | 護工編號 | |
| name_of_nurse | varchar | 64 | 是 | 護工姓名 | |
| nursing_worker_gender | varchar | 64 | 是 | 護工性別 | |
| bed_number | varchar | 64 | 是 | 床位編號 | |
| bed_type | varchar | 64 | 是 | 床位類型 | |
| bed_room | varchar | 64 | 是 | 床位房間 | |
| special_attention | text | 0 | 是 | 特殊注意 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| family_user | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| family_user_id | int | 11 | 否 | 主鍵 | 家屬用戶ID |
| user_name | varchar | 64 | 否 | 用戶姓名 | |
| user_gender | varchar | 64 | 是 | 用戶性別 | |
| user_age | varchar | 64 | 是 | 用戶年齡 | |
| examine_state | varchar | 16 | 否 | 審核狀態 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| user_id | int | 11 | 否 | 用戶ID | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| health_management | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| health_management_id | int | 11 | 否 | 主鍵 | 健康管理ID |
| old_man_name | varchar | 64 | 是 | 老人姓名 | |
| family_user | int | 11 | 是 | 家屬用戶 | |
| blood_pressure | varchar | 64 | 是 | 血壓 | |
| heart_rate | varchar | 64 | 是 | 心率 | |
| temperature | varchar | 64 | 是 | 體溫 | |
| sleep_duration | varchar | 64 | 是 | 睡眠時長 | |
| walking_time | varchar | 64 | 是 | 步行時長 | |
| medication | varchar | 64 | 是 | 用藥情況 | |
| publicity_knowledge | text | 0 | 是 | 宣傳知識 | |
| rehabilitation_training | text | 0 | 是 | 康復訓練 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| leave_management | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| leave_management_id | int | 11 | 否 | 主鍵 | 請假管理ID |
| nurse_no | int | 11 | 是 | 護工編號 | |
| name_of_nurse | varchar | 64 | 是 | 護工姓名 | |
| leave_time | date | 0 | 是 | 請假時間 | |
| reason_for_asking_for_leave | text | 0 | 是 | 請假原由 | |
| examine_state | varchar | 16 | 否 | 審核狀態 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| nursing_worker_user | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| nursing_worker_user_id | int | 11 | 否 | 主鍵 | 護工用戶ID |
| nurse_no | varchar | 64 | 否 | 護工編號 | |
| name_of_nurse | varchar | 64 | 是 | 護工姓名 | |
| nursing_worker_gender | varchar | 64 | 是 | 護工性別 | |
| nursing_worker_age | varchar | 64 | 是 | 護工年齡 | |
| examine_state | varchar | 16 | 否 | 審核狀態 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| user_id | int | 11 | 否 | 用戶ID | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| problem_record | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| problem_record_id | int | 11 | 否 | 主鍵 | 問題記錄ID |
| old_man_name | varchar | 64 | 是 | 老人姓名 | |
| nursing_worker_user | int | 11 | 是 | 護工用戶 | |
| problem_description | text | 0 | 是 | 問題描述 | |
| question_content | text | 0 | 是 | 問題內容 | |
| solution | text | 0 | 是 | 解決方案 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
| salary_management | |||||
| 字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
| salary_management_id | int | 11 | 否 | 主鍵 | 薪資管理ID |
| nurse_no | int | 11 | 是 | 護工編號 | |
| name_of_nurse | varchar | 64 | 是 | 護工姓名 | |
| base_salary | int | 11 | 是 | 底薪 | |
| bonus | int | 11 | 是 | 獎金 | |
| five_insurances_and_one_fund | int | 11 | 是 | 五險一金 | |
| deduction_for_leave | int | 11 | 是 | 請假扣費 | |
| deduction_for_absenteeism | int | 11 | 是 | 曠工扣費 | |
| total_deduction | varchar | 64 | 是 | 總計扣費 | |
| net_salary | varchar | 64 | 是 | 實發工資 | |
| issue_date | date | 0 | 是 | 發放日期 | |
| remarks | text | 0 | 是 | 備注 | |
| recommend | int | 11 | 否 | 智能推薦 | |
| create_time | datetime | 0 | 否 | 創建時間 | |
| update_time | timestamp | 0 | 否 | 更新時間 | |
?
系統的登錄窗口是用戶的入口,用戶只有在登錄成功后才可以進入訪問。通過在登錄提交表單,后臺處理判斷是否為合法用戶,進行頁面跳轉,進入系統中去。
登錄合法性判斷過程:用戶輸入賬號和密碼后,系統首先確定輸入輸入數據合法性,然后在login.jsp頁面發送登錄請求,調用src下的mainctrl類的dopost方法來驗證。
用戶登錄模塊的IPO如下所示:
輸入:用戶名和密碼。
處理:
1)檢測用戶輸入的賬號、密碼是否正確及在數據庫已對應存在。
2)從數據庫中提取記錄,并儲存在本地的session中(timeout默認=30min)。
3)根據用戶名,將其顯示在系統首頁上。
輸出:是否成功的信息。
登錄流程圖如下所示。
?
圖5-1登錄流程圖
系統登錄界面如下所示。
?
圖5-2系統登錄界面
用戶登錄的邏輯代碼如下。
public function login()
????{
????????if (Request::isPost()) {
????????????$request = Request::param();
????????????$result = $this->validate($request, $this->validate);
????????????if (true !== $result) {
????????????????// 驗證失敗 輸出錯誤信息
????????????????$data['error'] = 30000;
????????????????$data['message'] = $result;
????????????} else {
????????????????$request['password'] = md5($request['password']);
????????????????$result = $this->model->login($request, $this->table);
????????????????$data = $result;
????????????}
????????} else {
????????????$data['error'] = 30000;
????????????$data['message'] = "field的值不能為空!";
????????}
????????return json_encode($data);
????}
public function login($request=[],$table_name = ''){
????????$username = $request['username'];
????????$password = $request['password'];
????????$bol = $this->where(['username'=>$username])->find();
????????if ($bol){
????????????$password = md5($password);
????????????if ($request['password']==$bol['password']) {
????????????????//添加token信息
????????????????$access_token['create_time'] = date('Y-m-d H:i:s');
????????????????$access_token['update_time'] = date('Y-m-d H:i:s');
$access_token['info'] = json_encode($bol);
????????????????// $access_token['info'] = $bol;
????????????????$access_token['token'] = md5(date('Y-m-d H:i:s'));
????????????????$bol_token = Db::name('AccessToken')->insert($access_token);
????????????????if ($bol_token){
????????????????????$data['obj'] = $bol;
????????????????????$data['obj']['token'] = $access_token['token'];
????????????????????return ['result' => $data];
????????????????}else{
????????????????????return ['error' => ['code' => 5000, 'message' => '登錄失敗,token生成失敗']];
????????????????}
????????????} else {
????????????????return ['error' => ['code' => 5000, 'message' => '登錄失敗,密碼不正確']];
????????????}
????????}else{
????????????return ['error' => ['code' => 5000, 'message' => '登錄失敗,賬號不存在']];
????????}
????}
系統呈現出一種簡潔大方的首頁:界面簡約、鱗次櫛比,用戶能輕車熟路的使用。出于對系統使用群體廣泛的顧慮,應有良好性能的后臺。在系統時間顯示上編寫javascript腳本在導航欄顯示系統的當前日期,首先定義一個數組d存放周一至周日,創建一個獲取時間的對象time后通過該對象的方法獲取年月日,(time.getDay())%7計算得到的結果是數組的下標,通過數組下標就獲取了數組的值,利用字符竄連接把年月日和星期轉換成字符竄,通過document.getElementById("date")獲取標簽后使用innerHTML把該字符串顯示在jsp頁面。
如下圖所示為系統的首頁界面。
?
圖5-3系統首頁界面
其中載入前臺頁面的主要代碼如下。
public function add($request=[],$table_name = '',$table_id = ''){
????????$result = self::allowField(true)->save($request);
????????if ($result) {
????????????return ['result' => 1];
????????} else {
????????????return ['error' => ['code' => 3000, 'message' => '數據添加失敗']];
????????}
????}
此頁面實現普通用戶的注冊,必須注冊登錄后才能使用系統大部分功能,用戶名不允許重復如果重復將會注冊失敗,并彈出相應的提示,通過js實現對輸入的驗證。
用戶注冊流程圖如下所示。
?
圖5-4用戶注冊流程圖
用戶注冊界面如下圖所示。
?
圖5-5用戶注冊界面
用戶注冊關鍵代碼如下所示。
public function register()
????{
????????if (Request::isPost()) {
????????????$request = Request::param();
????????????$request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');
????????????$request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');
????????????$result = $this->validate($request, $this->validate);
????????????if (true !== $result) {
????????????????// 驗證失敗 輸出錯誤信息
????????????????$data['error'] = 30000;
????????????????$data['message'] = $result;
????????????} else {
????????????????$request['password'] = md5($request['password']);
????????????????$result = $this->model->register($request, $this->table);
????????????????$data = $result;
????????????}
????????} else {
????????????$data['error'] = 30000;
????????????$data['message'] = "field的值不能為空!";
????????}
????????return json_encode($data);
????}
public function register($request=[],$table_name = ''){
????????$username = $request['username'];
????????$bol = $this->where(['username'=>$username])->find();
????????if (!$bol){
????????????$result = self::allowField(true)->save($request);
????????????if ($result) {
????????????????return ['result' => 1];
????????????} else {
????????????????return ['error' => ['code' => 3000, 'message' => '注冊失敗']];
????????????}
????????}else{
????????????return ['error' => ['code' => 3000, 'message' => '注冊失敗,賬號已存在']];
????????}
????}
老人賬單錄入過程中,首先使用getmap(id,"xinxi"),通過老人ID得到老人數據,將老人數據賦值給老人賬單,調用CommDAO的insert方法將賬單數據插入賬單表中,最后查看個人歷史老人賬單記錄,可以銷毀歷史賬單數據。
老人賬單入流程圖如下所示。
?
圖5-12老人賬單入流程圖
老人賬單入界面如圖所示。
?
圖5-13老人賬單入界面
賬單管理界面如圖所示。
?
圖5-14賬單管理界面
賬單添加關鍵代碼如下所示。
$obj = $this->where($where)->field($field)->find();
$result = self::allowField(true)->save($request);
$result = $this->where($where)->update($request);
$result = $this->where($where)->delete();
醫護人員提交請假,可以進行新增、查看、修改以及刪除等相應的請假管理操作。當點擊"新增請假"的按鈕時,在請假添加界面進行詳細信息的添加操作。當點擊"查看請假"超級鏈接時,會顯示所選的請假的信息,然后點擊"返回"再返回到其主頁面。
請假提交界面如圖所示。
?
圖5-15請假提交界面
請假管理界面如圖所示。
?
圖5-16請假管理界面
請假添加關鍵代碼如下所示。
public function add($request=[],$table_name = '',$table_id = ''){
????????$result = self::allowField(true)->save($request);
????????if ($result) {
????????????return ['result' => 1];
????????} else {
????????????return ['error' => ['code' => 3000, 'message' => '數據添加失敗']];
????????}
????}
用戶在yhzhgl查看用戶信息,先使用sql語句查詢出所有用戶表的數據,然后調用PageManager.getPages(url,4,sql, request ),返回一個ArrayList的對象,在for循環里,使用jsp得到每個ArrayList對象的數據,在jsp頁面中解析ArrayList對象,得到其各個鍵值對的值。
用戶管理界面如下圖所示。
?
圖5-17用戶管理界面
系統用戶管理關鍵代碼如下所示。
public function del()
????{
????????$request = Request::param();
????????$result = $this->model->del_data($request, $this->table, $this->table_id);
????????$data = $result;
????????return json_encode($data);
????}
用戶點擊登錄填寫賬號信息登錄后,會切換內容為“某某用戶歡迎您”和歷史訂單,并給出注銷鏈接。當用戶登錄成功后會將個人信息保存在session作用域中,點擊自己的用戶名時,會跳轉到個人詳細信息頁面,由后臺通過Freemarker取出session作用域中的用戶信息進行動態渲染,例如,郵箱、電話號碼、用戶名等等。同時頁面上會顯示修改個人信息和修改密碼的按鈕,這時客戶可以修改自己的登錄密碼以保障賬號的安全性,防止被人竊取賬號,通過UserController.java的updatePassword()實現,同時也可以根據自己的個人信息是否變動做出相應的修改,通過updateUserInfo()實現。
密碼修改流程圖如下所示。
?
圖5-19密碼修改流程圖
密碼修改關鍵代碼如下所示。
public function change_password()
????{
????????$accessTokenModel = new AccessTokenModel();
????????$token = Request::header('x-auth-token');
????????if (!empty($token)) {
????????????$result = $accessTokenModel->getToken($token);
????????????if (Request::isPost()) {
????????????????$get = Request::get();
????????????????$keys = array_keys($get);
????????????????$where = [];
????????????????if ($result) {
????????????????????$where[] = ["user_id", '=', $result['user_id']];
????????????????????$i = 0;
????????????????????foreach ($get as $key => $val) {
????????????????????????$where[] = [$keys[$i], '=', $val];
????????????????????????$i++;
????????????????????}
????????????????????$request = Request::post();
????????????????????$request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');
????????????????????$result = $this->validate($request, $this->validate);
$new_password['password'] = $request['password'];
????????????????????if (true !== $result) {
????????????????????????// 驗證失敗 輸出錯誤信息
????????????????????????$data['error'] = 30000;
????????????????????????$data['message'] = $result;
????????????????????} else {
????????????????????????$result = $this->model->change_password($new_password, $this->table, $this->table_id, $where);
????????????????????????$data = $result;
????????????????????}
????????????????} else {
????????????????????$data['error'] = 30000;
????????????????????$data['message'] = "token錯誤或失效,未查詢到用戶數據";
????????????????}
????????????} else {
????????????????$data['error'] = 30000;
????????????????$data['message'] = "field的值不能為空!";
????????????}
????????} else {
????????????$data['error'] = 30000;
????????????$data['message'] = "token的值不能為空!";
????????}
????????return json_encode($data);
????}
添加老人信息時,輸入必填字段后,表現層的LaorenController接受傳過來的老人信息參數,再調用LaorenController類的addLaoren方法,經過LaorenService業務層到LaorenMapper持久層的處理,完成對整個添加老人信息的操作。addLaoren方法也和用戶管理中的addUser方法類似,同時做添加和修改工作。
修改老人信息時,選擇需要修改的老人進行修改,調用LaorenController控制器的editLaoren方法,拿到該老人原本的信息并顯示到頁面,管理員再對需要修改的老人信息字段進行修改,完成后調用addLaoren方法,調用業務層的updateByKey方法,更新數據庫的老人信息表的數據。
老人管理流程圖如下所示。
?
圖5-21老人管理流程圖
老人添加界面如下圖所示。
?
圖5-22老人添加界面
老人查詢界面如下圖所示。
?
圖5-23老人查詢界面
老人信息添加關鍵代碼如下所示。
public function add()
????{
????????if (Request::isPost()) {
????????????$request = Request::param();
????????????$request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');
????????????$request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');
????????????$result = $this->validate($request, $this->validate);
????????????if (true !== $result) {
????????????????// 驗證失敗 輸出錯誤信息
????????????????$data['error'] = 30000;
????????????????$data['message'] = $result;
????????????} else {
if($this->table == 'user'){
$request['password'] = md5($request['password']);
}
$res = $this->add_before($request, $this->table, $this->table_id);
if($res['code'] == 200){
$result = $this->model->add($request, $this->table, $this->table_id);
$this->add_after($this->table);
$data = $result;
}else{
$data['error'] = $res;
}
????????????}
????????} else {
????????????$data['error']['code'] = 30000;
????????????$data['error']['message'] = "field的值不能為空!";
????????}
????????return json_encode($data);
????}
刪除醫護人員時,選擇需要刪除的醫護人員進行刪除,把主鍵的uId傳到YihurenyuanController控制器,再調用控制器的deleteYihurenyuan方法,數據經過YihurenyuanService業務層解析和處理,請求YihurenyuanMapper持久層調用deleteByPrimaryKey方法操作數據庫將醫護人員數據從數據庫中刪除。
查找醫護人員時,輸入需要查找的醫護人員名,調用getData方法獲取所有數據并且進行分頁,把獲取到的所有數據顯示到視圖上,這時候只需要用腳本方法便能快速查找,不涉及對數據庫操作。
醫護人員管理流程圖如下所示。
?
圖5-24醫護人員管理流程圖
醫護人員查詢界面如下圖所示。
?
圖5-25醫護人員查詢界面
醫護人員信息添加關鍵代碼如下所示。
public function get_obj()
????{
????????$request = Request::param();
????????$result = $this->model->get_obj($request, $this->table, $this->table_id, $this->table_id);
????????$data['result'] = $result;
????????return json_encode($data);
????}
用戶選擇醫護人員添加工資記錄,用戶在yihurenyuan_list查看醫護人員,點擊工資,跳轉至gongzi_add.jsp,添加工資記錄則將添加的工資記錄數據封裝在HashMap中,然后調用CommDAO的insert方法將工資記錄內容插入工資記錄表中。
工資管理流程圖如下所示。
?
圖5-26工資管理流程圖
工資添加界面如下圖所示。
?
圖5-27工資添加界面
工資查詢界面如下圖所示。
?
圖5-28工資查詢界面
工資信息添加關鍵代碼如下所示。
public function count()
????{
????????$request = Request::param();
????????$result = $this->model->list_count($request, $this->table, $this->table_id);
????????$data['result'] = $result;
????????return json_encode($data);
????}
在對該系統進行完詳細設計和編碼之后,就要對養老院管理系統的程序進行測試,檢測程序是否運行無誤,反復進行測試和修改,使之最后成為完整的軟件,滿足用戶的需求,實現預期的功能。
在軟件的測試過程中,通常測試人員需要針對不同的功能模塊設計多種測試用例。通過測試用例能夠及時發現代碼業務邏輯上是否與真實的業務邏輯相對應,及時發現代碼上或邏輯上的缺陷,以此來來完善系統,提高軟件產品的質量,使軟件具有良好的用戶體驗。
注冊測試用例表如下所示。
表6-1注冊測試用例
| 測試性能 | 新用戶注冊 | ||
| 用例目的 | 測試系統新用戶個人信息注冊功能的功能和安全性 | ||
| 前提條件 | 進入注冊頁面填寫個人信息 | ||
| 輸入條件 | 預期輸出 | 實際情況 | |
| 各項基本信息輸入不完整 | 不允許注冊,無法點擊注冊按鈕 | 一致 | |
| 填寫已存在的用戶名 | 系統顯示出提示信息,要求重新填寫 | 一致 | |
| 兩次密碼輸入不一致 | 系統顯示出提示信息,要求重新填寫 | 一致 | |
| 填寫的各項信息沒有符合提示的長度和字符要求 | 系統顯示出提示信息,要求重新填寫 | 一致 | |
| 胡亂填寫電話號碼 | 收不到驗證碼 | 一致 | |
| 填寫驗證碼與收到的不一致 | 系統顯示提示信息告知用戶驗證碼錯誤,不予注冊 | 一致 | |
登錄測試用例表如下所示。
表6-2登錄測試用例
| 測試性能 | 用戶或操作員登錄系統 | ||
| 用例目的 | 測試用戶或操作員登錄系統時功能是否正常 | ||
| 前提條件 | 進入用戶登錄頁面或操作員登錄頁面 | ||
| 輸入條件 | 預期輸出 | 實際情況 | |
| 各項信息不予填寫,直接點擊登陸按鈕 | 不允許登錄,提示填寫賬號相關信息 | 一致 | |
| 填寫錯誤的登錄名或密碼后點擊登錄系統 | 提示用戶名或密碼錯誤,要求重新填寫進行登錄 | 一致 | |
| 填寫與驗證碼信息不一致的信息 | 系統顯示出提示信息,表明驗證碼錯誤,要求重新填寫 | 一致 | |
老人賬單測試用例表如下所示。
表6-3老人賬單測試用例
| 測試性能 | 用戶進行賬單老人的操作 | ||
| 用例目的 | 測試用戶進行賬單老人操作時,系統的功能是否正常 | ||
| 前提條件 | 用戶進入老人詳情頁,該老人能夠被賬單 | ||
| 輸入條件 | 預期輸出 | 實際情況 | |
| 用戶未登錄,點擊賬單按鈕 | 跳轉至登錄頁面,提示用戶先進性登錄 | 一致 | |
| 正常的登錄用戶,點擊賬單按鈕 | 系統彈出提示框,提示用戶賬單成功,同時該老人的狀態更改為已賬單狀態 | 一致 | |
老人管理測試用例表如下所示。
表6-4老人管理測試用例
| 測試性能 | 老人相關信息管理功能 | ||
| 用例目的 | 測試系統后臺操作員對老人相關信息進行管理的功能是否正常 | ||
| 前提條件 | 登錄系統后臺進入相關管理頁面 | ||
| 輸入條件 | 預期輸出 | 實際情況 | |
| 普通操作員登錄,點擊進入老人相關信息管理的頁面 | 提示非超級用戶,權限不夠,無法進入相關頁面 | 一致 | |
| 超級操作員登入,刪除某個已被賬單的老人 | 提示該老人刪除失敗 | 一致 | |
| 點擊增加老人按鈕 | 頁面正常跳轉 | 一致 | |
| 增加老人是,填寫已存在的老人編號 | 提示該編號已存在 | 一致 | |
經過對此系統的測試,得出該系統足以滿足用戶日常需求,在功能項目和操作等方面也能滿足操作員對于其他用戶的管理。但是,還有很多功能有待添加,這個系統僅能滿足大部分的需求,還需要對此系統的功能更進一步的完善,這樣使用起來才能更加的完美。
通過養老院管理系統的開發,本人鞏固了之前學過的知識,如今將平時所學到的知識融合在設計中,在設計過程中,做了很多的準備,首先,在數據庫系統的設計過程中,尤其是在數據庫的工作原理、工作特點,對其深刻的討論,與此同時,對于小型站點來說,最好服務器的選擇,其次,利用所學的知識點分析所做的系統,并在此基礎上設計。
目前本系統已經上線,正在試運行階段,用戶反饋良好,基本完成用戶所需,試運行過程中沒有出現阻斷性問題,有一些不足和小問題也及時予以修正,系統上線后,為了保證數據的安全性,對系統進行了備份操作,系統備份是每兩個月備份一次,數據庫備份為每周備份一次,系統部署在租賃的云平臺服務器中。
本次系統上線成功后,得到了用戶的高度認可,但是在功能上和性能上還需做進一步的研究處理,使其有更高的性能和更好的用戶體驗。
系統在以后的升級過程中,需要解決一系列用戶所提出的問題,例如打印過程中如何避免瀏覽器的兼容性問題,大量用戶訪問時,如何保持較高的響應速度,在系統今后的升級過程中將著重解決這些安全性問題。
參考文獻
[1]馮凱.“MySQL數據庫”課程教學中常見問題探析[J].無線互聯科技,2021,18(24):158-159.
[2]陳潔.“MySQL數據庫安全”課程教學方法優化分析[J].無線互聯科技,2021,18(24):160-161.
[3]閆繼正,張雷,張海濤.基于MySQL的空管設備集中監控系統數據庫設計[J].微處理機,2021,42(06):47-51.
[4]路堯,梁艷.基于PHP和MySQL的破壞性地震震例數據庫設計與實現[J].山西地震,2021(04):43-46+50.
[5]安沈昊,于榮歡.基于MySQL的天地一體化網絡結構數據庫構建[J].兵工自動化,2021,40(12):66-70.
[6]趙學作.MySQL數據庫主從數據同步的設置[J].網絡安全和信息化,2021(11):94-97.
[7]宋陽春. 基于圖神經網絡的景點推薦方法研究與應用[D].西安理工大學,2021.DOI:10.27398/d.cnki.gxalu.2021.001104.
[8]左華煜. 個性化旅游推薦方法研究與應用[D].江蘇科技大學,2021.DOI:10.27171/d.cnki.ghdcc.2021.000424.
[9]王丹丹.PHP網站安全及加密技術對策[J].無線互聯科技,2020,17(23):28-29.
[10]張文豪. 基于PHP的通用開發框架研究與實現[D].廣東工業大學,2020.DOI:10.27029/d.cnki.ggdgu.2020.002249.
[11]朱飛,劉曼琳.PHP語言中mysql與mysqli應用淺析[J].數字技術與應用,2020,38(07):38-41.DOI:10.19695/j.cnki.cn12-1369.2020.07.17.
[12]景廣軍,郝墨軒.基于PHP語言開發的站址導航系統[J].信息與電腦(理論版),2020,32(08):88-92.
[13]趙偉. 一種PHP代碼審計技術的研究與實現[D].西安電子科技大學,2020.DOI:10.27389/d.cnki.gxadu.2020.001097.
[14]魏涵碩. 基于LBSN的景點推薦及路線規劃系統研究[D].中央民族大學,2020.DOI:10.27667/d.cnki.gzymu.2020.000787.
[15]王篤朋. 基于景點轉移概率模型的興趣點推薦系統[D].廈門大學,2019.
[16]張舜堯. 基于序列學習的旅游景點推薦研究[D].桂林電子科技大學,2019.
[17]黃昌平.基于php語言分析計算機編程的發展前景[J].數碼世界,2019(04):46.
[18]QingHai Yin. Research and Implementation of Network Examination System Based on PHP Language[J]. Journal of Physics: Conference Series,2018,1087(6).
[19]陶健. 個性化景點路線推薦系統設計與實現[D].廈門大學,2018.
[20]Rotmianto Mohamad,Wahyudi Eko. Developing Plugin e-DDC as an Additional Application for Senayan Library Management System with PHP Language Programming and MySQL Database[J]. Record and Library Journal,2018,2(1).
致謝
伴隨著設計的完成,大學生涯也隨之即將結束。大學期間是我最珍惜的時光,大學時光中學會了很多,也成長了很多,這段時光中每一段回憶都刻在腦海中。感謝一起學習,一起成長同學們,和成長過程悉心教導的老師們,非常感激有你們的陪伴。
首先感謝我的指導老師,設計的完成離不開老師的一系列指導。在畢業設計的完成過程中,老師給出了很多中肯的建議,正是由于老師一絲不茍的工作態度,我的設計才能順利的完成。
最后,感謝在大學生涯中每一位教導我的老師,是你們教給了我豐富的知識,更教會了我遇到問題時,如何去應對并解決。謝謝你們的幫助與支持。
免費領取本源代碼,請關注點贊+私信
總結
以上是生活随笔為你收集整理的(附源码)php养老院管理系统 毕业设计 202026的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 公安警务指挥一张图三维电子沙盘可视化地理
- 下一篇: socket请求ip遇到的问题