




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGEPAGE32PAGEII餐盤智能識別系統(tǒng)設(shè)計摘要隨著科技的不斷進步,每個地方的食堂內(nèi)部也需要進步,傳統(tǒng)的人工收費方式已經(jīng)習以為常。但是每天都會有很多的人同時進餐,難免會或多或少的出現(xiàn)差錯,使用餐盤智能識別系統(tǒng),可以有效地避免這種情況的發(fā)生。餐盤智能識別系統(tǒng)完全可以應(yīng)用在很多場景下,例如:學校、醫(yī)院和企事業(yè)單位等。餐盤智能識別系統(tǒng)具體的使用方式也比較的簡單,相較于常見的窗口化模式,前面工序類似由人工按量分菜并按順序擺放到每個價位的區(qū)域,可供顧客自助選取。不同在于后續(xù)的結(jié)算方式,餐盤智能識別系統(tǒng)相較于現(xiàn)在普遍存在的人工收銀模式,有幾大優(yōu)勢:(1)方便快捷且節(jié)省時間;(2)支付方式多樣化;(3)不會因為其他的因素而影響顧客的就餐體驗。故可以應(yīng)用于人流量較大的地方。系統(tǒng)運用了智能終端部分使用Python語言以及SQLite數(shù)據(jù)庫,后臺管理部分前端使用Zui框架、后端使用SpringBoot框架進行編程以及MySQL數(shù)據(jù)庫和數(shù)據(jù)持久層Mybatis,實現(xiàn)了現(xiàn)實生活中對餐廳設(shè)備管理功能的應(yīng)用。系統(tǒng)包含前端、后臺兩部分模塊及服務(wù)器組件。前端能實現(xiàn)對餐盤掃描、對菜品的識別、對不同的菜品進行數(shù)量和價格的合計,并將值從前臺傳到SQLite數(shù)據(jù)庫以及定時同步獲取一次每種菜品的價格;后臺能實現(xiàn)后臺管理系統(tǒng)的登錄、菜品管理、終端(收銀機)管理、訂單管理、員工管理以及運營統(tǒng)計;系統(tǒng)完成數(shù)據(jù)的接收及發(fā)送以及對數(shù)據(jù)庫進行操作。餐盤智能識別系統(tǒng)的研究具有一定意義,系統(tǒng)可以讓超級管理員更好的管理每天的大量人員就餐問題以及商家對菜品信息的收集和匯總,能夠即時了解每天的就餐情況,店鋪狀態(tài)進行及時的調(diào)整,做好人員的調(diào)配和管理。對于當今信息化的設(shè)備,智能餐盤管理也應(yīng)向信息化發(fā)展。在實際應(yīng)用中,該系統(tǒng)并不完善,僅用于小范圍的操作和軟件測試,總結(jié)了測試運行中出現(xiàn)的問題,為的就是系統(tǒng)最終實現(xiàn)對前端后臺的操作和對超級管理員更好的管理系統(tǒng)等。關(guān)鍵詞:智能餐盤管理JavaMySQLPython刷臉支付PAGEPAGE32目錄TOC\o"1-2"\h\u48241緒論 133291.1課題研究背景與意義 1121871.2餐盤智能識別系統(tǒng)發(fā)展現(xiàn)狀 176821.3課題研究的主要內(nèi)容 2296601.4論文的主要結(jié)構(gòu) 2256142系統(tǒng)需求分析 3326192.1功能需求分析 3260862.2經(jīng)濟上的可行性 3213572.3應(yīng)用上的可行性 320202.4技術(shù)上的可行性 350072.5性能需求分析 4217073系統(tǒng)設(shè)計 515513.1系統(tǒng)模塊的功能 5282293.2系統(tǒng)功能結(jié)構(gòu)圖 5288783.3系統(tǒng)運行硬件環(huán)境 6271743.4系統(tǒng)運行軟件環(huán)境 692073.5系統(tǒng)環(huán)境平臺 7191774數(shù)據(jù)庫設(shè)計 8181954.1數(shù)據(jù)庫搭建與連接方式 8299614.2系統(tǒng)中數(shù)據(jù)表的設(shè)計 9254654.3數(shù)據(jù)流程圖和流程泳道圖 11205125系統(tǒng)的實現(xiàn) 13162505.1智能終端部分 13312135.2后臺管理部分 15306566系統(tǒng)測試 22252726.1測試目的及規(guī)劃 22288436.2測試用例及分析 2296466.3測試總結(jié) 2818369結(jié)論與展望 2917697參考文獻 3028007致謝 31緒論課題研究背景與意義隨著科技的不斷進步,人工智能化也越來越普及,隨處可見。小到在超市買東西、每天排隊就餐等,大到各個工廠使用各種機械臂進行不同工種的工作。與此相同的信息化管理,也是當前社會正在快速發(fā)展的行業(yè)。餐盤智能識別系統(tǒng)就是兩者的結(jié)合體,既有人工智能化的智能識別以及刷臉支付[1],也有信息化管理的后臺管理系統(tǒng),兩者相結(jié)合就能體現(xiàn)出當代社會對科技不斷進步做出的重要貢獻。餐盤智能識別系統(tǒng)的產(chǎn)生對于當代社會的意義就在于在繁忙又快節(jié)奏的生活環(huán)境下,人們不會為了一些很小的事情過多的去耽誤寶貴的時間。就比如人們每天都有的三餐,有了餐盤智能識別系統(tǒng)就可以很好地解決這個問題,從最開始的顧客選擇自己想要的菜品再到自助服務(wù)臺排隊進行刷臉支付[2],據(jù)網(wǎng)上的統(tǒng)計顯示普通的付款方式一個人就需要從服務(wù)員清點菜品數(shù)量及單價,經(jīng)過計算后輸入價格讓顧客付款總時長需要至少15秒的時間其中還不包括偶爾會發(fā)生各種小問題,而使用餐盤智能識別系統(tǒng)就可已節(jié)約大概5秒鐘的時間[3]。要想每一位顧客節(jié)約5秒鐘的時間,每天餐廳會有許許多多的顧客來就餐,算下來就可以節(jié)約很多很多的時間,讓人們得到更好的用戶體驗。餐盤智能識別系統(tǒng)發(fā)展現(xiàn)狀國內(nèi)對于人工智能領(lǐng)域最起初是從20世紀70年代末至80年代,知識工程和專家系統(tǒng)在歐美發(fā)達國家得到迅速發(fā)展,經(jīng)濟效益取得重大的突破。當時中國涉及到人工智能領(lǐng)域的研究還處于起步階段,再加上當時社會又有很多人把“人工智能”與“特異功能”混為一談,在那時也只有一些基礎(chǔ)性的工作得以開展。直到1980年代初期,錢學森等人帶領(lǐng)著人工智能研究的發(fā)展,這使中國在人工智能研究方面發(fā)揮了更加積極的作用。再到1980年代中期,在鄧小平的指導下,中國的人工智能在曙光中緩慢起步,并走在比較正確的道路上,開始比較正常的發(fā)展道路。近兩年來,中國的人工智能已發(fā)展成為國家重要戰(zhàn)略任務(wù)。以至于現(xiàn)在人工智能也越來越普及以及人工智能研究與應(yīng)用已在中國空前開展并碩果累累,比如目前市面上有很多的公司也都擁有了自己的智能餐盤系統(tǒng),并且已經(jīng)應(yīng)用于實際場景[4],例如:學校、醫(yī)院和企事業(yè)單位等人流量較大的場景,也獲得到許多的贊揚。根據(jù)此系統(tǒng)后來也開發(fā)與其配套的餐臺和餐盤并可以制造出各色各樣的餐盤供用戶選擇,餐盤內(nèi)嵌RFID芯片[5],可以讓餐臺與餐具通過RFID芯片無縫對接,完成智能排隊購餐。這樣做的目的就為了保證整個流程不會出現(xiàn)太大的差錯,這也是必須處理的問題之一。否則,也將沒有設(shè)計和批量生產(chǎn)此產(chǎn)品的必要價值和意義。課題研究的主要內(nèi)容該系統(tǒng)智能終端部分使用Python語言以及SQLite數(shù)據(jù)庫,后臺管理部分前端使用Zui框架、后端使用SpringBoot框架進行編程以及MySQL數(shù)據(jù)庫和數(shù)據(jù)持久層Mybatis[6],實現(xiàn)用人工智能取代了以前傳統(tǒng)的人工管理的繁瑣程序,使餐廳的管理更加便捷化。餐盤智能識別系統(tǒng)的主要內(nèi)容分為以下這兩個部分:智能終端部分又分為:終端界面、餐盤掃描、形成訂單、刷臉支付;后臺管理部分又分為:登錄界面、菜品管理界面、終端(收銀機)管理界面、訂單管理界面、員工管理界面、運營統(tǒng)計界面。論文的主要結(jié)構(gòu)本次畢業(yè)論文總的內(nèi)容共分為六個部分,主要結(jié)構(gòu)如下:第1部分:緒論,課題研究背景與意義、餐盤智能識別系統(tǒng)發(fā)展現(xiàn)狀、課題研究的主要內(nèi)容和論文的主要結(jié)構(gòu);第2部分:系統(tǒng)需求分析,功能需求分析包括:經(jīng)濟上的可行性、應(yīng)用上的可行性、技術(shù)上的可行性,以及對系統(tǒng)的性能進行需求分析;第3部分:系統(tǒng)設(shè)計,闡述詳述系統(tǒng)各個模塊的功能、系統(tǒng)功能結(jié)構(gòu)圖、系統(tǒng)的軟硬件平臺和系統(tǒng)環(huán)境平臺;第4部分:數(shù)據(jù)庫設(shè)計,詳述數(shù)據(jù)庫搭建與連接方式、系統(tǒng)中數(shù)據(jù)表的設(shè)計和數(shù)據(jù)流圖;第5部分:系統(tǒng)的實現(xiàn),闡述餐盤智能識別系統(tǒng)各功能模塊,系統(tǒng)頁面截圖展示以及部分關(guān)鍵性代碼說明;第6部分:系統(tǒng)測試,介紹測試系統(tǒng)的目的以及測試的路程、結(jié)果和分析。
系統(tǒng)需求分析功能需求分析需求分析俗稱可行性分析。在系統(tǒng)開發(fā)之前,對系統(tǒng)開發(fā)的必要性和可行性進行了分析和研究,確保了應(yīng)用技術(shù)可以使系統(tǒng)平穩(wěn)的開發(fā)[7]。智能餐盤識別系統(tǒng)的目標需求以及簡單的設(shè)計使本系統(tǒng)組成總體結(jié)構(gòu)。本系統(tǒng)主要實現(xiàn)能夠解決人工計算費用會發(fā)生的誤差,并能夠?qū)崿F(xiàn)顧客能夠快捷便利的購餐,從排隊選自己喜歡的菜品到使用刷臉快捷支付的整個過程。后臺管理模塊實現(xiàn)每個管理模塊各自的增刪改查等功能。經(jīng)濟上的可行性經(jīng)濟上的可行性是對當前設(shè)計系統(tǒng)所有成員的經(jīng)濟狀況和投資能力的分析。本系統(tǒng)作為與組員共同完成的畢業(yè)設(shè)計項目,在經(jīng)濟上是沒有任何的支出。待系統(tǒng)構(gòu)建完成之后,將會為今后的校園、醫(yī)院和企事業(yè)單位等地方的智能快捷就餐地方提供便利。且前后臺所使用的編程軟件均為破解版,與其他較高成本的編程軟件相比,在較低的開發(fā)成本的情況下,將具有更好地經(jīng)濟可行性。應(yīng)用上的可行性應(yīng)用上的可行性是對本系統(tǒng)在之后實際應(yīng)用上的分析。經(jīng)過測試后,發(fā)現(xiàn)本系統(tǒng)的操作簡單易懂也容易快速上手,只需要多使用幾次就可以熟悉本系統(tǒng)的操作,且系統(tǒng)的兼容性也是十分友好的,完全滿足本系統(tǒng)在運行上的要求,從應(yīng)用上來說是可行的。另外支付模塊在現(xiàn)如今已經(jīng)基本普及,對于其安全性也是十分可靠[8]。技術(shù)上的可行性技術(shù)上的可行性是對在開發(fā)時本系統(tǒng)所使用到的技術(shù),即編程框架和編程語言使用的分析。本系統(tǒng)使用智能終端部分使用Python語言,后臺管理部分前端使用Zui框架、后端使用SpringBoot框架進行編程以及MySQL數(shù)據(jù)庫和數(shù)據(jù)持久層Mybatis,本系統(tǒng)所使用的無論是框架還是編程語言在網(wǎng)上都是開源的,并且比較人性化即易上手,本系統(tǒng)開發(fā)軟件和所用到的技術(shù)兼容性也是十分友好的[9],完全滿足本系統(tǒng)在開發(fā)上的要求,綜上所述本系統(tǒng)從技術(shù)上來說是可行的。性能需求分析除了滿足用戶的功能要求外,系統(tǒng)性能要求也得到重視。性能需求通常包括了系統(tǒng)安全保密性、可靠性、容錯性、存儲空間容量、友好性、數(shù)據(jù)精確度、時間特性、可維護性等。系統(tǒng)的性能需求包括以下幾個方面:系統(tǒng)安全保密性:只有超級管理員才能登錄后臺管理系統(tǒng),對后臺的每個模塊都有單個權(quán)限設(shè)置。對賬號、密碼以及每日的運營統(tǒng)計等重要信息進行加密,保證每個數(shù)據(jù)的信息安全。系統(tǒng)可靠性:為了不會因為顧客個人操作失誤而導致系統(tǒng)崩潰,必須優(yōu)化系統(tǒng)模塊功能以提高容錯能力和可靠性。系統(tǒng)容錯性:對于系統(tǒng)對突發(fā)事件的處理方式,例如:網(wǎng)絡(luò)突然斷開連接的處理方式。存儲空間容量:系統(tǒng)的存儲容量,能夠記錄數(shù)據(jù)和處理數(shù)據(jù)的所用空間容量。系統(tǒng)友好性:人機交互界面需要最大化的簡潔[10],使顧客便于操作系統(tǒng)。在顧客將餐盤放置固定區(qū)域并采取正確的操作之后,會有更人性化的提示。數(shù)據(jù)精確度:可分為精確查詢和模糊查詢。精確查詢:能夠匹配與輸入數(shù)據(jù)完全相同的搜索結(jié)果;模糊查詢:只需滿足與關(guān)鍵字匹配的輸入可供查詢。時間特性:系統(tǒng)響應(yīng)時間足夠迅速,能夠滿足顧客使用的要求。系統(tǒng)可維護性:能夠便于維護人員進行維護,結(jié)構(gòu)簡單明了清晰易懂。
系統(tǒng)設(shè)計系統(tǒng)模塊的功能根據(jù)本系統(tǒng)的需求,設(shè)計本系統(tǒng)的組成結(jié)構(gòu)和在界面上顯示系統(tǒng)的總體模塊結(jié)構(gòu)。餐盤智能識別系統(tǒng)分為智能終端部分和后臺管理部分,智能終端部分界面上有對餐盤的檢測、餐盤數(shù)據(jù)的顯示和菜品總價的顯示,主要是能夠讓顧客能夠得到更友好的體驗感;后臺管理部分界面上有超級管理員的登錄界面以及菜品管理、終端管理、訂單管理、員工管理模塊,主要能讓超級管理員得到完整的使用記錄[11],對具體的數(shù)據(jù)有更好的、更直觀的統(tǒng)計和查看,以便于更好地進行管理。餐盤智能識別系統(tǒng)功能模塊主要有以下這幾個部分:智能終端部分:終端界面:界面上有獲取攝像頭的視頻流和空白的表格,表格中包括餐盤類型、餐盤數(shù)量以及餐盤單價,最后當然有價格的總計;餐盤掃描:對固定位置進行識別判斷是哪種類型的顏色的餐盤;形成訂單:當掃描結(jié)束后就會自動形成訂單并上傳到SQLite數(shù)據(jù)庫;刷臉支付:當屏幕上顯示請點擊開始刷臉支付提示,并有等待支付15秒的倒計時。后臺管理部分:登錄界面:登錄后臺管理的界面,其中有超級管理員的賬號和密碼以及驗證碼的輸入欄,登錄成功后進入后臺管理平臺的菜單頁;菜品管理界面:主要實現(xiàn)對菜品價格和類型的增刪改查;終端(收銀機)管理界面:主要實現(xiàn)對收銀機的增刪改查;訂單管理界面:主要實現(xiàn)對訂單的增刪改查以及訂單查看分頁查詢;員工管理界面:主要實現(xiàn)對員工賬號的增刪改查;運營統(tǒng)計界面:主要實現(xiàn)對每個菜品的訂單數(shù)據(jù)、每個收銀機的訂單數(shù)據(jù)及時間訂單數(shù)據(jù)的統(tǒng)計。系統(tǒng)功能結(jié)構(gòu)圖餐盤智能識別系統(tǒng)的功能結(jié)構(gòu)圖是通過對本系統(tǒng)的需求做調(diào)查研究,認為系統(tǒng)以顧客、員工和超級管理員提供不同的功能,再通過這三個使用者對應(yīng)進行分解出具體功能,并制作出系統(tǒng)的功能結(jié)構(gòu)圖,如圖3-1所示。圖3-1餐盤智能識別系統(tǒng)功能結(jié)構(gòu)圖系統(tǒng)運行硬件環(huán)境智能終端部分:所有pc端都可以使用,餐盤識別由攝像頭進行識別,刷臉支付由刷臉支付設(shè)備進行操作。后臺管理部分:此部分為網(wǎng)頁,輸入網(wǎng)頁地址,即可進行登錄和操作,所以任何的系統(tǒng)都可以進行操作。系統(tǒng)運行軟件環(huán)境智能終端部分:Python語言,SQLite數(shù)據(jù)庫為win10系統(tǒng)操作;后臺管理部分:前端Zui框架,后端SpringBoot框架,MySQL數(shù)據(jù)庫以及數(shù)據(jù)持久層Mybatis亦為win10系統(tǒng)操作。系統(tǒng)環(huán)境平臺該系統(tǒng)智能終端部分使用Python語言以及SQLite數(shù)據(jù)庫,后臺管理部分前端使用Zui框架、后端使用SpringBoot框架進行編程以及MySQL數(shù)據(jù)庫和數(shù)據(jù)持久層Mybatis。系統(tǒng)里用到的所有編程語言和編程框架在網(wǎng)上均是開源的,所以很多的技術(shù)都可以迎刃而解。其中特別提出后臺管理部分使用到的兩個框架——前端Zui框架、后臺SpringBoot框架,這兩個框架為什么會在本系統(tǒng)使用[12]。前端Zui框架:易于使用,有很多自帶的控件、組件和JS插件,這些東西在原生JS里都沒有的,可以說很人性化;操作便捷,不需要太多的css進行修改,不容易在編程時因為混亂而重復很多不必要的操作;應(yīng)用更廣泛,可以應(yīng)用現(xiàn)代化的響應(yīng)式設(shè)計,柵格系統(tǒng)自帶友好的基礎(chǔ)構(gòu)建響應(yīng)式設(shè)計頁面,也提供了一些輔助工具類,來控制內(nèi)容在不同設(shè)備的展現(xiàn)方式。后臺SpringBoot框架:該框架使用了特定的方式來進行配置,從而使得組員在開發(fā)時不再需要定義樣板化的配置,另外SpringBoot其實是一個整合Spring各項功能的中間件,可以更便捷地快速開發(fā)Spring應(yīng)用,也可以盡可能快地啟動和運行應(yīng)用,它的啟動是不需要配置到tomcat上也能啟動,當然也可以放上去。是因為SpringBoot里面內(nèi)嵌了一個servlet容器。還有就是其整合了Spring的一些常用的功能和一些可以快捷使用的依賴,能使整個編程過程更加便捷。
數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫搭建與連接方式創(chuàng)建數(shù)據(jù)庫,組里使用的是本地數(shù)據(jù)庫,所以先在phpstudy_pro里打開本系統(tǒng)所使用到的套件,如圖4-1所示。圖4-1打開系統(tǒng)數(shù)據(jù)庫所需套件之后再打開Navicat,并測試本系統(tǒng)的MySQL數(shù)據(jù)庫是否連接成功,如圖4-2所示。圖4-2測試系統(tǒng)數(shù)據(jù)庫是否連接成功系統(tǒng)中數(shù)據(jù)表的設(shè)計數(shù)據(jù)庫中各個表的設(shè)計如下:表4-1訂單細節(jié)信息表字段名數(shù)據(jù)類型長度是否為空備注detail_idint11否訂單細節(jié)序號(主鍵)type_idint11是菜品類型編號food_countint11是菜品數(shù)量food_pricedouble0是菜品單價order_numbertext0是訂單編號表4-2菜品信息表字段名數(shù)據(jù)類型長度是否為空備注food_idint11否菜品序號(主鍵)type_idint11是菜品類型編號food_nametext0是菜品名稱food_pricedouble0是菜品單價表4-3菜品狀態(tài)信息表字段名數(shù)據(jù)類型長度是否為空備注type_idint11否菜品類型序號(主鍵)type_nametext0是菜品類型名稱type_stateint11是菜品類型狀態(tài)表4-4終端(收銀機)信息表字段名數(shù)據(jù)類型長度是否為空備注machine_idint11否收銀機序號(主鍵)machine_uidtext0是收銀機編號machine_pwdtext0是收銀機密碼表4-5訂單信息表字段名數(shù)據(jù)類型長度是否為空備注order_idint11否訂單序號(主鍵)machine_uidtext0是收銀機編號order_numbertext0是訂單編號order_clinedetatime0是訂單時間戳order_moneydouble0是訂單總價order_ispayint11是訂單支付情況表4-6員工信息表字段名數(shù)據(jù)類型長度是否為空備注staff_idint3否員工序號(主鍵)staff_nametext0是員工姓名staff_accint10是員工賬號staff_pwdtext0是員工密碼staff_phonebigint11是員工手機號表4-7超級管理員信息表字段名數(shù)據(jù)類型長度是否為空備注user_idint11否超級管理員賬號(主鍵)user_nametext0是超級管理員姓名user_pwdtext0是超級管理員密碼user_ageint11是超級管理員年齡user_phonetetx0是超級管理員手機號
數(shù)據(jù)流程圖和流程泳道圖圖4-3餐盤智能識別系統(tǒng)數(shù)據(jù)流程圖圖4-4餐盤智能識別系統(tǒng)餐盤流程泳道圖圖4-5餐盤智能識別系統(tǒng)訂單流程泳道圖
系統(tǒng)的實現(xiàn)餐盤智能識別系統(tǒng)主要內(nèi)容有以下這兩個部分:智能終端部分又分為:終端界面、餐盤掃描、形成訂單、刷臉支付;后臺管理部分又分為:登錄界面、菜品管理界面、終端(收銀機)管理界面、訂單管理界面、員工管理界面、運營統(tǒng)計界面。5.1智能終端部分終端界面終端界面里有餐盤掃描實況區(qū)、形成訂單區(qū)和餐盤總價顯示欄三個部分組成,里面包括了餐盤掃描和訂單形成的部分,當開始掃描顧客餐盤里所選菜品時,餐盤掃描實況區(qū)會顯示攝像頭的實況,通過OpenCV算法開始掃描餐盤[13],并將掃描到的餐盤信息,展示在訂單形成區(qū)。當掃描完所有餐盤后點擊確認支付就可以將掃描到的餐盤信息傳遞到SQLite數(shù)據(jù)庫中,并進入刷臉支付界面進行支付,所有過程結(jié)束后無論支付成功與否都會將存在SQLite數(shù)據(jù)庫的餐盤信息傳到后臺和MySQL數(shù)據(jù)庫中。支付成功則顧客就可以盡情享用美食。如圖5-1所示。圖5-1終端界面餐盤掃描此區(qū)域為餐盤掃描區(qū)又稱實況區(qū),這塊區(qū)域主要功能是通過攝像頭顯示顧客所選餐盤的所有信息,系統(tǒng)會開始掃描餐盤信息并將所掃描到的信息顯示在形成訂單區(qū)和傳入SQLite數(shù)據(jù)庫中。如圖5-2所示。圖5-2餐盤掃描實況區(qū)形成訂單此區(qū)域形成訂單區(qū),主要功能是顯示餐盤掃描實況區(qū)中掃描到的所有餐盤信息,為下一步開始支付傳入數(shù)值信息。如圖5-3所示。圖5-3形成訂單區(qū)刷臉支付刷臉支付設(shè)備在開機后需要登錄賬號,信息需與后臺的終端管理里的賬號密碼相同才會顯示此界面。終端登錄成功后,機器就會收到收款信息即收款金額。點擊屏幕中刷臉支付即可開始進行刷臉支付操作,支付成功與否都會在此屏幕顯示,在SQLite數(shù)據(jù)庫中的信息連同支付信息一起傳入后臺以及MySQL數(shù)據(jù)庫中。如遇支付失敗可以回到終端界面重新點擊確認支付,并重新開始刷臉支付操作,當屏幕顯示支付成功后,顧客就可以盡情享用美食啦。如圖5-4所示。 圖5-4刷臉支付設(shè)備 后臺管理部分登錄界面此模塊用于登錄后臺管理界面。如圖5-5所示。圖5-5登錄界面亮點代碼一://刷新驗證碼的方法$("#imgCode").click(function(){document.getElementById("imgCode").src="veriCode.do?"+newDate();}); 此段代碼即為在登錄界面中刷新驗證碼的方法。通過獲取id的方法進行驗證碼的刷新,其中還有通過獲取當時時間來進行刷新驗證碼。亮點代碼二:try{ //將圖片,寫入到OS ImageIO.write(image,"jpg",os); ByteArrayInputStreamis=newByteArrayInputStream(os.toByteArray()); returnis;}catch(IOExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace();} 此段代碼意義在于將生成的驗證碼以jpg格式的圖片展示在頁面上,并將驗證碼打印在后臺的控制臺中。菜品管理界面此模塊用于管理菜品的名稱、類型和價格的模塊,并對菜品進行增刪改查操作。如圖5-6所示。圖5-6菜品管理界面亮點代碼:<divclass="input-groupcol-xs-3"style="float:left;padding-right:20px;"> <spanclass="input-group-addon">菜品類型</span> <selectid="typeSelect"class="form-control"></select></div>//獲取參數(shù)foodName=$("#foodName").val();typeId=$("#typeSelectoption:selected").val();//調(diào)用查詢searchFoodInfo();此段代碼為查詢菜品類型的操作,通過調(diào)取后臺給的參數(shù)去選擇所需菜品的類型,并顯示在界面上的菜品類型框里,點擊查詢即可查到該菜品類型的所有值并顯示在菜品信息欄中,如遇查詢到后臺數(shù)據(jù)庫菜品信息中沒有的數(shù)據(jù),頁面上會顯示未查到該菜品信息。收銀機管理界面此模塊用于管理收銀機的編號的模塊,并對收銀機進行增刪改查操作。如圖5-7所示。圖5-7收銀機管理界面亮點代碼一:<where> <iftest="dto.machineUid!=null"> MACHINE_UIDLIKECONCAT('%',CONCAT(#{dto.machineUid},'%')) </if></where>此段代碼為查詢收銀機編號的操作,通過收銀機編號或與其相似的收銀機編號來查詢整條收銀機信息,如遇查詢到后臺數(shù)據(jù)庫收銀機信息中沒有的數(shù)據(jù),頁面上會顯示未查到該收銀機信息。亮點代碼二://窗口關(guān)閉$("#dialogUpdate").modal('hide','fit');//刷新searchMachineInfo();此段代碼在所有代碼中常出現(xiàn)的一段,用于在某一項操作成功之后關(guān)閉并未在原頁面中顯示的框,同時進行頁面的更新操作,此時后臺數(shù)據(jù)庫就會有相對應(yīng)獲取的結(jié)果的操作。訂單管理界面此模塊用于管理訂單的開始日期、結(jié)束日期、編號和相對應(yīng)收銀機編號產(chǎn)生的訂單的模塊,并對訂單進行增刪改查操作。如圖5-8所示。圖5-8訂單管理界面亮點代碼一:varpay=''if(arr[i].orderIspay==0){ pay='未支付'}else{ pay='已支付'}此段代碼為在訂單管理頁面的訂單信息中顯示該訂單是否完成支付。通過SQLite數(shù)據(jù)庫傳到后臺和數(shù)據(jù)庫的信息展示在訂單管理界面中,每生成一條訂單信息就會產(chǎn)生一個支付狀態(tài)。亮點代碼二:<divclass="input-groupcol-xs-3"style="float:left;padding-right:20px;"> <spanclass="input-group-addon">收銀機編號</span> <selectid="machineSelect"class="form-control"></select></div>machineUid=$("#machineSelectoption:selected").val();此段代碼為在訂單管理界面亦可通過收銀機編號查詢相對應(yīng)的訂單信息。員工管理界面此模塊用于管理員工的編號、姓名和手機號的模塊,并對訂單進行增刪改查操作。如圖5-9所示。圖5-9員工管理界面亮點代碼一:<where> <iftest="dto.staffAccount!=null"> STAFF_ACCLIKECONCAT('%',CONCAT(#{dto.staffAccount},'%')) </if> <iftest="dto.staffPhone!=null"> ANDSTAFF_PHONELIKECONCAT('%',CONCAT(#{dto.staffPhone},'%')) </if> <iftest="dto.staffName!=null"> ANDSTAFF_NAMELIKECONCAT('%',CONCAT(#{dto.staffName},'%')) </if></where>此段代碼為查詢員工信息的操作,可以單獨或同時通過員工的賬號、手機號和姓名進行查詢,如遇查詢到后臺數(shù)據(jù)庫員工信息中沒有的數(shù)據(jù),頁面上會顯示未查到該員工信息。亮點代碼二:<divclass="input-groupcol-xs-2"style="float:left;padding-right:20px;"> <inputclass="btnbtn-success"id="btnReset"type="button"style="width:100%;"value="重置"></div>//重置按鈕添加監(jiān)聽$("#btnReset").click(function(){ //清空內(nèi)容 $("#staffAccount").val(""); $("#staffName").val(""); $("#staffPhone").val("");})此段代碼在所有代碼中常出現(xiàn)的一段,應(yīng)用于頁面上的重置按鈕。當在頁面上進行查詢后想要刪除輸入框里的內(nèi)容,一個一個刪會多花時間且顯得無聊又無用,所以就添加了這個重置按鈕,方便更快捷的操作。
系統(tǒng)測試本餐盤智能識別系統(tǒng)是由小組形式完成,本人所負責的部分為后臺菜品管理、終端管理界面以及支付模塊。測試目的及規(guī)劃測試的目的測試就是為了有更好的操作性和完整性以及更嚴密的保密性[14],畢竟這個系統(tǒng)涉及到了安全支付的問題。其測試的目的就是希望能以最少的人力和時間發(fā)現(xiàn)潛在的各種錯誤和缺陷,需要盡可能盡快發(fā)現(xiàn)軟件中的錯誤并予以正確的修正,從而達到驗證系統(tǒng)是否滿足使用者的需求。測試的規(guī)劃本次測試在Win10系統(tǒng)上使用GoogleChrome瀏覽器進行,從三方面進行測試:功能測試、性能測試和界面測試。功能測試上采用黑盒測試。黑盒測試主要測試系統(tǒng)的外部結(jié)構(gòu),無需考慮系統(tǒng)內(nèi)部邏輯結(jié)構(gòu),簡言之就是測試系統(tǒng)能否接收輸入的參數(shù)從而得到正確的輸出參數(shù)的過程,系統(tǒng)測試主要以使用者的角度出發(fā)。性能測試指的是系統(tǒng)在對指令的反應(yīng)速度上,排除網(wǎng)絡(luò)問題,從而達到最理想的測試效果。界面測試指的是界面的每個框、每個按鈕等有很好的排版,不要出現(xiàn)框與框、按鈕與按鈕以及框與按鈕之間重合的情況發(fā)生,極大程度地體現(xiàn)出界面的友好性和易操作性。有了這三方面的測試,相信一款比較完善的系統(tǒng)會使使用者無論在體驗上還是在操作上都有最佳感受。另外關(guān)于支付方面已經(jīng)可以真實支付,只需要獲取每一次支付情況和保證每一次都是在安全情況下進行的支付即可。測試用例及分析菜品管理模塊 菜品管理模塊主要是對每道菜的價格和菜品類型進行管理,能夠與前臺同步菜品的價格,不會因為菜品價格問題導致不必要的錯誤發(fā)生。表STYLEREF1\s6-SEQ表\*ARABIC\s11菜品管理模塊用例測試表用例編號測試模塊測試用例預(yù)期結(jié)果實際結(jié)果1搜索條件框查詢菜品信息中已有的菜品名稱顯示結(jié)果在頁面顯示所對應(yīng)的菜品信息2搜索條件框查詢菜品信息中沒有的菜品名稱彈出提醒框未查詢到相關(guān)菜品3搜索條件框選擇菜品信息中已有的菜品類型顯示結(jié)果在頁面顯示所對應(yīng)的菜品信息4搜索條件框選擇菜品信息中沒有的菜品類型彈出提醒框未查詢到相關(guān)菜品5搜索條件框重置搜索條件框重置成功清除輸入框里的參數(shù)6搜索條件框新增菜品信息新增菜品信息成功在頁面顯示新增的菜品信息7搜索條件框新增菜品信息新增菜品信息失敗1菜品信息填寫不完整8搜索條件框新增菜品信息新增菜品信息失敗2已存在該菜品類型,請重新選擇9菜品信息框刪除菜品信息刪除菜品信息成功更新菜品信息框的信息10菜品信息框刪除菜品信息刪除菜品信息失敗不更新菜品信息框的信息11菜品信息框修改菜品信息更新菜品信息成功1修改菜品信息相對應(yīng)的參數(shù)12菜品信息框修改菜品信息更新菜品信息成功2菜品信息填寫不完整13菜品信息框修改菜品信息更新菜品信息失敗不修改菜品信息相對應(yīng)的參數(shù)此模塊的功能是對菜品管理模塊的增刪改查,當菜品信息框里的信息更新以后數(shù)據(jù)庫也會跟著發(fā)生相對應(yīng)的變化。其中現(xiàn)存的問題:刪除菜品信息后再添加與刪除菜品信息對應(yīng)的菜品類型時會報“已存在該菜品類型,請重新選擇”的提示。如圖6-1、圖6-2和圖6-3所示:圖6-1頁面刪除菜品信息圖6-2數(shù)據(jù)庫中并沒有刪除對應(yīng)的菜品類型圖6-3添加菜品類型為紅色,則會彈出提示框終端管理模塊表STYLEREF1\s6-2終端管理模塊用例測試表用例編號測試模塊測試用例預(yù)期結(jié)果實際結(jié)果1搜索條件框查詢收銀機信息中已有的收銀機編號顯示結(jié)果在頁面顯示所對應(yīng)的收銀機信息2搜索條件框查詢收銀機信息中沒有的收銀機編號彈出提醒框未查詢到相關(guān)收銀機3搜索條件框重置搜索條件框重置成功清除輸入框里的參數(shù)4搜索條件框新增收銀機信息新增收銀機信息成功在頁面顯示新增的收銀機信息5搜索條件框新增收銀機信息新增收銀機信息失敗1收銀機信息填寫不完整7搜索條件框新增收銀機信息新增收銀機信息失敗2該收銀機已存在8收銀機信息框刪除收銀機信息刪除收銀機信息成功更新收銀機信息框的信息續(xù)表6-29收銀機信息框刪除收銀機信息刪除收銀機信息失敗不更新收銀機信息框的信息10收銀機信息框修改收銀機信息更新收銀機信息成功1修改收銀機信息相對應(yīng)的參數(shù)11收銀機信息框修改收銀機信息更新收銀機信息成功2收銀機信息填寫不完整12收銀機信息框修改收銀機信息更新收銀機信息失敗不修改收銀機信息相對應(yīng)的參數(shù)此模塊的功能是對終端管理模塊的增刪改查,終端即為收銀機。當收銀機信息框里的信息更新以后相對應(yīng)的數(shù)據(jù)庫也會跟著發(fā)生相對應(yīng)的變化。目前存在的問題:這個問題也是在所有管理模塊中都存在的問題,點擊重置按鈕后,只會去除輸入框里的信息,不會顯示之前已有的信息,僅保留查詢之后的終端信息,如圖6-4和圖6-5所示。圖6-4查詢后頁面顯示圖6-5重置后收銀機信息欄顯示與查詢后一致支付模塊表6-3支付模塊用例測試表用例編號測試模塊測試用例預(yù)期結(jié)果實際結(jié)果1支付模塊開啟刷臉支付設(shè)備開啟成功可以開始進行刷臉支付操作2支付模塊開啟刷臉支付設(shè)備開啟失敗1網(wǎng)絡(luò)連接異常3支付模塊開啟刷臉支付設(shè)備開啟失敗2設(shè)備狀態(tài)檢查失敗4支付模塊開啟刷臉支付設(shè)備開啟失敗3遠程配置獲取失敗5支付模塊進行刷臉支付支付成功收款方成功收到應(yīng)收金額6支付模塊進行刷臉支付支付失敗支付設(shè)備頁面顯示支付狀態(tài)位置并提示查詢是否到賬支付功能在很多軟件應(yīng)用中常常涉及到。支付功能的測試關(guān)注點是有沒有出現(xiàn)支付金額出現(xiàn)差錯和事務(wù)的一致性。在產(chǎn)品的容錯性上,即為異常處理有以下三點:1、支付時出現(xiàn)斷網(wǎng);2、支付失敗之后如何補單和退單;3、持續(xù)點擊是否會出現(xiàn)多次扣款如果發(fā)生多次扣款,如何退款到支付賬號??偟膩碇v,支付模塊不會有太大的問題,需要注意的是對應(yīng)的信息不能有誤這樣就會導致支付失敗的情況發(fā)生。測試總結(jié)通過多組數(shù)據(jù)分別對系統(tǒng)的各個模塊進行了功
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 一般固體廢物處置及綜合利用項目可行性研究報告
- 高中語文和外語通跨學科教學中的評估與反饋機制
- 2025至2030年中國生長雞顆粒飼料行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國獺兔皮披肩行業(yè)投資前景及策略咨詢報告
- 工業(yè)綠色轉(zhuǎn)型的當前挑戰(zhàn)與發(fā)展趨勢
- 區(qū)域醫(yī)療協(xié)同發(fā)展模式的創(chuàng)新探索與實踐
- 2025至2030年中國海綿車門密封條行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國汽車起動機軸行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國果菜保鮮劑行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國曲皮螺栓行業(yè)投資前景及策略咨詢報告
- 村文書考試題及答案
- 電氣技術(shù)及其應(yīng)用試題及答案
- 大數(shù)據(jù)驅(qū)動的人才招聘分析-洞察闡釋
- 2025年護理三基知識必考重點題庫及答案(共720題)
- 2025年中國鐵路西安局招聘高校畢業(yè)生第二批(102人)筆試參考題庫附帶答案詳解
- 中國妊娠期糖尿病母兒共同管理指南(2024版)核心要點解讀
- 2025屆四川省眉山市百坡初級中學八下數(shù)學期末復習檢測模擬試題含解析
- 大數(shù)據(jù)在區(qū)域經(jīng)濟學中的應(yīng)用研究-洞察闡釋
- 《寵物保健品營銷策略》課件
- 民兵理論考試試題及答案
- 2024年云南省初中學業(yè)水平考試生物學試題卷
評論
0/150
提交評論