![智能點餐系統(tǒng)_第1頁](http://file4.renrendoc.com/view11/M01/3D/2F/wKhkGWV34bGAZFQnAAPuvQ5KFc4409.jpg)
![智能點餐系統(tǒng)_第2頁](http://file4.renrendoc.com/view11/M01/3D/2F/wKhkGWV34bGAZFQnAAPuvQ5KFc44092.jpg)
![智能點餐系統(tǒng)_第3頁](http://file4.renrendoc.com/view11/M01/3D/2F/wKhkGWV34bGAZFQnAAPuvQ5KFc44093.jpg)
![智能點餐系統(tǒng)_第4頁](http://file4.renrendoc.com/view11/M01/3D/2F/wKhkGWV34bGAZFQnAAPuvQ5KFc44094.jpg)
![智能點餐系統(tǒng)_第5頁](http://file4.renrendoc.com/view11/M01/3D/2F/wKhkGWV34bGAZFQnAAPuvQ5KFc44095.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第1章緒論1.1課題背景與研究意義隨著我國社會經(jīng)濟(jì)的飛速發(fā)展,人民的生活水平日漸提高,中國餐飲行業(yè)得到空前的增長REF_Ref18662\w\h錯誤!未找到引用源?!,F(xiàn)如今,中國餐飲服務(wù)行業(yè)競爭激烈,所以在這種環(huán)境下,行業(yè)革新是必不可少的。當(dāng)顧客在餐廳用餐的時候,客戶的用餐服務(wù)流程雖然看似十分簡單,但是這當(dāng)中的細(xì)節(jié)往往決定餐廳的滿意度高低,因為在這個過程中,不僅要求信息的傳遞速度快,更是需要信息的準(zhǔn)確度高。用餐服務(wù)流程不僅會影響餐廳的運行效率,更是顧客在這家餐廳用餐體驗度的關(guān)鍵。隨著人們消費觀念的提高,消費者更加樂于體驗新鮮的,有活力的消費方式。而傳統(tǒng)的點菜方式通常僅通過人工來記錄菜品、通知后廚顧客點菜的情況、結(jié)算用戶用餐費用等。傳統(tǒng)點餐方式不僅耗費人力、物力資源,還使工作效率大打折扣,同時在飯點、節(jié)假日時,人員流動量大幅度增加,傳統(tǒng)點菜方式不僅難以應(yīng)付,而且還會出現(xiàn)數(shù)據(jù)傳遞和記錄的錯誤,造成餐廳的服務(wù)質(zhì)量降低、顧客的滿意度下降、餐廳的信譽度受損等。在這種餐廳運行模式下,傳統(tǒng)的點餐方式體現(xiàn)了自身的不全面性,由于傳統(tǒng)點餐方式各方面的不足,從而導(dǎo)致了傳統(tǒng)點餐已經(jīng)跟不上當(dāng)前時代的快節(jié)奏生活。如果想要在這一行業(yè)中脫穎而出,就必須提高餐飲服務(wù)的管理水平。因此,在信息化時代,餐飲行業(yè)與目前先進(jìn)的計算機技術(shù)相結(jié)合,利用其先進(jìn)的信息技術(shù)實現(xiàn)顧客與餐廳的互動,餐廳局域信息的高效傳遞,并提供了原來的點餐方式所沒有的服務(wù)。使顧客在用餐過程中的體驗度大幅度提高,餐廳人員對餐廳的管理更加簡便高效REF_Ref8252\w\h錯誤!未找到引用源。。1.2國內(nèi)外研究現(xiàn)狀餐飲服務(wù)行業(yè)在20世紀(jì)70年代以前,整個餐飲服務(wù)流程都是由人力來直接來完成的。由于輕工業(yè)的發(fā)展,使得造紙的成本大幅度下降,紙質(zhì)菜單由于成本低,菜品內(nèi)容記錄詳細(xì)準(zhǔn)確,避免服務(wù)人員口述菜品時導(dǎo)致信息傳遞錯誤,方便宣傳等優(yōu)點,受到大眾的喜愛,逐漸成為餐廳中不可缺少的物品。但隨著使用時間的增長,紙質(zhì)菜單的弊端也逐漸顯現(xiàn)出來。比如對于新菜品和時令菜,餐廳需要增加刪除菜品的同時,需對菜單也進(jìn)行更改,這無疑是增添了餐廳成本的負(fù)擔(dān)。而伴隨著計算機應(yīng)用技術(shù)的發(fā)展,人們意識到了傳統(tǒng)的點餐方式不僅效率低下,還需要大量成本,因此一些開發(fā)人員針對餐飲行業(yè)開發(fā)了與之相關(guān)的電子系統(tǒng),這大大促進(jìn)了餐飲服務(wù)行業(yè)的發(fā)展。餐飲業(yè)的信息化管理相對于國內(nèi)來說,國外的研究要早上許多。國外己經(jīng)在20世紀(jì)70年代開始對餐飲業(yè)系統(tǒng)的開發(fā),最初是通過計算機來進(jìn)行賬單結(jié)算,僅僅降低了工作人員的計算難度,同時也只能實現(xiàn)統(tǒng)計數(shù)據(jù),為顧客結(jié)算的功能REF_Ref19560\w\h錯誤!未找到引用源。。而到了20世紀(jì)80年代末,在計算機收銀的基礎(chǔ)上,出現(xiàn)了電腦與打印機聯(lián)合工作的方式。這種方式讓餐飲服務(wù)行業(yè)進(jìn)入了信息化發(fā)展的萌芽階段。在當(dāng)時,計算機已經(jīng)大范圍的普及,軟件的功能也得到了巨大的改善。由于計算機的高效精準(zhǔn),應(yīng)用在餐飲行業(yè)的性價比十分高,得到了許多餐廳的青睞。在這種工作方式下,餐廳的服務(wù)人員接受完顧客訂單后,不需要再去后廚通知,只需將訂單送往前臺即可。這時,前臺工作人員將顧客的訂單信息輸入電腦,同時在后廚打印,廚師依據(jù)訂單信息為顧客做菜,從而省略工作人員去后廚遞訂單的步驟,提高了餐廳的工作效率。到2006年,電子設(shè)備的廣泛應(yīng)用使手持點餐設(shè)備得到了普及。用點菜寶進(jìn)行點餐操作使得點餐流程所耗時間進(jìn)一步縮減,它的基本工作方式是將數(shù)據(jù)傳送到無線基站上,再由無線基站把數(shù)據(jù)送到電腦上,然后通過局域網(wǎng)把數(shù)據(jù)發(fā)送給各部門的網(wǎng)絡(luò)打印機上,這樣的功能使得服務(wù)人員不再頻繁地與前臺、后廚進(jìn)行信息交流,降低了人力的消耗,使餐廳工作井然有序然地進(jìn)行。而在這個過程中,顧客只是間接參與了點餐過程,也就是說這些功能對于顧客來說并沒有直接參與操作,由于可能存在顧客在挑選菜品的時候,服務(wù)人員等待時間過長,所以這只是實現(xiàn)了餐廳的半自動化運營。2008年到2011年,隨著網(wǎng)絡(luò)的廣泛應(yīng)用,電子技術(shù)的革新,智能點餐系統(tǒng)應(yīng)餐飲服務(wù)行業(yè)所需而誕生。智能點餐系統(tǒng)不僅結(jié)合了以上各階段的優(yōu)點并加以優(yōu)化,還借助電子產(chǎn)品性能不斷提升的“東風(fēng)”,實現(xiàn)觸摸屏點餐,使顧客點餐過程更加迅速、流暢。在智能點餐系統(tǒng)中,可以加入菜品和其他服務(wù)信息,降低了餐飲服務(wù)管理的復(fù)雜性,節(jié)省了餐廳的綜合費用,餐廳的口碑在這種高效、高質(zhì)的服務(wù)下不斷提升。同時顧客可以及時了解到餐廳服務(wù)的信息,達(dá)到了餐飲行業(yè)與顧客之間的雙贏,實現(xiàn)了餐廳的自動化管理??蛻敉ㄟ^電子設(shè)備進(jìn)行點餐,點餐的信息通過客戶端傳送給服務(wù)器,已達(dá)到智能點餐,但是目前大多數(shù)餐廳點餐系統(tǒng)里缺少餐桌的管理功能,一旦顧客大量涌入的時候由于沒有座位只能等,這樣就會流失一些顧客,本系統(tǒng)設(shè)計了餐桌管理功能,可以通過管理員可輸入座位號與可座人數(shù)來創(chuàng)建新的餐桌,避免了客戶流失現(xiàn)象,大大提高了客流量。1.3論文組織結(jié)構(gòu)全文可分為七章,具體章節(jié)如下:第1章緒論:本章主要介紹智能點餐系統(tǒng)研究的意義和背景,與傳統(tǒng)點餐方式進(jìn)行優(yōu)缺點的對比,同時參考國內(nèi)外的現(xiàn)狀,分析其發(fā)展趨勢,為本次設(shè)計提供參考性的設(shè)計意見。第2章需求分析:本章主要介紹根據(jù)功能性與非功能性方面來分析智能點餐系統(tǒng)的各方面需求,并進(jìn)行詳細(xì)介紹,其中可行性分析對智能點餐系統(tǒng)在技術(shù)方面與經(jīng)濟(jì)方面是否可行進(jìn)行分析,使得本次設(shè)計在科學(xué)、有效的方式下完成。第3章關(guān)鍵技術(shù)與工具介紹:本章主要介紹對本次設(shè)計用到的技術(shù)與工具進(jìn)行簡單描述,包括jQuery、bootstrap、SSH集成框架、MySQL數(shù)據(jù)庫等。第4章智能點餐系統(tǒng)的功能設(shè)計與實現(xiàn):本章主要是在第三章的基礎(chǔ)上對系統(tǒng)功能進(jìn)行詳細(xì)設(shè)計與實現(xiàn)的介紹。第5章系統(tǒng)測試與結(jié)果分析:本章主要是對本次設(shè)計的系統(tǒng)進(jìn)行測試研究,對可能出現(xiàn)的問題進(jìn)行改正,最后對系統(tǒng)運行結(jié)果進(jìn)行分析。第6章結(jié)論:本章主要是對本篇論文進(jìn)行總結(jié),并提出接下來要進(jìn)行工作研究的主要方向。
第2章需求分析2.1功能性需求由于目前傳統(tǒng)點餐方式的低效率,高浪費的弊端,智能點餐系統(tǒng)的設(shè)計十分必要且迫在眉睫。本文主要針對使用者的實際需要,以及傳統(tǒng)點餐時的缺點進(jìn)行分析,進(jìn)而對智能點餐系統(tǒng)的各部分功能進(jìn)行設(shè)計。本文認(rèn)為一個全面的點餐系統(tǒng)應(yīng)從三種角色進(jìn)行考慮,首先,對于顧客來說,智能點餐系統(tǒng)所滿足的需求應(yīng)是能夠為顧客在短時間內(nèi)提供點餐信息,并且實現(xiàn)簡單、快速、有效的點餐操作方式。其次,服務(wù)臺也應(yīng)可以通過點餐系統(tǒng)為顧客選擇空閑餐桌,在顧客下單完成后能夠?qū)ζ潼c餐信息進(jìn)行查看,并在顧客用餐結(jié)束后對顧客訂單進(jìn)行結(jié)算與統(tǒng)計。最后,后廚方也需要通過點餐系統(tǒng)隨時查看顧客的點餐內(nèi)容及額外要求,此時點餐系統(tǒng)需要為廚師提供一個簡單、清晰的列表,以便廚師的閱讀和快速配菜等操作。為了滿足餐廳方面對整體系統(tǒng)管理的需求,該系統(tǒng)還將添加系統(tǒng)管理功能。利用系統(tǒng)管理,管理人員能夠做到對系統(tǒng)的實時監(jiān)控,編輯修改其他模塊的一些重要的功能。以上的需求都將作為本次設(shè)計的智能點餐系統(tǒng)重點設(shè)計部分。2.2系統(tǒng)操作需求由于該系統(tǒng)所面對的用戶量巨大,在系統(tǒng)操作方面就要適應(yīng)不同的人群,當(dāng)系統(tǒng)操作起來越簡單,它所面向的用戶就越多。系統(tǒng)界面設(shè)計要清晰明了,同時去除一些繁冗無用的操作,讓所有使用者不借助系統(tǒng)手冊就能使用本系統(tǒng)。2.3系統(tǒng)功能需求本系統(tǒng)分為員工管理模塊、做菜管理模塊、餐桌管理模塊、訂單管理模塊、菜品管理模塊五大模塊,為了更細(xì)致的劃分,對相應(yīng)的子模塊具體功能劃分如下:1.餐桌查詢功能:在顯示餐桌查詢頁面中,系統(tǒng)會顯示所有的餐桌位置信息,餐桌的狀態(tài),便于查看,合理安排顧客位置可以實現(xiàn)添加餐位信息、修改餐位信息、刪除餐桌。2.結(jié)賬功能:輸入訂單號和日期以確認(rèn)結(jié)賬。3.已買/未買功能:點擊已買和未買的圖標(biāo)輸入日期,就可以列出相應(yīng)的訂單詳情。4.銷售額查詢功能:輸入開始和結(jié)束的日期進(jìn)行查詢,就可以統(tǒng)計出來服務(wù)員在這一日期內(nèi)所開過的總銷售額,查看營收情況。5.員工管理功能:可以查詢?nèi)藛T信息、員工數(shù)量可以做到增加新員工、刪除離職員工、更改員工信息、查詢員工、員工考勤的功能。6.菜譜管理功能:根據(jù)菜品的分類可以對新菜品的增加、菜品的刪除、修改菜品信息的功能。根據(jù)菜品種類、原材料的數(shù)量、可以進(jìn)行添加功能。2.4可行性分析2.4.1技術(shù)可行性本次設(shè)計的系統(tǒng)是在目前相對成熟的MyEclipse下開發(fā),Web開發(fā)框架運用現(xiàn)在比較流行的SSH集成框架。由于SSH框架的功能較強,運行穩(wěn)定且效率高,使得整個點餐系統(tǒng)的性能得到了很大提升。在前端方面使用采用Bootstrap框架,做到網(wǎng)站美觀和功能全面。數(shù)據(jù)處理方面則使用占用小、效率快、成本低、易維護(hù)的MySQL。由于以上技術(shù)的可行性,讓這次開發(fā)變的合理有效。2.4.2經(jīng)濟(jì)可行性在本次系統(tǒng)開發(fā)中,運用都是目前一些簡單的開源開發(fā)工具,從而在系統(tǒng)開發(fā)方面和其日常維護(hù)方面所耗費的資金較低,隨著可以讓系統(tǒng)搭載的設(shè)備成本在不斷減少,在硬件方面的花銷也在減少。由于該系統(tǒng)的各個功能模塊操作起來非常簡單,對操作人員的要求不是那么高,這樣大大縮減了對操作人員教學(xué)所使用的人力物力,在投入使用的過程中,不僅可以讓顧客體驗到好的服務(wù),而且還為餐廳做到宣傳作用,進(jìn)一步降低了餐廳在廣告方面所投入的資金??偠灾撓到y(tǒng)所帶來的效益將遠(yuǎn)大于其所需的成本,在經(jīng)濟(jì)方面有著可行性。
第3章相關(guān)技術(shù)與工具介紹3.1技術(shù)介紹3.1.1JSPJavaServerPages是由許多網(wǎng)絡(luò)公司一起創(chuàng)建出來的動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)REF_Ref8797\w\h錯誤!未找到引用源。。它在超文本標(biāo)記語言中,即HTML程序段里插入XML的JSP標(biāo)簽和java語言程序,這樣就可生成拓展名為jsp的文件,這也就創(chuàng)建了一個JSP的頁面。當(dāng)客戶端方面請求頁面操作時,首先需要服務(wù)器對該請求進(jìn)行判斷,若只是普通的HTML請求就不需要對其進(jìn)行處理,直接把它的相關(guān)代碼直接發(fā)送回客戶端瀏覽器上。若該請求是JSP頁面,則需要Tomcat檢查這個JSP頁面,如果頁面被首次請求或被修改,那么Tomcat將這個頁面代碼翻譯為Servlet,然后Tomcat通過調(diào)用java編譯器對其進(jìn)行編譯,使它變?yōu)榭蓤?zhí)行的字節(jié)碼文件,同時Tomcat調(diào)用java虛擬機對字節(jié)碼文件,即拓展名為.class文件進(jìn)行讀取和執(zhí)行,最后將執(zhí)行結(jié)果發(fā)送給客戶端的瀏覽器上。由于該技術(shù)的可伸縮性和支持跨平臺的優(yōu)點,使之廣泛應(yīng)用于網(wǎng)頁開發(fā)中。3.1.2JavaScriptJavaScript是由Sun公司設(shè)計的一種基于對象的解釋型客戶端腳本語言。由于該語言具有相對安全性、跨平臺性和動態(tài)性,廣泛用于客戶端Web開發(fā)中。JavaScript通過控制對象來達(dá)到控制客戶機,常常用來給HTML網(wǎng)頁設(shè)計動態(tài)任務(wù),比如動態(tài)菜單的設(shè)計和對用戶操作的響應(yīng),同時可以為服務(wù)器分擔(dān)數(shù)據(jù)檢驗等任務(wù),總之,它是一種動態(tài)的弱類型、面向原型對象的內(nèi)置支持類。3.1.3JDBCJDBC是由原Sun公司開發(fā)的一種連接數(shù)據(jù)庫的規(guī)則,是執(zhí)行SQL語句的應(yīng)用程序編程接口。它的代碼可以在很多數(shù)據(jù)庫中執(zhí)行,由于它可移植性強、操作數(shù)據(jù)庫更加簡便等特點,受到許多開發(fā)者的青睞。該技術(shù)通過加載MySQL數(shù)據(jù)庫的驅(qū)動來建立MySQL服務(wù)器的連接,然后創(chuàng)建和封裝sql語句對象并執(zhí)行sql語句REF_Ref20102\w\h錯誤!未找到引用源。,迭代結(jié)果集,最后并依次關(guān)閉ResultSet、Statement、Connection。3.1.4SSH框架SSH是一種網(wǎng)絡(luò)協(xié)議,用于計算機之間的加密登錄REF_Ref9323\w\h錯誤!未找到引用源。。如果一個用戶從本地計算機,使用SSH協(xié)議登錄另一臺遠(yuǎn)程計算機,我們就可以認(rèn)為,這種登錄是安全的,即使被中途截獲,密碼也不會泄露。最早的時候,互聯(lián)網(wǎng)通信都是明文通信,一旦被截獲,內(nèi)容就暴露無疑REF_Ref9565\w\h錯誤!未找到引用源。。1995年,芬蘭學(xué)者TatuYlonen設(shè)計了SSH協(xié)議,將登錄信息全部加密,成為互聯(lián)網(wǎng)安全的一個基本解決方案,迅速在全世界獲得推廣,目前已經(jīng)成為Linux系統(tǒng)的標(biāo)準(zhǔn)配置REF_Ref32121\w\h錯誤!未找到引用源。。SSH框架系統(tǒng)可以分為表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層、域模塊層,共四層REF_Ref32595\w\h錯誤!未找到引用源。,Spring在2004年左右出現(xiàn)的一個輕量級的J2EE應(yīng)用開源框架,它是由RodJohnson在其編寫的ExpertOne-On-OneJ2EEDevelopmentandDesign中敘述了關(guān)于這一框架概念所演變而來的。3.2工具介紹3.2.1MySQL數(shù)據(jù)庫MySQL的全稱是MyStructuredQueryLanguage(構(gòu)造化查詢言語),它是目前應(yīng)用最廣泛的數(shù)據(jù)管理系統(tǒng),由于它是一種關(guān)系型的系統(tǒng),通過把數(shù)據(jù)存放在不同的表中的方式,提升了數(shù)據(jù)庫運行的速度與靈活性,同時具有占用較少空間,總體所需成本少,移植性強,最主要的是有開放源碼的特點,受到中小型網(wǎng)站開發(fā)者的青睞。目前有著許多的數(shù)據(jù)庫管理工具,比如Navicat等,這進(jìn)一步降低了數(shù)據(jù)庫管理的復(fù)雜性,讓使用者能夠快速有效地對其進(jìn)行操作。再設(shè)計的時候發(fā)生了表與表之間關(guān)系的忽略,所以設(shè)計表時字少要有一個主鍵來完成否則會造成混亂。3.2.2jQueryjQuery是一個可以兼容多種目前主流瀏覽器的JavaScript框架。在jQuery中封裝了一些JavaScript使用頻繁地代碼,這樣的設(shè)計模式給使用者提供了方便、快捷的設(shè)計感受,比如對文檔對象模型的便捷操作、創(chuàng)建動畫效果、Ajax的數(shù)據(jù)交互,因為jQuery可以做到快速輕松開發(fā)出功能全面,使用方便的網(wǎng)頁,所以在世界訪問量最多的網(wǎng)站中,使用jQuery的網(wǎng)站數(shù)量占總數(shù)的一半以上。3.2.3StrutsStruts是目前技術(shù)成型和應(yīng)用常見的基于MVC設(shè)計模式的javaweb程序框架,它可分為模型、視圖、控制器。Struts有著到對邏輯關(guān)系的控制處理的功能,而且還提供了taglib,降低代碼的繁冗性??傊甋truts可以實現(xiàn)在軟件開發(fā)中各部分的細(xì)節(jié)開發(fā)。3.2.4HibrnateHibrnate是一種對象關(guān)系映射(ObjectRelationalMapping)的工具。它的工作原理是在java對象與數(shù)據(jù)庫表之間實現(xiàn)映射關(guān)系。由于Hibernate對JDBC實現(xiàn)了輕量級的對象封裝REF_Ref13\w\h錯誤!未找到引用源。,簡化DAL層重復(fù)代碼使得使用者通過操作這些對象形式來達(dá)到使用數(shù)據(jù)庫的目的。具體步驟為首先創(chuàng)建持久化類persistentObjects,然后創(chuàng)建對象映射文件(*.hbm.xml)和配置文件(hibernate.cfg.xml),再通過被映射文件與配置文件映射在數(shù)據(jù)表中的persistentObjects來編輯數(shù)據(jù)庫的代碼REF_Ref157\w\h錯誤!未找到引用源。。Hibernate可以應(yīng)用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任REF_Ref274\w\h錯誤!未找到引用源。。
第4章智能點餐系統(tǒng)設(shè)計與實現(xiàn)4.1系統(tǒng)結(jié)構(gòu)設(shè)計本系統(tǒng)采用SSH框架集,如圖4-1SSH框架直觀圖所示。SSH框架集由StrutsMVC、Spring和Hibernate組成,整個系統(tǒng)可以分為表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層、共三層,Struts框架是系統(tǒng)的基礎(chǔ)框架,它的模型功能實現(xiàn)業(yè)務(wù)的跳轉(zhuǎn)REF_Ref486\w\h錯誤!未找到引用源。,并分離MVC,制造出DAO(DataAccessObjects)接口,用DAO接口由負(fù)責(zé)持久層的Hibernate框架來實現(xiàn)類與數(shù)據(jù)庫的交互,最后以上的兩種框架是由Spring框架管理REF_Ref1153\w\h錯誤!未找到引用源。。它的本質(zhì)是一個可以實現(xiàn)IoC(控制反轉(zhuǎn))和AOP(面向切面)的容器,而它的目的是為降低使用者在開發(fā)軟件應(yīng)用的復(fù)雜過程。如圖4-1SSH框架直觀圖:圖4-1SSH框架直觀圖4.2系統(tǒng)總功能模塊設(shè)計本系統(tǒng)分為五大模塊員工管理模塊、做菜管理模塊、餐桌管理模塊、訂單管理模塊、菜品管理模塊,下面對其一些模塊的功能進(jìn)行劃分,具體劃分如圖4-2智能點餐系統(tǒng)總設(shè)計功能圖。圖4-2智能點餐系統(tǒng)總設(shè)計功能圖4.3用戶登錄設(shè)計顧客登錄可以直接登錄本系統(tǒng)點餐頁面,為了顧客進(jìn)入餐廳后能快速就坐用餐,因此顧客點擊直接進(jìn)入點餐頁面,沒有設(shè)置權(quán)限。在成功登錄的前提下,瀏覽菜品進(jìn)行點餐,輸入菜品份數(shù)加以保存,也可以取消訂單,系統(tǒng)不予保存,在留言板顧客可以查看留言也可以編寫留言。員工登錄,這時頁面會顯示輸入密碼,姓名,輸入完密碼之后驗證是否正確,如果正確會進(jìn)入下一頁面,輸入不正確會提示輸入錯誤,返回首頁。確認(rèn)正確后用戶點擊登錄進(jìn)入餐廳主頁面,根據(jù)頁面圖標(biāo),就會進(jìn)入相應(yīng)頁面,來完成各項操作。如圖4-3員工登錄流程圖圖4-3員工登錄流程圖4.4員工管理模塊本系統(tǒng)屬于基礎(chǔ)數(shù)據(jù),為了方便管理員工專門設(shè)計了這一模塊,可管理屬性如:員工編號,工種、級別等,員工管理包括增加員工、員工離職、員工信息修改、員工權(quán)限,員工考勤、員工等級。本系統(tǒng)設(shè)計了對應(yīng)的按鈕,增加員工時選擇添加員工,在此處不僅需要輸入員工編號、姓名、身份證號、電話、基礎(chǔ)工資等基本信息,還要為其創(chuàng)建對應(yīng)的工種包括服務(wù)員、結(jié)算臺人員、后廚人員以及每個工種登錄名和密碼。在服務(wù)員添加過程中輸入相應(yīng)的基本個人信息后還要為其分配工作區(qū)域,也就是每個服務(wù)員通過管理著一定區(qū)域內(nèi)的餐桌來為在該餐桌用餐的顧客提供服務(wù),同時賦予顧客訂單的查看權(quán)限,這樣可以按照不同顧客的要求來進(jìn)行相應(yīng)的服務(wù)工作。在結(jié)算臺人員添加過程中,同樣需要錄入對應(yīng)的基本信息,由于結(jié)算臺管理整個餐廳的結(jié)算工作,所以為其賦予能夠查看所有訂單的權(quán)限,以及結(jié)算功能。后廚人員同樣錄入基本個人信息并有查看并管理菜品上全功能。管理員工離職時,選擇刪除對應(yīng)員工信息即可,員工信息修改時能夠?qū)ζ湎鄳?yīng)人員的基本個人信息進(jìn)行修改,同時按照餐廳人員變動來對員工進(jìn)行升遷或降職操作。在對其相應(yīng)人員考勤錄入時,對員工出勤天數(shù)進(jìn)行統(tǒng)計,在工資結(jié)算時可以按照出勤情況來對基礎(chǔ)工資進(jìn)行相應(yīng)變動。圖4-4員工管理功能圖。圖4-4員工管理功能圖4.5做菜管理此功能屬于基礎(chǔ)數(shù)據(jù),制作菜品的好壞是整個餐廳運營的重要部分,因此特地設(shè)計了這一模塊,此系統(tǒng)根據(jù)訂單優(yōu)先對顧客所點的菜品進(jìn)行先后排序,通過顯示屏傳遞給廚師,廚師通過屏幕顯示的菜品情況,按照菜品分類由相應(yīng)的廚師制作完成,另外廚師可以根據(jù)菜品做法進(jìn)行配料,登錄頁面點擊食材就會出現(xiàn)食材列表,點擊所做菜品名稱,輸入數(shù)量點擊提交確定完成,顯示屏就會出現(xiàn)食材的用量情況,廚師依據(jù)顯示完成制作,同時頁面有已完成菜品名稱標(biāo)識,和未完成菜品名稱標(biāo)識,廚師完成菜品制作點擊相應(yīng)圖標(biāo),傳遞給餐廳,服務(wù)員裝盤,上菜。如圖4-5做菜管理功能圖。圖4-5做菜管理功能圖4.6餐桌管理本系統(tǒng)屬于數(shù)據(jù)管理,包含增加餐桌、刪除餐桌、修改餐桌、本系統(tǒng)設(shè)計了對應(yīng)的按鈕,餐桌增加時選擇添加餐桌按鈕,輸入餐桌號碼,對餐桌的狀態(tài)進(jìn)行描述,餐桌刪除時選擇對應(yīng)的餐桌號碼并進(jìn)行刪除,選擇修改餐桌信息時可對餐桌號碼、最大容納人數(shù)、預(yù)定時間、預(yù)定狀態(tài)、餐桌位置進(jìn)行修改,基于這幾種情況,以增加餐桌的功能為例畫出流程圖,其它幾項同理不予畫出。如圖4-6為餐桌管理功能圖,圖4-7為餐桌增加流程圖。圖4-6餐桌管理功能圖圖4-7餐桌增加流程圖此設(shè)計是為了方便顧客快速入座,進(jìn)入系統(tǒng)頁面就可以查詢到餐桌的情況,包含餐桌編號、餐桌位置可以方便看到每桌具體狀態(tài),可直接點擊餐桌號碼圖標(biāo),選擇增加餐桌、刪除餐桌來完成,來完成餐桌的信息修改。如圖4-8餐桌查詢流程圖:圖4-8餐桌查詢流程圖4.7菜品管理本系統(tǒng)在菜品信息中可以按照菜品名稱、菜品類型、菜品價格范圍進(jìn)行操作,通過操作可以獲取菜品的詳細(xì)信息。對于菜品種類的管理,按照熱菜、涼菜、主食、飲品來劃分,同時餐廳可以按照實際需求來進(jìn)行對菜品種類添加或刪除操作,由相應(yīng)廚師進(jìn)行做菜。本系統(tǒng)主要是屬于基礎(chǔ)數(shù)據(jù):點擊菜品類型可以對不同的菜品類型進(jìn)行增加菜品、刪除菜品、修改菜品、三部分,本系統(tǒng)設(shè)計了對應(yīng)的按鈕,選擇增加菜品可以按照菜品名稱、菜品價格、菜品種類、實物圖片及菜品配料的屬性來添加新的菜品,當(dāng)要將菜品刪除時,選擇對應(yīng)的菜品編號進(jìn)行此菜品信息的刪除,選擇修改菜品信息可以對以上菜品的基本信息進(jìn)行修改,同時修改菜品的供應(yīng)狀態(tài),當(dāng)菜品售賣完畢時,能夠及時將菜品從供應(yīng)轉(zhuǎn)變到已售完狀態(tài)。如圖4-9菜品管理功能圖:圖4-9菜品管理功能圖4.8訂單管理本系統(tǒng)設(shè)計時,顧客在成功登錄頁面下,瀏覽菜品進(jìn)行點餐,輸入菜品份數(shù)加以保存,也可以取消訂單,系統(tǒng)不予保存,在留言板顧客可以查看留言也可以編寫留言。之后向服務(wù)器發(fā)送點餐信息,進(jìn)入系統(tǒng)數(shù)據(jù)庫。如圖4-10點餐終端架構(gòu)圖。圖4-10點餐中終端架構(gòu)圖為了方便統(tǒng)計每天的消耗設(shè)計了這一模板,主要就是對餐廳的每天流水進(jìn)行統(tǒng)計,包括銷售量統(tǒng)計、銷售金額的統(tǒng)計和客流量統(tǒng)計,提供依據(jù),在統(tǒng)計中,按照早餐時間、午餐時間、晚餐時間、夜宵時間來進(jìn)行統(tǒng)計訂單,管理者通過不同時間段的收入來預(yù)測食材數(shù)量。在銷售金額統(tǒng)計中,可以統(tǒng)計餐廳目前的銷售總額,可直觀看出餐廳的運營收益。本系統(tǒng)的設(shè)計最終目的就是營業(yè)收入統(tǒng)計,功能就是經(jīng)理可以在某個時間對餐廳的收入進(jìn)行統(tǒng)計,登錄頁面,輸入姓名和密碼,點擊訂單管理模塊,只要輸入這個時間段的開始日期和結(jié)束日期按回車鍵,系統(tǒng)會自動顯示這個時間段的全部支出和收入明細(xì)表,包括支出的名稱和數(shù)量,收入的名稱和數(shù)量,經(jīng)理一目了然,結(jié)束按回車鍵返回主頁面。可以根據(jù)具體情況拿出方案,達(dá)到餐廳創(chuàng)效。如圖4-11訂單管理功能圖:圖4-11訂單管理功能圖4.8.1已買/未買查詢功能此設(shè)計中可以查詢客戶買單和未買單情況,根據(jù)訂單狀況對已買結(jié)賬的訂單進(jìn)行標(biāo)注,系統(tǒng)會自動顯示為買單信息。如果沒有買單系統(tǒng)會標(biāo)注未買訂單,輸入開始日期和結(jié)束日期按回車鍵,系統(tǒng)會顯示未買單菜品的名稱、價格、份數(shù)詳細(xì)列表。4.8.2結(jié)賬功能此設(shè)計就是服務(wù)員根據(jù)輸入餐桌號碼或者訂單號碼,按回車鍵系統(tǒng)就會列出相應(yīng)定單列表,輸入實際金額來確認(rèn)金額是否準(zhǔn)確,之后輸入要結(jié)算訂單號或餐桌號,系統(tǒng)就會自動提示結(jié)賬成功,輸入未結(jié)算餐桌號碼或者訂單號碼,系統(tǒng)就會顯示未結(jié)算定單。4.8.3銷售額查詢功能此設(shè)計中為了避免統(tǒng)計上的錯誤,本系統(tǒng)設(shè)計了銷售額的查詢模塊,如果服務(wù)員負(fù)責(zé)了收銀工作此系統(tǒng)按日期也可以統(tǒng)計出銷售金額總和。如圖4-12銷售額操作流程圖:圖4-12銷售額操作流程圖4.9數(shù)據(jù)庫設(shè)計4.9.1實體之間關(guān)系本系統(tǒng)采用數(shù)據(jù)庫的實體聯(lián)系模型E-R圖,其表達(dá)表達(dá)能力強,用戶可以看懂表達(dá)出的信息,易于用戶接受。通過對上面各部分的實體分析,得到本系統(tǒng)實體的聯(lián)系,具體如下:用戶實體可以分為四類即顧客、服務(wù)員、后廚、經(jīng)理。來餐廳的顧客可以對多種菜品進(jìn)行瀏覽,顧客與菜品之間是多對多的關(guān)系。不同的顧客可以發(fā)布不同的備注,與備注之間是多對多的關(guān)系。顧客下單操作與訂單之間是一對多關(guān)系。每一種訂單支付操作所生成的支付信息不同,因此訂單與支付信息是一對多的關(guān)系。前臺的人員可以管理所有訂單,因此前臺人員與訂單是多對多的關(guān)系。后廚人員可以接收多個訂單,所以后廚與訂單是多對多關(guān)系。后廚人員可以查看多種菜品信息,因此與菜品之間是多對多關(guān)系。不同訂單中包含了多種菜品信息,因此訂單與菜品之間是多對多的關(guān)系。來餐廳的顧客可以對多種菜品進(jìn)行瀏覽,顧客與菜品之間是多對多的關(guān)系REF_Ref30622\w\h錯誤!未找到引用源。。不同的顧客可以發(fā)布不同的備注,與備注之間是多對多的關(guān)系。顧客下單操作與訂單之間是一對多關(guān)系。每一種訂單支付操作所生成的支付信息不同,因此訂單與支付信息是一對多的關(guān)系。前臺的人員可以管理所有訂單,因此前臺人員與訂單是多對多的關(guān)系。后廚人員可以接收多個訂單,所以后廚與訂單是多對多關(guān)系。后廚人員可以查看多種菜品信息,因此與菜品之間是多對多關(guān)系。不同訂單中包含了多種菜品信息,因此訂單與菜品之間是多對多的關(guān)系。4.9.2實體具體情況1.訂單實體訂單實體包含屬性有操作人員、顧客人數(shù)、留言編號、是否支付、訂單總價、菜是否上全、餐桌編號、下單時間,具體實體聯(lián)系如下圖4-13訂單實體關(guān)系圖。圖4-13訂單實體關(guān)系圖2.菜品實體菜品實體包含屬性有菜品名稱、菜品價格、菜品圖片、菜品介紹、菜品種類。圖4-14實體菜品關(guān)系圖3.實體與實體關(guān)系如下圖:圖4-15實體與實體關(guān)系圖4.10系統(tǒng)實現(xiàn)4.10.1登錄模塊此頁面只適合餐廳工作人員用戶在使用該系統(tǒng)時,具體操作流程如圖用戶輸入用戶名,輸入密碼,點擊確認(rèn),來驗證密碼和用戶名正確與否,如果出現(xiàn)錯誤系統(tǒng)則提示返回重新輸入,如果正確點擊確認(rèn),進(jìn)入頁面。登錄頁面如下:圖4-16登錄頁面圖4.10.2注冊模塊用戶注冊操作如圖需要填寫用戶信息點擊立即提交,數(shù)據(jù)信息傳輸?shù)綌?shù)據(jù)庫,用戶可以使用新注冊和密碼進(jìn)如頁面。如圖4-17用戶注冊成功圖。圖4-17用戶注冊成功圖4.10.3顧客點餐在model層中定義DinnerNotice類,Action層的DianCanAction中設(shè)計OrderMenu用于獲取訂單號、菜品名稱、菜品數(shù)量、顧客留言、菜品總價的信息。通過Action層引用相應(yīng)的Service層,并結(jié)合Struts的配置文件來接受顧客的點餐請求REF_Ref30720\w\h錯誤!未找到引用源。。Service層中包含了DinnerNoticeserviceImpl.java實現(xiàn)類,通過該實現(xiàn)類實現(xiàn)了DinnerOrderService接口,引用相應(yīng)的DAO層數(shù)據(jù)庫操作。通過orderMenu的JS文件里生成表單驗證和ajax,其中ajax是用來根據(jù)后臺異步判斷是否下單成功。設(shè)計setRemark()函數(shù)是為給顧客提供菜品備注的功能,并通過使用addOrder(order)方法獲取訂單小票,通過使用addOrder(order)方法獲取訂單小票,如果后臺dinnerNoticeservice.addNotice(notice)這個方法可以得到數(shù)據(jù)就返回一個1,1的值設(shè)置為前臺ajax的下單成功,若后臺得不到顧客的訂單數(shù)據(jù)就返回-1,表示顧客下單失敗。如圖4-18顧客點餐頁面。圖4-18顧客點餐頁面4.10.4訂單管理預(yù)結(jié)算通過DinnerOrder.Java定義DinnerOrder類,Action層的DinnerOrderAction中設(shè)計getAllOrderInfo用于獲取餐桌編號、下單時間、開臺人員、顧客人數(shù)、是否支付、訂單總價、菜是否上全等信息。getOrderInfo用于訂單結(jié)算后狀態(tài)的自動改變,sumOrder用于訂單總數(shù)的計算,isnOrderInfo用于訂單菜品上全的管理。通過Action層引用相應(yīng)的Service層,并結(jié)合Struts的配置文件來接受頁面?zhèn)鬟f的請求數(shù)據(jù)REF_Ref30858\w\h錯誤!未找到引用源。。Service層中包含了DinnerOrderserviceImpl.java實現(xiàn)類,通過該實現(xiàn)類實現(xiàn)了DinnerOrderService.java接口,引用相應(yīng)的DAO層數(shù)據(jù)庫操作。由于DinnerOrderDaoImpl.java中的DinnerOrderDaoImpl寫有SQL語句,所以該數(shù)據(jù)庫可以通過服務(wù)人員的具體操作來進(jìn)行編輯。結(jié)算頁面中運用了layui框架對頁面進(jìn)行構(gòu)建,在OrderJieSuan.js中,首先用layui對結(jié)算頁面的table表格進(jìn)行渲染,渲染完成table后,進(jìn)行事件的監(jiān)聽,在jsp中設(shè)計lay-event事件,為detail(訂單結(jié)算),前臺的訂單管理中的getAllOrderInfo()為按時查詢訂單信息,配置table.on('tool(tab)',function(obj)監(jiān)聽工具條對detail事件進(jìn)行監(jiān)聽,當(dāng)detail傳過來時,使用$.post方法調(diào)用后臺QianTaiAction中的updateOrder方法,在后臺中判斷訂單是否已結(jié)算,當(dāng)結(jié)算完成時,數(shù)據(jù)庫中ispay字段的值將變?yōu)?,說明結(jié)算成功。如圖4-19訂單結(jié)算頁面。圖4-19訂單結(jié)算頁面4.10.5菜品功能菜品管理模塊包含了Menu.java類,在其中定義了菜品名稱、菜品類別、菜品價格、菜品類別、菜品圖片路徑信息。通過Action層引用相應(yīng)的Service層,并結(jié)合Struts的配置文件來接受頁面?zhèn)鬟f的請求數(shù)據(jù)。Action層的MenuAction.java中AddMenu、delMenu、UpdateMenu對菜品信息進(jìn)行添加、刪除操作。使用MenuType方法對菜品進(jìn)行分類管理,getAllMenu用于對菜品價格、菜品名稱、菜品描述的編輯修改。Service層中包含了MenuserviceImpl.java實現(xiàn)類,通過action層的調(diào)用,實現(xiàn)了使用Menuservice.java接口引用相應(yīng)的DAO層數(shù)據(jù)庫操作。由于MenuDaoImpl.java中的MenuDaoImpl寫有SQL語句,所以菜譜數(shù)據(jù)庫可以通過管理者的具體操作來進(jìn)行編輯。4.10.6餐桌頁面通過DiningTable.Java定義DiningTable類,在該類中包括了餐桌編號、最大就座人數(shù)、餐桌是否占用。通過Action層中的get方法查詢餐桌信息功能,del刪除餐桌,Update修改餐桌信息,add添加餐桌的方法來引用相應(yīng)的Service層,并結(jié)合Struts的配置文件來接受頁面?zhèn)鬟f的請求數(shù)據(jù)。Service層中包含了DiningTableserviceImpl實現(xiàn)類,通過該實現(xiàn)類實現(xiàn)了DiningTableService接口,引用相應(yīng)的DAO層數(shù)據(jù)庫操作。由于DiningTableDaoImpl寫有SQL語句,所以餐桌數(shù)據(jù)庫可以通過管理人員的具體操作來進(jìn)行編輯。4.10.7員工管理通過Action層引用相應(yīng)的Service層,來接受頁面的請求數(shù)據(jù)。在它的Action層的UsersAction中使用getAllUsers、Update、Add、del方法實現(xiàn)獲取所有員工信息,修改員工信息,添加員工和刪除員工,同時還可通過UpUserPwd方式修改員工的登錄名及密碼。它的Service層中包含了UsersserviceImpl實現(xiàn)類,通過該實現(xiàn)類實現(xiàn)了Usersservice接口,引用相應(yīng)的DAO層數(shù)據(jù)庫操作。由于UsersDaoImpl中的UsersDaoImpl寫有SQL語句,所以員工信息的數(shù)據(jù)庫可以通過管理者的具體操作來進(jìn)行編輯。1.刪除員工信息功能在使用刪除員工信息功能時,點擊該客戶信息后面的刪除,系統(tǒng)就會彈出對話框“是否確定刪除”,點擊確定即可刪除信息,點擊取消則不繼續(xù)進(jìn)行操作。2.添加員工信息功能在使用添加員工信息功能時,在數(shù)據(jù)庫頁面中就會顯示增加了一條客戶信息。在列表界面中點擊“新增”,即可彈出添加客戶信息對話框,點擊“保存”即可新增一條客戶信息,并在列表界面顯示。3.修改信息功能在使用修改功能時,不能將全部信息進(jìn)行修改,需要選中一條客戶點擊修改,即可彈出修改客戶信息的界面,界面中出現(xiàn)了該條客戶信息的原始信息,將需要修改的部分點擊刪除,再填入新的信息內(nèi)容,點擊“保存”即可完成修改。
第5章系統(tǒng)測試與結(jié)果分析5.1系統(tǒng)測試方法從該系統(tǒng)的內(nèi)部結(jié)構(gòu)和系統(tǒng)實現(xiàn)角度可以進(jìn)行黑盒測試與白盒測試。本次測試的主要方法為黑盒測試。黑盒測試的方法是把系統(tǒng)抽象成一個不可以看見內(nèi)部的盒子,在這種情況下來對系統(tǒng)各部分功能接口進(jìn)行測試操作,換句話說,在不看系統(tǒng)內(nèi)部構(gòu)成和代碼前提下,檢查本系統(tǒng)是否能按照用戶需求來工作。為了使本文語言簡潔有效,下面將對主要功能測試進(jìn)行敘述。5.2系統(tǒng)測試用例5.2.1用戶登錄測試用戶登錄中的用戶名和密碼都是需要驗證的項,如果沒填寫或填寫錯誤,就會彈出相應(yīng)的提示信息,通過四組測試可以看出都已經(jīng)測試成功,從測試結(jié)果來看與預(yù)期結(jié)果完全相同。表5-1是本系統(tǒng)用戶登錄的測試表。表5-1用戶登錄測試表測試內(nèi)容操作描述數(shù)據(jù)期望結(jié)果實際結(jié)果測試狀態(tài)1輸入用戶登錄名,點“登陸”按鈕登錄名qiantai,密碼為空。顯示警告信息“用戶名為空!”顯示警告信息“用戶名為空!”與期望結(jié)果相同2輸入密碼,按“登陸”按鈕。登錄名為空密碼:123顯示警告信息“密碼為空!”顯示警告信息“密碼為空!”與期望結(jié)果相同3輸入用戶登錄名和密碼,按“登陸”按鈕。登錄名qiantai密碼:45
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人信用貸款第三方擔(dān)保合同樣本
- 云存儲硬盤空間租用合同協(xié)議
- 上市公司技術(shù)合作合同模板
- 個人房屋抵押貸款合同范本
- 臨時用工安全免責(zé)合同協(xié)議
- 個人理財規(guī)劃合同書
- 專業(yè)版辦公室裝修合同模板
- 二手汽車購銷合同范本
- 云計算資源租賃與服務(wù)外包合同
- 個人住房貸款擔(dān)保合同樣本
- 中考記敘文閱讀
- 《計算機應(yīng)用基礎(chǔ)》-Excel-考試復(fù)習(xí)題庫(含答案)
- 產(chǎn)科溝通模板
- 2023-2024學(xué)年四川省成都市小學(xué)數(shù)學(xué)一年級下冊期末提升試題
- GB/T 7462-1994表面活性劑發(fā)泡力的測定改進(jìn)Ross-Miles法
- GB/T 2934-2007聯(lián)運通用平托盤主要尺寸及公差
- GB/T 21709.13-2013針灸技術(shù)操作規(guī)范第13部分:芒針
- 2022年青島職業(yè)技術(shù)學(xué)院單招語文考試試題及答案解析
- 急診科進(jìn)修匯報課件
- 一年級家訪記錄表(常用)
- 信息技術(shù)基礎(chǔ)ppt課件(完整版)
評論
0/150
提交評論