版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于WEB的企業(yè)員工管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)目錄TOC\o"1-3"\h\言 IV頁41頁2相關(guān)技術(shù)概述2.2SSM框架后臺(tái)管理系統(tǒng)以SSM為框架,結(jié)合Spring、前端控制器(SpringMVC)和MyBatis開發(fā)而成。SpringMVC[11]的職責(zé)是處理頁面請(qǐng)求并管理視圖,而MyBatis則負(fù)責(zé)數(shù)據(jù)庫交互和數(shù)據(jù)對(duì)象持久化操作。Spring是一個(gè)大型容器,負(fù)責(zé)管理組件層。SSM框架的優(yōu)點(diǎn)包括強(qiáng)大的擴(kuò)展性、良好的可維護(hù)性以及高度可靠性,因此選擇SSM框架進(jìn)行開發(fā)[16]。2.3B/S架構(gòu)B/S架構(gòu)是一種網(wǎng)絡(luò)結(jié)構(gòu)模式,也被稱為瀏覽器/服務(wù)器模式。該系統(tǒng)架構(gòu)具有共享性和跨平臺(tái)的特性,用戶不需要安裝客戶端軟件,只需要在百度、谷歌、Firefox等瀏覽器中接入互聯(lián)網(wǎng),即可通過該系統(tǒng)進(jìn)行網(wǎng)頁操作[17]。使用B/S架構(gòu)可以有效地確保服務(wù)器數(shù)據(jù)庫的數(shù)據(jù)安全,因?yàn)樗軌蛱峁?shù)據(jù)平臺(tái)的保護(hù),并管理訪問權(quán)限。數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫服務(wù)器中,因此可以保證數(shù)據(jù)的一致性。2.4Java語言Java語言是一種靜態(tài)編程語言,具有許多優(yōu)點(diǎn),如:編程工作比較簡(jiǎn)單,編輯分工比較明確,可擴(kuò)展性強(qiáng),應(yīng)用范圍廣,不僅如此,Java技術(shù)還具有面向?qū)ο?、?dú)立平臺(tái)、多線程、安全性、靈活性等特點(diǎn),因此受到每個(gè)用戶的喜愛而被廣泛使用[18]。2.5MySQL數(shù)據(jù)庫本系統(tǒng)使用的是MySQL數(shù)據(jù)庫,因?yàn)榇蟛糠种行W(xué)企業(yè)皆使用MySQL數(shù)據(jù)庫,因?yàn)樗鼘?duì)于其他大型數(shù)據(jù)庫來說具有較低的開發(fā)成本、占用CPU內(nèi)存小、運(yùn)行處理數(shù)據(jù)速度快的優(yōu)勢(shì),并且支持多種編程語言。此外,MySQL數(shù)據(jù)庫是開源的。MySQL數(shù)據(jù)庫功能豐富,其中包括選擇、創(chuàng)建、刪除數(shù)據(jù)庫,以及添加、刪除、檢查和修改數(shù)據(jù)庫表等操作[19]。3系統(tǒng)的需求分析3.1系統(tǒng)可行性可行性分析是系統(tǒng)需求分析不可或缺的環(huán)節(jié),它在項(xiàng)目開發(fā)中扮演著重要的角色??尚行苑治鰹楹罄m(xù)的系統(tǒng)開發(fā)奠定了基礎(chǔ)。通過可行性分析,早期確定項(xiàng)目可能面臨的問題,規(guī)避潛在的風(fēng)險(xiǎn),從而避免花費(fèi)大量的人力、時(shí)間和資金。在項(xiàng)目實(shí)施過程中,技術(shù)、經(jīng)濟(jì)和時(shí)間等方面可能會(huì)出現(xiàn)各種問題。因此,在這次分析中,將分別探討這三個(gè)方向。(1)技術(shù)可行性方面,根據(jù)在校期間老師教我們的數(shù)據(jù)庫、開發(fā)語言等相關(guān)課程以及自己學(xué)習(xí)所掌握的技術(shù),本次畢業(yè)設(shè)計(jì)所用的技術(shù)都是開源的技術(shù)和框架。還可通過在老師推薦的網(wǎng)站上查找相關(guān)的開源代碼和學(xué)習(xí)資源,因此技術(shù)可行性是很高的。(2)時(shí)間可行性方面,本企業(yè)員工管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)需要耗費(fèi)幾個(gè)個(gè)月的時(shí)間,可以滿足畢業(yè)設(shè)計(jì)完成的截止期限。因?yàn)轫?xiàng)目實(shí)施的時(shí)間線相對(duì)較長,所以需要提前確定各階段的時(shí)間節(jié)點(diǎn),合理安排開發(fā)進(jìn)度,盡可能地避免出現(xiàn)時(shí)間延誤等問題。(3)經(jīng)濟(jì)可行性方面,本次畢業(yè)設(shè)計(jì)所涉及的技術(shù)框架都是輕量級(jí)、開源的,相對(duì)較為經(jīng)濟(jì)實(shí)用。此外,在資源方面,可以借鑒已有的研究成果和技術(shù)文獻(xiàn),避免重新造輪子。3.2功能需求分析經(jīng)過參考他人論文,自己構(gòu)思,并梳理企業(yè)員工管理系統(tǒng)業(yè)務(wù)流程如圖3.1所示:圖3-1企業(yè)員工管理系統(tǒng)業(yè)務(wù)流程圖3.2.1后臺(tái)管理員功能需求分析后臺(tái)頁面主要用于管理員對(duì)系統(tǒng)進(jìn)行管理。(1)用戶管理:在用戶管理中,系統(tǒng)管理員可以通過此功能新增員工信息,修改員工信息,刪除員工信息,查看企業(yè)的組織架構(gòu)、導(dǎo)入、導(dǎo)出用戶信息、重置密碼、分配角色等操作。(2)角色管理:在角色管理中,系統(tǒng)管理員可以通過此功能新增角色,修改角色信息,刪除角色信息,分配角色權(quán)限,分配用戶等操作。(3)菜單管理:在菜單管理中,系統(tǒng)管理員可以通過此功能新增菜單、修改菜單、刪除菜單等操作。(4)部門管理:在部門管理中,系統(tǒng)管理員可以通過此功能新增部門信息、修改部門信息、刪除部門信息等操作。(5)崗位管理:在崗位管理中,系統(tǒng)管理員可以通過此功能新增崗位、修改崗位、刪除崗位等操作。(6)通知管理:在通知管理中,系統(tǒng)管理員可以通過此功能對(duì)所有員工發(fā)布通知或公告。(7)日志管理:在日志管理中,分為操作日志及登陸日志。系統(tǒng)管理員可以通過操作日志管理頁面來查看員工的操作日志,比如訪問什么頁面,發(fā)送了什么請(qǐng)求;系統(tǒng)管理員可以通過登陸日志管理頁面來查看員工的登陸與登出的情況。(8)個(gè)人中心:點(diǎn)擊頭像可進(jìn)入個(gè)人中心,在個(gè)人中心頁面進(jìn)行修改個(gè)人信息以及更換頭像。3.2.2HR員工端功能需求分析HR員工登陸該系統(tǒng)主要是使用該系統(tǒng),不同的員工有不同的權(quán)限,以下就HR員工來說明。HR員工擁有角色管理、部門管理、崗位管理、通知管理等模塊權(quán)限。(1)用戶管理:在用戶管理中,系統(tǒng)管理員可以通過此功能新增員工信息,修改員工信息,刪除員工信息,查看企業(yè)的組織架構(gòu)、導(dǎo)入、導(dǎo)出用戶信息、重置密碼、分配角色等操作。(2)部門管理:在部門管理中,可以通過此功能新增部門、修改部門、刪除部門等操作。(3)崗位管理:在崗位管理中,可以通過此功能新增崗位、修改崗位、刪除崗位等操作。(4)通知管理:在通知管理中,可以通過此功能對(duì)所有員工發(fā)布通知或公告。(5)個(gè)人中心:點(diǎn)擊頭像可進(jìn)入個(gè)人中心,在個(gè)人中心頁面進(jìn)行修改個(gè)人信息以及更換頭像。3.3系統(tǒng)非功能性需求要求系統(tǒng)按照整體性能和功能性需求補(bǔ)充非功能性需求,以確保系統(tǒng)能夠高效運(yùn)行。這些需求可作為軟件開發(fā)中的“約束”,全面考慮系統(tǒng)的改進(jìn)方向。在本課題中,企業(yè)員工管理系統(tǒng)的非功能性要求如下:1.性能需求:代碼要按Java編程的規(guī)范寫,循環(huán)不能出現(xiàn)死循環(huán),去除無用代碼;要可以處理大量用戶的請(qǐng)求,并且需要保證系統(tǒng)響應(yīng)的時(shí)間短。2.安全性需求:各個(gè)用戶的的角色應(yīng)該設(shè)定明確,管理員應(yīng)對(duì)角色權(quán)限進(jìn)行管理,以確保員工使用的功能符合其權(quán)限。3.觀感需求:系統(tǒng)注重用戶界面和交互,采用簡(jiǎn)潔大方的設(shè)計(jì)。4系統(tǒng)詳細(xì)設(shè)計(jì)4.1系統(tǒng)功能設(shè)計(jì)通過系統(tǒng)需求分析,該系統(tǒng)是基于B/S模式開發(fā)的,其中主要分為后臺(tái)管理員和HR員工端,其中管理員包括所有模塊權(quán)限,HR員工包括用戶管理模塊、崗位管理模塊、通知公告管理模塊、個(gè)人中心模塊。系統(tǒng)功能模塊圖如下圖4-1所示(管理端和HR員工端使用相同頁面體現(xiàn),用權(quán)限區(qū)分)。:圖4.1系統(tǒng)功能模塊圖4.2系統(tǒng)總體設(shè)計(jì)本系統(tǒng)實(shí)現(xiàn)的主要功能模塊包括:用戶管理模塊、角色管理模塊、菜單管理模塊、崗位管理模塊、通知管理模塊、日志管理模塊、個(gè)人中心模塊;系統(tǒng)的運(yùn)轉(zhuǎn)簡(jiǎn)單且功能較為完善,對(duì)于員工較易上手操作。整個(gè)系統(tǒng)的基本業(yè)務(wù)流程走向如下圖4-2所示。圖4.2系統(tǒng)的基本業(yè)務(wù)流程走向圖4.3數(shù)據(jù)流圖系統(tǒng)的數(shù)據(jù)處理流程能夠被清晰地展現(xiàn)出來,從而幫助我們更好地理解系統(tǒng)運(yùn)作的方式和機(jī)制。因此,對(duì)于系統(tǒng)來說,數(shù)據(jù)流圖具有不可替代的重要性。通過制作精細(xì)的數(shù)據(jù)流圖,能夠幫助我們更加深入地了解系統(tǒng)數(shù)據(jù)的處理過程,從而提高系統(tǒng)的有效性和效率。我們不僅可以了解到數(shù)據(jù)在退費(fèi)審批系統(tǒng)中流動(dòng)和被處理的邏輯過程,同時(shí)極大地幫助用戶了解該系統(tǒng)的基本運(yùn)行情況。數(shù)據(jù)流圖如圖4.3所示。圖4.3系統(tǒng)數(shù)據(jù)流圖4.4數(shù)據(jù)庫的設(shè)計(jì)4.4.1數(shù)據(jù)庫E-R圖設(shè)計(jì)本系統(tǒng)在經(jīng)過邏輯結(jié)構(gòu)設(shè)計(jì)之后,形成系統(tǒng)的E-R圖,企業(yè)員工管理系統(tǒng)的全局E-R模型如圖4.4所示:圖4.4全局系統(tǒng)E-R模型4.4.2數(shù)據(jù)庫表的設(shè)計(jì)數(shù)據(jù)庫表設(shè)計(jì)主要是為了詳細(xì)說明數(shù)據(jù)表的作用、重要性以及數(shù)據(jù)表的組成。用戶信息表sys_user:該表用于存儲(chǔ)用戶個(gè)人信息。該表擁有17個(gè)字段,主要功能是記錄用戶的個(gè)人信息。如表4.1所示:表4.1用戶信息表sys_user字段名稱類型說明user_idbigint主鍵,用戶iddept_idbigint部門idlogin_namevarchar登陸賬號(hào)user_namevarchar用戶昵稱user_typevarchar用戶類型(00系統(tǒng)用戶01注冊(cè)用戶)emailvarchar用戶郵箱phonenumbervarchar用戶手機(jī)號(hào)碼sexchar用戶性別avatarvarchar頭像路徑passwordvarchar密碼saltvarchar鹽加密statuschar帳號(hào)狀態(tài)(0正常1停用)del_flagchar刪除標(biāo)志(0代表存在2代表刪除)login_ipvarchar最后登陸iplogin_datedatetime登陸時(shí)間pwd_update_datedatetime密碼修改時(shí)間create_byvarchar創(chuàng)建者角色信息表sys_role,該表用于存儲(chǔ)角色信息。擁有12個(gè)字段,主要功能是記錄角色信息。如表4.2所示:表4.2角色信息表sys_role字段名稱類型說明role_idbigint角色idrole_namevarchar角色名稱role_keyvarchar角色權(quán)限字符串role_sortint顯示順序data_scopechar數(shù)據(jù)范圍(1:全部數(shù)據(jù)權(quán)限2:自定數(shù)據(jù)權(quán)限3:本部門數(shù)據(jù)權(quán)限4:本部門及以下數(shù)據(jù)權(quán)限)statuschar角色狀態(tài)(0正常1停用)del_flagchar刪除標(biāo)志(0代表存在2代表刪除)create_byvarchar創(chuàng)建者create_timedatetime創(chuàng)建時(shí)間update_byvarchar修改者update_timedatetime修改時(shí)間remarkvarchar備注角色和菜單關(guān)聯(lián)表sys_role_menu:該表主要用于存儲(chǔ)角色和菜單之間關(guān)系的信息。擁有2個(gè)字段,如表4.3所示:表4.3角色和菜單關(guān)聯(lián)表sys_role_menu字段名稱類型說明role_idbigint主鍵角色idmenu_idbigint菜單id角色和部門關(guān)聯(lián)表sys_role_dept:該表用于存儲(chǔ)角色部門之間關(guān)系的信息,擁有2個(gè)字段,如表4.4所示:表4.4角色和部門關(guān)聯(lián)表sys_role_dept字段名稱類型說明role_idbigint主鍵角色iddept_idbigint部門id(5)部門表sys_dept:該表用于存儲(chǔ)部門信息。擁有14個(gè)字段,如表4.5所示:表4.5部門表sys_dept字段名稱類型說明dept_idbigint主鍵,部門idparent_idbigint父部門idancestorsvarchar祖級(jí)列表dept_namevarchar部門名稱order_numint顯示順序leadervarchar負(fù)責(zé)人phonevarchar手機(jī)號(hào)emailvarchar郵箱statuschar角色狀態(tài)(0正常1停用)del_flagchar刪除標(biāo)志(0代表存在2代表刪除)create_byvarchar創(chuàng)建者create_timedatetime創(chuàng)建時(shí)間update_byvarchar修改者update_timedatetime修改時(shí)間(6)菜單權(quán)限表sys_menu:用于存儲(chǔ)菜單權(quán)限信息。如表4.6所示:表4.6菜單權(quán)限表sys_menu字段名稱類型說明menu_idbigint主鍵,菜單idmenu_namevarchar菜單名稱parent_idbigint父菜單idorder_numint顯示順序urlvarchar請(qǐng)求地址targetvarchar打開方式menu_typechar菜單類型(M目錄C菜單F按鈕)visiblechar菜單狀態(tài)(0顯示1隱藏)is_refreshchar是否刷新(0刷新1不刷新)permsvarchar權(quán)限標(biāo)識(shí)iconvarchar菜單圖標(biāo)create_byvarchar創(chuàng)建者create_timedatetime創(chuàng)建時(shí)間update_byvarchar修改者update_timedatetime修改時(shí)間remarkvarchar備注通知公告表sys_notice:用于存儲(chǔ)通知公告信息。如表4.7所示:表4.7通知公告表sys_notice字段名稱類型說明notice_idbigint主鍵,公告idnotice_titlevarchar公告標(biāo)題notice_typechar公告類型(1通知2公告)notice_contentlongblob公告內(nèi)容statuschar公告狀態(tài)(0正常1關(guān)閉)create_byvarchar創(chuàng)建者create_timedatetime創(chuàng)建時(shí)間update_byvarchar修改者update_timedatetime修改時(shí)間remarkvarchar備注崗位信息表sys_post:用于存儲(chǔ)崗位信息,如表4.8所示:表4.8崗位信息表sys_post字段名稱類型說明post_idbigint主鍵,崗位idpost_codevarchar崗位編碼post_namevarchar崗位名稱post_sortint顯示順序statuschar狀態(tài)(0正常1關(guān)閉)create_byvarchar創(chuàng)建者create_timedatetime創(chuàng)建時(shí)間update_byvarchar修改者update_timedatetime修改時(shí)間remarkvarchar備注5系統(tǒng)的實(shí)現(xiàn)5.1系統(tǒng)開發(fā)與運(yùn)行環(huán)境本系統(tǒng)的開發(fā)環(huán)境如表5-1所示。表5-1系統(tǒng)開發(fā)環(huán)境參數(shù)內(nèi)容開發(fā)工具IDEA服務(wù)器Tomcat8.0數(shù)據(jù)庫MySQL操作系統(tǒng)Windows105.2后臺(tái)管理各模塊的實(shí)現(xiàn)5.2.1后臺(tái)登錄模塊管理員端為了進(jìn)一步保障運(yùn)行的安全與隱私,用戶必須先進(jìn)行登錄方可進(jìn)入系統(tǒng)進(jìn)行下一步操作。不同賬號(hào)有不同的權(quán)限,登陸后,不同權(quán)限的用戶會(huì)獲得不同的權(quán)限管理模塊,后臺(tái)管理系統(tǒng)管理端和員工端統(tǒng)一使用該頁面,主要用于管理者對(duì)員工的權(quán)限和數(shù)據(jù)進(jìn)行管理,包括用戶管理、角色管理、菜單管理、部門管理、崗位管理、通知公告、日志管理等。后臺(tái)管理管理員的登錄界面如圖5.1所示。圖5.1后臺(tái)登錄界面登陸成功后跳轉(zhuǎn)首頁,管理員端擁有系統(tǒng)所有模塊權(quán)限,如圖5.2所示圖5.2管理員端首頁HR員工端登陸成功后跳轉(zhuǎn)首頁,HR員工端擁有系統(tǒng)的用戶管理、部門管理、崗位管理、通知管理模塊權(quán)限,當(dāng)管理員創(chuàng)建HR員工用戶時(shí),就已經(jīng)分配了相對(duì)應(yīng)的菜單權(quán)限。當(dāng)新員工入職時(shí),HR員工端可以給新員工創(chuàng)建新用戶,創(chuàng)建之后也可以對(duì)應(yīng)的賦予普通員工端的菜單權(quán)限以及角色信息。如圖5.3所示圖5.3HR端首頁前端登陸校驗(yàn)代碼:以下是登陸頁前端代碼,使用ajax傳遞頁面中填寫的值到后臺(tái)。$.ajax({type:"post",url:ctx+"login",data:{"username":username,//獲取頁面用戶嗎"password":password,//獲取頁面密碼"validateCode":validateCode,//獲取頁面驗(yàn)證碼},}});后臺(tái)登陸代碼:以下代碼是登陸操作,當(dāng)用戶點(diǎn)擊登陸,前端數(shù)據(jù)打包傳入后臺(tái),后臺(tái)用MdelMap來接收前端數(shù)據(jù),用if條件判斷是否登陸。@GetMapping("/loginToPage")publicStringloginToPage(HttpServletRequestreq,HttpServletResponserep,ModelMapoop){//如果是Ajax請(qǐng)求,返回Json字符串。if(ServletUtils.isAjaxRequest(req)){returnServletUtils.renderString(rep,"{\"code\":\"11\",\"msg\":\"請(qǐng)重新登錄\"}");}return"loginToPage";}5.2.2用戶管理模塊管理員端用戶管理模塊是本系統(tǒng)使用頻率最高的一個(gè)模塊,本頁面是企業(yè)員工管理系統(tǒng)用戶管理模塊,主要用于顯示所有用戶、可查看用戶詳細(xì)信息,增加或刪除用戶。管理員在此處可以創(chuàng)建HR賬戶,公司新員工入職統(tǒng)一有HR賬號(hào)來管理,當(dāng)HR員工登陸時(shí)也可再次頁面進(jìn)行添加新員工的信息。如圖5.4所示。圖5.4用戶管理模塊運(yùn)行結(jié)果圖新增一個(gè)用戶:點(diǎn)擊新增按鈕如圖5.4.1所示:圖5.4.1新增用戶跳轉(zhuǎn)新增頁,該頁面必輸用戶名稱、登陸賬號(hào)、登陸密碼,其他字段均為可選字段,如圖5.4.2所示:圖5.4.2新增頁面新增用戶填寫用戶信息,填寫完之后點(diǎn)擊保存,如顯示操作成功,則跳轉(zhuǎn)到用戶管理的查詢頁面,如圖5.4.3所示:圖5.4.3新增頁面新增用戶HR端當(dāng)HR用戶創(chuàng)建之后,有新員工入職時(shí),HR可以給新員工分配賬號(hào),將收集的新員工信息包括姓名、部門和工號(hào)等錄入到系統(tǒng)里,新員工將可以使用他的用戶名進(jìn)行登陸,來瀏覽公司的員工管理系統(tǒng)。如圖5.4.4所示:圖5.4.4HR員工端新增員工5.2.3角色管理模塊本頁面是企業(yè)員工管理系統(tǒng)的角色管理頁面,管理員登錄成功后可對(duì)角色進(jìn)行管理。角色管理有且只有管理員賬號(hào)可以管理,將公司的所有角色創(chuàng)建好后,及時(shí)的劃分到對(duì)應(yīng)的用戶上。如圖5.5所示。圖5.5角色管理頁面運(yùn)行結(jié)果圖前端分配用戶代碼:以下是分配用戶前端代碼,在前端list頁面中,每行數(shù)據(jù)都有對(duì)應(yīng)的操作按鈕,此代碼對(duì)應(yīng)分配用戶js代碼,將html代碼push到表格中統(tǒng)一生成。formatter:function(value,row,index){if(row.roleId!=1){//設(shè)置more集合,將前端代碼push到該集合中varmore=[];more.push("<aclass='btnbtn-defaultbtn-xs"+editFlag+"'href='javascript:void(0)'onclick='authUser("+row.roleId+")'><iclass='fafa-user'></i>分配用戶</a>");}else{return"";}}后臺(tái)分配用戶代碼:以下代碼是后臺(tái)處理分配用戶的方法,首先if條件判斷角色名稱、角色權(quán)限是否存在,其次將用戶登陸名獲取存到role對(duì)象中,最后調(diào)用roleService服務(wù)中的insertRole方法并放回?cái)?shù)據(jù)到前端。publicAjaxResultaddSave(@ValidatedSysRolerole){if(!roleService.checkRoleNameUnique(role))//檢查角色名稱是否重復(fù){returnerror("新增角色'"+role.getRName()+"'失敗,角色名稱已存在");}elseif(!roleService.checkRoleKeyUnique(role)){//檢查角色權(quán)限是否重復(fù)returnerror("新增角色'"+role.getRName()+"'失敗,角色權(quán)限已存在");}role.setCreateBy(getLoginName());//設(shè)置創(chuàng)建者,用getLoginName()獲取用戶登陸名returntoAjax(roleService.insertRole(role));//調(diào)用服務(wù)獲取插入角色,Ajax傳回給前端顯示}5.2.4菜單管理模塊本頁面是企業(yè)員工管理系統(tǒng)的菜單管理頁面,管理員通過登陸頁登陸成功后,可查看到所有已存在的菜單信息,并可在此菜單模塊進(jìn)行添加或修改、刪除操作。如圖5-6所示。圖5.6菜單管理頁面運(yùn)行結(jié)果圖前端新增菜單代碼:以下代碼是新增頁菜單名稱文本輸入框代碼。<divclass="form-group"><labelclass="col-sm-3control-labelis-required">菜單名稱:</label><divclass="col-sm-8"><inputclass="form-control"type="text"name="menuName"id="menuName"required></div></div>后臺(tái)新增菜單代碼:以下代碼是新增按鈕后臺(tái)處理方法,首先if條件先判斷菜單是否存在,然后調(diào)用menuService服務(wù)里的inserMenu方法,最終通過toAjax傳回前端。publicAjaxResultaddSave(@ValidatedSysMenumenu){if(!menuService.checkMenuNameUnique(menu)){returnerror("新增菜單'"+menu.getMenuName()+"'失敗,菜單名稱已存在");}//調(diào)用checkMenuNameUnique方法校驗(yàn)是否重名menu.setCreateBy(getLoginName());//設(shè)置創(chuàng)建者,用getLoginName()獲取用戶登陸名returntoAjax(menuService.insertMenu(menu));}//調(diào)用服務(wù)獲取插入菜單,Ajax傳回給前端顯示5.2.5部門管理模塊管理員端本頁面是企業(yè)員工管理系統(tǒng)的部門管理頁面,管理員具有系統(tǒng)功能的所有權(quán)限,可以對(duì)系統(tǒng)進(jìn)行所有模塊的操作。管理員登錄成功后即進(jìn)入以下操作界面,可查看、新增、修改、刪除部門信息。如圖5.7所示。圖5.7部門管理頁面運(yùn)行結(jié)果圖HR員工端公司分為很多個(gè)不同的部門,HR可結(jié)合實(shí)際需要靈活修改部門結(jié)構(gòu)。如公司需要增加新的部門或者取消某一些部門,HR便可在此頁面進(jìn)行新增或刪除部門操作。例如在長沙分公司添加開發(fā)部如圖5.8-5.9所示:圖5.8新增頁面圖5.9新增后查詢頁面5.2.6崗位管理模塊管理員端本頁面是企業(yè)員工管理系統(tǒng)中崗位管理頁面,崗位動(dòng)態(tài)大致能體現(xiàn)出一個(gè)企業(yè)的結(jié)構(gòu)以及工作類型需要。管理員登錄成功后可添加、刪除、修改和查詢崗位信息。 如圖5-10所示。圖5.10崗位管理頁面運(yùn)行結(jié)果圖HR員工端公司規(guī)模隨著時(shí)代的發(fā)展會(huì)不斷壯大,為了適應(yīng)管理需要,若公司即將拓展業(yè)務(wù),需要發(fā)展新部門時(shí),相對(duì)應(yīng)的會(huì)產(chǎn)生有新的崗位,HR員工可在該頁面對(duì)崗位進(jìn)行新增、刪除、修改等操作,如圖5.11-5.12所示。圖5.11新增崗位圖5.12新增后放回查詢頁 5.2.7通知公告管理模塊 管理員端本頁面是企業(yè)員工管理系統(tǒng)后臺(tái)管理系統(tǒng)中通知公告管理頁面,管理員登陸成功后可在后臺(tái)進(jìn)行通知公告的發(fā)布,可實(shí)現(xiàn)增加、修改、刪除等功能操作,重新編輯公告或通知操作。如此以來,使用者即可及時(shí)的了解相關(guān)通知公告。如圖5.7所示。圖5.7管理員端通知公告頁面運(yùn)行結(jié)果圖 HR員工端HR員工擁有編輯、查看、新增權(quán)限,當(dāng)員工想查看通知公告是否與自己有關(guān),可通過導(dǎo)航條選擇通知公告進(jìn)行條件篩查,此模塊就方便了員工及時(shí)了解企業(yè)相關(guān)通知公告,更好的安排工作。如圖5.8所示。圖5.7HR員工端通知公告頁面 5.2.8日志公告管理模塊本頁面是企業(yè)員工管理系統(tǒng)后臺(tái)管理系統(tǒng)中日志管理頁面,管理員登陸成功后可在此查看、導(dǎo)出操作日志、登陸日志。如圖5-8,5-9所示。圖5.8日志管理操作日志頁面運(yùn)行結(jié)果圖圖5.9日志管理登陸日志頁面運(yùn)行結(jié)果圖后臺(tái)查看日志代碼:以下代碼是先調(diào)用startPage()分頁方法,再通過operLogService去調(diào)用selectOperLogList()方法進(jìn)行數(shù)據(jù)庫操作,最終調(diào)用getDataTable()方法,展示到前端。publicTableDataInfolist(SysOperLogoperLog){startPage();//分頁查詢List<SysOperLog>list=operLogService.selectOperLogList(operLog);//調(diào)用服務(wù)去查詢list列表returngetDataTable(list);}//調(diào)用getDataTable()方法后臺(tái)插入日志代碼:以下代碼是獲取當(dāng)前用戶信息,new一個(gè)SysOperLog對(duì)象,將日志狀態(tài)、請(qǐng)求地址、URI傳入到對(duì)象中,打包傳入服務(wù)中進(jìn)行數(shù)據(jù)庫操作。SysUsercurrentUser=ShiroUtils.getSysUser();//獲取當(dāng)前的用戶SysOperLogoperLog=newSysOperLog();//new一個(gè)對(duì)象存放日志數(shù)據(jù)operLog.setStatus(BusinessStatus.SUCCESS.ordinal());//設(shè)置日志狀態(tài)Stringip=ShiroUtils.getIp();//獲取請(qǐng)求的地址operLog.setOperIp(ip);//將獲取的IP地址、URI傳入operLog對(duì)象operLog.setOperUrl(StringUtils.substring(ServletUtils.getRequest().getRequestURI(),0,255));operLog.setRequestMethod(ServletUtils.getRequest().getMethod());getControllerMethodDescription(joinPoint,controllerLog,operLog,jsonResult);//處理設(shè)置注解上的參數(shù)6測(cè)試與分析6.1測(cè)試環(huán)境本系統(tǒng)的測(cè)試環(huán)境參數(shù)如表6-1所示。表6-1環(huán)境參數(shù)參數(shù)內(nèi)容服務(wù)器系統(tǒng)平臺(tái)Windows10X64數(shù)據(jù)庫管理系統(tǒng)MySQL服務(wù)器軟件ApacheTomcat8.0瀏覽客戶端Chrome6.2測(cè)試方法對(duì)軟件進(jìn)行測(cè)試是確保軟件質(zhì)量的重要步驟,它涉及軟件需求分析、設(shè)計(jì)規(guī)格和編碼的終審。近年來,隨著經(jīng)濟(jì)全球化中互聯(lián)網(wǎng)科學(xué)技術(shù)的快速發(fā)展,各種各樣的系統(tǒng)產(chǎn)品逐漸出現(xiàn),改變了人們的生活方式,人們對(duì)系統(tǒng)產(chǎn)品的質(zhì)量和性能要求也在不斷提高。但是由于系統(tǒng)質(zhì)量參差不齊,在系統(tǒng)的使用中,經(jīng)常會(huì)遇到各種各樣的問題,阻礙用戶的操作和處理,因此有必要反復(fù)的測(cè)試系統(tǒng)。黑盒測(cè)試可以驗(yàn)證系統(tǒng)是否能夠按照客戶的要求正常運(yùn)行,并且能夠處理各種輸入數(shù)據(jù),以達(dá)到預(yù)期的使用效果。白盒測(cè)試的核心在于對(duì)程序代碼邏輯的檢測(cè),重點(diǎn)集中于后臺(tái)程序。這種測(cè)試方法通過深入分析程序的內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)細(xì)節(jié),來發(fā)現(xiàn)潛在的程序漏洞和錯(cuò)誤,檢查代碼是否完整、異常情況是否得到處理、算法是否正確等,是一種基于代碼的測(cè)試方法。通過白盒測(cè)試,可以找出程序中的潛在問題和錯(cuò)誤,提高代碼的質(zhì)量和健壯性。它通過檢查系統(tǒng)內(nèi)部的邏輯結(jié)構(gòu)來覆蓋系統(tǒng)中的邏輯路徑,而不是使用用戶界面。黑盒測(cè)試不能完全取代白盒測(cè)試,它和白盒測(cè)試是兩種互相依存的測(cè)試方法。黑盒測(cè)試能夠檢測(cè)出在白盒測(cè)試之后較難發(fā)現(xiàn)的錯(cuò)誤[23]。它只需根據(jù)需求規(guī)范檢查程序功能是否符合要求,而不考慮程序內(nèi)部的結(jié)構(gòu)。6.3系統(tǒng)測(cè)試內(nèi)容及用例6.3.1測(cè)試內(nèi)容對(duì)本系統(tǒng)的測(cè)試主要從以下幾方面入手:(1)功能測(cè)試測(cè)試是為了檢查系統(tǒng)的功能是否流程正確,而功能測(cè)試則是為了檢查系統(tǒng)是否能夠在實(shí)際應(yīng)用中發(fā)揮出它的作用。(2)壓力測(cè)試和性能測(cè)試測(cè)試系統(tǒng)是否滿足預(yù)期設(shè)計(jì)目標(biāo),在期望的負(fù)載下是否運(yùn)行良好,測(cè)試系統(tǒng)性能的質(zhì)量。(3)安全測(cè)試整個(gè)系統(tǒng)能否在任何環(huán)境下安全運(yùn)行,保護(hù)系統(tǒng)的所有數(shù)據(jù)不受各種因素的干擾。6.3.2測(cè)試用例后臺(tái)用戶登錄用例詳細(xì)說明(1)測(cè)試環(huán)境:JDK1.8、IDEA、Tomcat8、谷歌瀏覽器;員工進(jìn)入該系統(tǒng)登陸頁面,輸入用戶名、密碼、驗(yàn)證碼信息,系統(tǒng)會(huì)對(duì)其輸入的信息進(jìn)行判斷,如用戶名、密碼、驗(yàn)證碼都通過驗(yàn)證后可進(jìn)入到系統(tǒng)首頁,方可使用系統(tǒng)的所有功能,用戶登錄的測(cè)試用例說明如表6.2所示:表6.2用戶登錄用例說明用例名稱用戶登錄測(cè)試項(xiàng)(功能點(diǎn))用戶登錄輸入說明輸入用戶信息,點(diǎn)擊”登錄”按鈕輸出說明如果用戶名不存在,提示用戶名不存在;如果用戶名與密碼不匹配提示用戶名或密碼錯(cuò)誤;如果驗(yàn)證碼錯(cuò)誤提示驗(yàn)證碼錯(cuò)誤測(cè)試結(jié)果登陸成功規(guī)程說明無用戶管理用例詳細(xì)說明管理員進(jìn)入該系統(tǒng)并登錄成功后,服務(wù)器會(huì)保存此次用戶登錄操作的信息,管理員可在管理員管理頁面查看并修改所有的用戶信息,系統(tǒng)用戶管理的測(cè)試用例說明如表6.3所示:表6.3用戶管理用例說明用例名稱用戶管理測(cè)試項(xiàng)(功能點(diǎn))修改員工信息輸入說明管理員用戶登錄成功后點(diǎn)擊“用戶管理”按鈕輸出說明管理員用戶進(jìn)入用戶管理頁面可修改員工的信息;管理員用戶可查看所有員工信息測(cè)試結(jié)果修改成功角色管理用例詳細(xì)說明用戶進(jìn)入該系統(tǒng),登陸成功后,進(jìn)入系統(tǒng)首頁,點(diǎn)擊角色管理可進(jìn)入該頁面。點(diǎn)擊新增按鈕,系統(tǒng)會(huì)彈出新增頁面對(duì)話框,在該對(duì)話框中填寫角色名稱、權(quán)限字符、顯示順序、狀態(tài)、備注、菜單權(quán)限等。提交成功后可在角色管理頁面查看新增的角色。菜單管理、部門管理、通知公告管理基本類似,就不一一介紹。下面舉例說明管理員新增角色的測(cè)試用例說明如表6.4所示:表6.4角色管理用例說明用例名稱角色管理新增角色測(cè)試項(xiàng)(功能點(diǎn))角色管理新增角色輸入說明用戶登錄成功后,選擇角色管理點(diǎn)擊新增按鈕,若新增成功會(huì)在角色管理記錄頁面生成一條記錄。輸出說明若必填的未填寫則提示用戶未填寫。測(cè)試結(jié)果提交成功規(guī)程說明無日志管理用例詳細(xì)說明管理員進(jìn)入并登陸該系統(tǒng)的后臺(tái)管理系統(tǒng),可點(diǎn)擊日志管理按鈕,進(jìn)入日志管理并對(duì)員工的所有操作進(jìn)行管理或監(jiān)控,日志管理測(cè)試用例說明如表6.5所示:表6.5日志管理用例說明用例名稱日志管理測(cè)試項(xiàng)(功能點(diǎn))查詢?nèi)罩?,清空日志,?dǎo)出日志輸入說明管理員登錄成功后,點(diǎn)擊“日志管理”按鈕輸出說明查詢出所有操作日志并分頁,管理員可根據(jù)條件進(jìn)行子查詢和模糊匹配;管理員可先選中要?jiǎng)h除的數(shù)據(jù)再點(diǎn)擊刪除按鈕刪除日志信息;管理員可點(diǎn)擊每條數(shù)據(jù)后的詳情按鈕,來查看用戶的操作記錄。測(cè)試結(jié)果測(cè)試成功規(guī)程說明無6.4可用性測(cè)試 可用性測(cè)試通過系統(tǒng)的操作性、可兼容性等進(jìn)行測(cè)試,具體測(cè)試如表6-6所示:表6-6系統(tǒng)可用性測(cè)試測(cè)試項(xiàng)測(cè)試人員評(píng)價(jià)操作流程是否正常是模塊與提示內(nèi)容等文字描述是否正確是操作是否簡(jiǎn)單可行是模塊之間切換是否流暢是操作模塊是否互相兼容是操作流程是否合理是數(shù)據(jù)庫是否連接正常是6.5測(cè)試總結(jié)綜上所述,測(cè)試對(duì)系統(tǒng)開發(fā)有著非常重要的影響。通過測(cè)試了解系統(tǒng)的缺陷,并對(duì)其完善,保障系統(tǒng)運(yùn)行的穩(wěn)定性和安全性,確保軟件能夠符合用戶的使用要求[24]。7結(jié)語本次畢業(yè)設(shè)計(jì)題目是企業(yè)員工管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),該系統(tǒng)在經(jīng)過不斷的摸索,網(wǎng)上查閱資料、詢問指導(dǎo)老師等過程,最終選擇HTML頁面作為前端并選擇BOOTSTRAP前端技術(shù)進(jìn)行渲染,JAVA語言作為后臺(tái)語言,數(shù)據(jù)庫采用MySQL。從最開始的需求分析、設(shè)計(jì)最基本的數(shù)據(jù)庫表、字段等,整個(gè)系統(tǒng)的大概模式,有了初步的輪廓,經(jīng)過不斷的優(yōu)化,不斷的完善,才完成了本次設(shè)計(jì)。本系統(tǒng)圖片上傳到數(shù)據(jù)庫[6]的都是圖片的地址,從而減少數(shù)據(jù)庫的壓力。本畢業(yè)設(shè)計(jì)也存在著一些缺點(diǎn)和不足,例如:數(shù)據(jù)庫的設(shè)計(jì)不是很完善,有些表的字段出現(xiàn)冗余,需求分析也有很多沒有考慮到的地方,用戶與系統(tǒng)之間的交流不夠豐富,前端的頁面主要注重于功能,頁面不美觀,對(duì)于用
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園各種財(cái)務(wù)制度
- 幼兒園衛(wèi)生獎(jiǎng)懲制度
- 鄉(xiāng)鎮(zhèn)衛(wèi)生院工資發(fā)放制度
- 小區(qū)衛(wèi)生站醫(yī)生聘用制度
- 食堂檢查衛(wèi)生制度
- 幼兒園衛(wèi)生值班制度
- 食堂加工間衛(wèi)生制度
- 衛(wèi)生院愛國衛(wèi)生制度匯編
- 食堂崗位衛(wèi)生責(zé)任制度
- 武漢經(jīng)濟(jì)開發(fā)區(qū)財(cái)務(wù)制度
- 公共衛(wèi)生間洗清消毒制度
- 2025-2026學(xué)年河北省保定市蓮池區(qū)九年級(jí)(上)期末化學(xué)試卷(含答案)
- 2026年廣州中考物理創(chuàng)新題型特訓(xùn)試卷(附答案可下載)
- 電梯維保服務(wù)質(zhì)量承諾書
- 2026云南省普洱市事業(yè)單位招聘工作人員390人重點(diǎn)基礎(chǔ)提升(共500題)附帶答案詳解
- 2026年輔警招聘考試試題庫100道及答案【歷年真題】
- 接線工藝要求培訓(xùn)
- 2025至2030中國稀有糖行業(yè)深度研究及發(fā)展前景投資評(píng)估分析
- 江蘇省泰州市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會(huì)明細(xì)及行政區(qū)劃代碼
- 文言文入門課課件
- 船舶生產(chǎn)設(shè)計(jì)實(shí)訓(xùn)指導(dǎo)
評(píng)論
0/150
提交評(píng)論