freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于linux餐廳點(diǎn)菜系統(tǒng)的設(shè)計(jì)與開發(fā)畢業(yè)論文-wenkub.com

2025-06-15 17:46 本頁面
   

【正文】 Food Ordering System。對(duì)于學(xué)校和老師為我的畢業(yè)設(shè)計(jì)所提供的極大幫助和關(guān)心,在此我致以衷心的感謝!最后,感謝同學(xué)們對(duì)于我生活、學(xué)習(xí)上的幫助,以及畢業(yè)設(shè)計(jì)論文寫作過程中的指導(dǎo)和意見。本次畢業(yè)設(shè)計(jì)大概持續(xù)了半年的時(shí)間,現(xiàn)在終于到結(jié)尾了。,本系統(tǒng)運(yùn)用服務(wù)器/客戶端開發(fā)模式,幾個(gè)模塊間的通信都是通過服務(wù)連接通信,采用Linux下的TCP/IP協(xié)議通信可以保證通信的安全可靠性。在這里沒有實(shí)現(xiàn)無線通信,主要局限于局域網(wǎng),沒有移植到ARM版測試,待以后繼續(xù)完成軟件功能測試。后廚界面圖如圖53所示;圖53 后廚界面圖,點(diǎn)擊點(diǎn)菜界面的結(jié)賬按鈕,顧客到前臺(tái)買單,前臺(tái)營業(yè)員點(diǎn)擊該桌代表的按鈕就會(huì)將菜單信息打印,顧客買單;菜單界面圖54所示。圖52 開臺(tái)界面圖顧客進(jìn)入點(diǎn)菜界面,這里只對(duì)顧客點(diǎn)菜功能測試,顧客可以查看菜單列表中的菜單,當(dāng)需要點(diǎn)該菜時(shí)點(diǎn)擊選擇,就將菜肴添加到已選菜單列表中,當(dāng)點(diǎn)完菜時(shí),點(diǎn)擊提交按鈕,就將點(diǎn)菜菜單發(fā)送到服務(wù)器。:顧客到餐廳通過前臺(tái)招待得知2號(hào)桌空閑,顧客可以去2號(hào)桌開臺(tái)。然而,充分覆蓋程序邏輯,并確保程序設(shè)計(jì)中使用的所有條件是有可能的。最初的測試通常把焦點(diǎn)放在單個(gè)程序模塊上,進(jìn)一步測試的焦點(diǎn)則轉(zhuǎn)向在集成的模塊簇中尋找錯(cuò)誤,最后在整個(gè)系統(tǒng)中尋找錯(cuò)誤。,不僅包括確定的輸入數(shù)據(jù),還包括從系統(tǒng)功能出發(fā)預(yù)期的測試結(jié)果,從而避免將一些似是而非的結(jié)果當(dāng)成正確結(jié)果。 ,所以也能知道軟件實(shí)現(xiàn)了文檔中的哪些功能。從實(shí)際情況來說,滿足實(shí)際項(xiàng)目需要,黑盒測試具有以下5個(gè)優(yōu)點(diǎn)。}}本章主要介紹本系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn),每個(gè)模塊的實(shí)現(xiàn)方法流程,同時(shí)給出每個(gè)模塊實(shí)現(xiàn)中用到的函數(shù),給出了代碼的實(shí)現(xiàn)。主要代碼實(shí)現(xiàn)如下:void Widget::on_put_inButton_clicked() { modeldatabase().transaction()。//獲得表的行數(shù)int id=10。 if(ok==QMessageBox::No)modelrevertAll()。當(dāng)需要?jiǎng)h除某一菜肴時(shí),當(dāng)選擇某一行時(shí)可以根據(jù)QTableView類中的currentIndex().row()成員函數(shù)得知,用QSqlTableModel中的revertAll()成員函數(shù)將其刪除,并且刪除時(shí)給出QMessageBox提示框提示。modelsetTable(menubook)。client()。connect(btn,SIGNAL(clicked()),this,SLOT(close()))。QVBoxLayout *layout = new QVBoxLayout(this)。btnLayout addWidget(btn)。btnLayout addWidget(rec)。SeleteList[0].buffer[2]=ipric。dlgshow()。QVBoxLayout *layout = new QVBoxLayout(dlg)。str=tr(RMB:)+str+tr(元)。}else{//建立消息框QDialog *dlg = new QDialog。 QMessageBox::about(this,ok,tr(提交完成))。 ipric=0。additem[ii].addnum!=0。 additem[0].bufer[1]=tableNumber。 //將選擇的菜發(fā)送至服務(wù)器 if(pro==true) { SeleteList[0].buffer[0]=2。 send(sockfd,additem,sizeof(additem),0)。 for(m=0。 strcpy(additem[0].addnam,())。mokListcount()。 ipric=SeleteList[cou].num*SeleteList[cou].pric。fcou。 //獲取當(dāng)前選擇項(xiàng)目,并將其從已選列表和SeleteList中刪除 QListWidgetItem *item =okListtakeItem(okListcurrentRow())。 else del=true。 printf(name:%s num: %d \n,additem[ss].addnam,additem[ss].addnum)。 if(pro==false) //加菜 { static int ss=0。 strcpy(SeleteList[s].nam,())。 int s =okListcount()1。 text +=listText2。 QString listText2=spinBoxtext()。點(diǎn)菜功能實(shí)現(xiàn)主要是當(dāng)選擇按鈕按下時(shí),觸發(fā)的槽函數(shù)slotImButton(),實(shí)現(xiàn)菜品選擇功能,將選擇菜的信息添加入已選列表,并存入SeleteList中,分為提交前選菜和提交后加菜兩部分。//加載數(shù)據(jù)庫驅(qū)動(dòng) (database)。 star=false。 diancshow()。再send()將開臺(tái)信息發(fā)送到服務(wù)器。 = inet_addr()。首先創(chuàng)建套接字描述符Socket()函數(shù),然后連接服務(wù)器connect()。listinsertItem(i+2,QString(tr(aa)))。char aa[80]。listinsertItem(i+1,str2+a)。char af[10]。listinsertItem(i+1,QString(tr(menu1[i].name)+tr( )+tr(a)))。listinsertItem(0,str1)。int i=0。static bool a = true。 前臺(tái)管理模塊 前臺(tái)管理模塊主要查看餐臺(tái)空閑信息,和打印賬單兩部分組成。pthread_create(amp。exit(0)。while(1){int i=0。exit(0)。 = inet_addr()。exit(0)。其中主要運(yùn)用到TCP/IP協(xié)議通信的。第4章 軟件設(shè)計(jì)軟件采用面向?qū)ο竦脑O(shè)計(jì)方法,考慮到對(duì)計(jì)算效率的要求,采用C++編程語言,開發(fā)環(huán)境為Linux RedHat 企業(yè)版5,服務(wù)器編譯工具為gcc,其余編程工具為g++編譯器,采用C++標(biāo)準(zhǔn)庫函數(shù)和QT類庫。數(shù)據(jù)庫管理模塊查詢菜譜信息添加菜譜信息刪除菜譜信息圖35 數(shù)據(jù)庫管理模塊3. 4數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì) 根據(jù)對(duì)本系統(tǒng)數(shù)據(jù)的分析,系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)了一個(gè)表:菜肴信息表。細(xì)分?jǐn)?shù)據(jù)庫管理功能模塊如圖35所示。點(diǎn)菜信息發(fā)送功能是將用戶點(diǎn)菜信息以結(jié)構(gòu)體的形式發(fā)送到服務(wù)器,并添加到相應(yīng)的數(shù)據(jù)庫中。結(jié)賬前臺(tái)管理模塊查詢餐臺(tái)信息打印賬單圖32 前臺(tái)終端模塊3.點(diǎn)菜終端:點(diǎn)菜終端是本系統(tǒng)給顧客的使用的,是本系統(tǒng)的重要組成部分。后廚和服務(wù)器連接后,可以將做完的菜發(fā)送到服務(wù)器,服務(wù)器將信息發(fā)送到點(diǎn)菜客戶端和前臺(tái)。根據(jù)對(duì)餐廳點(diǎn)菜系統(tǒng)需要實(shí)現(xiàn)的功能進(jìn)行需求分析,將本系統(tǒng)的前臺(tái)劃分為前臺(tái)管理,點(diǎn)菜管理,后廚管理,數(shù)據(jù)庫管理,服務(wù)器五個(gè)功能模塊;系統(tǒng)功能模塊如圖31所示。另一方面,在系統(tǒng)設(shè)計(jì)和開發(fā)的過程中,應(yīng)在考慮成本的基礎(chǔ)上盡量采用當(dāng)前主流并先進(jìn)且有良好發(fā)展前途的工具。例如在開發(fā)中使用的操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、開發(fā)工具都必須符合通用標(biāo)準(zhǔn)。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機(jī)交互界面。例如新增菜品,會(huì)員充值等。由于餐廳自助點(diǎn)菜系統(tǒng)客戶端的點(diǎn)菜對(duì)于整個(gè)系統(tǒng)的功能和性能完成舉足輕重。根據(jù)系統(tǒng)功能的需求,分析了所需要的系統(tǒng)總功能結(jié)構(gòu)如表31所示。餐廳每日消費(fèi)人數(shù)的巨大,自助點(diǎn)菜是一種必不可少的工具,而國內(nèi)的點(diǎn)菜系統(tǒng)還不成熟 ,所以本課題將設(shè)計(jì)實(shí)現(xiàn)一個(gè)餐廳自助點(diǎn)菜系統(tǒng)。TCP/IP協(xié)議的實(shí)現(xiàn)的流程圖如下圖21所示。應(yīng)用程序輪流將信息送回TCP層,TCP層便將它們向下傳送到IP層,設(shè)備驅(qū)動(dòng)程序和物理介質(zhì),最后到接收方。   如果IP數(shù)據(jù)包中有已經(jīng)封好的TCP數(shù)據(jù)包,那么IP將把它們向上傳送到TCP層。許多依靠IP源地址做確認(rèn)的服務(wù)將產(chǎn)生問題并且會(huì)被非法入侵。也可以這樣說,IP地址形成了許多服務(wù)的認(rèn)證基礎(chǔ),這些服務(wù)相信數(shù)據(jù)包是從一個(gè)有效的主機(jī)發(fā)送來的。TCP/IP協(xié)議的運(yùn)作機(jī)制是IP層負(fù)責(zé)接收由更低層(網(wǎng)絡(luò)接口層例如以太網(wǎng)設(shè)備驅(qū)動(dòng)程序)發(fā)來的數(shù)據(jù)包,并把該數(shù)據(jù)包發(fā)送到更高層TCP層,相反,IP層也把從TCP層接收來的數(shù)據(jù)包傳送到更低層。使用TCP協(xié)議會(huì)有較大的時(shí)延,因此不適合對(duì)實(shí)時(shí)性要求較高的應(yīng)用,如VOIP、視頻監(jiān)控等。由于ARPNET的設(shè)計(jì)者注重的是網(wǎng)絡(luò)互聯(lián),允許通信子網(wǎng)(網(wǎng)絡(luò)接口層)采用已有的或是將來有的各種協(xié)議,所以這個(gè)層次中沒有提供專門的協(xié)議。OSI是傳統(tǒng)的開放式系統(tǒng)互連參考模型,是一種通信協(xié)議的7層抽象的參考模型,其中每一層執(zhí)行某一特定任務(wù)。TCP/IP 代表傳輸控制協(xié)議/網(wǎng)絡(luò)協(xié)議,它是做為軟件的網(wǎng)絡(luò)組成部件而設(shè)計(jì)的。基于SQLITE有諸多特性,我在設(shè)計(jì)該點(diǎn)菜系統(tǒng)時(shí)應(yīng)用的數(shù)據(jù)庫選擇了它,它雖然很小巧,但是支持的SQL語句不會(huì)遜色于其他開源數(shù)據(jù)庫,同時(shí)還支持事務(wù)處理功能等待。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如 Tcl、C、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快。Qt Creator是一個(gè)用于Qt開發(fā)的輕量級(jí)跨平臺(tái)集成開發(fā)環(huán)境。Qt支持 2D/3D 圖形渲染,支持 OpenGL。Qt 提供了一種稱為 signals/slots 的安全類型來替代 callback,這使得各個(gè)元件之間的協(xié)同工作變得十分簡單。QT是完全面向?qū)ο蟮?,很容易擴(kuò)展,并且允許真正地組件編程?;蛘卟贿m用于微軟新的操作系統(tǒng)等等,更不用說Linux、Unix等。特別是有很多分部或?qū)Yu店的情況,不是工作量的問題,而是路程的問題。而隨著互聯(lián)網(wǎng)的飛速發(fā)展,移動(dòng)辦公和分布式辦公越來越普及,這需要我們的系統(tǒng)具有擴(kuò)展性。這種客戶請(qǐng)求服務(wù)、服務(wù)器提供服務(wù)的處理方式是一種新型的計(jì)算機(jī)應(yīng)用模式。由于沒能提供用戶真正期望的開放環(huán)境,C/S結(jié)構(gòu)的軟件需要針對(duì)不同的操作系統(tǒng)開發(fā)不同版本的軟件,加之產(chǎn)品的更新?lián)Q代快,已經(jīng)很難適應(yīng)百臺(tái)電腦以上局域網(wǎng)用戶同時(shí)使用。:Linux的基本思想有兩點(diǎn),第一,一切都是文件;第二,每個(gè)軟件都有確定的用途。Linux支持?jǐn)?shù)十種文件系統(tǒng)格式。第三,業(yè)界主導(dǎo)組織、開發(fā)廠商等不斷推出嵌入式Linux相關(guān)開發(fā)工具、維護(hù)系統(tǒng)。Linux以它較高的穩(wěn)定性在網(wǎng)絡(luò)服務(wù)器上利于不敗之地。Linux提供了先進(jìn)的網(wǎng)絡(luò)支持。Linux同時(shí)具有字符界面和圖形界面。由于它的開放性使無數(shù)程序員積極的參與了Linux的修改、編寫工作,使得Linux吸收了無數(shù)程序員在根據(jù)自己的興趣和靈感對(duì)其所做的精華改變,并不斷壯大。發(fā)行版為許多不同的目的而制作,包括對(duì)不同計(jì)算機(jī)結(jié)構(gòu)的支持,對(duì)一個(gè)具體區(qū)域或語言的本地化,實(shí)時(shí)應(yīng)用,和嵌入式系統(tǒng)。一個(gè)月后,Intel和Netscape公司購買了Linux發(fā)布商中的領(lǐng)頭羊Red Hat公司的少量股票,專項(xiàng)資金投入了Linux世界。他畢業(yè)于赫爾辛基大學(xué)計(jì)算機(jī)科學(xué)系。(Free minxlike kernel sources for 386AT)。Linux可安裝在各種計(jì)算機(jī)硬件設(shè)備中,從手機(jī)、平板電腦、路由器和視頻游戲控制臺(tái),到臺(tái)式計(jì)算機(jī)、大型機(jī)和超級(jí)計(jì)算機(jī)。3.?dāng)?shù)據(jù)庫的設(shè)計(jì):首先利用Qt設(shè)計(jì)器規(guī)劃數(shù)據(jù)庫管理程序的大致界面,然后遵循Qt編程一般規(guī)則編寫代碼,主要為主窗口類的實(shí)現(xiàn),數(shù)據(jù)庫的管理功能,包括刪除菜單列表、添加菜單列表,查詢菜單等功能,并在主程序中添加中文支持。在本文設(shè)計(jì)的系統(tǒng)中使用了MySQL來管理數(shù)據(jù),操作系統(tǒng)選用了Linux,用戶圖形界面引入了Qt。餐廳點(diǎn)菜系統(tǒng)一般都涉及很多數(shù)據(jù),而且還要對(duì)數(shù)據(jù)進(jìn)行各種處理,因而絕大部分餐廳點(diǎn)菜系統(tǒng)都用數(shù)據(jù)庫管理系統(tǒng)來管理數(shù)據(jù)。如今開源的嵌入式Linux操作系統(tǒng)已經(jīng)發(fā)展的非常成熟,其性能并不亞于很多商業(yè)操作系統(tǒng),而且,它支持的上層軟件非常多,數(shù)據(jù)庫方面的有MySQL、Sqlite等,用戶圖形界面系統(tǒng)有Qt、MiniGUI和Microwindows等。隨著技術(shù)的進(jìn)步及餐飲業(yè)的激烈競爭,電子點(diǎn)菜系統(tǒng)將會(huì)越來越普遍,并越做越好。自此,點(diǎn)菜系統(tǒng)市場上豪杰并起,全面促進(jìn)了餐飲業(yè)信息化管理的普及和發(fā)展。另一方面,基于ARM和Linux的嵌入式系統(tǒng),具有成熟的嵌入式硬件結(jié)構(gòu)和豐富的開放軟件資源,優(yōu)良的性能和廣泛的市場定位,這無疑對(duì)開發(fā)工作和學(xué)習(xí)研究是一個(gè)重大幫助;在GUI(圖形用戶界面)的選用上,使用基于C++語言面向?qū)ο缶幊痰膽?yīng)用程序開發(fā)軟件庫Qt,它匯集了豐富的C++類提供開發(fā)應(yīng)用程序用戶界面所需要的全部內(nèi)容,具有優(yōu)良的跨平臺(tái)性能和豐富的API函數(shù)及開發(fā)文檔。首先,餐飲管理信息系統(tǒng)不是單純的用于結(jié)帳計(jì)算的工具,它有著科學(xué)的、標(biāo)準(zhǔn)的管理體系,它是通過對(duì)目前餐飲市場的具體情況科學(xué)的調(diào)研分析后設(shè)計(jì)而成的,它能夠針對(duì)中餐因其菜品的多樣化和特色化的服務(wù)很難實(shí)現(xiàn)標(biāo)準(zhǔn)化管理,使中餐企業(yè)的成本控制很難實(shí)現(xiàn)這些問題給與解決。其次,餐飲管理信息系統(tǒng)能夠給出具體的相應(yīng)的符合企業(yè)自身要求的較科學(xué)的標(biāo)準(zhǔn)化管理流程,這暫時(shí)緩解了專業(yè)人才的需求,通過使用該系統(tǒng)就能完成專業(yè)人員所要做的事。另外,當(dāng)前量產(chǎn)的普通PDA和PC機(jī)硬件上已經(jīng)基本滿足點(diǎn)菜需求,使自行研究的專用硬件設(shè)備不再具有明顯的成本優(yōu)勢,為此,本課題集合嵌入式Linux和Qt開發(fā)應(yīng)用等技術(shù),以程序軟件的通用性和易用性為方向,構(gòu)造能夠方便移植的軟件。目前,國內(nèi)已經(jīng)有不少公司開發(fā)出電子點(diǎn)菜系統(tǒng),例如上海工理電子有限公司的點(diǎn)菜通、餐飲通
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1