




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
引言早期餐飲企業的管理主要是通過手工操作,依靠紙質的數據資料來管理記錄,通過手工方式匯總和統計企業的經營情況。這樣方式存在較大的隱患,不利于管理,如果數據資料發生意外,講給企業造成嚴重的經濟損失。這些數據資料的管理費時費力,還占用較大的空間,無法保證準確率,總得來說效率較低,不易于餐飲企業的管理。加上2020年疫情大爆發以來,餐館受到了前所未有的影響,未知的疫情因素導致人們不敢進入到餐館就餐。考慮客戶在疫情環境下就餐的安全,提高就餐品質,因此設計了基于Qt平臺設計點餐的點餐系統。一方面為消費者解決以上外出就餐的顧慮,另一方面推動著社會經濟的緩慢復蘇。1緒論1.1研究的目的和意義1.1.1研究的目的1.1.2研究的意義對于開發點餐系統的意義就是:提升餐廳工作人員的效率,例如廚房可以可視化進行精準做菜,服務人員可以精準上菜等。而且可以存儲大量訂餐數據,便于后期的賬目管理。當然對于疫情的防控工作也承擔起了相應的責任。對于成功的交易訂單,用戶還可對商家服務體驗和美食質量,進行在線評價,以促進和提高食品和服務的質量。1.2國內外研究現狀目前,我國餐飲企業的發展迅速向規范化、工業化、信息化發展邁進。國內外餐飲管理系統眾多,功能大致相同,但是標準不一致,相同點都是采用DataBase來存儲信息。由于歐美等發達國家計算機水平較高,發展的時間長,歐洲和美國等發達國家也首次建立了餐飲管理體系。一些著名的快餐連鎖企業有了長時間的摸索和經驗積累,從而制定了產業化的操作步驟。2系統需求分析2.1可行性分析可行性分析通俗來講也就是說設計的這款程序能不能在社會中實用。那么首要就要計算這款邏輯思路,防止在后期的規劃出現矛盾,導致程序不能很好的使用于大眾中;其次,我們要設計好后期的維護工作,包括數據庫的維護,防止出現數據雜亂無章。2.2.1系統用戶角色分析點餐系統的用戶角色主要分為就餐客戶,廚房工作人員以及前臺服務人員。管理員是系統開發階段指定生成的用戶名不可更改,但是可以自己修改密碼,管理員擁有系統的做高權限,主要是維護系統的信息流。2.2.2系統的功能性需求分析基于QT平臺的點餐系統應該具有以下的功能點:用戶登錄功能:餐桌管理:菜品管理收銀管理下單管理員工管理3系統的總體設計3.1系統的功能架構設計主要分為五大模塊:1.登錄2.前臺3.廚房4.管理員5.用戶這5個頁面;可以將客戶,廚房,服務人員三者進行準確的聯系,客戶可以將點餐的內容發送給廚房,廚房則迅速的調整知道需要做什么菜,服務人員通過平臺準確的找到客戶的位置,做到快捷,精準,高效一體化服務,保障客戶的用餐快捷,節約更多的時間成本。圖1系統的功能架構Fig.1Functionalarchitectureofthesystem3.2系統主要功能設計及介紹3.2.1登錄模塊首先先對數據庫進行建表,然后用代碼將數據庫進行連接,通過響應登錄按鈕對賬號密碼進行驗證登錄;如果匹配成功,則通過數據庫中的已錄用人員情況,分別判斷其為哪一類人員,然后分別登錄到自己所屬的界面。3.2.2用戶模塊登錄到用戶模塊,用戶可以登錄界面即使找到空座位,提高座位的就座率,然后呼叫前臺進行點餐服務。3.2.3前臺模塊登錄到前臺模塊,當前臺被用戶呼叫后,前臺將本店所屬的電子菜單呈現給用戶,根據用戶的需要將總金額進行結算,結算后訂單呈現給廚房端。3.2.4廚房模塊登錄到廚房模塊,當前臺的訂單完成后,會及時更新到廚房管理平臺,根據前臺下的訂單去完成相應的上菜功能。這樣的好處是避免單子的混亂導致做錯菜品,提高廚房上菜的效率。3.2.5管理員模塊登錄到該模塊,管理員通過登平臺后,1.可以對員工的表現進行打分評價工作,包括新入職員工的信息錄入和離職員工的信息刪除工作;2.如果餐廳改良門店的環境,可以對一些餐桌進行增刪改查操作;3.可以對菜品的信息及時的修改,添加以及下架,也可以對菜品的圖片進行添加,以及對菜品的定價進行及時的修改。4.對收款的支付寶和微信二維碼的二維碼修改。3.3數據庫的設計根據概念去設計數據庫,為了建設一個具有抽象和分類的管理系統概念的模型,去實現每個用戶需要。根據這些需求,建立起每個程序需求所對應的E-R圖,然后確立起對應的類型和物理屬性。因此,這里有必要把重點放在體現系統對應的需求方法上,而不是考慮特定的實現問題。3.3.1數據庫的設計原則軟件在開發的過程中,完成可行性分析之后就可以進行軟件的功能性設計,設計功能是往往牽扯到了數據流,所以在程序的設計過程中數據庫設計的合理性影響著設計人員的開發效率。系統中的數據都存儲在數據庫中,來解決數據的持久化問題。數據庫和數據表的名稱一律使用國際標準化基本英文字符,盡量見名聞其義。數據的的設計過程中要符合三范式原則。字符集為UTF-8。不能在任何地方使用駝峰命名法。3.3.2數據庫概要設計本系統的數據模型采用E-R圖,即實體聯系圖這種簡單明了的表達方式對實體進行描述,E-R圖比較接近人類的思維模式,而且很容易通過E-R圖將設計思想轉換為實際數據庫的數據模型[1]。根據該系統可進行的相關操作過程:管理員對菜品,用戶訂單進行統一管理操作,用戶通過點餐下單在前臺提交訂單再交給管理員管理,這樣形成一個閉環模式,提高了高效性和可用性。圖2系統流程圖Fig.3Systemflowchart用戶:用戶的實體信息主要存儲了用戶的賬號密碼,并對其分類,E-R圖如圖3所示。圖3用戶實體屬性圖Fig.3Userentityattributemap(2)餐桌實體信息:主要為用戶提供具體桌號的使用狀態,E-R圖如圖4所示。圖4餐桌實體屬性圖Fig.4Tableinformationentityattributemap(3)員工:員工實體主要存儲了員工的編號信息,姓名,職位等相關信息,在辦理入職離職時來操作相關信息,E-R圖如圖5所示。圖5員工實體屬性圖Fig.5Employeeentityattributemap(4)菜品:菜品主要對相關菜品的信息進行存儲,方便用戶下單時對一些菜類進行了解,從而根據喜好下單。E-R圖如圖6所示。圖6菜品信息實體屬性圖Fig.6Commodityinformationentityattributemap(5)訂單實體:訂單主要是針對具體的餐桌所提交的訂單進行統一存儲,方便后期用戶開票及管理。E-R圖如圖7所示。圖7菜品種類實體屬性圖Fig.7Orderentityattributemap3.3.3數據庫的邏輯設計表1餐桌信息表Tab.1Tableinformation字段名稱字段類型最大長度是否可空是否主鍵描述IDint11否是序號TableNamevarchar255是否餐桌名稱Namevarchar255是否名稱Saleint11是否數量Statusvarchar255是否狀態表2菜單信息表Tab.2Menuinformationtable字段名稱字段類型最大長度是否可空是否主鍵描述IDint11否是序號Nametext65535是否名稱Pricedouble是否單價Saleint11是否數量Picturevarchar255是否照片外鍵Notelongtext4294967295是否備注表3點餐記錄信息表Tab.3Orderingrecordinformationsheet字段名稱字段類型最大長度是否可空是否主鍵描述IDint11否是序號DateTimedatetime是否日期時間Namelongtext4294967295是否名稱Totaldouble是否總價Tablevarchar255是否餐桌名稱Statusvarchar255是否狀態Notelongtext4294967295是否備注表4支付信息表Tab.4Paymentinformationsheet字段名稱字段類型最大長度是否可空是否主鍵描述Namevarchar255否是名稱PicBinmediumblob16777215是否照片數據表5圖片信息表Tab.5Pictureinformationtable字段名稱字段類型最大長度是否可空是否主鍵描述Namevarchar255否是名稱PicBinmediumblob16777215是否照片數據表6員工信息表Tab.6Employeeinformationsheet字段名稱字段類型最大長度是否可空是否主鍵描述IDint11否是序號Namelongtext4294967295是否姓名Borndate是否出生日期Telephonelongtext4294967295是否電話Joblongtext4294967295是否職位Notelongtext4294967295是否備注表7餐桌信息表Tab.7Tablesinformationtable字段名稱字段類型最大長度是否可空是否主鍵描述Namevarchar255否是名稱Statusvarchar255是否狀態Notevarchar255是否備注表8用戶信息表Tab.8Userinformationtable字段名稱字段類型最大長度是否可空是否主鍵描述IDint11否是序號Namevarchar255是否用戶名passwordvarchar255是否密碼sortvarchar255是否用戶類別notevarchar255是否備注4詳細設計及實現4.1開發與平臺本次開發使用的主要開發工具為QtCreator,版本4.3.0;數據版本為:5.7.24-win32;使用MySql可視化平臺NavicatPremium15;語言使用C++進行開發,通過新建文件夾或項目,選擇Application來建立項目最基礎的框架。在此基礎之上,建立.ui文件,進行圖像設計。再到Sources文件當中用c++程序邏輯編寫.cpp文件去實現具體的功能,包括信號與槽機制來確定是具體的哪一個控件發出了信號,確定其發出的是哪個信號,從而來實現一些按鈕的功能,以及通過Connect連接機制去調用MySQL,對數據庫進行連接去調用及導入數據。4.2數據庫的實現通過前期的需求分析后,設計出來了數據庫的E-R圖,來表示系統中的實體及其屬性。那么接下來的重點就是根據E-R圖設計規劃具體的數據庫主鍵及字段的設計。圖7餐桌表的實現Fig.7Therealizationofdiningtabletable圖8菜單表的實現Fig.8Therealizationofmenutable圖9點餐記錄表的實現Fig.9Therealizationoforderingtable圖10員工表的實現Fig.10Implementationofemployeetable圖11用戶表的實現Fig.11Implementationofusertable4.3主要功能的實現登錄模塊:通過輸入用戶密碼于數據庫中user表的相應字段判別屬于哪一類用戶,對應進入所屬的界面。具體實現如圖12所示。圖12用戶登錄界面Fig.12Userlogininterface員工信息管理界面:登錄系統之后可以了解員工的姓名、生日、手機號碼等基本信息,在此界面右擊可以選擇插入、刪除、提交、撤銷等功能。如果想要編輯員工的信息雙擊單元格之后即可編輯,編輯之后需要右鍵選擇提交才能夠將數據提交到后臺數據庫進行永久修改,不提交的數據刷新之后又恢復到原始數據。選擇一行之后右擊刪除即可刪除員工的信息。圖13員工信息界面Fig.13Employeeinformationinterface圖14右擊功能菜單界面Fig.14Rightclickthefunctionmenuinterface餐桌信息管理模塊:登錄到系統之后可以查看餐桌的名稱、狀態和備注信息,狀態分為空閑和用餐兩種狀態。如果想要編輯餐桌的信息雙擊單元格之后即可編輯,編輯之后需要右鍵選擇提交才能夠將數據提交到后臺數據庫進行永久修改,不提交的數據刷新之后又恢復到原始數據。圖15餐桌信息界面Fig.15Tableinformationinterface圖16右擊功能菜單界面Fig.16Rightclickthefunctionmenuinterface餐單信息模塊:菜單信息模塊主要包括名稱價格圖片展示和備注字段,一般登錄到該頁面可以及時更新菜品的種類及價格,讓客官更加直觀的了解到飯店的透明價格。通過修改或添加菜品照片來為客官展示最真實的菜品。圖17菜單信息Fig.17Menuinformation前臺功能模塊:使用前臺賬號登錄后可以看到訂單的相關信息??梢圆榭从唵蔚臅r間、名稱、消費金額、狀態和備注信息,在此界面右擊可以選擇插入、刪除、提交、撤銷等功能。如果想要編輯餐桌的信息雙擊單元格之后即可編輯,編輯之后需要右鍵選擇提交才能夠將數據提交到后臺數據庫進行永久修改,不提交的數據刷新之后又恢復到原始數據。圖19前臺界面Fig.19Frontdeskinterface后廚管理功能模塊:通過后廚管理賬號登錄之后,可以看到用戶的訂單信息,每個訂單屬于的桌子,菜品名稱和售價,后廚的工作人員根據訂單的順序進行做菜,做完之后即可在可視化程序中點擊上菜,那么這個訂單就會消失,按照時間順序的下一個訂單會依次上調。圖20廚房界面Fig.20Kitcheninterface用戶模塊:通過登錄到用戶的系統頁面后,用戶可以及時看到現在的餐桌用餐情況,例如某桌有人坐,用戶的界面上則會顯示這個桌為暗灰色,即為用餐狀態,若沒有人座,則顯示空閑狀態。用戶可以從而根據餐桌的狀態選擇就座。圖21用戶登錄界面圖Fig.21Userlogininterface5系統的測試5.1系統測試的目的系統的主要功能完善需要通過測試來完成,包括基于QT平臺的點餐系統開發階段全部完成之后,對已經完成的功能進行不斷地測試,要相對于開始的設計邏輯進行對比,判別設計邏輯是否存在偏差,為了驗證程序能否滿足客官的基本需求。在測試的時候要觀察一下程序的各個功能界面的設計是不是很簡練,顏色搭配以及功能布局有沒有凌亂的感覺,對于一個界面程序來說對第一印象也很重要,所以界面細節也是非常重要。系統每個模塊都需要重復操作測試,不管哪里存在邏輯上的問題,或者是功能不能達到用戶需求,就需要我及時作出改正。5.2測試的方法系統測試方法可以分為以下兩種:(1)黑盒測試:即并不能清楚的了解程序內部的結構,只是對外部的功能與數據和信息進行測試,其又被稱為功能測試。(2)白盒測試:對結構進行測試。綜合考慮之后,本系統最終采用了黑盒測試方法中的邊界分析測試和等價類劃分測試來進行測試。5.3系統的功能性測試這一塊我對登錄界面、餐單信息界面和管理員登錄后端界面分別測試其主要功能。首先測試的是用戶的登錄信息,能夠和數據庫中的對應字段相匹配,則登錄成功,反之則失敗。其次對餐單信息界面進行對餐品圖片信息插入操作。最后對后端平臺右鍵出現的增刪改查操作進行測試。登錄模塊測試及模塊測試用例如表9、表10所示。表9管理員登錄模塊測試用例表Table9Loginmoduletestcasetable用例編號操作描述輸入值期望結果實際結果是否正常001管理員登錄界面,輸入登錄信息賬號:qt密碼:123成功進入系統成功進入系統是002管理員登錄界面,輸入登錄信息賬號:qqq密碼:123提示提示用戶名或者密碼錯誤!提示提示用戶名或者密碼錯誤!是003管理員登錄界面,輸入登錄信息賬號:szx密碼:111提示提示用戶名或者密碼錯誤!提示用戶名或者密碼錯誤!是表10模塊測試用例表Table10Testcasetableofgeneraluserloginmodule用例編號操作描述輸入值期望結果實際結果是否正常001用戶登錄界面,輸入登錄信息賬號:admin密碼:123456成功登錄成功登錄是002用戶登錄界面,輸入登錄信息賬號:王五密碼:123456提示用戶名或者密碼錯誤!提示用戶名或者密碼錯誤!是003用戶登錄界面,輸入登錄信息賬號:張三密碼:111111提示用戶名或者密碼錯誤!提示用戶名或者密碼錯誤!是004用戶登錄界面,輸入登錄信息賬號:張三密碼:123456提示用戶名或者密碼錯誤!提示用戶名或者密碼錯誤!是005餐單信息界面添加一張照片一張菜品照片保存到數據庫保存成功是006管理員界面右鍵操作增刪改查保存到數據庫保存成功是6結語基于QT平臺的點餐系統的開發已經進入最后階段,在這一次獨立的程序開發過程中,我體會到了獨自開發程序的難點,之前都是分配小組一起做,所以這次項目的開發得到了很好的鍛煉,一些知識的缺漏,讓我在不會時及時查閱得到了補充,而更重要的是細節,在項目中,我可能就是一個符號的問題就導致一天處于緊繃狀態,細節決定成敗,在整個項目開發中開發中的各個流程都需要認真對待,不管需求分析、結構規劃、模塊劃分以及最后的功能實現和系統測試,都需要踏踏實實,耐心的去對待,一步一步的來,如果稍有疏忽,程序在某個環節出現了問題,后續的工作將很難進展且返工起來也很繁瑣。在開發過程中,我遇到了很多的難題,比如在程序開發剛開始時的需求分析過程中,我在想這個系統應該具備什么樣的功能,起初我是按照自己的想法去劃分功能,但是當我在網上參考其他人做的這個系統時發現我劃分的功能有很多不足之處,于是在整合自己和別人的功能之后,將此次開發的系統包含的功能確定下來。但是開
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年項目管理中的法律法規考題試題及答案
- 項目管理戰略分析試題及答案
- 2025年公司財務治理新趨勢試題及答案
- 微生物檢測新技術的探索試題及答案
- 2024年項目管理考題預測試題及答案
- 證券從業資格證考試制度理解試題及答案
- 重要致病菌的特征識別試題及答案
- 放射性金屬礦的開采對土壤質量的影響考核試卷
- 生態環境監測在農業生態環境保護中的重要性考核試卷
- 新冠疫情下微生物檢測的策略與實施試題及答案
- 風機事故完整版本
- 開工安全交底
- 北京市2020-2024年高考生物復習分類匯編:基因工程(含詳解)
- 無人機應急處置預案及流程
- 【MOOC】量子信息原理與應用-南京大學 中國大學慕課MOOC答案
- 壓接端子檢驗標準
- 一年級語文下冊in-ing拼音練習2018(部編版)
- 幼兒園 家具玩具類 設備采購相關參數(僅供參考)
- 新質生產力賦能銀發經濟高質量發展的內在邏輯與實踐路徑
- 風機混塔產業基地項目可行性研究報告寫作模板-拿地申報
- 2022年江蘇省普通高中學業水平選擇性考試地理試題(解析卷)
評論
0/150
提交評論