




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于Jsp+SSH+MySQL的餐廳點(diǎn)餐系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)20936_WPSOffice_Level1摘要 314364_WPSOffice_Level1第1章緒論 514364_WPSOffice_Level21.1課題背景及意義 532040_WPSOffice_Level21.2國(guó)內(nèi)外研究現(xiàn)狀 514364_WPSOffice_Level31.2.1國(guó)外的研究現(xiàn)狀 532040_WPSOffice_Level31.2.2國(guó)內(nèi)的研究現(xiàn)狀 532040_WPSOffice_Level1第2章可行性分析及技術(shù)介紹 617959_WPSOffice_Level22.1社會(huì)可行性 64273_WPSOffice_Level22.2技術(shù)可行性 613996_WPSOffice_Level22.3操作可行性 64450_WPSOffice_Level22.4系統(tǒng)的技術(shù)介紹 617150_WPSOffice_Level22.5系統(tǒng)開(kāi)發(fā)平臺(tái)及運(yùn)行環(huán)境 717959_WPSOffice_Level1第3章需求分析 812771_WPSOffice_Level23.1系統(tǒng)功能模塊概述和分析 816189_WPSOffice_Level23.2業(yè)務(wù)流程分析 96529_WPSOffice_Level23.3系統(tǒng)功能模塊分析 104714_WPSOffice_Level23.4數(shù)據(jù)庫(kù)分析 1131732_WPSOffice_Level33.4.1概念模型設(shè)計(jì) 1132745_WPSOffice_Level33.4.2數(shù)據(jù)庫(kù)表設(shè)計(jì) 1424928_WPSOffice_Level33.4.3主要功能實(shí)現(xiàn)描述 174273_WPSOffice_Level1第4章餐廳點(diǎn)餐系統(tǒng)的實(shí)現(xiàn) 239345_WPSOffice_Level24.1首頁(yè)設(shè)計(jì) 2331732_WPSOffice_Level24.2注冊(cè)頁(yè)面 2332745_WPSOffice_Level24.3登錄頁(yè)面 2431441_WPSOffice_Level24.4用戶點(diǎn)餐 2517586_WPSOffice_Level24.5用戶購(gòu)物車(chē) 262672_WPSOffice_Level24.6用戶訂單管理 275513_WPSOffice_Level24.7信息修改 2819444_WPSOffice_Level24.8用戶管理 297039_WPSOffice_Level24.9訂單管理 309890_WPSOffice_Level24.10圖片管理 3124928_WPSOffice_Level24.11菜品管理 33104_WPSOffice_Level24.12菜品分類(lèi)管理 3419070_WPSOffice_Level24.13選項(xiàng)管理 3513996_WPSOffice_Level1第5章系統(tǒng)測(cè)試 3630687_WPSOffice_Level25.1測(cè)試的目的與目標(biāo) 362367_WPSOffice_Level25.2測(cè)試用例 364933_WPSOffice_Level25.3測(cè)試結(jié)論 444450_WPSOffice_Level1總結(jié) 4517150_WPSOffice_Level1參考文獻(xiàn) 46摘要M餐廳需要一款能在Windows計(jì)算機(jī)和Windows平板電腦上運(yùn)行的JavaWeb餐廳點(diǎn)餐系統(tǒng),餐廳會(huì)在每一個(gè)包間和卡臺(tái)都提供一個(gè)登錄餐廳點(diǎn)餐系統(tǒng)的Windows平板電腦,顧客可以使用提供好的平板電腦自主的或在服務(wù)生的幫助下進(jìn)行菜品的瀏覽和點(diǎn)餐,商家可以在后臺(tái)使用Windows計(jì)算機(jī)查看、處理客房和卡臺(tái)發(fā)來(lái)的訂單,點(diǎn)餐的全過(guò)程必須實(shí)現(xiàn)無(wú)紙化。M餐廳點(diǎn)餐系統(tǒng)的主要技術(shù)使用的是Jsp+SSH+MySQL,除此以外,在該系統(tǒng)中還使用了Redis緩存技術(shù)、Struts框架技術(shù)。基本功能包括:管理員管理菜品信息、用戶信息、菜品類(lèi)型、訂單信息、處理訂單、圖片管理等功能;管理員、用戶登錄系統(tǒng)、注冊(cè)的功能;用戶添加菜品到購(gòu)物車(chē)、提交訂單、查看訂單詳情、修改房間信息等功能。是一個(gè)功能比較完善的Web餐廳點(diǎn)餐系統(tǒng)。關(guān)鍵詞:JavaWeb技術(shù)餐廳點(diǎn)餐系統(tǒng)SSH框架第1章緒論1.1課題背景及意義今日的中國(guó),特別多的應(yīng)用程序已經(jīng)在國(guó)人日常生活中普及開(kāi)來(lái),提高了現(xiàn)代人的生活品質(zhì)。在網(wǎng)絡(luò)信息時(shí)代,外賣(mài)的點(diǎn)餐方式如美團(tuán)、餓了么,當(dāng)人們與親朋小聚一下,或是在外游玩時(shí)就需去傳統(tǒng)門(mén)店就餐。目前二三線城市所有的傳統(tǒng)餐廳,主要的點(diǎn)餐方式是顧客在下單時(shí)商家所提供的紙質(zhì)菜單、菜譜,由服務(wù)員用手書(shū)寫(xiě)在菜單上,選擇時(shí)涂涂改改,在訂單的增加修改刪除的過(guò)程中極易出現(xiàn)錯(cuò)誤,給顧客和餐廳造成不必要的麻煩、爭(zhēng)執(zhí)、損失。紙質(zhì)的菜單、菜譜也并不符合環(huán)保要求,一旦菜品發(fā)生改動(dòng),如:菜品價(jià)格發(fā)生變化時(shí);需要上架、下架菜品和酒水時(shí),在原有的菜譜上涂涂改改很影響美觀,換一個(gè)新菜譜點(diǎn)菜單既需要花費(fèi)設(shè)計(jì)費(fèi)用,又造成紙張浪費(fèi),還需要時(shí)間。同時(shí)傳統(tǒng)的點(diǎn)餐方式千篇一律,在這個(gè)行業(yè)除了要有優(yōu)秀的廚藝和就餐環(huán)境、低廉的價(jià)格外,還要擁有其他的特色才能在這個(gè)行業(yè)中體現(xiàn)出與同行們的不同,尤其是一些中高檔餐廳當(dāng)中,通過(guò)借助電子商務(wù)的發(fā)展可以使陳舊的傳統(tǒng)餐飲業(yè)經(jīng)營(yíng)模式脫胎換骨,在行業(yè)中樹(shù)立自己的標(biāo)簽,給食客們留下深刻印象。1.2國(guó)內(nèi)外研究現(xiàn)狀1.2.1國(guó)外的研究現(xiàn)狀在國(guó)外,尤其是歐美這樣的發(fā)達(dá)地區(qū),在互聯(lián)網(wǎng)方面浸淫多年,點(diǎn)餐系統(tǒng)所以作為互聯(lián)網(wǎng)的衍生產(chǎn)品,發(fā)展的速度自然也比較快,對(duì)于在歐美發(fā)的地區(qū)消費(fèi)者而言,這種點(diǎn)餐方式算是比較常見(jiàn),尤其現(xiàn)在隨著平板與手機(jī)變得廉價(jià),只需要一臺(tái)能夠聯(lián)網(wǎng)的平板或手機(jī)就可以在房間內(nèi)自主的或者在服務(wù)生的幫助下完成點(diǎn)餐的服務(wù)??梢哉f(shuō),在國(guó)外大多數(shù)的餐廳中,在房間內(nèi)使用平板點(diǎn)餐已經(jīng)成為一種大眾化的點(diǎn)餐方式。1.2.2國(guó)內(nèi)的研究現(xiàn)狀改革開(kāi)放這將近四十年如白駒過(guò)隙一般匆匆而過(guò),借著國(guó)家的互聯(lián)網(wǎng)政策,網(wǎng)絡(luò)點(diǎn)餐模式首先在北上廣深等地陸續(xù)出現(xiàn),接著滲透至各個(gè)大中小城市,網(wǎng)絡(luò)點(diǎn)餐系統(tǒng)極大的節(jié)省了商家的人力成本,服務(wù)生工作效率也得到了提升,減少人為操作帶來(lái)的不必要的錯(cuò)誤。點(diǎn)餐系統(tǒng)的優(yōu)勢(shì)能讓無(wú)數(shù)餐飲商家從中受益,并且方便了想在傳統(tǒng)餐廳、餐館酒店的消費(fèi)者的用餐需求?;ヂ?lián)網(wǎng)技術(shù)和思想正在滲透至傳統(tǒng)門(mén)店點(diǎn)餐服務(wù)模式中,為傳統(tǒng)用戶點(diǎn)餐交互等方式注入新的活力,更加提高用戶體驗(yàn)的幸福感。
第2章可行性分析及技術(shù)介紹2.1社會(huì)可行性現(xiàn)在乃至以后很長(zhǎng)的一段時(shí)間,沒(méi)有任何技術(shù)能代替互聯(lián)網(wǎng)發(fā)揮的作用,幾乎每個(gè)領(lǐng)域中都需要也都能找到適合自己網(wǎng)絡(luò)工具,在這種背景下,點(diǎn)餐系統(tǒng)得以出現(xiàn)并快速發(fā)展。餐飲行業(yè)通過(guò)點(diǎn)餐系統(tǒng)能夠達(dá)到降低成本、提高利潤(rùn)、提高雇員工作效率的作用。M餐廳處在企業(yè)、高校集中的區(qū)域,年輕人尤其是在校大學(xué)生消費(fèi)力度比較大,愿意嘗試原來(lái)沒(méi)嘗試過(guò)的事物,容易成為M餐廳的目標(biāo)客戶,生意越好,點(diǎn)餐系統(tǒng)的優(yōu)勢(shì)就更加明顯,點(diǎn)餐系統(tǒng)的主打優(yōu)勢(shì)就是,用最少的雇員,能讓雇員干更多、質(zhì)量更好的活兒,說(shuō)白了就是提高服務(wù)生工作效率和工作質(zhì)量。2.2技術(shù)可行性M餐廳點(diǎn)餐系統(tǒng)采用的是Jsp+MySQL+SSH框架進(jìn)行開(kāi)發(fā),電腦使用的Windows1064位操作系統(tǒng),采用Bootstrap框架的前端技術(shù)。數(shù)據(jù)庫(kù)采用MySQL數(shù)據(jù)庫(kù),MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù),維護(hù)上比較容易,開(kāi)發(fā)方面也比較方便快捷。而從硬件方面來(lái)說(shuō),現(xiàn)如今的科技水平,硬件性能本就過(guò)剩,而且各大廠商也從未停止硬件的升級(jí),越來(lái)越大緩存和內(nèi)存,越來(lái)越高的可靠性,越來(lái)越親民的價(jià)格,系統(tǒng)的需要,現(xiàn)在任何一臺(tái)個(gè)人電腦都可以滿足。2.3操作可行性目前,該系統(tǒng)在大多數(shù)計(jì)算機(jī)都能完美運(yùn)行,該系統(tǒng)頁(yè)面上有完整的提示信息,操作門(mén)檻低,商家經(jīng)過(guò)相關(guān)人員稍加指導(dǎo)便能夠輕松的操作此軟件。2.4系統(tǒng)的技術(shù)介紹1.Javascript腳本語(yǔ)言JavaScript是直譯型腳本語(yǔ)言,屬于動(dòng)態(tài)型、弱類(lèi)型、基于原型的語(yǔ)言,幾乎兼容所有瀏覽器。2.JQuery類(lèi)庫(kù)JQuery是快速、簡(jiǎn)潔的JavaScript框架,用來(lái)封裝JavaScript常用代碼,具有優(yōu)化HTML文檔操作、事件處理、動(dòng)畫(huà)設(shè)計(jì)和Ajax交互的作用,有靈活的CSS選擇器,還可以對(duì)CSS選擇器進(jìn)行擴(kuò)展。3.Bootstrap框架Bootstrap是用于前端開(kāi)發(fā)的一種工具包,是種CSS/HTML框架。4.MySQL數(shù)據(jù)庫(kù)MySql屬于關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),具有速度快、體積小、靈活性高、成本低,而且開(kāi)放源碼的特點(diǎn)。5.MVC開(kāi)發(fā)模式MVC模式(Model-View-Controller),MVC模式把系統(tǒng)分為三個(gè)基本部分:模型、視圖和控制器。6.SSH框架SSH是struts+spring+hibernate的一個(gè)集成框架,開(kāi)發(fā)的程序有結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的特點(diǎn)。2.5系統(tǒng)開(kāi)發(fā)平臺(tái)及運(yùn)行環(huán)境1.系統(tǒng)開(kāi)發(fā)平臺(tái)M餐廳點(diǎn)餐系統(tǒng)的開(kāi)發(fā)使用了TomcatWeb應(yīng)用服務(wù)器。2.運(yùn)行環(huán)境操作系統(tǒng):WindowsXP以上版本。服務(wù)器軟件:Tomcat6.0以上版本。瀏覽器:FireFox瀏覽器、Google瀏覽器。
第3章需求分析3.1系統(tǒng)功能模塊概述和分析M餐廳點(diǎn)餐系統(tǒng)采用B/S架構(gòu),用戶分為客房以及管理員兩類(lèi)??头恐械念櫩妥约夯蛟诜?wù)生的幫助下進(jìn)行菜品的選擇添加、購(gòu)物車(chē)管理、訂單管理,而管理員進(jìn)行所有用戶的管理、訂單管理、圖片管理、菜品管理、菜品類(lèi)型管理以及系統(tǒng)參數(shù)管理。M餐廳點(diǎn)餐系統(tǒng)主要功能如下:客房和管理員共用同一登錄注冊(cè)功能。1.客房主要功能:(1)菜品的添加:可以對(duì)瀏覽和添加點(diǎn)餐系統(tǒng)所開(kāi)放的菜品,將其放入購(gòu)物車(chē);(2)購(gòu)物車(chē)管理:對(duì)頁(yè)面上添加進(jìn)來(lái)的菜品進(jìn)行增加、減少、刪除和個(gè)性化備注等操作,并可以動(dòng)態(tài)的查看訂單金額,并可點(diǎn)擊“提交”按鈕提交訂單;(3)訂單列表:查看并能簡(jiǎn)單處理自己的訂單;(4)信息修改:可以修改房間密碼以及房間負(fù)責(zé)人和房間名稱(chēng)。2.管理員主要功能:(1)用戶管理:管理用戶信息;(2)訂單管理:查看訂單信息;(3)圖片管理:從管理員的計(jì)算機(jī)上傳菜品的圖片并保存圖片的絕對(duì)路徑,瀏覽、刪除菜品圖片;(4)菜品管理:管理菜品信息;(5)菜品類(lèi)型管理:可以創(chuàng)建、刪除、改變菜品的類(lèi)型;(6)選項(xiàng)管理:管理一些系統(tǒng)參數(shù)的設(shè)定。用例圖是進(jìn)行需求分析的很好的手段,該系統(tǒng)的用例圖如下所示:顧客用例圖如圖3-1所示:圖3-1顧客用例圖管理員用例圖如圖3-2所示:圖3-2管理員用例圖3.2業(yè)務(wù)流程分析因?yàn)檎麄€(gè)系統(tǒng)的功能會(huì)以用戶角色加以區(qū)分,及不同的角色間的功能是相對(duì)獨(dú)立的,所以整個(gè)業(yè)務(wù)流程的設(shè)計(jì)基本也是可以按角色分為兩類(lèi),一類(lèi)是顧客使用訂餐系統(tǒng)的流程,另一類(lèi)就是管理員管理系統(tǒng)的流程。顧客使用系統(tǒng)流程圖如下圖3-3所示:圖3-3顧客使用系統(tǒng)流程圖管理員使用系統(tǒng)流程圖如下圖3-4所示:圖3-4管理員使用系統(tǒng)流程圖3.3系統(tǒng)功能模塊分析一個(gè)完整的點(diǎn)餐系統(tǒng),管理員要有用戶管理功能管理客房,要有訂單管理功能用來(lái)處理用戶的訂單,能改變菜品信息。客房端端主要要能點(diǎn)餐,本系統(tǒng)主要功能模塊圖如圖3-5所示。圖3-5功能模塊圖3.4數(shù)據(jù)庫(kù)分析M餐廳是一個(gè)大中型餐廳,在用餐高峰時(shí)期,可能出現(xiàn)大量客人同時(shí)點(diǎn)餐的情況,所以系統(tǒng)本身要能存儲(chǔ)大量信息,處理速度要快,這樣的大型數(shù)據(jù)庫(kù)有很多,經(jīng)過(guò)周密的考慮,M餐廳點(diǎn)餐系統(tǒng)選擇的是其中成本最低的MySQL數(shù)據(jù)庫(kù)。3.4.1概念模型設(shè)計(jì)概念模型是對(duì)系統(tǒng)的理論建模,將系統(tǒng)的功能和流程抽象化成圖形和文字描述,為程序的編寫(xiě)規(guī)劃好方向,是程序設(shè)計(jì)的藍(lán)圖。概念模型包括實(shí)體和聯(lián)系。(1)實(shí)體(entity)實(shí)體就是現(xiàn)實(shí)之中的事物,既然是現(xiàn)實(shí)當(dāng)中的事物,如果要了解他們共性和區(qū)別,共性可以抽取,區(qū)別就要使用實(shí)體圖的方式體現(xiàn)系統(tǒng)各個(gè)結(jié)構(gòu)的區(qū)別。(2)聯(lián)系(relationship)Web系統(tǒng)中,系統(tǒng)內(nèi)部事務(wù)與信息都是具有一定聯(lián)系的,聯(lián)系可以分為一對(duì)一(1:1)、一對(duì)多(1:n)和多對(duì)多(m:n)。此論文系統(tǒng)的概念模型使用E-R圖表示。根據(jù)功能模塊的設(shè)計(jì),整個(gè)系統(tǒng)的E-R圖設(shè)計(jì)如圖3-6所示:圖3-6系統(tǒng)E-R圖根據(jù)整個(gè)系統(tǒng)的功能設(shè)計(jì)以及E-R圖設(shè)計(jì)所規(guī)劃,一個(gè)餐廳點(diǎn)餐系統(tǒng)應(yīng)有的基本實(shí)體如下:管理員、顧客、菜品、菜品分類(lèi)、購(gòu)物車(chē)、訂單和操作。下方為系統(tǒng)主要功能的描述屬性圖:1.管理員實(shí)體如圖3-7所示,包含了:ID、用戶名、密碼、管理員標(biāo)記、負(fù)責(zé)人姓名。圖3-7管理員實(shí)體圖2.客房實(shí)體如圖3-8所示,包含:ID、用戶名、密碼、客房標(biāo)記、服務(wù)生姓名、房間號(hào)。圖3-8客房實(shí)體圖3.菜品實(shí)體如圖3-9所示,其中包括:ID、還有菜名、價(jià)格、圖片地址、所屬分類(lèi),其中圖片地址使用的是相對(duì)定位。圖3-9菜品實(shí)體圖4.菜品分類(lèi)實(shí)體如圖3-10所示,其中包括:分類(lèi)ID、分類(lèi)名。圖3-10菜品分類(lèi)實(shí)體圖5.購(gòu)物車(chē)實(shí)體如圖3-11所示,其中包括:ID、用戶名、菜名、價(jià)格、總計(jì)、備注。圖3-11購(gòu)物車(chē)實(shí)體圖6.訂單實(shí)體如圖3-12所示,其中包括:ID、菜名、價(jià)格、總計(jì)、備注、房間號(hào)、狀態(tài)。圖3-12訂單實(shí)體圖7.操作實(shí)體如圖3-13所示,其中包括:ID、操作名、操作值。圖3-13操作實(shí)體圖3.4.2數(shù)據(jù)庫(kù)表設(shè)計(jì)數(shù)據(jù)庫(kù)表是需要根據(jù)之前創(chuàng)建的概念模型和實(shí)體圖所考慮的屬性進(jìn)行設(shè)計(jì),必須要囊括所有的關(guān)鍵數(shù)據(jù),數(shù)據(jù)庫(kù)設(shè)計(jì)合理與否,會(huì)影響系統(tǒng)的成敗。數(shù)據(jù)庫(kù)關(guān)系圖如下圖圖3-14所示。圖3-14數(shù)據(jù)庫(kù)關(guān)系圖本系統(tǒng)數(shù)據(jù)庫(kù)表如下:1.用戶表用戶表其中包含了管理員和用戶的基本信息,涵蓋了用戶ID、用戶名、密碼、角色(權(quán)限)、服務(wù)生姓名、房間號(hào)。其中user_id為主鍵,user_name作為外鍵分別與購(gòu)物車(chē)表中的外鍵shopping_user_name和訂單表中的外鍵order_user_name相連。user_auth管理角色(權(quán)限),決定了用戶是客房還是管理員,管理員可以直接改變其他用戶,如:用戶名、用戶密碼、服務(wù)生姓名、房間號(hào)等。具體如下表表3-1用戶表。表3-1用戶表(user_id)字段名稱(chēng)數(shù)據(jù)類(lèi)型主鍵是否空說(shuō)明user_idint(16)YN用戶IDuser_namechar(25)NN用戶名user_passwdchar(16)NN密碼user_authenum('admin','customer')NN角色user_telchar(15)NN服務(wù)生姓名user_addrchar(10)NN房間號(hào)2.菜品表菜品表涵蓋了菜品的菜品ID、菜品名稱(chēng)、單價(jià)、圖片地址、菜品類(lèi)型ID。菜品ID是其主鍵,menu_name作為外鍵與訂單詳情表的外鍵detail_menu_name還有購(gòu)物車(chē)表的shopping_menu_name相連。菜品表的外鍵menu_type_id與菜品分類(lèi)表的主鍵menu_type_id相連。這樣客戶既可以在首頁(yè)看見(jiàn)菜品的圖片與價(jià)格,也能從購(gòu)物車(chē)、訂單中看見(jiàn)菜品的全部或部分信息,使用戶更加清晰、方便的了解點(diǎn)餐情況、自己點(diǎn)了哪些菜、花了多少錢(qián)全都一目了然。具體如下表表3-2菜品表。表3-2菜品表(ib_menu)字段名稱(chēng)數(shù)據(jù)類(lèi)型主鍵是否空說(shuō)明menu_idint(5)YN菜品IDmenu_namechar(26)NN菜名menu_priceint(5)NN價(jià)格menu_pic_addrchar(255)NN圖片地址(相對(duì)路徑)menu_type_idint(5)NN菜品類(lèi)型ID3.菜品分類(lèi)表菜品分類(lèi)表的主鍵是menu_type_id,該表是為了給菜品進(jìn)行分類(lèi),該表的主鍵menu_type_id與菜品表的外鍵menu_type_id相關(guān)聯(lián),方便對(duì)菜品類(lèi)型進(jìn)行管理。如下表表3-3菜品分類(lèi)表。表3-3菜品分類(lèi)表(ib_menu_type)字段名稱(chēng)數(shù)據(jù)類(lèi)型主鍵是否空說(shuō)明menu_type_idint(4)YN菜品類(lèi)型IDmenu_type_namechar(26)NN分類(lèi)名4.購(gòu)物車(chē)表購(gòu)物車(chē)列表主鍵shopping_id,外鍵shopping_user_name與用戶表的user_name相關(guān)聯(lián),外鍵shopping_menu_name與菜品表的外鍵menu_name相關(guān)聯(lián)。首頁(yè)中的菜品添加至購(gòu)物車(chē),然后用戶直接進(jìn)入購(gòu)物車(chē)預(yù)覽選擇的商品,并可以增加、減少、刪除已經(jīng)存在至購(gòu)物車(chē)的某商品的總數(shù),并對(duì)商品進(jìn)行個(gè)性化的備注。具體如下表表3-4購(gòu)物車(chē)表。表3-4購(gòu)物車(chē)表(ib_shopping)字段名稱(chēng)數(shù)據(jù)類(lèi)型主鍵是否空說(shuō)明shopping_idint(16)YN購(gòu)物車(chē)IDshopping_user_namechar(26)NN用戶IDshopping_menu_namechar(30)NN菜品名稱(chēng)shopping_menu_priceint(16)NN菜品價(jià)格shopping_amountint(16)NN總數(shù)shopping_remarkchar(255)NN備注5.訂單表訂單表與用戶表關(guān)聯(lián),訂單表的主鍵order_id與訂單詳情表的外鍵detail_order_id相連,外鍵order_user_name和用戶表的外鍵user_name相連,由于管理員與用戶共用一個(gè)表,外鍵order_admin_name實(shí)際上也是與用戶表的外鍵user_name相連。訂單表上記錄訂單的編號(hào)、下單客房、下單時(shí)間、處理人和訂單狀態(tài)(處理、未處理),并顯示訂單總金額。具體如下表表3-5訂單表。表3-5訂單表(ib_order)字段名稱(chēng)數(shù)據(jù)類(lèi)型主鍵是否空說(shuō)明order_idint(16)YNIDorder_user_namechar(26)NN用戶名order_timedatetimeNN訂單時(shí)間order_admin_namechar(26)NN管理員名order_acceptint(1)NN訂單狀態(tài)order_totalInt(30)NN訂單總金額6.訂單詳情表訂單詳情表的主鍵是訂單詳情ID(detail_id),訂單詳情表的與訂單表相關(guān)聯(lián),訂單詳情表的與菜品表相關(guān)聯(lián)。訂單詳情上可以看到點(diǎn)了那些菜、價(jià)格、總數(shù)、還有客戶備注的需求。如下表表3-6訂單詳情表。表3-6訂單詳情表(ib_order_detail)字段名稱(chēng)數(shù)據(jù)類(lèi)型主鍵是否空說(shuō)明detail_idint(16)YNIDdetail_order_idint(16)NN訂單IDdetail_menu_namechar(26)NN菜品名稱(chēng)detail_menu_priceint(16)NN價(jià)格detail_amountint(16)NN總數(shù)detail_remarkchar(255)NN備注7.操作表操作表以操作ID為主鍵,沒(méi)有外鍵,用來(lái)操作前端頁(yè)面上的某些屬性,比如我們要改變店鋪的名字,就改變選項(xiàng)名為title的選項(xiàng)所對(duì)應(yīng)的選項(xiàng)值,把原來(lái)M餐廳點(diǎn)餐系統(tǒng)這個(gè)選項(xiàng)值改成自己想要的店鋪名,如改成XXX酒店/餐廳。下表表3-7操作表。3-7操作表(ib_option)字段名稱(chēng)數(shù)據(jù)類(lèi)型主鍵是否空說(shuō)明option_idint(4)YNIDoption_namechar(26)NN選項(xiàng)名option_valuechar(10)NN選項(xiàng)值3.4.3主要功能實(shí)現(xiàn)描述1.客房與管理員登錄功能描述客房、管理員登錄入口是同一個(gè),通過(guò)用戶表中user_auth所對(duì)應(yīng)的字段作為角色標(biāo)記判斷用戶是客房還是管理員,admin為管理員標(biāo)記,customer作為客房識(shí)別標(biāo)記,當(dāng)用戶身份驗(yàn)證成功后通過(guò)字段來(lái)判斷應(yīng)該登錄顧客還是管理員頁(yè)面,登錄流程如圖3-15系統(tǒng)登錄注冊(cè)流程圖。圖3-15系統(tǒng)登錄流程圖2.用戶注冊(cè)功能實(shí)現(xiàn)用戶注冊(cè)需要填寫(xiě)對(duì)應(yīng)的信息,然后點(diǎn)擊“注冊(cè)”,首先會(huì)在前端檢測(cè)所輸入信息是否合法,在用后端判斷所注冊(cè)用戶名是否已近存在,全部判定完成無(wú)誤后,注冊(cè)完成,在數(shù)據(jù)庫(kù)中可查詢到剛剛注冊(cè)的信息,如下圖圖3-16用戶注冊(cè)圖。圖3-16用戶注冊(cè)流程圖3.菜品添加功能在首頁(yè)中,只要是商家上架的菜品都會(huì)顯示出來(lái),顧客可以通過(guò)點(diǎn)擊“添加”按鈕將其添加至購(gòu)物車(chē),每點(diǎn)擊一次“添加”按鈕后面的提示數(shù)字都會(huì)加1,當(dāng)購(gòu)物車(chē)內(nèi)商品被刪除或被提交,數(shù)字將會(huì)消失。如下圖圖3-17所示。如3-17菜品添加功能流程圖4.購(gòu)物車(chē)管理功能顧客對(duì)已經(jīng)添加入數(shù)據(jù)庫(kù)購(gòu)物車(chē)表中的商品可以進(jìn)行操作,并可以對(duì)菜品進(jìn)行個(gè)性化的備注,然后點(diǎn)擊提交將購(gòu)物車(chē)表中的值傳入數(shù)據(jù)庫(kù)訂單詳情表和訂單表中。如圖3-18購(gòu)物車(chē)管理功能流程圖。圖3-18購(gòu)物車(chē)管理功能流程圖5.用戶訂單列表功能用戶能在訂單列表中查看自己的訂單,包括下單時(shí)間、處理人和處理狀態(tài),如果獲取的數(shù)據(jù)庫(kù)order_accept字段為0,則判斷訂單沒(méi)有被處理,則處理人為空,并可以點(diǎn)擊刪除按鈕刪除此訂單。如果獲取的數(shù)據(jù)庫(kù)order_accept字段為1,則判斷訂單已經(jīng)被處理,則操作一欄的下方劊出現(xiàn)“刪除”,點(diǎn)擊之后,則會(huì)刪除此訂單,點(diǎn)擊訂單的標(biāo)號(hào),則會(huì)進(jìn)入訂單詳情,但是只能查看,不能修改。具體功能流程如下圖圖3-19用戶訂單列表功能流程圖。圖3-19用戶訂單列表功能流程圖6.信息修改所有用戶(包括管理員)都可以通過(guò)此功能修改自己的詳細(xì)信息,修改信息之前需要輸入正確用戶名和正確的密碼,再由前后端同時(shí)判斷通過(guò),若正確將原來(lái)信息覆蓋。從而完成修改工作,具體流程如圖3-20信息修改。圖3-20信息修改。7.用戶管理功能用戶管理功能是管理員所擁有的,對(duì)所有用戶包括管理員的所有信息直接進(jìn)行修改、刪除、添加新用戶,直接到數(shù)據(jù)庫(kù)。如圖3-21用戶管理功能流程圖。圖3-21用戶管理功能流程圖8.訂單管理功能首先進(jìn)入訂單管理頁(yè)面,管理員將看到以別表形式展示的訂單信息,只是一個(gè)大概的信息(不含菜品信息),包括顧客的下單時(shí)間,總金額等等。里面封裝著訂單詳情,可以通過(guò)點(diǎn)擊訂單編號(hào)來(lái)查看訂單詳情,在其中可以修改訂單中的菜品信息,并更新到數(shù)據(jù)庫(kù),也可以根據(jù)客人的要求增加自定義菜品和服務(wù)(可以添加一些原來(lái)沒(méi)有的菜品)到訂單詳情表中,處理完畢后可返回到訂單列標(biāo),點(diǎn)擊處理,獲取下處理,來(lái)改變order_accept字段,未處理的字段為0,處理過(guò)為1。具體流程如圖3-22訂單管理功能流程圖。3-22訂單管理功能流程圖
第4章餐廳點(diǎn)餐系統(tǒng)的實(shí)現(xiàn)4.1首頁(yè)設(shè)計(jì)網(wǎng)站的首頁(yè)設(shè)計(jì)如下圖所示,所有的菜品按照分類(lèi)分別以圖片加菜品名稱(chēng)和價(jià)格的方式展示給用戶,在頁(yè)面的右上方分別有登錄和注冊(cè)操作,顧客點(diǎn)餐之前服務(wù)生必須要提前登錄系統(tǒng)的客房端,如果顧客所在客房還沒(méi)有開(kāi)辟賬號(hào),則需要通過(guò)注冊(cè)來(lái)完成客房的創(chuàng)建。網(wǎng)站的所有頁(yè)面,包括主頁(yè)都是自適應(yīng)頁(yè)面,會(huì)根據(jù)用戶使用的瀏覽器的窗口大小進(jìn)行動(dòng)態(tài)的自適應(yīng),從而保證無(wú)論用戶使用怎樣的瀏覽器窗口,展示的頁(yè)面的比例都能符合大多數(shù)顧客審美。首頁(yè)如圖4-1所示。圖4-1首頁(yè)4.2注冊(cè)頁(yè)面想要讓客房?jī)?nèi)的平板或電腦登錄點(diǎn)餐系統(tǒng)的客房端,必須要持有能夠登錄到平臺(tái)的賬號(hào)信息,如果沒(méi)有就必須通過(guò)圖4-2的頁(yè)面進(jìn)行注冊(cè),注冊(cè)房間賬號(hào)是需要正確的填寫(xiě)信息,包括用戶名、密碼、服務(wù)生和房間號(hào)。該信息會(huì)經(jīng)過(guò)前端和后端兩重驗(yàn)證,都驗(yàn)證通過(guò)后,客房的賬號(hào)注冊(cè)完成。圖4-2注冊(cè)頁(yè)面注冊(cè)頁(yè)面關(guān)鍵代碼如下:user=newUser();user.setName(userName);user.setPasswd(userPasswd);user.setAuth(userAuth);user.setTel(userTel);user.setAddr(userAddr);user.setId(0);userDaoHbm.save(user);//將用戶保存到hibernate中returntrue; }4.3登錄頁(yè)面登錄系統(tǒng)需要輸入正確的用戶名和密碼,就會(huì)通過(guò)系統(tǒng)的驗(yàn)證,若密碼錯(cuò)誤則會(huì)彈出相應(yīng)的錯(cuò)誤提示。管理員與顧客使用同一個(gè)登錄入口,后臺(tái)會(huì)通過(guò)數(shù)據(jù)庫(kù)中角色字段判別該賬號(hào)的角色,根據(jù)字段的不同,判斷登陸者是管理員還是客房。頁(yè)面如圖4-3所示。圖4-3登錄頁(yè)面系統(tǒng)登錄部分代碼如下:List<User>lstUser=null;lstUser=userDaoHbm.findByName(userName);//從hibernate獲取用戶if(lstUser==null||lstUser.size()==0){returnnull;}returnlstUser.get(0);}4.4用戶點(diǎn)餐用戶點(diǎn)餐是在系統(tǒng)主頁(yè)進(jìn)行的,用戶登錄系統(tǒng)后,就可以通過(guò)點(diǎn)擊想要選擇的菜品下方的添加按鈕將相應(yīng)的菜品添加至購(gòu)物車(chē),具體效果如下圖所示。點(diǎn)過(guò)的餐品就是進(jìn)入用戶的購(gòu)物車(chē)中。用戶點(diǎn)餐頁(yè)面如圖4-4所示。圖4-4用戶點(diǎn)餐用戶點(diǎn)餐部分代碼如下:if(userName==null||menuName==null||userName.length()==0||menuName.length()==0){System.out.println("DaoServiceImpl.changeShoppingAmount()inputparamisnull");returnWebConstant.INVALID_VALUE;}Shoppingshopping=getShoppingByName(userName,menuName);if(shopping!=null){//增加shopping的數(shù)量已經(jīng)存在amount=shopping.getAmount();amount++;}else{if(amount>0){amount--;}}4.5用戶購(gòu)物車(chē)如圖4-5所示:在購(gòu)物車(chē)內(nèi)顧客可以對(duì)已選的菜品進(jìn)行操作,同時(shí)還可以給每個(gè)菜品后面添加備注,以滿足每個(gè)用戶對(duì)菜品的個(gè)性化需求,同時(shí)購(gòu)物車(chē)頁(yè)面還會(huì)顯示所有菜品的金額總數(shù)。在下面會(huì)有默認(rèn)的房間號(hào),點(diǎn)擊“提交”可將訂單提交到訂單詳情表。圖4-5用戶購(gòu)物車(chē)用戶購(gòu)物車(chē)關(guān)鍵代碼如下:if(userName==null||menuName==null||userName.length()==0||menuName.length()==0){System.out.println("DaoServiceImpl.changeShoppingRemark()inputparamisnull");return;}Shoppingshopping=getShoppingByName(userName,menuName);if(shopping!=null){shopping.setRemark(remark);//將shopping更新到hibernateshoppingDaoHbm.update(shopping);} }4.6用戶訂單管理用戶通過(guò)網(wǎng)站右上角的選項(xiàng)中的用戶訂單可以看到自己的歷史訂單相關(guān)情況,具體頁(yè)面如圖4-6所示:包括下單時(shí)間和訂單狀態(tài),當(dāng)管理員還沒(méi)有來(lái)得及處理訂單的時(shí)候,“刪除”按鈕在操作欄下顯示,單擊可以刪除訂單,若訂單已被處理,則客房不能取消訂單,若要取消應(yīng)和店家協(xié)商。圖4-6用戶訂單管理用戶訂單管理功能部分代碼如下:for(Orderorder:lstOrder){//迭代器的順序iLineNum++;if(iLineNum>iMaxLineOnePage){iLineNum=1;iPageNum++;}iOrderNum++;if(iPageNum==iCurrPage){OrderBeanorderBean=newOrderBean();orderBean.setId(order.getId());orderBean.setTime(order.getTime());orderBean.setAccept(order.getAccept());orderBean.setAdminName(order.getAdminName());orderBean.setUserName(order.getUserName());orderBean.setTotal(order.getTotal());orderBean.setSeq(iOrderNum);lstOrderBean.add(orderBean);}}clsOrderListPageBean.setLst(lstOrderBean);//計(jì)算起始頁(yè)和結(jié)束頁(yè)if(iPageNum<=defaultMaxPagination){iStartPage=1;iEndPage=iPageNum;}else{if(iCurrPage>defaultMaxPagination/2){iStartPage=iCurrdefaultMaxPagination/2;}else{iStartPage=1;}if(iPageNum>=(iCurrPage+defaultMaxPagination/2)){iEndPage=iCurrPage+defaultMaxPagination/2;}else{iEndPage=iPageNum;}}clsOrderListPageBean.setStartPage(iStartPage);clsOrderListPageBean.setEndPage(iEndPage);clsOrderListPageBean.setMaxPage(iPageNum);returnclsOrderListPageBean; }4.7信息修改通過(guò)點(diǎn)擊系統(tǒng)右上角的“選項(xiàng)”彈出樹(shù)形菜單,點(diǎn)擊樹(shù)形菜單中的信息修改,可以進(jìn)入客房的信息修改頁(yè)面,頁(yè)面如圖4-7所示:首先點(diǎn)擊依次按照文本框的提示信息填寫(xiě)。該信息會(huì)經(jīng)過(guò)前端和后端兩重驗(yàn)證,都驗(yàn)證通過(guò)后,則用戶信息會(huì)被成功修改,否則會(huì)提示警告信息。圖4-7信息修改信息修改功能代碼如下:Useruser=userDaoHbm.get(userOldId);//從hibernate獲取用戶if(user==null){returnfalse;}user.setName(userNewName);user.setPasswd(userNewPasswd);user.setAuth(userNewAuth);user.setTel(userNewTel);user.setAddr(userNewAddr);//將用戶更新到hibernateuserDaoHbm.update(user);returntrue;} 4.8用戶管理管理員登錄系統(tǒng)后,點(diǎn)擊系統(tǒng)右上角的“選項(xiàng)”會(huì)彈出樹(shù)形菜單,點(diǎn)擊“用戶管理”入用戶管理頁(yè)面,頁(yè)面如下圖所示,所有的客房信息以列表的形式展示在頁(yè)面上,包括用戶名、密碼、權(quán)限、服務(wù)生姓名和房間號(hào),點(diǎn)擊“編輯”對(duì)用戶信息進(jìn)行修改,點(diǎn)擊“刪除”則可以刪除一個(gè)客房。上方“新建”的存在是提供管理員對(duì)客房進(jìn)行添加的功能,管理員如果想要添加新的客房,則要完整填寫(xiě)客房信息后,點(diǎn)擊“添加”來(lái)完成新用戶的添加,當(dāng)然該信息會(huì)經(jīng)過(guò)前端和后端兩重驗(yàn)證,如果未驗(yàn)證通過(guò),則添加失敗,系統(tǒng)將會(huì)提示相應(yīng)的錯(cuò)誤信息,并反饋給管理員。如圖4-8所示。圖4-8用戶管理用戶功能部分代碼如下:Useruser=userDaoHbm.get(userOldId);//從hibernate獲取用戶if(user==null){returnfalse;}user.setName(userNewName);user.setPasswd(userNewPasswd);user.setAuth(userNewAuth);user.setTel(userNewTel);user.setAddr(userNewAddr);userDaoHbm.update(user);//將用戶更新到hibernatereturntrue;}//從hibernate獲取用戶Useruser=userDaoHbm.get(id);if(user!=null){//從hibernate中刪除用戶userDaoHbm.delete(user);}return; }4.9訂單管理管理員點(diǎn)擊網(wǎng)站上方“選項(xiàng)”彈出下拉框,點(diǎn)擊下拉框中的“訂單管理”選項(xiàng)可以進(jìn)入對(duì)客房訂單的修改,其頁(yè)面如圖4-9所示:用列表的形式展示顧客的訂單信息,點(diǎn)擊訂單編號(hào)可以查看客房訂單的詳情,管理員可以根據(jù)實(shí)際情況來(lái)修改訂單的狀態(tài)信息,可以對(duì)暫時(shí)做不了的菜品進(jìn)行刪除操作并給予備注。圖4-9訂單管理訂單管理功能關(guān)鍵代碼如下://從hibernate獲取所有訂單lstOrder=orderDaoHbm.findAll();//從redis獲取tbl_page_lineslstOption=optionDaoRds.findByName(optionName);iMaxLineOnePage=Integer.valueOf(lstOption.get(0).getValue());//迭代器的訂單 for(Orderorder:lstOrder){iLineNum++;if(iLineNum>iMaxLineOnePage){iLineNum=1;iPageNum++;}if(iPageNum==iCurrPage){//從hibernate獲取用戶lstUser=userDaoHbm.findByName(order.getUserName());if(lstUser.size()==0){continue;}4.10圖片管理管理員點(diǎn)擊系統(tǒng)上方“選項(xiàng)”彈出樹(shù)形菜單,點(diǎn)擊“圖片管理”進(jìn)入菜品圖片管理頁(yè)面,其頁(yè)面如圖4-10所示:顯示所有系統(tǒng)中的圖片信息以及其對(duì)應(yīng)的圖片名稱(chēng),管理員可以刪除相應(yīng)的圖片,并且還可以根據(jù)自己的需要通過(guò)左上角的圖片上傳功能上傳新的圖片。圖4-10圖片管理圖片管理功能代碼如下:lstOption=optionDaoRds.findByName(optionName);//從redis獲取idx_menu_linesiMaxLineOnePage=Integer.valueOf(lstOption.get(0).getValue());StringrootDir=ServletActionContext.getRequest().getRealPath("/");Filef=newFile(rootDir+defaultPicSavePath);if(f.isDirectory()){File[]t=f.listFiles();for(inti=0;i<t.length;i++){//迭代器的文件iPicNum++;if(iPicNum>iMaxPicOneLine){iPicNum=0;iLineNum++;}if(iLineNum>iMaxLineOnePage){iLineNum=1;iPageNum++;}if(iPageNum==iCurrPage){Stringname=t[i].getName();String[]pp=name.split("\\.");if(pp.length!=2){continue;}manPicBean=newManPicBean();manPicBean.setName(pp[0]);manPicBean.setAddr(defaultPicSavePath+name);lstPicBean.add(manPicBean);}}4.11菜品管理管理員登錄系統(tǒng)后通過(guò)網(wǎng)站右上角的“選項(xiàng)”中的菜品管理進(jìn)入菜品管理頁(yè)面,其頁(yè)面如圖4-11所示:所有菜品以列表的形式展示在頁(yè)面中,具體信息包括菜品的名稱(chēng)、價(jià)格、圖片名稱(chēng)以及菜品分類(lèi)。點(diǎn)擊第一行空白項(xiàng)的“新建”開(kāi)始對(duì)菜品的添加,填寫(xiě)菜名、價(jià)格、選擇對(duì)應(yīng)的圖片以及對(duì)應(yīng)的分類(lèi)信息后完成添加。圖4-11菜品管理菜品管理功能部分代碼如下:for(MenuTypemenuType:lstMenuType){//迭代器的MenuTypesMenuTypemenuTypeBean=newMenuType();menuTypeBean.setId(menuType.getId());menuTypeBean.setName(menuType.getName());lstMenuTypeBean.add(menuTypeBean);}clsManMenuPageBean.setLst2(lstMenuTypeBean);if(f.isDirectory()){File[]t=f.listFiles();//迭代器的文件for(inti=0;i<t.length;i++){Stringname=t[i].getName();String[]pp=name.split("\\.");if(pp.length!=2){continue;}ManPicBeanmanPicBean=newManPicBean();manPicBean.setName(pp[0]);manPicBean.setAddr(defaultPicSavePath+name);lstPicBean.add(manPicBean);}clsManMenuPageBean.setLst3(lstPicBean);}4.12菜品分類(lèi)管理管理員登錄系統(tǒng)后通過(guò)網(wǎng)站右上角的“選項(xiàng)”中的菜品類(lèi)型管理進(jìn)入菜品類(lèi)型管理頁(yè)面,其頁(yè)面如圖4-12所示:用列表展示了所有菜品的分類(lèi)信息,點(diǎn)擊新建就能創(chuàng)建新的菜品類(lèi)型,點(diǎn)擊“編輯”后即能對(duì)已有的菜品進(jìn)行編輯,點(diǎn)擊“修改”完成修改。圖4-12菜品分類(lèi)管理菜品分類(lèi)管理工鞥部分代碼如下:menuDaoRds.save(newMenu);//保存菜單到redisOptInfooi=newOptInfo();oi.setOpt(OPT.SAVE_MENU);oi.setNewMenu(newMenu);try{//把這個(gè)消息放入隊(duì)列q.put(oi);}catch(InterruptedExceptione){System.out.println("DaoServiceImpl.insertMenu()q.put()catchexception:"+e.getMessage());try{//如果失敗,需要回滾的redismenuDaoRds.delete(newMenu);}catch(Exceptione2){System.out.println("DaoServiceImpl.insertMenu()menuDaoRds.delete()catchexception:"+e.getMessage());//在這里,redis和mysql是不一致的}}4.13選項(xiàng)管理點(diǎn)擊“選項(xiàng)”,點(diǎn)擊選項(xiàng)管理,選項(xiàng)管理面如圖4-13所示:用列表的形式展示了所有操作信息列表,管理員可以點(diǎn)擊編輯來(lái)對(duì)已有的操作功能進(jìn)行修改,點(diǎn)擊“修改”所填寫(xiě)的操作值會(huì)被保存。列表中的信息分別為店鋪名稱(chēng)、首頁(yè)菜品最大行數(shù)、所有選項(xiàng)最大行數(shù)。圖4-13選項(xiàng)管理選項(xiàng)管理功能部分代碼如下:optionDaoRds.update(newOption);//將選項(xiàng)更新為redisOptInfooi=newOptInfo();oi.setOpt(OPT.UPDATE_OPTION);oi.setOldOption(oldOption);oi.setNewOption(newOption);try{//把這個(gè)消息放入隊(duì)列q.put(oi);}catch(InterruptedExceptione){System.out.println("DaoServiceImpl.updateOptionById()q.put()catchexception:"+e.getMessage());try{//如果失敗,需要回滾的redisoptionDaoRds.update(oldOption);}catch(Exceptione2){System.out.println("DaoServiceImpl.updateOptionById()optionDaoRds.update()catchexception:"+e.getMessage());//在這里,redis和mysql是不一致的}}returntrue;
第5章系統(tǒng)測(cè)試5.1測(cè)試的目的與目標(biāo)系統(tǒng)實(shí)現(xiàn)之后,對(duì)系統(tǒng)進(jìn)行測(cè)試,找出Bug,記錄下來(lái)對(duì)以后軟件改進(jìn)有參考作用,測(cè)試后的系統(tǒng)各模塊基本功能可以順利運(yùn)行,延遲不能影響使用。5.2測(cè)試用例因?yàn)辄c(diǎn)餐系統(tǒng)功能很多,信息量很大,所以在此使用測(cè)試用例表的方式進(jìn)行展示。表5-1是本系統(tǒng)登錄的測(cè)試表,從測(cè)試的結(jié)果來(lái)看與期望結(jié)果完全相同。表5-1登錄測(cè)試用例功能特性登錄驗(yàn)證測(cè)試目的驗(yàn)證是否輸入合法的信息測(cè)試數(shù)據(jù)用戶名稱(chēng):F301密碼:941996測(cè)試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實(shí)際結(jié)果測(cè)試狀態(tài)1填寫(xiě)用戶名,點(diǎn)擊“登陸”。用戶姓名:F301,密碼為空顯示警告信息“用戶名或密碼為空!”顯示警告信息“用戶名或密碼為空!”與期望結(jié)果相同2填寫(xiě)密碼,點(diǎn)擊“登陸”。用戶姓名為空,密碼:941996顯示警告信息“用戶名或密碼為空!”顯示警告信息“用戶名或密碼為空!”與期望結(jié)果相同3點(diǎn)擊用戶名和密碼,點(diǎn)擊“登陸”。用戶姓名:gjsg,密碼:960708顯示警告信息“用戶名或密碼為空!”顯示警告信息“用戶名或密碼為空!”與期望結(jié)果相同4填寫(xiě)用戶名和密碼,點(diǎn)擊“登陸”。用戶名:F301密碼:941996正確登錄到客房操作頁(yè)面正確登錄到客房操作頁(yè)面與期望結(jié)果相同表5-2是本系統(tǒng)注冊(cè)的測(cè)試表,結(jié)果與期望結(jié)果完全相同。表5-2注冊(cè)測(cè)試用例功能特性注冊(cè)測(cè)試目的驗(yàn)證是否輸入合法的信息測(cè)試數(shù)據(jù)用戶名稱(chēng):F402密碼:941996服務(wù)生:小開(kāi)房間號(hào):402測(cè)試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實(shí)際結(jié)果測(cè)試狀態(tài)1輸入用戶姓名,按“提交”按鈕。用戶名:F402,密碼為空,服務(wù)生為空,房間號(hào)為空。顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”與期望結(jié)果相同2輸入密碼,點(diǎn)擊“提交”按鈕。不填用戶名,密碼:941996服務(wù)生為空,房間號(hào)為空。顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”與期望結(jié)果相同3輸入服務(wù)生,按“提交”按鈕。用戶姓名為空,密碼為空,服務(wù)生:小開(kāi),房間號(hào)為空。顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”與期望結(jié)果相同4輸入房間號(hào),按“提交”按鈕。用戶名為空,密碼為空,服務(wù)生為空,房間號(hào):402。顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”與期望結(jié)果相同5輸入已經(jīng)注冊(cè)過(guò)的用戶名,任意密碼、服務(wù)生、房間號(hào)。用戶名為已注冊(cè)過(guò)的F302,密碼:1941996,服務(wù)生:小開(kāi),房間號(hào):301。顯示警告信息“注冊(cè)的用戶已存在,請(qǐng)重新注冊(cè)其他用戶名!”顯示警告信息“注冊(cè)的用戶已存在,請(qǐng)重新注冊(cè)其他用戶名!”與期望結(jié)果相同6輸入用戶名、密碼、服務(wù)生、房間號(hào)用戶名:F402密碼:941996服務(wù)生:小開(kāi)房間號(hào):402。跳轉(zhuǎn)到首頁(yè),可以登錄。跳轉(zhuǎn)到首頁(yè),可以登錄。與期望結(jié)果相同表5-3是本系統(tǒng)用戶信息修改的測(cè)試表,結(jié)果與期望結(jié)果完全相同。表5-3信息修改測(cè)試用例功能特性信息修改測(cè)試目的驗(yàn)證信息修改功能是否能在客房端正確的修改客房信息。測(cè)試數(shù)據(jù)舊用戶名:F401舊密碼:941996新用戶的用戶名稱(chēng):F411新密碼:960708服務(wù)生:蔡經(jīng)理房間號(hào):411測(cè)試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實(shí)際結(jié)果測(cè)試狀態(tài)1輸入錯(cuò)誤密碼,填入其他正確信息。點(diǎn)擊“提交”按鈕。舊密碼:fdc123新用戶名:F411新密碼:960708新服務(wù)生:蔡經(jīng)理新房間號(hào):411。顯示警告信息“舊密碼不正確,請(qǐng)重新輸入!”,并清除錯(cuò)誤信息。顯示警告信息“舊密碼不正確,請(qǐng)重新輸入!”,并清除錯(cuò)誤信息。與期望結(jié)果相同2輸入正確舊密碼、新密碼,新用戶名填入不符合要求的非字母數(shù)字長(zhǎng)度4-25之間的字符,點(diǎn)擊“提交”按鈕。舊密碼:941996新用戶名:一二三新服務(wù)生:蔡經(jīng)理新房間號(hào):411新密碼:960708顯示警告信息“您輸入的用戶名只能是字母和數(shù)字,且長(zhǎng)度必須在4到25之間”。顯示警告信息“您輸入的用戶名只能是字母和數(shù)字,且長(zhǎng)度必須在4到25之間”。與期望結(jié)果相同3輸入正確舊密碼和合理的新用戶名,新密碼、新服務(wù)生、新房間號(hào),點(diǎn)擊提交。舊密碼:941996新用戶名:F411新服務(wù)生:蔡經(jīng)理新房間號(hào):411修改密碼成功,并處于首頁(yè)狀態(tài)為登錄狀態(tài)。修改密碼成功,并處于首頁(yè)狀態(tài)為登錄狀態(tài)。與期望結(jié)果相同4輸入所有正確信息。任意數(shù)據(jù)為空。任意數(shù)據(jù)為空。顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”顯示警告信息“有項(xiàng)目為空,請(qǐng)?zhí)顚?xiě)所有項(xiàng)目信息!”與期望結(jié)果相同表5-4是用戶操作的測(cè)試表結(jié)果與期望結(jié)果完全相同。表5-4用戶操作測(cè)試用例功能特性用戶操作測(cè)試目的用戶端各項(xiàng)功能是否可以完美運(yùn)行測(cè)試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實(shí)際結(jié)果測(cè)試狀態(tài)1在首頁(yè)點(diǎn)擊商品“添加”按鈕。點(diǎn)擊“添加”按鈕?!疤砑印卑粹o后方顯示添加個(gè)數(shù),商品被添加至購(gòu)物車(chē)?!疤砑印卑粹o后方顯示添加個(gè)數(shù),商品被添加至購(gòu)物車(chē)。與期望結(jié)果相同2在購(gòu)物車(chē)中對(duì)所選商品進(jìn)行設(shè)置,備注需求、查看訂單總金額,點(diǎn)擊“提交”。點(diǎn)擊對(duì)應(yīng)商品的“+”增加、“-”減少、“×”刪除、備注信息“主食最后上”。并點(diǎn)擊一次“提交”。所有操作都正確運(yùn)行,并且訂單總金額隨操作商品數(shù)量變化而變化,點(diǎn)擊“提交”可以提交訂單并跳轉(zhuǎn)至訂單列表頁(yè)。所有操作都正確運(yùn)行,并且訂單總金額隨操作商品數(shù)量變化而變化,點(diǎn)擊“提交”可以提交訂單并跳轉(zhuǎn)至訂單列表頁(yè)。與期望結(jié)果相同3點(diǎn)擊訂單列表,點(diǎn)擊訂單編號(hào),退出刪除訂單。點(diǎn)擊訂單列表,點(diǎn)擊訂單標(biāo)號(hào),后退,最后點(diǎn)擊“刪除”。點(diǎn)擊訂單編號(hào)查看訂單詳情,當(dāng)管理員沒(méi)有接受訂單,“處理人”顯示為空,此時(shí)可以刪除訂單,管理員接單后“處理人”顯示admin,此時(shí)訂單將不能被刪除。點(diǎn)擊訂單編號(hào)查看訂單詳情,當(dāng)管理員沒(méi)有接受訂單,“處理人”顯示為空,此時(shí)可以刪除訂單,管理員接單后“處理人”顯示admin,此時(shí)訂單將不能被刪除。與期望結(jié)果相同表5-5是本系統(tǒng)管理員用戶管理的測(cè)試表,結(jié)果與期望結(jié)果完全相同。表5-5用戶管理測(cè)試用例功能特性用戶管理測(cè)試目的驗(yàn)證管理員能否修改客房的所有信息測(cè)試數(shù)據(jù)用戶名:F403密碼:111111服務(wù)生:老王房間號(hào):403測(cè)試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實(shí)際結(jié)果測(cè)試狀態(tài)1通過(guò)用戶管理選項(xiàng)點(diǎn)擊“編輯”對(duì)用戶的用戶名、密碼、服務(wù)生姓名、房間號(hào)進(jìn)行修改。用戶名:F403密碼:111111服務(wù)生:老王房間號(hào):403舊用戶名登錄會(huì)提示“用戶名不存在!”,新用戶名使用正確密碼可以正常登錄。舊用戶名登錄會(huì)提示“用戶名不存在!”,新用戶名使用正確密碼可以正常登錄。與期望結(jié)果相同2通過(guò)用戶管理選項(xiàng)點(diǎn)擊“新建”按鈕創(chuàng)建新用戶。用戶名:F404密碼:123456服務(wù)生:劉能房間號(hào):404使用新注冊(cè)的用戶名密碼可以正常登錄。使用新注冊(cè)的用戶名密碼可以正常登錄。與期望結(jié)果相同3通過(guò)用戶管理選項(xiàng)刪除用戶。點(diǎn)擊目標(biāo)用戶所對(duì)應(yīng)的“刪除”。使用被刪除用戶登錄系統(tǒng)提示“用戶名不存在!”。其用戶名和密碼在數(shù)據(jù)庫(kù)中消失。使用被刪除用戶登錄系統(tǒng)提示“用戶名不存在!”。其用戶名和密碼在數(shù)據(jù)庫(kù)中消失。與期望結(jié)果相同表5-6是本系統(tǒng)管理員菜品管理的測(cè)試表,結(jié)果與期望結(jié)果完全相同。表5-6菜品管理測(cè)試用例功能特性菜品管理測(cè)試目的驗(yàn)證是否能正確管理餐廳的菜品信息。測(cè)試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實(shí)際結(jié)果測(cè)試狀態(tài)1通過(guò)菜品管理選項(xiàng)點(diǎn)擊“編輯”對(duì)菜品的名稱(chēng)、價(jià)格、菜品圖片、菜品類(lèi)型進(jìn)行修改,完成后點(diǎn)擊“修改”。修改原來(lái)存在菜品酸菜魚(yú)的名為饅頭,價(jià)格為2,圖片為饅頭,菜品類(lèi)型為主食。舊菜品酸菜魚(yú)在首頁(yè)中消失,新菜品饅頭出現(xiàn),所有信息與所修改信息一致。舊菜品酸菜魚(yú)在首頁(yè)中消失,新菜品饅頭出現(xiàn),所有信息與所修改信息一致。與期望結(jié)果相同2通過(guò)菜品管理選項(xiàng)“刪除”按鈕刪除菜品。刪除所選菜品名為饅頭的菜品。在首頁(yè)中找不到菜品為饅頭的菜品。在首頁(yè)中找不到菜品為饅頭的菜品。與期望結(jié)果相同3通過(guò)菜品管理選項(xiàng)點(diǎn)擊第一行的“添加”按鈕添加菜品。點(diǎn)擊新建,菜品名輸入酸菜魚(yú),價(jià)格:30,圖片:酸菜魚(yú),菜品類(lèi)型:炒菜查看首頁(yè),在炒菜欄找到了菜品名為酸菜魚(yú)的菜品,價(jià)格:30,圖片:酸菜魚(yú),菜品類(lèi)型:炒菜。查看首頁(yè),在炒菜欄找到了菜品名為酸菜魚(yú)的菜品,價(jià)格:30,圖片:酸菜魚(yú),菜品類(lèi)型:炒菜。與期望結(jié)果相同表5-7是本系統(tǒng)管理員菜品圖片管理的測(cè)試表,結(jié)果與期望結(jié)果完全相同。表5-7菜品圖片管理測(cè)試用例功能特性菜品圖片管理測(cè)試目的驗(yàn)證是否能正確上傳餐廳的菜品的圖片、并被菜品引用,正常顯示測(cè)試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實(shí)際結(jié)果測(cè)試狀態(tài)1通過(guò)圖片管理選項(xiàng)點(diǎn)擊“瀏覽”按鈕打開(kāi)計(jì)算機(jī)的本地圖片,選中一張圖片,點(diǎn)擊“Upload”按鈕上傳圖片。瀏覽圖片“餃子”,點(diǎn)擊一次“Upload”按鈕。查看圖片選項(xiàng)可以找到添加的“餃子”圖片,在菜品管理點(diǎn)擊圖片下拉框能找到此圖片并使用。查看圖片選項(xiàng)可以找到添加的“餃子”圖片,在菜品管理點(diǎn)擊圖片下拉框能找到此圖片并使用。與期望結(jié)果相同2通過(guò)菜品圖片管理選項(xiàng)“刪除”按鈕刪除菜品圖片。刪除所選菜品名為“饅頭”的菜品圖片。在菜品管理中找不到菜品為饅頭的菜品圖片,且首頁(yè)中為饅頭的菜品信息正常,圖片不顯示。在菜品管理中找不到菜品為饅頭的菜品圖片,且首頁(yè)中為饅頭的菜品信息正常,圖片不顯示。與期望結(jié)果相同表5-8是本系統(tǒng)管理
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年脈沖反應(yīng)堆及配套產(chǎn)品合作協(xié)議書(shū)
- 化妝品檢測(cè)服務(wù)合同范本
- 北美買(mǎi)車(chē)合同范本
- 低價(jià)格回收合同范本
- 個(gè)人酒店租房合同范本
- 出口蔬菜供應(yīng)合同范本
- 合同范本寫(xiě)才有效
- 單位購(gòu)銷(xiāo)合同范本
- 電商直播主播簽約合作合同范本
- 洗車(chē)店轉(zhuǎn)讓合同范本
- 2024年北京中考地理試卷
- 四川蜀道集團(tuán)筆試題
- 零食門(mén)市轉(zhuǎn)讓協(xié)議書(shū)范本
- 運(yùn)用PDCA縮短ST段抬高型急性心肌梗死病人在急診停留時(shí)間
- 電氣自動(dòng)化工程師考試題庫(kù)
- 小學(xué)利潤(rùn)問(wèn)題應(yīng)用題100道附答案(完整版)
- 醫(yī)院智能化系統(tǒng)內(nèi)網(wǎng)、外網(wǎng)及設(shè)備網(wǎng)系統(tǒng)拓?fù)鋱D-可編輯課件
- 小學(xué)生心理健康主題家長(zhǎng)會(huì)
- 社交禮儀-儀態(tài)禮儀
- 安徽省2024年中考語(yǔ)文真題試卷【附答案】
- QB/T 4031-2024 阻燃性汽車(chē)空氣濾紙(正式版)
評(píng)論
0/150
提交評(píng)論