版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
目錄[15]是一套用于構(gòu)建用戶界面即前端頁面開發(fā)的漸進(jìn)式框架。Vue框架技術(shù)采用自底向上增量開發(fā)的設(shè)計(jì)模式,提供了MVVM數(shù)據(jù)綁定和可組合的組件系統(tǒng),具有簡單、靈活的API,通過簡單的API實(shí)現(xiàn)響應(yīng)式的數(shù)據(jù)綁定和可組合的視圖組件。2.6本章小結(jié)通過本章節(jié),可以直觀的了解到本系統(tǒng)開發(fā)中用到的關(guān)鍵技術(shù)和開發(fā)工具,并對所涉及的技術(shù)和工具進(jìn)行分析,闡明其優(yōu)點(diǎn)。 第3章易智教網(wǎng)絡(luò)家教系統(tǒng)分析3易智教網(wǎng)絡(luò)家教系統(tǒng)分析本章首先通過用例圖了解易智教網(wǎng)絡(luò)家教系統(tǒng)中不同角色的主要功能,然后對該系統(tǒng)的功能、非功能需求進(jìn)行分析,并對該系統(tǒng)的可行性加以分析。3.1業(yè)務(wù)分析本系統(tǒng)包含三個參與者:教師端,能夠執(zhí)行登錄注冊,教師首頁篩選學(xué)員,消息界面查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦學(xué)員訂單,個人中心可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,舉報學(xué)員等;學(xué)員端,能夠執(zhí)行登錄注冊,學(xué)員首頁篩選教員,消息界面查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦教員,個人中心可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,教員評價等;管理員,審核信息,根據(jù)舉報信息封禁賬戶,對系統(tǒng)進(jìn)行維護(hù)管理等。3.1.1教師端用例圖教師端,能夠執(zhí)行登錄注冊,教師首頁篩選學(xué)員,消息界面查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦學(xué)員訂單,個人中心可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,舉報學(xué)員。教師端用例圖如圖2.1所示。圖2.1教師端用例圖3.1.2學(xué)員端用例圖學(xué)員端,能夠執(zhí)行登錄注冊,學(xué)員首頁篩選教員,消息界面查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦教員,個人中心可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,教員評價。學(xué)員端用例圖如圖2.2所示。圖2.2學(xué)員端用例圖3.1.3管理員端用例圖管理員,審核實(shí)名認(rèn)證信息、教員信息、學(xué)員訂單信息,根據(jù)舉報信息封禁賬戶,對系統(tǒng)進(jìn)行維護(hù)管理。管理員用例圖如圖2.3所示。圖2.3管理員端用例圖3.2需求分析3.2.1功能需求分析本系統(tǒng)包含三個參與者:教師端,能夠執(zhí)行登錄注冊,教師首頁模塊篩選學(xué)員,消息界面模塊查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦學(xué)員訂單,個人中心模塊可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,舉報學(xué)員等;學(xué)員端,能夠執(zhí)行登錄注冊,學(xué)員首頁模塊篩選教員,消息界面模塊查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦教員,個人中心模塊可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,教員評價等;管理員,審核模塊審核信息,封禁模塊根據(jù)舉報信息封禁賬戶,對系統(tǒng)進(jìn)行維護(hù)管理等。本系統(tǒng)具體功能如下:1、教師端(1)用戶注冊:新用戶輸入相應(yīng)的注冊信息,已注冊用戶可以輸入用戶名和密碼登錄。(2)用戶登錄:已注冊用戶可以通過用戶名和密碼的方式登錄,初始界面可選擇用戶身份,密碼正確即可登錄系統(tǒng)。(3)教師首頁模塊:首頁顯示學(xué)員庫和學(xué)科分類,點(diǎn)擊學(xué)科可直接進(jìn)入該學(xué)科的學(xué)員庫,點(diǎn)擊學(xué)員庫進(jìn)入后可根據(jù)自身需求篩選符合條件的學(xué)員訂單,訂單信息面板上顯示學(xué)員具體信息。(4)消息界面模塊:顯示站內(nèi)通知消息或?qū)W員的預(yù)約信息、推薦訂單等。(5)推薦模塊:根據(jù)教師的篩選條件,定期推送符合條件的可能感興趣的訂單。(6)個人中心模塊:可查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看接單記錄,學(xué)員約課情況,對不當(dāng)?shù)膶W(xué)員情況進(jìn)行舉報。圖2.4教師端數(shù)據(jù)流圖2、學(xué)員端(1)用戶注冊:新用戶輸入相應(yīng)的注冊信息,已注冊用戶可以輸入用戶名和密碼登錄。(2)用戶登錄:已注冊用戶可以通過用戶名和密碼的方式登錄,初始界面可選擇用戶身份,密碼正確即可登錄系統(tǒng)。(3)學(xué)員首頁模塊:首頁顯示教師庫和學(xué)科分類,點(diǎn)擊學(xué)科可直接進(jìn)入該學(xué)科的教師庫,點(diǎn)擊教師庫進(jìn)入后可根據(jù)自身需求篩選符合條件的教師目錄,教員信息面板上顯示教員具體信息。(4)消息界面模塊:顯示站內(nèi)通知消息或?qū)W員的預(yù)約信息、推薦訂單等。(5)推薦模塊:根據(jù)學(xué)員的篩選條件,推送符合條件的好評教師。(6)個人中心模塊:可查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看接單記錄,學(xué)員約課情況,預(yù)約的課程和已預(yù)約老師,對教師進(jìn)行評價。圖2.5學(xué)員端數(shù)據(jù)流圖3、管理員端(1)審核模塊:可以審核實(shí)名認(rèn)證信息,學(xué)員訂單,教師專業(yè)技能信息等。(2)封禁模塊:對于差評過多的教師或根據(jù)舉報信息對學(xué)員賬戶予以封禁。(3)系統(tǒng)維護(hù)管理:對系統(tǒng)進(jìn)行基本的維護(hù)管理,更新學(xué)科信息,編輯站內(nèi)通知等。圖2.6管理員端數(shù)據(jù)流圖3.2.2非功能需求分析(1)系統(tǒng)性能本系統(tǒng)要求Web端管理界面的響應(yīng)時間不超過1s,用戶篩選條件響應(yīng)時間不超過1s,訂單詳情和用戶信息詳情等詳情界面顯示時反應(yīng)時間不超過1s。(2)安全性用戶在登錄時采用MD5加密,保證用戶的賬號安全。系統(tǒng)按照登錄用戶的權(quán)限來進(jìn)行存取和控制,在登錄時會根據(jù)權(quán)限的不同而進(jìn)入不同的網(wǎng)頁。(3)可維護(hù)性與可擴(kuò)展性本系統(tǒng)開發(fā)工程中前后端分離,命名規(guī)范,代碼有層次,如果需要修改部分功能,需要修改的地方很少,容易維護(hù);增加新功能時不需要對原碼進(jìn)行修改,只需要添加該功能的代碼,具有較高的代碼復(fù)用性。3.2.3對外接口需求(1)界面需求①界面風(fēng)格:使用圖形化響應(yīng)界面,頁面美觀,界面風(fēng)格保持一致,顏色明亮簡潔,便于用戶瀏覽。②界面布局:系統(tǒng)界面合理,分布均勻,便于用戶進(jìn)行操作。③界面操作:界面操作容易,圖標(biāo)符合大眾認(rèn)知,易于理解和操作。④界面內(nèi)容:根據(jù)系統(tǒng)左側(cè)的導(dǎo)航欄功能鍵切換頁面,內(nèi)容簡單明了。軟件接口與數(shù)據(jù)庫的接口:通過MyBatis和MyBatisPlus與數(shù)據(jù)庫連接池連接。(3)通信接口①TCP/IP網(wǎng)絡(luò)協(xié)議。②UDP協(xié)議。3.3可行性分析3.3.1技術(shù)可行性本系統(tǒng)前端使用VUE框架技術(shù),VUE是一套用于構(gòu)建用戶界面的漸進(jìn)式框架,通過簡單的API便可實(shí)現(xiàn)響應(yīng)式的數(shù)據(jù)綁定和可組合的視圖組件,后端使用SpringBoot框架進(jìn)行開發(fā),數(shù)據(jù)庫為MySQL。從技術(shù)方面考慮,該系統(tǒng)可行。3.3.2經(jīng)濟(jì)可行性本次開發(fā)所需電腦、攝像頭本人都已擁有,開發(fā)軟件所用的SpringBoot框架、MySQL數(shù)據(jù)庫等均為免費(fèi),且使用人數(shù)較多,具有較高實(shí)用性,安全系數(shù)有保障。同時,隨著雙減政策的實(shí)施,一對一家教也漸漸為更多人所接受,十分適合應(yīng)對目前的社會發(fā)展。因此,其經(jīng)濟(jì)方面可行。3.4本章小結(jié)本章節(jié)通過用例圖的形式了解系統(tǒng)中不同的角色的主要功能,并用過文字加以說明。然后通過數(shù)據(jù)流圖的形式,對用戶到系統(tǒng)、系統(tǒng)到用戶之間的數(shù)據(jù)交互反饋進(jìn)行分析,最終對該系統(tǒng)進(jìn)行非功能性的需求分析和可行性分析。 第4章易智教網(wǎng)絡(luò)家教系統(tǒng)總體設(shè)計(jì)4易智教網(wǎng)絡(luò)家教系統(tǒng)總體設(shè)計(jì)本章節(jié)將對易智教網(wǎng)絡(luò)家教系統(tǒng)進(jìn)行總體設(shè)計(jì),通過架構(gòu)圖、功能模塊圖、E-R圖、數(shù)據(jù)庫表等圖表形式對該系統(tǒng)模塊進(jìn)行分析描述,并通過文字加以說明。4.1架構(gòu)設(shè)計(jì)如圖3.1所示,本系統(tǒng)采用前后端分離開發(fā),采用SpringBoot框架開發(fā),MySQL作為物理存儲,通過MyBatisplus技術(shù)進(jìn)行數(shù)據(jù)庫連接,前端采用VUE框架技術(shù)開發(fā)。系統(tǒng)由三大部分組成:展現(xiàn)層、業(yè)務(wù)層、數(shù)據(jù)層,展現(xiàn)層為PC端web界面,業(yè)務(wù)層分為學(xué)生端、教師端和管理員端三大塊,學(xué)生端主要包括學(xué)員首頁,消息界面,推薦模塊,個人中心四個模塊;教師端也是包含教師首頁,消息界面,推薦模塊和個人中心四個模塊;管理員包含審核模塊,封禁模塊和系統(tǒng)維護(hù)管理模塊;數(shù)據(jù)層主要包括用戶基本信息,訂單數(shù)據(jù),用戶評價數(shù)據(jù)等。系統(tǒng)用戶主要分三個角色,學(xué)員和教員以及管理員。為了使用戶界面,后臺需求處理以及數(shù)據(jù)庫處理之間相互關(guān)聯(lián)而不干擾,采用分層模塊設(shè)計(jì)。系統(tǒng)模塊圖如圖4.1所示。圖4.1系統(tǒng)架構(gòu)圖4.2功能模塊設(shè)計(jì)系統(tǒng)的主要功能模塊包括:教師端,登錄注冊模塊,教師首頁模塊篩選學(xué)員,消息界面模塊查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦學(xué)員訂單,個人中心模塊可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,舉報學(xué)員等;學(xué)員端,登錄注冊模塊,學(xué)員首頁模塊篩選教員,消息界面模塊查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦教員,個人中心模塊可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,教員評價等;管理員,審核模塊審核信息,封禁模塊根據(jù)舉報信息封禁賬戶,系統(tǒng)維護(hù)管理模塊對系統(tǒng)進(jìn)行基礎(chǔ)的維護(hù)管理等。根據(jù)易智教網(wǎng)絡(luò)家教系統(tǒng)的總體設(shè)計(jì),系統(tǒng)的功能模塊圖如圖4.2所示:圖4.2系統(tǒng)功能模塊圖教師端,有登錄注冊模塊,教師首頁模塊篩選學(xué)員,消息界面模塊查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦學(xué)員訂單,個人中心模塊可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,舉報學(xué)員。教師端模塊圖如圖4.3所示:圖4.3教師端模塊圖學(xué)員端,有登錄注冊模塊,學(xué)員首頁模塊篩選教員,消息界面模塊查看站內(nèi)通知、預(yù)約信息,推薦模塊可以查看推薦教員,個人中心模塊可以編輯個人信息,實(shí)名認(rèn)證,查看訂單記錄,教員評價等。學(xué)員端模塊圖如圖4.4所示:圖4.4學(xué)員端模塊圖管理員端,審核模塊審核信息,封禁模塊根據(jù)舉報信息封禁賬戶,系統(tǒng)維護(hù)管理模塊對系統(tǒng)進(jìn)行維護(hù)管理,更新學(xué)科信息,編輯站內(nèi)通知等。管理員端模塊圖如圖4.5所示:圖4.5管理員端模塊圖4.3數(shù)據(jù)庫設(shè)計(jì)4.3.1數(shù)據(jù)庫實(shí)體設(shè)計(jì)易智教網(wǎng)絡(luò)家教系統(tǒng)實(shí)體主要為學(xué)員實(shí)體、教員實(shí)體、管理員實(shí)體、訂單實(shí)體、課程實(shí)體、評價實(shí)體、舉報實(shí)體。在本系統(tǒng)中,學(xué)員和訂單是一對多關(guān)系,同一個學(xué)員可以發(fā)布多個訂單;教員和訂單也是一對多的關(guān)系,一個教員可以接取多個訂單;管理員審核訂單是多對多關(guān)系,一個訂單可以由多個管理員管理,一個管理員也可以管理多個訂單。管理員管理課程信息是多對多關(guān)系,一個課程信息可以由多個管理員管理,一個管理員也可以管理多個課程信息。學(xué)員和評價是一對一關(guān)系,一個學(xué)員一次只能評價一個訂單信息;教員和舉報也是一對一的關(guān)系,一個教員一次只能舉報一個學(xué)員用戶。圖4.6展示了這些主要的實(shí)體和相關(guān)聯(lián)系。圖4.6E-R圖4.3.2數(shù)據(jù)庫表設(shè)計(jì)(1)管理員表字段包括管理員編號、管理員昵稱、管理員密碼、管理員賬號狀態(tài)、創(chuàng)建和修改日期、創(chuàng)建人和修改人、刪除標(biāo)記等。管理員編號(id)為本表的主鍵,采用bigint數(shù)據(jù)類型自增,長度為20進(jìn)行保存。管理員昵稱(name)采用varchar數(shù)據(jù)類型,長度為50進(jìn)行保存。管理員密碼(password)采用varchar數(shù)據(jù)類型,長度255進(jìn)行保存。管理員賬號狀態(tài)(status)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,flag為1表示該管理員賬號可用,為0表示該管理員賬號不可用。創(chuàng)建時間(create_time)采用datetime數(shù)據(jù)類型進(jìn)行保存。更新時間(update_time)采用datetime數(shù)據(jù)類型進(jìn)行保存。創(chuàng)建人(create_user)采用bigint數(shù)據(jù)類型進(jìn)行保存。創(chuàng)建人(create_user)采用bigint數(shù)據(jù)類型,長度20進(jìn)行保存。修改人(update_user)采用bigint數(shù)據(jù)類型,長度20進(jìn)行保存。具體管理員表格如表4.1所示。表4.1管理員表字段名字段數(shù)據(jù)類型長度允許空主鍵字段說明admin_idbigint20否是(自增)管理員的編號namevarchar50否否管理員的昵稱passwordvarchar255否否管理員的密碼statusint11否否賬號狀態(tài)create_timedatetime1否否創(chuàng)建日期update_timedatetime1否否更新時間create_userbigint20否否創(chuàng)建人update_userbigint20否否修改人(2)學(xué)員表字段包括學(xué)員編號、學(xué)員名稱、學(xué)員性別、實(shí)名狀態(tài)、學(xué)員補(bǔ)習(xí)課程、學(xué)員地區(qū)、學(xué)員年級、學(xué)員要求、薪資報酬、學(xué)員電話、賬號密碼、賬號狀態(tài)、賬號是否刪除等。學(xué)員編號(id)為本表的主鍵,采用bigint數(shù)據(jù)類型自增,長度為20進(jìn)行保存。學(xué)員名稱(name)采用varchar數(shù)據(jù)類型,長度為50進(jìn)行保存。學(xué)員性別(sex)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,0表示男生,1表示女生。學(xué)員賬號實(shí)名狀態(tài)(is_auth)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,0表示未實(shí)名,1表示待審核,2表示已實(shí)名。學(xué)員補(bǔ)習(xí)課程(major)采用varchar數(shù)據(jù)類型,長度20進(jìn)行保存。學(xué)員年級(grade)采用varchar數(shù)據(jù)類型,長度20進(jìn)行保存。學(xué)員要求(require_item)采用varchar數(shù)據(jù)類型,長度255進(jìn)行保存。薪資報酬(wage)采用varchar數(shù)據(jù)類型,長度20進(jìn)行保存。學(xué)員電話(phone)采用varchar數(shù)據(jù)類型,長度100進(jìn)行保存。賬號密碼(password)采用varchar數(shù)據(jù)類型,長度255進(jìn)行保存。賬號狀態(tài)(status)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,flag為1表示該管理員賬號可用,為0表示該管理員賬號不可用。賬號是否刪除(is_deleted)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存。具體學(xué)員表表格如表4.2所示。表4.2學(xué)員用戶表字段名字段數(shù)據(jù)類型長度允許空主鍵字段說明user_idbigint20否是(自增)學(xué)員的編號namevarchar50否否學(xué)員的名稱sexint11否否學(xué)員性別is_authint11否否是否實(shí)名majorvarchar20否否學(xué)員補(bǔ)習(xí)課程areavarchar20否否學(xué)員地區(qū)gradevarchar20否否學(xué)員年級require_itemvarchar255否否學(xué)員要求wagevarchar20否否薪資報酬phonevarchar100否否學(xué)員電話passwordvarchar255否否賬號密碼statusint11否否賬號狀態(tài)is_deletedint11否否賬號是否刪除(3)教員表字段包括教員編號、教員名稱、教員性別、實(shí)名狀態(tài)、教員專業(yè)、教員描述、教員電話、賬號密碼、賬號狀態(tài)、賬號是否刪除等。教員編號(id)為本表的主鍵,采用bigint數(shù)據(jù)類型自增,長度為20進(jìn)行保存。教員名稱(name)采用varchar數(shù)據(jù)類型,長度為50進(jìn)行保存。教員性別(sex)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,0表示男生,1表示女生。教員賬號實(shí)名狀態(tài)(is_auth)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,0表示未實(shí)名,1表示待審核,2表示已實(shí)名。教員專業(yè)(major)采用varchar數(shù)據(jù)類型,長度20進(jìn)行保存。教員描述(mark)采用varchar數(shù)據(jù)類型,長度255進(jìn)行保存。教員電話(phone)采用varchar數(shù)據(jù)類型,長度100進(jìn)行保存。賬號密碼(password)采用varchar數(shù)據(jù)類型,長度255進(jìn)行保存。賬號狀態(tài)(status)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,flag為1表示該管理員賬號可用,為0表示該管理員賬號不可用。賬號是否刪除(is_deleted)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存。具體教員表表格如表4.3所示。表4.3教員用戶表字段名字段數(shù)據(jù)類型長度允許空主鍵字段說明teacher_idbigint20否是(自增)教員的編號namevarchar50否否教員的名稱sexint11否否教員性別is_authint11否否是否實(shí)名majorvarchar20否否教員專業(yè)markvarchar255否否教員描述phonevarchar100否否教員電話passwordvarchar255否否賬號密碼statusint11否否賬號狀態(tài)is_deletedint11否否賬號是否刪除(4)訂單表字段包括訂單編號、學(xué)員編號、教員編號、訂單狀態(tài)、下單時間、結(jié)單時間、創(chuàng)建日期、更新時間、創(chuàng)建人、修改人、賬號是否刪除等。訂單編號(id)為本表的主鍵,采用bigint數(shù)據(jù)類型自增,長度為20進(jìn)行保存。學(xué)員編號(id)為本表的外鍵,采用bigint數(shù)據(jù)類型自增,長度為20進(jìn)行保存。教員編號(id)為本表的主鍵,采用bigint數(shù)據(jù)類型自增,長度為20進(jìn)行保存。訂單狀態(tài)(status)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存,flag為0表示未審核,1表示等待家教,2表示完成,3表示審核拒絕。下單時間(order_time)采用datetime數(shù)據(jù)類型進(jìn)行保存。結(jié)單時間(end_time)采用datetime數(shù)據(jù)類型進(jìn)行保存。創(chuàng)建時間(create_time)采用datetime數(shù)據(jù)類型進(jìn)行保存。更新時間(update_time)采用datetime數(shù)據(jù)類型進(jìn)行保存。創(chuàng)建人(create_user)采用bigint數(shù)據(jù)類型進(jìn)行保存。創(chuàng)建人(create_user)采用bigint數(shù)據(jù)類型,長度20進(jìn)行保存。修改人(update_user)采用bigint數(shù)據(jù)類型,長度20進(jìn)行保存。訂單是否刪除(is_deleted)采用int數(shù)據(jù)類型,長度為11進(jìn)行保存。具體演員表格如表4.4所示。表4.4訂單表字段名字段數(shù)據(jù)類型長度允許空主鍵字段說明idbigint20否是(自增)訂單編號user_idbigint20否否學(xué)員編號teacher_idbigint20否否教員編號statusint11否否訂單狀態(tài)order_timedatetime1否否下單時間end_timedatetime1否否結(jié)單時間create_timedatetime1否否創(chuàng)建日期續(xù)表4.4字段名字段數(shù)據(jù)類型長度允許空主鍵字段說明update_timedatetime1否否更新時間create_userbigint20否否創(chuàng)建人update_userbigint20否否修改人is_deletedint11否否訂單是否刪除4.4接口設(shè)計(jì)本系統(tǒng)包括以下接口,如下所示:(1)/mapper/xml/AdminMapper管理員信息(2)/mapper/xml/AuthMapper用戶實(shí)名認(rèn)證(3)/mapper/xml/BookMapper學(xué)員約課(4)/mapper/xml/CategoryMapper學(xué)科信息(5)/mapper/xml/CommentMapper學(xué)員教師評價(6)/mapper/xml/LogMapper日志(7)/mapper/xml/MsgMapper管理員編輯站內(nèi)通知,消息推送(8)/mapper/xml/OrdersMapper訂單信息(9)/mapper/xml/ReportMapper教員舉報學(xué)生用戶(10)/mapper/xml/TeacherMapper教員信息(11)/mapper/xml/UserMapper學(xué)員信息4.5本章小結(jié)本章節(jié)通過E-R圖說明系統(tǒng)不同實(shí)體之間的關(guān)系,通過功能模塊圖說明系統(tǒng)的主要模塊的主要功能,然后通過數(shù)據(jù)庫表的設(shè)計(jì)對各個數(shù)據(jù)庫的字段、類型、長度等進(jìn)行設(shè)計(jì)說明,最終通過接口設(shè)計(jì)了解該系統(tǒng)的相關(guān)接口。 第5章易智教網(wǎng)絡(luò)家教系統(tǒng)詳細(xì)設(shè)計(jì)5易智教網(wǎng)絡(luò)家教系統(tǒng)詳細(xì)設(shè)計(jì)本章節(jié)將在對象設(shè)計(jì)小節(jié)中通過類圖來描述該系統(tǒng)主要的類以及類與類之間的關(guān)系,然后通過交互設(shè)計(jì)小節(jié)對用戶、管理員的時序圖進(jìn)行描述,了解不同功能的響應(yīng)操作,最后通過流程圖了解各個功能從用戶到系統(tǒng)再到用戶的流程。5.1對象設(shè)計(jì)類圖顯示了模型中存在的類、類中的內(nèi)容以及類與類之間的關(guān)系。本系統(tǒng)共設(shè)計(jì)了7個類,分別是學(xué)員類(user)、教員類(teacher)、訂單類(orders)、管理員類(admin)、評價類(comment)、舉報類(report)、課程類(category),如圖5.1所示。圖5.1類圖
5.2交互設(shè)計(jì)5.2.1學(xué)員時序圖學(xué)員用戶填寫正確的賬號和密碼信息進(jìn)入到學(xué)員主頁界面,在主頁可以篩選教員:點(diǎn)擊教員庫或?qū)W科分類,可根據(jù)自己的需求篩選符合條件的教員進(jìn)行約課;查看訂單:點(diǎn)擊我的訂單可以查看過往訂單記錄詳情,并對訂單進(jìn)行評價或舉報操作;查看約課信息:點(diǎn)擊進(jìn)入我的約課界面,可以查看學(xué)員的約課記錄,并對有反饋的記錄進(jìn)行操作,選擇下單。學(xué)員時序圖如圖5.2所示。圖5.2學(xué)員時序圖5.2.2教員時序圖教員用戶填寫正確的賬號和密碼信息進(jìn)入到教員主頁界面,在主頁可以篩選學(xué)員:點(diǎn)擊學(xué)員庫或?qū)W科分類,可根據(jù)自己的需求篩選符合條件的學(xué)員訂單;查看訂單:點(diǎn)擊我的訂單可以查看過往訂單記錄詳情,并對訂單進(jìn)行評價或舉報操作;查看約課信息:點(diǎn)擊進(jìn)入我的約課界面,可以查看學(xué)員對教員的約課訂單,并對訂單進(jìn)行操作,選擇聯(lián)系學(xué)員。教員時序圖如圖5.3所示。圖5.3教員時序圖5.2.3管理員時序圖管理員填寫正確的賬號和密碼信息進(jìn)入到后臺管理界面,可以對待審核信息進(jìn)行處理:可以審核實(shí)名認(rèn)證信息,學(xué)員用戶提交的訂單,教師信息等;對違規(guī)賬戶進(jìn)行管理:根據(jù)用戶評價和舉報信息對不當(dāng)賬戶進(jìn)行封禁處理;系統(tǒng)維護(hù)管理:包括編輯站內(nèi)通知,對系統(tǒng)進(jìn)行簡單維護(hù),管理學(xué)科信息。管理員時序圖如圖5.4所示。圖5.4管理員時序圖
5.3功能模塊設(shè)計(jì)5.3.1用戶登錄注冊模塊注冊登錄模塊為用戶首先要使用的功能,其他功能的實(shí)現(xiàn)都基于用戶登錄的基礎(chǔ)上,系統(tǒng)首先需要判斷用戶是否登錄,若用戶已有賬號則可直接進(jìn)行登錄,所有的密碼保存采用MD5加密保存,加密內(nèi)容不可逆,滿足了登錄的信息安全,登錄時采用對密碼相同的加密進(jìn)行比對。若無賬號則需要進(jìn)行注冊后再進(jìn)行登錄,處理流程如圖5.5所示:圖5.5用戶登錄注冊流程圖5.3.2學(xué)員端模塊1.學(xué)員首頁模塊:學(xué)員用戶進(jìn)入后,首頁顯示教師庫和學(xué)科分類,點(diǎn)擊學(xué)科可直接進(jìn)入該學(xué)科的教師庫,點(diǎn)擊教師庫進(jìn)入后可根據(jù)自身需求篩選符合條件的教師目錄,教員信息面板上顯示教員具體信息,用戶可根據(jù)自身需求進(jìn)行約課。處理流程如圖5.6所示:圖5.6學(xué)員首頁約課流程圖消息界面模塊:顯示站內(nèi)通知消息,學(xué)員的約課預(yù)約反饋信息,教員推送等。處理流程如圖5.7所示:圖5.7學(xué)員端消息界面模塊流程圖個人中心模塊:可查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看訂單記錄,預(yù)約的課程和已預(yù)約老師,對教師進(jìn)行評價。處理流程如圖5.8所示:圖5.8學(xué)員端個人中心模塊流程圖5.3.3教員端模塊1.教員首頁模塊:教員用戶訪問首頁顯示學(xué)員庫和學(xué)科分類,點(diǎn)擊學(xué)科可直接進(jìn)入該學(xué)科的學(xué)員庫,點(diǎn)擊學(xué)員庫進(jìn)入后可根據(jù)自身需求篩選符合條件的學(xué)員訂單,訂單信息面板上顯示學(xué)員具體信息。處理流程如圖5.9所示:圖5.9教員首頁模塊流程圖消息界面模塊:顯示站內(nèi)通知消息或?qū)W員的預(yù)約信息、推薦訂單等。處理流程如圖5.10所示:圖5.10教員端消息界面模塊流程圖個人中心模塊可查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看接單記錄,學(xué)員約課情況,對不當(dāng)?shù)膶W(xué)員情況進(jìn)行舉報。處理流程如圖5.11所示。圖5.11教員端個人中心模塊流程圖5.3.3管理員端(1)審核模塊:可以審核實(shí)名認(rèn)證信息,學(xué)員訂單,教師專業(yè)技能信息等。處理流程如圖5.12所示。(2)封禁模塊:對于差評過多的教師或根據(jù)舉報信息對學(xué)員賬戶予以封禁。處理流程如圖5.12所示。(3)系統(tǒng)維護(hù)管理模塊:對系統(tǒng)進(jìn)行基本的維護(hù)管理,更新學(xué)科信息,編輯站內(nèi)通知。處理流程如圖5.12所示。圖5.12管理員端流程圖5.4本章小結(jié)本章節(jié)首先通過類圖了解到易智教網(wǎng)絡(luò)家教系統(tǒng)中相關(guān)的類與類之間的關(guān)系,然后通過時序圖來描述各個模塊的各個功能響應(yīng)流程,最終通過流程圖來展示各個模塊功能的具體流程。 第6章易智教網(wǎng)絡(luò)家教系統(tǒng)實(shí)現(xiàn)6易智教網(wǎng)絡(luò)家教系統(tǒng)實(shí)現(xiàn)本章節(jié)將通過界面設(shè)計(jì)實(shí)現(xiàn)的代碼分析對該系統(tǒng)各個模塊的實(shí)現(xiàn)進(jìn)行描述,附以文字形式進(jìn)行闡述說明,并通過圖片進(jìn)行展示使之更加直觀。6.1用戶登錄注冊模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.1、圖6.2所示。用戶進(jìn)入系統(tǒng),顯示登陸界面,已有賬號的用戶根據(jù)賬號密碼輸入驗(yàn)證碼登錄,新用戶則點(diǎn)擊注冊賬號。在config包的KaptchaController類及controller包的controller類實(shí)現(xiàn)驗(yàn)證碼生成。UserController和TeacherController使用了@Slf4j注解,表明使用日志工具進(jìn)行日志記錄,繼承了BaseController<User,UserService>,其中封裝了BaseService的一些通用方法,如增、刪、改、查等操作。Login方法用于用戶登錄,register方法用于用戶注冊,alterPassword方法用于忘記密碼后的修改。詳情見附錄一。圖6.1登錄界面圖6.2注冊界面6.2學(xué)員和教員端首頁模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.3、圖6.4所示。用戶在此頁可以選擇想要使用的功能,點(diǎn)擊學(xué)科分類和教師庫/學(xué)員庫可以篩選學(xué)員或教員等。UserController和TeacherController繼承了BaseController<User,UserService>,其中封裝了BaseService的一些通用方法,如增、刪、改、查等操作,@Autowired注解為屬性注入TeacherService實(shí)例,表示需要使用該服務(wù)。執(zhí)行篩選操作時,該類中實(shí)現(xiàn)了若干個請求方法,包括:list:分頁查詢用戶列表,根據(jù)名稱模糊查詢;pagePlus:分頁查詢用戶列表,根據(jù)地區(qū)、專業(yè)、年級、薪資等條件查詢;pagePlusTeacherLike:分頁查詢用戶列表,根據(jù)教師專業(yè)進(jìn)行模糊查詢。詳情見附錄一圖6.3教師首頁學(xué)員庫界面圖6.4學(xué)員首頁教員庫界面6.3學(xué)員和教員端消息界面模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.5、圖6.6所示。消息界面顯示用戶收到的通知,約課信息和訂單信息等。MsgController是消息控制器類,其中包含了列出所有未讀消息的接口。在getAll方法中,首先通過getCurrentId方法獲取當(dāng)前登錄用戶的UserId,然后創(chuàng)建對象,通過eq方法方法指定查詢條件。這里的查詢條件是該用戶的所有未讀消息,其狀態(tài)status為0。接著,調(diào)用MsgService的list方法,獲取所有符合條件的Msg對象列表。在Lambda表達(dá)式中,將每個Msg對象的狀態(tài)status更改為1,表示已讀。最后,使用collect方法將更改后的列表批量更新到數(shù)據(jù)庫中,然后將未讀消息的列表通過R.success包裝返回給前端。詳情見附錄二。圖6.5教師首頁消息界面圖6.6學(xué)員首頁消息界面6.4學(xué)員和教員端個人中心模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.7、圖6.8所示。用戶登錄后進(jìn)入個人中心界面可以查看個人信息詳情,可以編輯個人信息。UserController和TeacherController類中的self方法用于獲取當(dāng)前用戶個人信息,分頁查詢用戶自身信息,通過ThreadLocalContext獲取當(dāng)前用戶的信息。CommonController類用于個人信息界面圖片的上傳和下載。詳情見附錄一。圖6.7教師個人中心界面圖6.8學(xué)員個人中心界面
6.5學(xué)員和教員端訂單管理界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.9、圖6.10所示。用戶登陸后,點(diǎn)擊我的訂單,即可查看與自身相關(guān)的訂單,包括學(xué)員端的訂單信息反饋以及教師端的訂單信息詳情等。OrdersController是訂單管理控制器類,控制器繼承了BaseController類,可以處理基于MyBatisPlus的增刪改查的基本服務(wù)。在getByUser、getByTeacher和auth方法中,通過getCurrentId方法獲取當(dāng)前登錄用戶的UserId或TeacherId,然后創(chuàng)建對象,并通過eq方法設(shè)定查詢條件。最后,調(diào)用baseService的getVO方法獲取符合條件的OrdersVO對象,并使用R.success包裝返回給前端。在save方法中,首先獲取當(dāng)前登錄用戶的UserId,并為訂單設(shè)置UserId、下單時間和狀態(tài)等屬性。然后創(chuàng)建對象,通過eq方法設(shè)定查詢條件,判斷該用戶是否已經(jīng)下單。如果已經(jīng)下單,則返回錯誤信息。否則,調(diào)用baseService的save方法保存訂單信息。在update方法中,首先使用getById方法獲取傳入的Orders對象。如果狀態(tài)為1,表示訂單已經(jīng)通過審核,需要創(chuàng)建一個新的Msg對象,并將其保存到數(shù)據(jù)庫中。同時,為了通知老師收到了一條新的訂單,需要將Msg對象的UserId設(shè)置為老師的UserId。如果狀態(tài)為2,表示訂單已經(jīng)確認(rèn)收貨,需要將Order對象的收貨時間更新,并創(chuàng)建一個新的Msg對象,通知老師已經(jīng)確認(rèn)收貨。如果狀態(tài)為3,表示訂單審核被拒絕,需要創(chuàng)建一個新的Msg對象,并將其保存到數(shù)據(jù)庫中,同時將Msg對象的UserId設(shè)置為該訂單的UserId。最后,使用baseService的updateById方法更新Order對象,并使用R.success包裝返回給前端。詳情見附錄三。圖6.9教師端訂單查看界面圖6.10學(xué)員端訂單查看界面6.6學(xué)員和教員端約課信息管理界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.11、圖6.12所示。用戶登錄后,點(diǎn)擊我的約課,即可查看自身相關(guān)的約課信息,包括學(xué)員端的學(xué)員約課信息反饋及教師端的約課訂單等。BookController是約課控制器類,繼承了BaseController類,可以處理基于MyBatisPlus的增刪改查的基本服務(wù)。在save方法中,根據(jù)約課類型獲取相關(guān)參數(shù),并使用eq方法設(shè)定查詢條件,最后調(diào)用baseService獲取符合條件的Book對象判斷是否已預(yù)約并返回參數(shù)信息。在update方法中,調(diào)用baseService的getById方法獲取傳入的Book對象。如果狀態(tài)是1,表示老師已經(jīng)聯(lián)系了學(xué)生,或者學(xué)生已經(jīng)聯(lián)系了老師,需要創(chuàng)建一個新的Msg對象,并將其保存到數(shù)據(jù)庫中。如果學(xué)生或者老師沒有設(shè)置聯(lián)系方式,則返回錯誤信息。詳情見附錄四。圖6.11教師端約課信息查看界面圖6.12學(xué)員端約課信息查看界面6.7學(xué)員和教員端推薦模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.13、圖6.14所示。用戶登錄后,點(diǎn)擊猜你喜歡,可以查看系統(tǒng)推薦訂單或教員,原理為基于用戶的協(xié)調(diào)過濾算法,根據(jù)用戶對于教師的評價數(shù)據(jù),轉(zhuǎn)換為共現(xiàn)矩陣,利用梯度下降的矩陣分解算法得到用戶隱向量,之后利用余弦相似度方法計(jì)算用戶相似度,之后,利用用戶相似度和相似用戶評價的加權(quán)平均值,獲得目標(biāo)用戶評價預(yù)測,最后根據(jù)評價預(yù)測得分即可獲得推薦列表。詳情見附錄五。圖6.13教師端推薦模塊界面圖6.14學(xué)員端推薦模塊界面6.8實(shí)名認(rèn)證界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.15所示。登錄后進(jìn)入個人中心,未實(shí)名用戶需執(zhí)行實(shí)名認(rèn)證操作,點(diǎn)擊實(shí)名認(rèn)證,輸入個人身份信息并上傳圖片,審核通過后實(shí)名認(rèn)證成功。AuthController為實(shí)名認(rèn)證控制器,@Override重寫了save和update方法。save方法接收一個Auth對象,并在當(dāng)前登錄用戶的上下文中設(shè)置UserId屬性,然后將狀態(tài)設(shè)置為0,表示認(rèn)證還未通過。最后,調(diào)用基類的save方法來保存Auth對象。update方法也接收一個Auth對象,它首先根據(jù)傳入的Auth對象中的狀態(tài)來設(shè)置一個msg對象。如果狀態(tài)是1表示審核通過,否則審核失敗。接著,通過getById方法獲取傳入Auth對象對應(yīng)的Auth對象,獲取其用戶ID,并據(jù)此更新User對象或Teacher對象中的"是否認(rèn)證"屬性。最后,新建msg對象,將其狀態(tài)設(shè)置為0(未讀),并保存到數(shù)據(jù)庫中。詳情見附錄六圖6.15實(shí)名認(rèn)證界面6.9管理員封禁模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.16、圖6.17所示。管理員用戶登錄后,點(diǎn)擊用戶管理和教師管理,可對學(xué)員和教師賬戶進(jìn)行編輯和禁用操作。UserController和TeacherController類中的ban方法用于賬戶封禁,0表示禁用,1表示可用。詳情見附錄一圖6.16學(xué)員用戶管理界面圖6.17教員用戶管理界面管理員用戶登錄后,點(diǎn)擊舉報管理,可以查看用戶舉報消息,根據(jù)舉報信息可以選擇通過或拒絕。在ReportController類的update方法中,根據(jù)e中的參數(shù),確定該舉報對象的類型,然后創(chuàng)建一個LambdaQueryWrapper對象,根據(jù)舉報對象的UserId或TeacherId,設(shè)定查詢條件,查詢該對象被舉報的次數(shù)。如果被舉報的次數(shù)超過4次,表示該對象存在嚴(yán)重問題,需要將其狀態(tài)更新為0。如果舉報的結(jié)果是成功,創(chuàng)建一個新的Msg對象并保存到數(shù)據(jù)庫中,通知對應(yīng)的老師或?qū)W生已經(jīng)被舉報。最后,調(diào)用baseService的updateById方法進(jìn)行更新操作。詳情見附錄七。圖6.18舉報管理界面6.10管理員審核模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.19、圖6.20所示。管理員登錄后,點(diǎn)擊認(rèn)證管理可對實(shí)名認(rèn)證用戶進(jìn)行實(shí)名認(rèn)證審核。在AuthController實(shí)名認(rèn)證控制器類中update方法也接收一個Auth對象,它首先根據(jù)傳入的Auth對象中的狀態(tài)來設(shè)置一個msg對象。如果狀態(tài)是1表示審核通過,否則審核失敗。接著,通過getById方法獲取傳入Auth對象對應(yīng)的Auth對象,獲取其用戶ID,并據(jù)此更新User對象或Teacher對象中的"是否認(rèn)證"屬性。詳情見附錄六圖6.19用戶實(shí)名認(rèn)證審核界面管理員登錄后,點(diǎn)擊訂單審核可對用戶發(fā)起的訂單進(jìn)行審核。在OrdersController類的update方法中,首先使用getById方法獲取傳入的Orders對象。如果狀態(tài)為1,表示訂單已經(jīng)通過審核,需要創(chuàng)建一個新的Msg對象,并將其保存到數(shù)據(jù)庫中。如果狀態(tài)為3,表示訂單審核被拒絕,需要創(chuàng)建一個新的Msg對象,并將其保存到數(shù)據(jù)庫中,同時將Msg對象的UserId設(shè)置為該訂單的UserId。詳情見附錄三圖6.20訂單審核界面6.11管理員系統(tǒng)維護(hù)模塊界面設(shè)計(jì)實(shí)現(xiàn)界面設(shè)計(jì)如圖6.21所示。管理員登錄后點(diǎn)擊學(xué)科分類,可對學(xué)科分類信息進(jìn)行編輯管理。CategoryController類為學(xué)科分類管理的控制器,控制器繼承了BaseController類,BaseController可以處理基于MyBatisPlus的基本服務(wù),@GetMapping("/listAll")標(biāo)記了該方法用于處理GET請求路徑為“/listAll”的請求。在方法體中,調(diào)用了baseService的list方法獲取所有的學(xué)科信息,并將返回結(jié)果封裝為一個R類型,最后,通過@RestController注解聲明該類為Rest風(fēng)格的控制器,可以返回JSON格式的數(shù)據(jù)。這里將查詢到的學(xué)科信息列表轉(zhuǎn)化成了JSON數(shù)組,并通過ResponseEntity對象返回給前端。詳情見附錄八。圖6.21學(xué)科分類管理界面6.12本章小結(jié)本章節(jié)對該系統(tǒng)進(jìn)行代碼描述分析,通過核心代碼和具體的實(shí)現(xiàn)方法以及圖文形式進(jìn)行展示,用以闡述該系統(tǒng)的實(shí)現(xiàn)過程,包含的不同模塊的詳細(xì)代碼,置于本文的附錄中。 第7章易智教網(wǎng)絡(luò)家教系統(tǒng)測試7易智教網(wǎng)絡(luò)家教系統(tǒng)測試 本章節(jié)將對易智教網(wǎng)絡(luò)家教系統(tǒng)進(jìn)行功能性和非功能性的測試,功能性測試對該系統(tǒng)的主要功能進(jìn)行預(yù)測并測試,比較其結(jié)果,非功能性需求是對該系統(tǒng)的魯棒性做出要求,使得其盡可能滿足用戶的需要。7.1測試計(jì)劃與環(huán)境本次測試使用的電腦為64位操作系統(tǒng),為Windows11專業(yè)版,處理器為Intel(R)Core(TM)i5-8250UCPU@1.60GHz1.80GHz,內(nèi)存為8.0G,JDK為1.8,屏幕分辨率為1920*1080,顯卡為NVIDIAGeForceMX150。安裝IDEA、MySQL等軟件,啟動項(xiàng)目,在網(wǎng)頁前端對用戶登錄注冊,教師端教師首頁學(xué)員庫篩選學(xué)員、查看站內(nèi)通知、預(yù)約信息,查看訂單和約課信息,編輯個人資料,實(shí)名認(rèn)證,學(xué)員舉報的功能,學(xué)員端學(xué)員首頁教員庫篩選教員、查看站內(nèi)通知、約課信息反饋,查看訂單和約課記錄,編輯個人資料,實(shí)名認(rèn)證,教師評價的功能,管理員審核信息,封禁用戶,系統(tǒng)信息維護(hù)等進(jìn)行功能測試。非功能測試是對該系統(tǒng)進(jìn)行安全性的測試和兼容性的測試,以便達(dá)到用戶的要求。7.2測試與結(jié)果分析本節(jié)為對易智教網(wǎng)絡(luò)家教系統(tǒng)進(jìn)行功能測試和非功能測試,保證該軟件的健壯性。7.2.1功能測試(1)用戶登錄注冊模塊對易智教網(wǎng)絡(luò)家教系統(tǒng)的用戶的登錄注冊功能進(jìn)行測試,根據(jù)用戶登錄注冊流程去設(shè)計(jì)該模塊的測試用例并給出預(yù)期的結(jié)果,測試完成后對預(yù)期結(jié)果和實(shí)際結(jié)果進(jìn)行比較和總結(jié),具體情況見表7.1。表7.1用戶登錄注冊模塊用例表功能描述易智教網(wǎng)絡(luò)家教系統(tǒng)用戶注冊登錄模塊操作用例目的測試在該易智教網(wǎng)絡(luò)家教系統(tǒng)中用戶的注冊登錄功能以及錯誤提示是否正常前提條件網(wǎng)絡(luò)通暢,能夠正常連接到數(shù)據(jù)庫子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果1-1用戶注冊1.點(diǎn)擊注冊2.輸入相關(guān)信息3.確認(rèn)注冊注冊成功注冊成功1-2登錄信息輸入錯誤1.點(diǎn)擊登錄2.輸入賬號、密碼和驗(yàn)證碼3.確認(rèn)登錄系統(tǒng)未登錄系統(tǒng)提示信息輸入錯誤1-3忘記密碼1.點(diǎn)擊忘記密碼2.根據(jù)手機(jī)號和驗(yàn)證碼修改密碼修改成功修改成功用戶可以在登錄界面進(jìn)行注冊,如圖7.1所示,可登錄即為注冊成功。圖7.1注冊界面用戶登錄信息輸入錯誤界面,如圖7.2所示。圖7.2登錄界面忘記密碼,修改密碼界面,如圖7.3所示。圖7.3未登錄界面(2)教師首頁模塊對教師首頁模塊的學(xué)科分類,學(xué)員庫,篩選學(xué)員進(jìn)行測試,按照用戶瀏覽學(xué)科分類、學(xué)員庫和篩選學(xué)員的流程來設(shè)計(jì)教師首頁模塊的測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.2。表7.2教師首頁模塊用例表功能描述點(diǎn)擊學(xué)科分類和學(xué)員庫可進(jìn)入查看學(xué)員列表,可根據(jù)條件篩選學(xué)員用例目的測試在該家教系統(tǒng)中各相關(guān)功能是否正常前提條件網(wǎng)絡(luò)連接正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果2-1學(xué)科分類學(xué)員展示1.點(diǎn)擊學(xué)科分類展示學(xué)員列表展示學(xué)員列表2-2學(xué)員庫學(xué)員展示1.點(diǎn)擊學(xué)員庫展示學(xué)員列表展示學(xué)員列表2-3篩選學(xué)員1.點(diǎn)擊學(xué)員庫2.選擇篩選條件篩選條件展現(xiàn)篩選結(jié)果展現(xiàn)篩選結(jié)果2-4學(xué)員詳情查看1.點(diǎn)擊學(xué)員庫2.點(diǎn)擊查看詳情展示學(xué)員詳情展示學(xué)員詳情學(xué)科分類學(xué)員展示結(jié)果如圖7.4所示。圖7.4學(xué)科分類學(xué)員展示界面學(xué)員庫學(xué)員展示結(jié)果如圖7.5所示。圖7.5學(xué)員庫學(xué)員展示界面篩選學(xué)員結(jié)果如圖7.6所示。圖7.6篩選學(xué)員結(jié)果界面查看學(xué)員詳情結(jié)果如圖7.7所示。圖7.7學(xué)員詳情界面(3)教師端消息界面模塊對消息界面模塊中的查看消息詳情功能進(jìn)行測試,按照用戶查看消息詳情的流程來設(shè)計(jì)消息界面模塊的測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.3。表7.3教師端消息界面模塊用例表功能描述查看站內(nèi)通知、預(yù)約信息,查看訂單和約課信息用例目的測試在系統(tǒng)中查看通知詳情功能是否正常前提條件進(jìn)入頁面,網(wǎng)絡(luò)正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果3-1查看通知詳情1.點(diǎn)擊查看消息消息詳情界面展示消息詳情界面展示消息詳情界面展示如圖7.8所示。圖7.8消息詳情界面(4)教師端個人中心模塊對個人中心模塊中的查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看接單記錄、學(xué)員約課情況,對不當(dāng)?shù)膶W(xué)員情況進(jìn)行舉報等功能進(jìn)行測試,按照用戶使用功能的流程來設(shè)計(jì)個人中心模塊的測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.4。表7.4教師端個人中心用例表功能描述查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看接單記錄,學(xué)員約課情況,對不當(dāng)?shù)膶W(xué)員情況進(jìn)行舉報用例目的測試在該家教系統(tǒng)中各相關(guān)功能是否正常前提條件進(jìn)入個人中心頁面,網(wǎng)絡(luò)正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果3-1查看個人資料1.點(diǎn)擊個人中心展示個人資料詳情展示個人資料詳情3-2編輯個人資料1.點(diǎn)擊個人中心2.點(diǎn)擊編輯個人資料編輯成功編輯成功3-3實(shí)名認(rèn)證1.點(diǎn)擊個人中心2.點(diǎn)擊實(shí)名認(rèn)證實(shí)名認(rèn)證信息編輯成功編輯成功續(xù)表7.43-4查看訂單1.點(diǎn)擊查看我的訂單展示訂單詳情展示訂單詳情3-5學(xué)員舉報1.點(diǎn)擊查看我的訂單2.選擇不當(dāng)學(xué)員訂單舉報舉報成功舉報成功3-6查看約課情況1.點(diǎn)擊查看我的約課展示約課詳情展示約課詳情3-7約課訂單接單1.點(diǎn)擊查看我的訂單2.選擇約課訂單接單接單成功接單成功個人資料詳情界面展示如圖7.9所示。圖7.9個人資料詳情界面編輯個人資料功能界面展示如圖7.10所示。圖7.10個人資料編輯界面實(shí)名認(rèn)證功能界面展示如圖7.11所示。圖7.11實(shí)名認(rèn)證功能界面訂單詳情界面展示如圖7.12所示。圖7.12訂單詳情界面訂單舉報功能界面如圖7.13所示。圖7.13訂單詳情界面約課情況詳情界面如圖7.14所示。圖7.14約課情況詳情界面約課訂單接單功能界面如圖7.15所示。圖7.15約課訂單接單功能界面(5)學(xué)員首頁模塊對教師首頁模塊的學(xué)科分類,教員庫,篩選教員進(jìn)行測試,按照用戶瀏覽學(xué)科分類、教員庫和篩選教員的流程來設(shè)計(jì)教師首頁模塊的測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.5。表7.5學(xué)員首頁模塊用例表功能描述點(diǎn)擊學(xué)科分類和教員庫可進(jìn)入查看教員列表,可根據(jù)條件篩選教員用例目的測試在該家教系統(tǒng)中各相關(guān)功能是否正常前提條件網(wǎng)絡(luò)連接正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果2-1學(xué)科分類教員展示1.點(diǎn)擊學(xué)科分類展示教員列表展示教員列表2-2教員庫教員展示1.點(diǎn)擊教員庫展示教員列表展示教員列表2-3篩選教員1.點(diǎn)擊教員庫2.選擇篩選條件篩選條件展現(xiàn)篩選結(jié)果展現(xiàn)篩選結(jié)果學(xué)科分類教員展示結(jié)果如圖7.16所示。圖7.16學(xué)科分類教員展示界面教員庫教員展示結(jié)果如圖7.17所示。圖7.17教員庫教員展示界面篩選教員結(jié)果如圖7.18所示。圖7.18篩選教員結(jié)果界面(6)學(xué)員端消息界面模塊對消息界面模塊中的查看消息詳情功能進(jìn)行測試,按照用戶查看消息詳情的流程來設(shè)計(jì)消息界面模塊的測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.6。表7.6學(xué)員端消息界面模塊用例表功能描述查看站內(nèi)通知、預(yù)約信息,查看訂單和約課信息用例目的測試在系統(tǒng)中查看通知詳情功能是否正常前提條件進(jìn)入頁面,網(wǎng)絡(luò)正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果3-1查看通知詳情1.點(diǎn)擊查看消息消息詳情界面展示消息詳情界面展示消息詳情界面展示如圖7.19所示。圖7.19消息詳情界面(7)學(xué)員端個人中心模塊對個人中心模塊中的查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看接單記錄、學(xué)員約課情況,對教員訂單進(jìn)行評價等功能進(jìn)行測試,按照用戶使用功能的流程來設(shè)計(jì)個人中心模塊的測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.7。表7.7學(xué)員端個人中心模塊用例表功能描述查看編輯個人資料,實(shí)名認(rèn)證個人信息,查看接單記錄,學(xué)員約課情況,對教員訂單進(jìn)行評價用例目的測試在該家教系統(tǒng)中各相關(guān)功能是否正常前提條件進(jìn)入個人中心頁面,網(wǎng)絡(luò)正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果3-1查看個人資料1.點(diǎn)擊個人中心展示個人資料詳情展示個人資料詳情3-2編輯個人資料1.點(diǎn)擊個人中心2.點(diǎn)擊編輯個人資料編輯成功編輯成功3-3實(shí)名認(rèn)證1.點(diǎn)擊個人中心2.點(diǎn)擊實(shí)名認(rèn)證實(shí)名認(rèn)證信息編輯成功編輯成功3-4查看訂單1.點(diǎn)擊查看我的訂單展示訂單詳情展示訂單詳情3-5訂單評價1.點(diǎn)擊查看我的訂單2.選擇訂單進(jìn)行評價評價信息評價成功評價成功3-6查看約課情況1.點(diǎn)擊查看我的約課展示約課詳情展示約課詳情個人資料詳情界面展示如圖7.20所示。圖7.20個人資料詳情界面編輯個人資料功能界面展示如圖7.21所示。圖7.21個人資料編輯界面實(shí)名認(rèn)證功能界面展示如圖7.22所示。圖7.22實(shí)名認(rèn)證功能界面訂單詳情界面展示如圖7.23所示。圖7.23訂單詳情界面訂單評價功能界面如圖7.24所示。圖7.24訂單評價功能界面約課情況詳情界面如圖7.25所示。圖7.25約課情況詳情界面(8)管理員端審核模塊對審核實(shí)名認(rèn)證信息,學(xué)員訂單,教師專業(yè)技能信息等功能進(jìn)行測試,按照管理員審核的流程來設(shè)計(jì)測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.8。表7.8管理員端審核模塊用例表功能描述審核實(shí)名認(rèn)證信息,學(xué)員訂單,教師專業(yè)技能信息等用例目的測試在系統(tǒng)中審核模塊功能是否正常前提條件進(jìn)入頁面,網(wǎng)絡(luò)正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果3-1訂單審核1.點(diǎn)擊查看訂單審核2.選擇通過或者拒絕審核成功審核成功3-2實(shí)名認(rèn)證審核1.點(diǎn)擊查看實(shí)名認(rèn)證審核2.選擇通過或者拒絕審核成功審核成功訂單審核界面展示如圖7.26所示。圖7.26訂單審核界面實(shí)名認(rèn)證審核界面展示如圖7.27所示。圖7.27實(shí)名認(rèn)證審核界面(9)管理員端封禁模塊對對于差評過多的教師或?qū)W員賬戶予以封禁功能進(jìn)行測試,按照管理員封禁的流程來設(shè)計(jì)測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.9。表7.9管理員端封禁模塊用例表功能描述對于差評過多的教師或?qū)W員賬戶予以封禁用例目的測試在系統(tǒng)中封禁模塊功能是否正常前提條件進(jìn)入頁面,網(wǎng)絡(luò)正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果3-1賬戶封禁1.點(diǎn)擊查看舉報管理2.查看舉報記錄3.選擇通過或拒絕審核成功審核成功舉報管理界面展示如圖7.28所示。圖7.28舉報管理界面(10)管理員端系統(tǒng)維護(hù)對用戶賬號管理,學(xué)科分類信息管理維護(hù)等功能進(jìn)行測試,按照管理員系統(tǒng)維護(hù)的流程來設(shè)計(jì)測試用例,并給出預(yù)期結(jié)果,將預(yù)期結(jié)果與測試后的實(shí)際結(jié)果進(jìn)行比較,具體測試情況見表7.10。表7.10管理員端系統(tǒng)維護(hù)用例表功能描述對用戶賬號管理,學(xué)科分類信息管理維護(hù)用例目的測試在系統(tǒng)中系統(tǒng)維護(hù)功能是否正常前提條件進(jìn)入頁面,網(wǎng)絡(luò)正常,數(shù)據(jù)庫連接正常子用例編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果3-1用戶信息編輯1.點(diǎn)擊查看用戶管理2.選擇編輯3.編輯用戶信息用戶信息編輯成功編輯成功3-2用戶賬號封禁1.點(diǎn)擊查看用戶管理2.選擇賬戶禁用禁用成功禁用成功3-3學(xué)科分類管理1.點(diǎn)擊查看學(xué)科分類2.選擇學(xué)科編輯或刪除編輯信息編輯成功編輯成功用戶信息編輯界面展示如圖7.29所示。圖7.29用戶信息編輯界面賬戶封禁界面展示如圖7.30所示。圖7.30賬戶封禁界面學(xué)科分類信息管理界面展示如圖7.31、圖7.32所示。圖7.31學(xué)科分類信息編輯界面圖7.32學(xué)科分類刪除界面7.2.2非功能測試(1)安全性測試安全性測試可以對程序的危險處理和危險防止進(jìn)行測試。如圖7.33所示,用戶的密碼加密后不可見不可復(fù)制;系統(tǒng)中用戶和管理員的權(quán)限區(qū)分明確,不會造成權(quán)限混亂。系統(tǒng)數(shù)據(jù)完整、易于管理、有良好的獨(dú)立性,可備份不可恢復(fù)。圖7.33數(shù)據(jù)庫密碼安全性(2)兼容性測試如表7.11所示,該系統(tǒng)在不同的瀏覽器均可正常使用,未出現(xiàn)屏幕顯示不全或顯示出錯的情況,在管理員使用的網(wǎng)頁界面中,未出現(xiàn)顯示不完整或顯示異常的情況,功能完整,無重疊現(xiàn)象。表7.11數(shù)據(jù)庫密碼安全性手機(jī)型號/電腦瀏覽器類型顯示情況IE瀏覽器正常edge瀏覽器正常QQ瀏覽器正常chrome瀏覽器正常7.3小結(jié)本章節(jié)主要對系統(tǒng)進(jìn)行功能性和非功能性的測試,以提升該系統(tǒng)的正確性、健壯性和吞吐量等,保障系統(tǒng)的正常運(yùn)行,便于對該系統(tǒng)進(jìn)行后續(xù)運(yùn)營和維護(hù)。 第8章總結(jié)與展望8總結(jié)與展望隨著們生活水平的提高﹐家長為了孩子的發(fā)展,越來越熱衷于“一對一”的家庭教師進(jìn)行高質(zhì)量的教學(xué)輔導(dǎo),但是普通家教公司信息量小,效率低,不能很好地滿足家長的需求。為了可以充分應(yīng)用互聯(lián)網(wǎng)信息量大、信息流通快捷等優(yōu)點(diǎn),因此本文決定開發(fā)一個“易智教網(wǎng)絡(luò)家教系統(tǒng)”,能有效的幫助家教公司提高效率,教員可以更方便的在系統(tǒng)中篩選適合自己的工作,家長也可以邀請到合心意的老師。本文主要完成了以下工作:(1)首先通過研究背景、研究現(xiàn)狀、關(guān)鍵技術(shù)對課題應(yīng)用前景和現(xiàn)狀發(fā)展情況進(jìn)行了解,并該系統(tǒng)所用的技術(shù)進(jìn)行分析學(xué)習(xí),做好前期的準(zhǔn)備工作。(2)其次對該系統(tǒng)進(jìn)行了業(yè)務(wù)分析、需求分析、可行性分析三個方面的分析,并分析說明了該系統(tǒng)的用例圖、數(shù)據(jù)流圖等。(3)然后通過架構(gòu)設(shè)計(jì)、功能模塊設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)、接口設(shè)計(jì)對該系統(tǒng)進(jìn)行了一個總體的設(shè)計(jì),了解了該系統(tǒng)的主要功能、數(shù)據(jù)庫和接口,該系統(tǒng)主要分為教師端、學(xué)員端、管理員端,學(xué)員端的主要功能模塊有學(xué)員首頁:可以查看篩選教員;消息模塊,查看站內(nèi)通知,約課信息及反饋等;推薦模塊,根據(jù)學(xué)生篩選條件及教師評價推薦符合的好評教師;個人中心模塊:可以查看和編輯個人資料、實(shí)名認(rèn)證個人信息、查看約課和訂單記錄,對教師進(jìn)行評價等。教員端的主要功能模塊有教員首頁:可以查看篩選學(xué)員;消息模塊,查看站內(nèi)通知,約課信息及反饋等;推薦模塊,根據(jù)教員篩選條件推薦符合的訂單;個人中心模塊:可以查看和編輯個人資料、實(shí)名認(rèn)證個人信息、查看約課和訂單記錄,對不當(dāng)?shù)膶W(xué)員進(jìn)行舉報等。管理員端主要包括審核模塊:可以審核實(shí)名認(rèn)證信息、訂單等,封禁模塊:可以封禁不當(dāng)賬戶。系統(tǒng)主要有四個數(shù)據(jù)庫:管理員表、學(xué)員表、教師表、訂單表。(4)接著對該系統(tǒng)進(jìn)行對象、交互、功能模塊三個方面的設(shè)計(jì)進(jìn)行分析,通過詳細(xì)解釋說明該系統(tǒng)的類圖、時序圖和流程圖,了解到該系統(tǒng)的相關(guān)類和運(yùn)行邏輯。(5)后來,通過三個模塊的界面設(shè)計(jì)實(shí)現(xiàn),分析該系統(tǒng)的前后端功能實(shí)現(xiàn)原理。(6)最后通過測試,對該系統(tǒng)的功能和非功能進(jìn)行測試,以確保該系統(tǒng)的健壯性。盡管達(dá)到了預(yù)期的功能,但仍然存在許多不足之處,比如頁面排版仍有不足,色彩的對比還不夠合理,很多細(xì)節(jié)處的功能還不夠完善。 參考文獻(xiàn)參考文獻(xiàn)趙大偉.我國大學(xué)生家教現(xiàn)象透析[D].東北師范大學(xué),2006.DeqiaoHuang.TheOnlineEducationRiskResponseModesandSolutionsundertheBackgroundof“COVID-19”EpidemicSituationinChina[J].InternationalJournalofFrontiersinEngineeringTechnology,2020,2(2):91-98.FriederikeBlume,AndreaSchmidt,AndreaC.Kramer,FlorianSchmiedek,AndreasB.Neubauer.HomeschoolingduringtheSARS-CoV-2pandemic:theroleofstudents’traitself-regulationandtaskattributesofdailylearningtasksforstudents’dailyself-regulation[J].ZeitschriftfürErziehungswissenschaft,2021,24(2):1-25.張麗,李楠.易家教信息管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].信息技術(shù)與信息化,2019(04):35-36+39.王建,楊瑞.基于java的大學(xué)生家教管理系統(tǒng)設(shè)計(jì)[J].信息通信,2019(10):89-90.陳靜.家教管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].山東大學(xué),2011.RazaAsad,KaziHameedullah,AliMuhammad.MetacognitiveMathematicsTutor:MathematicsTutoringSystemwithMetacognitiveStrategies[J].InternationalJournalofComputerApplications,2016,153(4):21-31.馬建強(qiáng),徐太星.協(xié)同過濾算法下公共計(jì)算機(jī)慕課資源推薦系統(tǒng)[J].現(xiàn)代電子技術(shù),2022,45(23):177-181.張華欣,韓霄萌,王同梅.基于協(xié)同過濾的智能影視推薦系統(tǒng)設(shè)計(jì)[J].現(xiàn)代計(jì)算機(jī),2022,28(15):72-76.任妮,吳瓊,栗薈荃.推薦系統(tǒng)算法分析與研究[J].電子技術(shù)與軟件工程,2022(17):238-241.錢玉婷.大數(shù)據(jù)時代基于用戶需求的推薦多樣性方法研究綜述[J].中國商論,2022(22):77-79.陳彬,張榮梅.智能推薦系統(tǒng)研究綜述[J].河北省科學(xué)院學(xué)報,2018,35(03):82-92.任妮,吳瓊,栗薈荃.推薦系統(tǒng)算法分析與研究[J].電子技術(shù)與軟件工程,2022(17):238-241.謝輔雯,陳如.師范生家教管理系統(tǒng)的研究與設(shè)計(jì)[J].電腦知識與技術(shù),2019,15(21):100-101.李潔蕾.滇西地區(qū)家教信息服務(wù)平臺的設(shè)計(jì)與實(shí)現(xiàn)[D].山東大學(xué),2017. 致謝附錄附錄一@Slf4j@RestController@RequestMapping("/user")publicclassUserControllerextendsBaseController<User,UserService>{@AutowiredprivateTeacherServiceteacherService;@GetMapping("/page")publicR<Page>list(intpage,intpageSize,Stringname){Page<User>pageInfo=newPage(page,pageSize);LambdaQueryWrapper<User>eLambdaQueryWrapper=newLambdaQueryWrapper<>();eLambdaQueryWrapper.like(StringUtils.isNotBlank(name),User::getName,name);returnR.success(baseService.page(pageInfo,eLambdaQueryWrapper));}@GetMapping("/pagePlus")publicR<Page>pagePlus(intpage,intpageSize,Stringarea,Longmajor,Stringgrade,Stringwage){QueryWrapper<UserVO>qw=newQueryWrapper<>();qw.lambda().eq(StringUtils.isNotBlank(area),User::getArea,area);qw.lambda().eq(major!=null,User::getMajor,major);qw.lambda().eq(StringUtils.isNotBlank(grade),User::getGrade,grade);qw.lambda().eq(StringUtils.isNotBlank(wage),User::getWage,wage);Page<UserVO>pageInfo=newPage(page,pageSize);returnR.success(baseService.getVO(pageInfo,qw));}@GetMapping("/pagePlusTeacherLike")publicR<Page>pagePlusTeacherLike(intpage,intpageSize){QueryWrapper<UserVO>qw=newQueryWrapper<>();TeacherbyId=teacherService.getById(ThreadLocalContext.getCurrentId());qw.lambda().eq(User::getMajor,byId.getMajor());Page<UserVO>pageInfo=newPage(page,pageSize);returnR.success(baseService.getVO(pageInfo,qw));}@GetMapping("/self")publicR<Page>self(intpage,intpageSize){Page<UserVO>pageInfo=newPage(page,pageSize);QueryWrapper<UserVO>eLambdaQueryWrapper=newQueryWrapper<>();eLambdaQueryWrapper.lambda().eq(User::getId,ThreadLocalContext.getCurrentId());returnR.success(baseService.getVO(pageInfo,eLambdaQueryWrapper));}@Decrypt@PostMapping("/login")publicR<User>login(HttpSessionsession,@RequestBodyMapmap){Stringpassword=map.get("password").toString();StringuserId=map.get("userName").toString();if(session.getAttribute(Constants.KAPTCHA_SESSION_KEY)==null){returnR.error("驗(yàn)證碼失效");}StringvailCode=session.getAttribute(Constants.KAPTCHA_SESSION_KEY).toString();Stringcode=map.get("code").toString();if(!code.equals(vailCode)){returnR.error(session.getAttribute(Constants.KAPTCHA_SESSION_KEY).toString());}//1.md5加密password=DigestUtils.md5DigestAsHex(password.getBytes());//2.查詢數(shù)據(jù)庫LambdaQueryWrapper<User>queryWrapper=newLambdaQueryWrapper<>();queryWrapper.eq(User::getName,userId);Useruser1=baseService.getOne(queryWrapper);//3.判斷是否存在用戶if(user1==null){returnR.error("用戶不存在");}//4.比對密碼if(!user1.getPassword().equals(password)){returnR.error("密碼錯誤");}//5.查詢用戶狀態(tài)if(user1.getStatus()==0){returnR.error("賬號已禁用");}//6.登入成功session.setAttribute("user",user1.getId());returnR.success(user1);}//登出@PostMapping("/logout")publicR<String>logout(HttpSessionsession){session.removeAttribute("user");returnR.success("登出成功");}@GetMapping("/forget")publicR<String>forget(@RequestParamStringphone,HttpSessionsession){if(StringUtils.isNotBlank(phone)){Stringcode=ValidateCodeUtils.generateValidateCode4String(4);("手機(jī)驗(yàn)證碼{}",code);session.setAttribute(phone,code);returnR.success("手機(jī)驗(yàn)證碼發(fā)送成功");}returnR.error("手機(jī)驗(yàn)證碼發(fā)送失敗");}@PostMapping("/alterPassword")publicR<String>alterPassword(@RequestBodyMapmap,HttpSessionsession){Stringphone=map.get("phone").toString();Stringcode=map.get("code").toString();Stringpassword=map.get("newPassword").toString();Objectattribute=session.getAttribute(phone);if(attribute!=null&&attribute.equals(code)){LambdaQueryWrapper<User>queryWrapper=newLambdaQueryWrapper<>();queryWrapper.eq(User::getPhone,phone);Userone=baseService.getOne(queryWrapper);if(one==null){returnR.error("手機(jī)號不存在");}password=DigestUtils.md5DigestAsHex(password.getBytes());one.setPassword(password);baseService.updateById(one);returnR.success("修改成功");}returnR.error("失敗");}@PostMapping("/register")publicR<String>register(@RequestBodyMapmap,HttpSessionsession){Stringphone=map.get("phone").toString();Stringcode=map.get("code").toString();Stringpassword=map.get("newPassword").toString();StringuserName=map.get("userName").toString();Integersex=Integer.valueOf(map.get("sex").toString());Objectattrib
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 手機(jī)編制協(xié)議合同
- 入股扶貧協(xié)議書
- 企業(yè)限電協(xié)議書
- 幼兒園長托協(xié)議書
- 余款未付協(xié)議書
- 簽了合同三方協(xié)議
- 帶動貧苦戶協(xié)議書
- 綜合布線合同范本
- 白沙島拆遷協(xié)議書
- 綠化清理合同范本
- 四川省成都市郫都區(qū)2024-2025學(xué)年八年級上學(xué)期期末檢測物理試題(含答案)
- 15分鐘應(yīng)急救援圈
- 2026年華北電力大學(xué)輔導(dǎo)員及其他崗位招聘31人歷年題庫附答案解析
- 河北省唐山市2024-2025學(xué)年高二上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 押運(yùn)證的考試題及答案
- 2026年遼寧農(nóng)業(yè)職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫帶答案詳解
- 2025年消防心理測試測試題及答案
- 2025年及未來5年市場數(shù)據(jù)中國溶聚丁苯橡膠市場前景預(yù)測及投資規(guī)劃研究報告
- 2025年食品安全衛(wèi)生監(jiān)督員考試題庫及答案指導(dǎo)
- 2025年掌上華醫(yī)(醫(yī)院版)自測三基三嚴(yán)考試題庫及答案(含各題型)
- 2025年廣東省常用非金屬材料檢測技術(shù)培訓(xùn)考核核心考點(diǎn)速記速練300題(附答案)
評論
0/150
提交評論