版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件工程詳細(xì)設(shè)計(jì)說明書文檔飯店點(diǎn)餐管理系統(tǒng)的分析與設(shè)計(jì)學(xué)院名稱信電工程學(xué)院專業(yè)名稱計(jì)算機(jī)科學(xué)與技術(shù)所屬學(xué)期2015-2016(一)小組名單班級(jí)學(xué)號(hào)姓名13計(jì)卓20130501214陳堯13計(jì)卓20130501106韓潔13計(jì)卓20130501323劉蕊13計(jì)卓20130501339鄧輝任課教師王小磊2015年12月24日目錄TOC\o"1-2"\h\u282F.1引言 710382F.1.1編寫目的 723875F.1.2背景 714881F.1.3定義 732261F.1.4參考資料 8149F.2程序系統(tǒng)的結(jié)構(gòu) 813596F.2.1制菜統(tǒng)籌 911789F.2.2推送新菜 1124093F.2.3點(diǎn)菜服務(wù) 118697F.2.4會(huì)員服務(wù) 1211312F.2.5評(píng)價(jià) 1222101F.2.6賬單管理 1324314F.2.7菜單管理 1319327F.3制菜統(tǒng)籌設(shè)計(jì)說明 1424445F.3.1程序描述 144111F.3.2功能 143370F.3.3性能 1511285F.3.4輸入項(xiàng) 151166F.3.5輸出項(xiàng) 1513226F.3.6算法 1613359F.3.7流程邏輯 188896F.3.8接口 1931135F.3.9存儲(chǔ)分配 207372F.3.10注釋設(shè)計(jì) 227022F.3.11限制條件 2226820F.3.12測(cè)試計(jì)劃 2218751F.3.13尚未解決的問題 238645F.4點(diǎn)菜管理模塊程序 2328676F.4.1程序描述 2327849F.4.2功能 2313087F.4.3性能 254250F.4.4輸入項(xiàng) 2529541F.4.5輸出項(xiàng) 2529501F.4.6算法 2618219F.4.7流程邏輯 30655F.4.8接口 3016142F.4.9存儲(chǔ)分配 308480F.4.10注釋設(shè)計(jì) 3119145F.4.11限制條件 3223461F.4.12測(cè)試計(jì)劃 323064F.4.13尚未解決的問題 3227897F.5評(píng)價(jià)管理模塊程序 3225589F.5.1程序描述 338503F.5.2功能 3329248F.5.3性能 3422117F.5.4輸入項(xiàng) 343884F.5.5輸出項(xiàng) 3413412F.5.6算法 356276F.5.7流程邏輯 3527009F.5.8接口 3521603F.5.9存儲(chǔ)分配 3610381F.5.10注釋設(shè)計(jì) 362994F.5.11限制條件 3632741F.5.12測(cè)試計(jì)劃 3625753F.5.13尚未解決的問題 37F.1引言F.1.1編寫目的在前一階段《概要設(shè)計(jì)說明書》中,已解決了實(shí)現(xiàn)該系統(tǒng)需求的程序模塊設(shè)計(jì)問題。包括如何把該系統(tǒng)劃分為若干個(gè)模塊、決定各個(gè)模塊之間的接口、模塊之間傳遞的信息,以及數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)等。在以下詳細(xì)設(shè)計(jì)報(bào)告中將對(duì)本階段中對(duì)系統(tǒng)所做的所有詳細(xì)設(shè)計(jì)進(jìn)行說明。在本階段中,確定應(yīng)該如何具體的實(shí)現(xiàn)所要求的系統(tǒng),從而在編碼階段可以把這個(gè)描述直接翻譯成用具體的程序語言書寫的程序。主要工作有:根據(jù)在《需求分析說明書》中所描述的功能、流程,并依照《概要設(shè)計(jì)說明書》所確定的處理流程、總體結(jié)構(gòu)和運(yùn)行模塊設(shè)計(jì),設(shè)計(jì)完成程序系統(tǒng)的結(jié)構(gòu),完成制菜統(tǒng)籌模塊、點(diǎn)菜管理模塊、評(píng)價(jià)管理模塊的程序描述,其中包括各模塊的設(shè)計(jì)說明、程序描述、功能、性能、輸入、輸出、算法、流程邏輯、接口等。本說明書的預(yù)期讀者為系統(tǒng)設(shè)計(jì)人員、軟件開發(fā)人員、軟件測(cè)試人員和項(xiàng)目評(píng)審人員。F.1.2背景為了更好的滿足廣大消費(fèi)者的多元化消費(fèi)需求和不同層次的消費(fèi)水平,提高飯店的服務(wù)管理質(zhì)量,提高飯店工作人員的工作效率,我開發(fā)小組在多方面考察、分析、研究現(xiàn)有飯店點(diǎn)菜管理系統(tǒng)的基礎(chǔ)之上,以提高消費(fèi)者的滿意程度及商家的服務(wù)水平和市場(chǎng)競(jìng)爭(zhēng)力為目標(biāo),致力于開發(fā)出一套可視化程度高、功能全面、集分析管理于一體的飯店點(diǎn)餐系統(tǒng)。F.1.3定義SQLServer:系統(tǒng)服務(wù)器所使用的數(shù)據(jù)庫管理系統(tǒng)。SQL:一種用于訪問查詢數(shù)據(jù)庫的語言事務(wù)流:數(shù)據(jù)進(jìn)入模塊后可能有多種路徑進(jìn)行處理主鍵:數(shù)據(jù)庫表中的關(guān)鍵域,值互不相同外部主鍵:數(shù)據(jù)庫表中與其他表主鍵關(guān)聯(lián)的域Vs2013:MicrosoftVisualStudio(簡(jiǎn)稱VS)是美國(guó)微軟公司的開發(fā)工具包系列產(chǎn)品。C#:C#是微軟公司發(fā)布的一種面向?qū)ο蟮?、運(yùn)行于.NETFramework之上的高級(jí)程序設(shè)計(jì)語言。F.1.4參考資料《百度文庫》F.2程序系統(tǒng)的結(jié)構(gòu)F.2.1制菜統(tǒng)籌1.菜品提示功能廚師:下一道菜品學(xué)徒:下一道菜所需的食材種類和分量顧客:菜品正在制作2.制菜的統(tǒng)籌功能算法:通過客人點(diǎn)菜的時(shí)間可以優(yōu)先做菜,有和這道菜一樣的菜就可以一塊做,然后再通過算法顯示下一道菜,前一個(gè)桌號(hào)總比下一個(gè)桌號(hào)多一道菜。該功能實(shí)現(xiàn)了制菜的統(tǒng)籌合理安排制菜順序。同時(shí)將正在制作的菜狀態(tài)設(shè)置為不可退。還能提示下一道菜的菜名和具體信息,給廚師的下手準(zhǔn)備食材。3.無食材提示當(dāng)一道菜的食材不夠用了會(huì)提示客戶退菜或者換一道菜以及服務(wù)員,并自動(dòng)從菜單中刪除這道菜顧客根據(jù)提示退換菜。F.2.2推送新菜1.新菜錄入廚師新研制的菜肴的食材種類和分量詳細(xì)的錄入系統(tǒng),儲(chǔ)存在新菜菜單中。2.評(píng)分機(jī)制根據(jù)一周顧客的評(píng)分,若低于所有菜品的平均分則刪除這道新菜,若高于平均分則加入菜單中。F.2.3點(diǎn)菜服務(wù)1.顧客點(diǎn)菜(1)桌號(hào)的輸入顧客進(jìn)入飯店之后選擇座位坐下,通過掃描二維碼在系統(tǒng)中先錄入自己的桌號(hào)以方便點(diǎn)菜。(2)口味的選擇與菜色推薦顧客進(jìn)入系統(tǒng)之后,可以根據(jù)自己的偏好選擇酸甜辛辣,淡咸之類的口味,從而系統(tǒng)自動(dòng)進(jìn)行推薦菜色,如以前顧客品嘗過后評(píng)分較高的菜色或者該口味本飯店的招牌菜之類的菜色,同時(shí),系統(tǒng)還可以自動(dòng)推薦其他口味的評(píng)分較高的菜色以供顧客選擇。(3)點(diǎn)菜與寫備注顧客確定了自己所點(diǎn)的菜色之后,可以在系統(tǒng)上進(jìn)行確認(rèn)點(diǎn)菜,在點(diǎn)菜的同時(shí),可以對(duì)自己所點(diǎn)的菜寫入相應(yīng)備注,如需要多一點(diǎn)辣味或者少加某樣調(diào)料等等來滿足自己的需求。(4)生成菜單與提交制菜統(tǒng)籌系統(tǒng)顧客點(diǎn)完菜之后,系統(tǒng)自動(dòng)生成桌號(hào)+菜色+備注的菜單并將其提交至制菜統(tǒng)籌系統(tǒng)。2.顧客退菜和催菜(1)退菜顧客在提交了菜單之后,如果想退菜,在系統(tǒng)中找到自己所點(diǎn)菜,如果廚師正在做這道菜,那么便無法進(jìn)行退菜,如果廚師還沒有做到這道菜,便可以從自己的菜單中刪除這道菜,那么相應(yīng)的制菜統(tǒng)籌系統(tǒng)中也會(huì)刪除這道菜。(2)催菜顧客點(diǎn)菜之后,在等待的過程中,可以在系統(tǒng)中點(diǎn)催菜按鈕,以此來催促廚師加快制作速度。F.2.4會(huì)員服務(wù)1.注冊(cè)會(huì)員顧客可以通過系統(tǒng)中的注冊(cè)會(huì)員按鈕進(jìn)入注冊(cè)會(huì)員選項(xiàng),然后填寫注冊(cè)會(huì)員需要寫明的各項(xiàng)具體信息提交給系統(tǒng),系統(tǒng)從自身數(shù)據(jù)庫中判斷,某些不能重復(fù)的項(xiàng)目如手機(jī)號(hào)碼等如和數(shù)據(jù)庫重復(fù)沖突了則不能通過,并且提示顧客重新確認(rèn)自己所填寫的信息,而填寫完成并且通過之后,則進(jìn)入會(huì)員繳納相應(yīng)的會(huì)員費(fèi)部分,繳納會(huì)員費(fèi)之后則正式成為飯店會(huì)員,同時(shí)系統(tǒng)為該客戶分配唯一的會(huì)員號(hào)碼,并以此作為識(shí)別會(huì)員身份的憑證。2.會(huì)員服務(wù)會(huì)員登錄系統(tǒng)之后,便可以在其他任何地方都可以打電話預(yù)約座位和提前點(diǎn)菜,到飯店之后只需在預(yù)留的座位上等待直至菜品上桌,或者到飯店在進(jìn)行點(diǎn)菜也可以。點(diǎn)完菜之后,可以為會(huì)員提供相應(yīng)的打折措施,消費(fèi)500元以內(nèi)打9折,500到1000元打8.5折,1000元以上打8折,與此同時(shí)還可以進(jìn)行積分措施,消費(fèi)多少則積相應(yīng)的分?jǐn)?shù),到了一定程度后,每100分可以兌換5元現(xiàn)金券或者相應(yīng)小禮品。F.2.5評(píng)價(jià)1.判斷顧客是否已經(jīng)付款2.如果沒付款等待付款,如果付款顯示評(píng)論界面3.系統(tǒng)給出非常好,很好,一般,很差四個(gè)選項(xiàng)給顧客選擇,顧客可以根據(jù)服務(wù)態(tài)度,菜色,就餐環(huán)境等進(jìn)行評(píng)價(jià),評(píng)價(jià)完成后在顧客評(píng)價(jià)界面顯示4.顧客評(píng)價(jià)完成后,系統(tǒng)根據(jù)算法顯示飯菜的好評(píng)率,并贈(zèng)送相應(yīng)的獎(jiǎng)勵(lì)給客戶5.經(jīng)理登錄系統(tǒng)可以查看顧客的評(píng)論以便進(jìn)行調(diào)整,然后辯論其真實(shí)性再把評(píng)論反饋給相關(guān)人員,相關(guān)人員根據(jù)評(píng)論作出相應(yīng)的調(diào)整F.2.6賬單管理1.顧客提出付款信息2.收銀員收到消費(fèi)清單后和顧客進(jìn)行付款等操作,操作成功后,確定金額并打出清單3.收銀員向經(jīng)理報(bào)告日收益,經(jīng)理核實(shí)并確定4.經(jīng)理對(duì)廚房對(duì)外采購支出信息,飯店稅收支出信息,員工信息支出統(tǒng)計(jì),再根據(jù)月收益形成飯店支出表,最后算出飯店的日收益F.2.7菜單管理菜單管理系統(tǒng)有四個(gè)終端,按身份登錄不同的身份進(jìn)入的界面不一樣。(1)顧客、服務(wù)員終端主要滿足如下功能:1.顧客可以在各個(gè)類別(特色菜、招牌菜、優(yōu)惠菜、套餐)下選擇自己中意的菜,并查看該菜的介紹,評(píng)價(jià),所需時(shí)間,還可以選擇口味(拉框),如沒有,可以在備注里填寫。2.顧客可以在總價(jià)這項(xiàng)里查詢,增添和刪除菜,也可以看到自己的消費(fèi)金額。3.顧客在消費(fèi)完畢后,可以留下自己的意見和建議。4.服務(wù)員可以幫顧客點(diǎn)菜。5.顧客或服務(wù)員點(diǎn)菜完畢后,系統(tǒng)會(huì)自動(dòng)將菜單傳送到制菜統(tǒng)籌子系統(tǒng)。(2)配菜員終端主要滿足如下功能:1.接收制菜統(tǒng)籌子系統(tǒng)分配的需要的配菜的菜名、份數(shù)。2.如果菜所需材料沒有了,配菜員通過終端選中菜后面的紅×(菜單管理系統(tǒng)自動(dòng)通知服務(wù)員終端,服務(wù)員再去向顧客解釋并詢問顧客是否換菜,同時(shí)從當(dāng)天菜單中刪除,以免后面顧客繼續(xù)點(diǎn))。(3)管理員終端主要滿足如下功能:1.根據(jù)統(tǒng)計(jì)系統(tǒng)反饋的數(shù)據(jù),修改菜單、類別。2.根據(jù)統(tǒng)計(jì)系統(tǒng)反饋的數(shù)據(jù),及時(shí)跟員工協(xié)調(diào)。3.將每天的打折信息更新。4.反饋客戶的意見及建議。5.為員工分配相應(yīng)的權(quán)限。F.3制菜統(tǒng)籌設(shè)計(jì)說明F.3.1程序描述現(xiàn)如今大部分飯店之中廚師制菜通常需要一個(gè)傳菜員來提示他該做哪道菜,提示服務(wù)員應(yīng)該將菜送到哪張桌。不僅時(shí)間上和人力物力上都造成了極大的浪費(fèi),而且傳菜員一旦出錯(cuò),會(huì)造成顧客等待時(shí)間過長(zhǎng)的不愉快體驗(yàn),從而給飯店造成損失。所以我們的制菜統(tǒng)籌子系統(tǒng)之中將傳菜員的職能轉(zhuǎn)交由計(jì)算機(jī)來執(zhí)行,通過算法智能的統(tǒng)籌。計(jì)算機(jī)不用擔(dān)心出錯(cuò),因而顧客的體驗(yàn)都會(huì)比較好。不僅如此,制菜統(tǒng)籌系統(tǒng)還充分利用了廚師的一個(gè)下手。F.3.2功能制菜統(tǒng)籌子系統(tǒng):提示廚師正在制作的菜品和下一道菜品,同時(shí)提示學(xué)徒下一道菜所需的食材種類和分量。還有提示顧客菜品正在制作。通過客人點(diǎn)菜的時(shí)間可以優(yōu)先做菜,有和這道菜一樣的菜就可以一塊做,然后再通過算法顯示下一道菜,前一個(gè)桌號(hào)總比下一個(gè)桌號(hào)多一道菜該功能實(shí)現(xiàn)了制菜的統(tǒng)籌合理安排制菜順序。將正在制作的菜狀態(tài)設(shè)置為不可退。提示下一道菜的菜名和具體信息。提示客戶退菜或者換一道菜。F.3.3性能計(jì)算時(shí)間<20s;傳送時(shí)間<3s;F.3.4輸入項(xiàng)菜單信息菜名(Dish)類型:String份數(shù)(number)類型:Int桌號(hào)(TableNumber)類型:Int備注(Remarks)類型:String時(shí)間(Time)類型:time;是否完成(IsFinish)類型:boolean;默認(rèn):falseF.3.5輸出項(xiàng)配菜名(DishesName)類型:String配菜份數(shù)(DishesNumber)類型:int即將燒的菜(SoonDish)類型:String備注(Remarks)類型:String*號(hào)桌(num)類型:intF.3.6算法每個(gè)點(diǎn)菜單用結(jié)構(gòu)體存放,并添加時(shí)間、是否制作完成字段N個(gè)點(diǎn)菜單存放在結(jié)構(gòu)體中使用for循環(huán)遍歷計(jì)算出即將需要做的菜Count()//統(tǒng)計(jì)需做菜的份數(shù){intN=5;intj=10;inti=1;stringNO="0";SqlDataReaderdr;//用于讀取數(shù)據(jù)流while(i<=N){stringcmd="SelectCount(making)From[Table]Wheremaking='1'andTable_NO='"+i+"'";//統(tǒng)計(jì)需做菜的份數(shù)SQL語句dr=help.DataRead(cmd);//執(zhí)行SQL語句dr.Read();//讀數(shù)據(jù)NO=dr[0].ToString();dr.Close();//關(guān)閉讀取流stringcmd2="updateTabe_useSetUP='"+NO+"'whereTable_NO='"+i+"'";//更新桌子使用情況j=help.DataWrite(cmd2);//執(zhí)行SQL語句i++;}}stringcmd3="Selecttable_NOFromTabe_usewhereUP=(Selectmin(UP)FromTabe_use)anduse_ing='1'";//SQL語句SqlDataReaderdr=help.DataRead(cmd3);if(dr.Read())//判斷數(shù)據(jù)流是否為空{(diào)stringcmd="Select*from[Table]wheremaking='0'andmaking_time!='0'andtable_NO='"+dr[0].ToString()+"'";//查詢未做的菜dr.Close();//關(guān)閉讀取流dr=help.DataRead(cmd);//執(zhí)行SQL語句dr.Read();dr.Close();cmd="SelectCount(dish_names)From[Table]wheredish_names='"+label2.Text+"'";//SQL語句SqlDataReaderdrNum2=help.DataRead(cmd);drNum2.Read();//數(shù)據(jù)流label2.Text=label2.Text+"數(shù)量:"+drNum2[0].ToString();//將需做菜的份數(shù)傳送到配菜員的顯示屏上drNum2.Close();}else{dr.Close();stringcmd2="select*from[Table]wheremaking='0'andmaking_time!='0'";//SQL語句SqlDataReaderdr2=help.DataRead(cmd2);if(dr2.Read())//判斷數(shù)據(jù)流中是否有數(shù)據(jù){label2.Text=dr2[2].ToString();dr2.Close();cmd2="SelectCount(dish_names)From[Table]wheredish_names='"+label2.Text+"'";SqlDataReaderdrNum2=help.DataRead(cmd2);drNum2.Read();label2.Text=label2.Text+"數(shù)量:"+drNum2[0].ToString();//將數(shù)量傳送到廚師顯示屏上drNum2.Close();}else{dr2.Close();label2.Text="沒有下一道菜了";}F.3.7流程邏輯F.3.8接口本模塊與其它相關(guān)模塊間平行方式連接。F.3.9存儲(chǔ)分配Check_list數(shù)據(jù)表,作用是描述訂餐的信息Check_list表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1Table_NOVarchar(50)Yes桌號(hào)2Dish_namesVarchar(50)No菜名3PriceDecimal(18,0)No價(jià)格Garnish數(shù)據(jù)表,作用是描述配菜的信息Garnish表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1Garnish_NumberVarchar(50)Yes配菜號(hào)2Dish_namesVarchar(50)No菜名3Food_NameVarchar(50)No食材名4Garnish_AmountfloatNo數(shù)量Menu數(shù)據(jù)表,作用是描述菜單的信息Menu表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1Dish_namesVarchar(50)Yes菜名2PrcieDecimal(18,0)No價(jià)格3Making_timeVarchar(50)No制作時(shí)間4PictureimageNo圖片MenuList數(shù)據(jù)表,作用是描述菜單類別的信息MenuList表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1CidintYes菜號(hào)2Dish_namesChar(20)No菜名3pcidintNo類別Stock數(shù)據(jù)表,作用是描述庫存的信息Stock表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1Food_NameVarchar(50)Yes食材名2Stock_amountfloatNo庫存量3Stock_priceDeciamal(18,0)No價(jià)格F.3.10注釋設(shè)計(jì)a、加在模塊首部的注釋;b、加在各分枝點(diǎn)處的注釋;c、對(duì)各變量的功能、范圍、缺省條件等所加的注釋;d、對(duì)使用的邏輯所加的注釋等。F.3.11限制條件制菜統(tǒng)籌設(shè)計(jì)計(jì)算機(jī)的性能必須足夠的強(qiáng)悍,可以在高峰期快速的計(jì)算。F.3.12測(cè)試計(jì)劃測(cè)試模塊測(cè)試功能測(cè)試指標(biāo)制菜智能統(tǒng)籌菜品提示功能在數(shù)據(jù)庫中存在待制作的菜品時(shí)可以給出正確的提示:廚師當(dāng)前制作菜品菜名和份數(shù)、學(xué)徒下一道待制作菜品的配菜信息制菜的統(tǒng)籌功能能夠?qū)?shù)據(jù)庫中存在的待制作的菜品進(jìn)行智能的安排制作順序,取代配菜員的工作無食材提示廚師能夠通過這個(gè)功能向客人發(fā)出當(dāng)前菜品無食材的提示,同時(shí)會(huì)從菜單中暫時(shí)刪去這道菜新菜錄入能夠?qū)⑿碌牟松畔浫氲讲藛沃校@示出來評(píng)分機(jī)制對(duì)新菜的評(píng)分并能夠計(jì)算平均分F.3.13尚未解決的問題無F.4點(diǎn)菜管理模塊程序F.4.1程序描述該模塊程序主要實(shí)現(xiàn)為顧客展示、推薦以及介紹菜品和實(shí)現(xiàn)顧客對(duì)菜品的點(diǎn)菜、退菜和催菜操作。顧客只有在輸入桌號(hào)之后才能點(diǎn)菜,點(diǎn)菜之后才能進(jìn)行結(jié)賬和評(píng)價(jià)F.4.2功能1.開桌:顧客輸入自己的桌號(hào)。該桌號(hào)唯一不可與其他人重復(fù),若重復(fù)則給出相應(yīng)提示。桌號(hào)的位數(shù)由飯店規(guī)模決定默認(rèn)為兩位數(shù),如:01、02。確認(rèn)桌號(hào)后不可修改,如有添桌請(qǐng)求需要用另一臺(tái)設(shè)備另外開桌。2點(diǎn)菜:顧客可以根據(jù)需要選擇自己喜歡的口味,系統(tǒng)篩選對(duì)應(yīng)口味的菜色同時(shí)推送本店特色菜品。界面展示菜名、菜品圖片和價(jià)格,顧客選擇喜歡的菜色可以查看詳細(xì)介紹,并提交份數(shù)。生成點(diǎn)菜信息,在顧客點(diǎn)菜結(jié)束后展示,進(jìn)行最后確認(rèn),確認(rèn)后提交制菜統(tǒng)籌系統(tǒng)。3.退菜:顧客可以退去自己已點(diǎn)的,未上并且未在制作的菜。若在制作或者已上,則提示相關(guān)錯(cuò)誤。否則從后廚數(shù)據(jù)庫中刪去,提示操作成功。4.催菜:顧客可以對(duì)已點(diǎn)菜品進(jìn)行催促,催促會(huì)提示后廚加快速度,規(guī)定同一小時(shí)內(nèi)后廚只會(huì)收到兩次催促。但顧客可以盡情催促,單不會(huì)傳到后廚。F.4.3性能檢索業(yè)務(wù)響應(yīng)時(shí)間<2s;運(yùn)行響應(yīng)時(shí)間<1s;付款響應(yīng)時(shí)間<10s;。F.4.4輸入項(xiàng)桌號(hào)(Table_NO)——類型:String;輸入方式:手動(dòng)輸入;輸入數(shù)量:1;口味(Flavor)——類型:String;輸入方式:選擇;輸入數(shù)量0~3;菜名(Dish_names)——類型:String;輸入方式:選擇;輸入數(shù)量>0;份數(shù)(Amount)——類型:int;輸入方式:選擇;輸入數(shù)量>0;F.4.5輸出項(xiàng)給出對(duì)每個(gè)輸出項(xiàng)的我,包括名稱、標(biāo)識(shí)、數(shù)據(jù)的類型昨格式,數(shù)據(jù)值的有效范圍,輸出的形式數(shù)量和頻度,輸出媒體,對(duì)輸出圖形及符號(hào)的說明,安全保密條件等。成功提示——類型:彈窗輸出;輸出頻率:觸發(fā)輸出1次;錯(cuò)誤提示——類型:彈窗輸出;輸出頻率:觸發(fā)輸出1次菜品信息——類型:界面輸出;輸出頻率:一直輸出,觸發(fā)停止F.4.6算法使用while()語句判斷一小時(shí)內(nèi)接受催促的次數(shù)。使用if()判斷失誤操作。使用if()判斷退菜。數(shù)據(jù)的輸入輸出與sql數(shù)據(jù)庫鏈接等基本算法通過輸入桌號(hào)來記錄點(diǎn)餐桌號(hào)button1_Click{Class.tableNO=textBox1.Text;FrmCustomerfc=newFrmCustomer();fc.Show();this.Hide();}開始點(diǎn)菜,這里點(diǎn)的菜同步更新到服務(wù)員的菜單表,也實(shí)現(xiàn)了退菜的功能,如果菜正在制作就無法退,若還是要求退需要叫服務(wù)員來操作FrmCustomer_Load{this.Text=Class.tableNO.ToString()+"號(hào)桌";/*顯示菜單*/stringconnStr="DataSource=yao-pc;InitialCatalog=item;IntegratedSecurity=True";與數(shù)據(jù)建立連接stringstr2="Select*fromMenuList";//讀取菜單SqlDataAdapterda=newSqlDataAdapter(str2,conn);DataSetds=newDataSet();//將數(shù)據(jù)庫讀取到的數(shù)據(jù)放到Datasetda.Fill(ds);//利用dataset的fill方法填充到表格中nodes(this.treeView1.Nodes,ds,0);inti=1;stringcmd="Select*from[Table]whereTable_NO='"+Class.tableNO.ToString()+"'";//sql語句SqlDataReaderdr=help.DataRead(cmd);while(dr.Read())//循環(huán)遍歷數(shù)據(jù)流{stringID=i.ToString();//保存Id號(hào)stringdish_names=dr["dish_names"].ToString();//保存菜名stringprice=dr["price"].ToString();//保存價(jià)格stringmaking_time=dr["making_time"].ToString();//保存制作時(shí)間ListViewItemlvi=newListViewItem();//首先創(chuàng)建一個(gè)ListView項(xiàng)itemlvi.Text=ID;//該項(xiàng)的文本lvi.SubItems.AddRange(newstring[]{dish_names,price,making_time});//添加該項(xiàng)的子項(xiàng),,也就是第2,3,4列的值listView1.Items.Add(lvi);//最后把創(chuàng)建的項(xiàng)加到ListView控件的項(xiàng)中i++;}dr.Close();}/*創(chuàng)立TreeView結(jié)點(diǎn)*/nodes(TreeNodeCollectiontnode,DataSetds,intd){DataViewdview=newDataView(ds.Tables[0]);dview.RowFilter="pcid='"+d+"'";//循環(huán)遍歷foreach(DataRowViewrowindview){TreeNodenode=newTreeNode();node.Text=row["dish_names"].ToString();tnode.Add(node);nodes(node.Nodes,ds,Int32.Parse(row["cid"].ToString()));}}//退菜操作button4_Click(objectsender,EventArgse){/*退訂一道菜與數(shù)據(jù)庫同步*/stringcmd="";if(listView1.SelectedItems.Count>0){cmd="Select*From[Table]whereTable_NO='"+Class.tableNO.ToString()+"'anddish_names='"+labName.Text+"'";//SQL語句SqlDataReaderdr=help.DataRead(cmd);dr.Read();if("1"==dr[4].ToString())//判斷菜是否正在制作{dr.Close();MessageBox.Show("廚師正在制作,請(qǐng)稍等若依然要退菜,請(qǐng)叫服務(wù)員");}Else//菜未開始制作,執(zhí)行退菜相關(guān)操作{dr.Close();cmd="Deletefrom[Table]whereTable_NO='"+Class.tableNO.ToString()+"'anddish_names='"+labName.Text+"'";inti=help.DataWrite(cmd);listView1.SelectedItems[0].Remove();}}}treeView1_NodeMouseClick{if(e.Node.Parent==null){}else{stringcmd="Select*FromMenu"+"Wheredish_names='"+e.Node.Text+"'";//獲取配菜信息SqlDataReaderdr=help.DataReadPicture(cmd);//執(zhí)行SQL語句并生成包含數(shù)據(jù)對(duì)象的實(shí)例dr.Read();labName.Text=e.Node.Text;labPrice.Text=dr[1].ToString();labTime.Text=dr[2].ToString();label1.Text="價(jià)格:";label3.Text="元";label4.Text="制作時(shí)間約為"}}F.4.7流程邏輯F.4.8接口本模塊與其它相關(guān)模塊間根據(jù)桌號(hào)和菜名平行方式連接。F.4.9存儲(chǔ)分配無特別存儲(chǔ)分配的需要。Check_list數(shù)據(jù)表,作用是描述訂餐的信息Check_list表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1Table_NOVarchar(50)Yes桌號(hào)2Dish_namesVarchar(50)No菜名3PriceDecimal(18,0)No價(jià)格Menu數(shù)據(jù)表,作用是描述菜單的信息Menu表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1Dish_namesVarchar(50)Yes菜名2PrcieDecimal(18,0)No價(jià)格3Making_timeVarchar(50)No制作時(shí)間4PictureimageNo圖片Table數(shù)據(jù)表,作用是描述桌子的信息Table表序號(hào)字段名數(shù)據(jù)類型是否主鍵意義1IDintYes就餐號(hào)2Table_noVarchar(50)No桌號(hào)3Dish_namesVarchar(50)No菜名4Order_timedatetimeNo訂餐時(shí)間5makingIntNo制作6pricefloatNo圖片7Making_timeVarchar(50)No制作時(shí)間F.4.10注釋設(shè)計(jì)a、在模塊首部注釋說明模塊名稱;b、在各分枝點(diǎn)處注釋各個(gè)分支的作用;c、各變量的功能、范圍、缺省條件等必須加上
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村自建房合同(2篇)
- 初級(jí)會(huì)計(jì)勞動(dòng)合同(2篇)
- 湖北省宜昌市外國(guó)語初級(jí)中學(xué)2025屆中考生物五模試卷含解析
- 建設(shè)緊固件電商孵化基地項(xiàng)目建議書立項(xiàng)備案審批
- 2025旺鋪?zhàn)饧s轉(zhuǎn)讓合同模板
- 2025關(guān)于公司的借款合同
- 2024年度天津市公共營(yíng)養(yǎng)師之二級(jí)營(yíng)養(yǎng)師題庫附答案(典型題)
- 2025土地承包合同案例
- 2024年度四川省公共營(yíng)養(yǎng)師之三級(jí)營(yíng)養(yǎng)師押題練習(xí)試題B卷含答案
- 2024年度四川省公共營(yíng)養(yǎng)師之二級(jí)營(yíng)養(yǎng)師能力提升試卷B卷附答案
- 《膽囊結(jié)石的護(hù)理》PPT
- 安徽云帆藥業(yè)有限公司原料藥生產(chǎn)項(xiàng)目環(huán)境影響報(bào)告
- 藥品質(zhì)量受權(quán)人管理規(guī)程
- 校本課程之《紅樓夢(mèng)詩詞曲賞析》教案
- 熱動(dòng)復(fù)習(xí)題材料熱力學(xué)與動(dòng)力學(xué)
- 馬工程-公共財(cái)政概論-課程教案
- GB/T 38058-2019民用多旋翼無人機(jī)系統(tǒng)試驗(yàn)方法
- GB/T 30902-2014無機(jī)化工產(chǎn)品雜質(zhì)元素的測(cè)定電感耦合等離子體發(fā)射光譜法(ICP-OES)
- GB/T 22638.2-2016鋁箔試驗(yàn)方法第2部分:針孔的檢測(cè)
- GB/T 13275-1991一般用途離心通風(fēng)機(jī)技術(shù)條件
- 千年菩提路解說詞
評(píng)論
0/150
提交評(píng)論