Android無(wú)線點(diǎn)餐系統(tǒng)和Android實(shí)訓(xùn)-無(wú)線點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
Android無(wú)線點(diǎn)餐系統(tǒng)和Android實(shí)訓(xùn)-無(wú)線點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
Android無(wú)線點(diǎn)餐系統(tǒng)和Android實(shí)訓(xùn)-無(wú)線點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
Android無(wú)線點(diǎn)餐系統(tǒng)和Android實(shí)訓(xùn)-無(wú)線點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
Android無(wú)線點(diǎn)餐系統(tǒng)和Android實(shí)訓(xùn)-無(wú)線點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩42頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Android無(wú)線點(diǎn)餐系統(tǒng)院系:計(jì)算機(jī)與信息工程學(xué)院班級(jí):10級(jí)軟件技術(shù)一班姓名:學(xué)號(hào):目錄TOC\o"1-2"\h\u一、無(wú)線點(diǎn)餐系統(tǒng)需求分析 目錄TOC\o"1-3"\h\u17104一、目標(biāo) 429877二、總體設(shè)計(jì)原則 413143三、接口設(shè)計(jì) 5156643.1用戶(hù)接口 5180133.2外部接口 53803四、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì) 8165724.1.邏輯結(jié)構(gòu)設(shè)計(jì) 888894.2.物理結(jié)構(gòu)設(shè)計(jì) 1022594.3.數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系 106534五、客戶(hù)端主程序設(shè)計(jì) 1115274六、服務(wù)器端的實(shí)現(xiàn) 1250686.1登錄 12227436.2更新 1295576.3結(jié)賬 13無(wú)線點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)引言:21世紀(jì)是個(gè)科學(xué)技術(shù)“爆炸性”發(fā)展的世紀(jì),極具科技含量的手機(jī)行業(yè)更是以跨越式的姿態(tài)向前發(fā)展.這其中不得不談到Google公司推出的Android手機(jī)操作系統(tǒng).伴隨著iPhone刮起的智能手機(jī)之風(fēng),從2008年起,Android系統(tǒng)攻城略地,短短3年即超過(guò)塞班系統(tǒng)成為全球市場(chǎng)份額最高的智能手機(jī)操作系統(tǒng),截止2012年2月統(tǒng)計(jì),其市場(chǎng)份額已占領(lǐng)了全球半壁江山(全球份額為52.5%,在中國(guó)更是高達(dá)76.7%,遠(yuǎn)超僅有11.8%的塞班系統(tǒng)).如此的風(fēng)云劇變使得曾經(jīng)的手機(jī)行業(yè)老大諾基亞利潤(rùn)大幅縮水,匆匆忙忙放下塞班系統(tǒng),與Intel合作開(kāi)發(fā)MeeGo系統(tǒng)推出N9智能手機(jī),結(jié)果市場(chǎng)反應(yīng)相當(dāng)平淡.于是放棄MeeGo,與軟件行業(yè)巨頭微軟合作,推出搭載windowsPhone7系統(tǒng)的Lumia手機(jī),但截止目前為止,季度出貨量依然徘徊在百萬(wàn)級(jí),遠(yuǎn)遠(yuǎn)落后于iPhone和Android手機(jī).而曾經(jīng)是手機(jī)個(gè)性風(fēng)向標(biāo)的索愛(ài)和手機(jī)行業(yè)的鼻祖摩托羅拉的狀況則更嚴(yán)重—愛(ài)立信的股份被索尼全額回購(gòu),也許不久的將來(lái)它的手機(jī)名也要改為Sony而不是SonyEricsson了;摩托羅拉則以125億美金的價(jià)錢(qián)被Google全額收購(gòu).反觀一直力推Android系統(tǒng)的三星和HTC,甚至包括中國(guó)的中興、華為,最近幾年其手機(jī)出貨量一直以?xún)晌粩?shù)增長(zhǎng),徹底瓦解了原來(lái)的諾基亞、索愛(ài)和摩托羅拉等老牌廠商的市場(chǎng)地位.為什么這么短的時(shí)間,可以讓手機(jī)行業(yè)重新洗牌,根本原因便在于Android系統(tǒng)的優(yōu)異性能和免費(fèi)開(kāi)源。關(guān)鍵詞:無(wú)線點(diǎn)餐系統(tǒng);Android一、目標(biāo)本軟件主要面向具有一定規(guī)模、需要提高餐廳點(diǎn)餐效率、體現(xiàn)出現(xiàn)代化的氛圍、改進(jìn)客人的就餐環(huán)境,并借此提高經(jīng)濟(jì)效益的餐廳和酒店。要求項(xiàng)目不會(huì)占用太大的預(yù)算,并能夠盡量沿用原來(lái)的成熟技術(shù),與原有系統(tǒng)進(jìn)行良好的整合。解釋軟件設(shè)計(jì)工作時(shí)的重要約束和開(kāi)發(fā)工作的假定及約束。實(shí)現(xiàn)顧客根據(jù)價(jià)格不同點(diǎn)菜;通過(guò)前臺(tái)可視化界面實(shí)現(xiàn)顧客多方面選擇。點(diǎn)菜完畢后,實(shí)現(xiàn)對(duì)顧客所點(diǎn)菜品的價(jià)格的統(tǒng)計(jì),以免顧客花費(fèi)超出預(yù)算,本系統(tǒng)還可以實(shí)現(xiàn)顧客的退選或補(bǔ)選的要求,在顧客所點(diǎn)菜品上來(lái)之后,系統(tǒng)可以通過(guò)點(diǎn)擊進(jìn)行記錄,以免發(fā)生漏菜現(xiàn)象。根據(jù)以上功能,該系統(tǒng)主要以Android為操作平臺(tái),Java為開(kāi)發(fā)語(yǔ)言,SQLServer為數(shù)據(jù)庫(kù)。前臺(tái)界面實(shí)現(xiàn)可視化,方便顧客的選擇。后臺(tái)管理為數(shù)據(jù)庫(kù),管理菜品的增、刪、查的實(shí)現(xiàn)都借以數(shù)據(jù)庫(kù)來(lái)體現(xiàn)。用戶(hù)的特點(diǎn):本軟件的受眾是所有就餐的顧客和餐服務(wù)人員,這些人員必須要會(huì)基本的手機(jī)操作,以及熟悉一些點(diǎn)菜的基本流程。二、總體設(shè)計(jì)原則簡(jiǎn)易性:界面的簡(jiǎn)潔是要讓用戶(hù)便于使用、便于了解、并能減少用戶(hù)發(fā)生錯(cuò)誤選擇的可能性。用戶(hù)的語(yǔ)言:界面中要使用能反應(yīng)用戶(hù)本身的語(yǔ)言,而不是游戲設(shè)計(jì)者的語(yǔ)言。記憶負(fù)擔(dān)最小化:人腦不是電腦,在設(shè)計(jì)界面時(shí)必須要考慮人類(lèi)大腦處理信息的限度。人類(lèi)的短期記憶極不穩(wěn)定、有限,24小時(shí)內(nèi)存在25%的遺忘率。所以對(duì)用戶(hù)來(lái)說(shuō),瀏覽信息要比記憶更容易。一致性:是每一個(gè)優(yōu)秀界面都具備的特點(diǎn)。界面的結(jié)構(gòu)必須清晰且一致,風(fēng)格必須與游戲內(nèi)容相一致。清楚:在視覺(jué)效果上便于理解和使用。用戶(hù)的熟悉程度:用戶(hù)可通過(guò)已掌握的知識(shí)來(lái)使用界面,但不應(yīng)超出一般常識(shí)。從用戶(hù)的觀點(diǎn)考慮。想他們所想,做他們所做。用戶(hù)總是按照他們自己的方法理解和使用。通過(guò)比較兩個(gè)不同世界(真實(shí)與虛擬)的事物,完成更好的設(shè)計(jì)。如:書(shū)籍對(duì)比竹簡(jiǎn)。排列:一個(gè)有序的界面能讓用戶(hù)輕松的使用。安全性:用戶(hù)能自由的作出選擇,且所有選擇都是可逆的。在用戶(hù)作出危險(xiǎn)的選擇時(shí)有信息介入系統(tǒng)的提示。

靈活性簡(jiǎn)單來(lái)說(shuō)就是要讓用戶(hù)方便的使用,但不同于上述。即互動(dòng)多重性,不局限于單一的工具(包括鼠標(biāo)、鍵盤(pán)或手柄)。人性化:高效率和用戶(hù)滿意度是人性化的體現(xiàn)。應(yīng)具備專(zhuān)家級(jí)和初級(jí)玩家系統(tǒng),即用戶(hù)可依據(jù)自己的習(xí)慣定制界面,并能保存設(shè)置。三、接口設(shè)計(jì)3.1用戶(hù)接口使用基于對(duì)話框的GUI,用戶(hù)通過(guò)鼠標(biāo)的點(diǎn)擊和鍵盤(pán)的輸入完成操作,編輯框用于用戶(hù)的輸入。3.2外部接口1.用戶(hù)界面使用Windows的標(biāo)準(zhǔn)對(duì)話框的形式,完全用對(duì)話框?qū)崿F(xiàn)。應(yīng)用工具:VisualC#。主對(duì)話框:由五個(gè)功能按鈕構(gòu)成顧客點(diǎn)餐,菜單查詢(xún)、現(xiàn)金結(jié)算,系統(tǒng)操作、退出顧客點(diǎn)餐對(duì)話框:菜單查詢(xún)對(duì)話框:現(xiàn)金結(jié)算對(duì)話框:系統(tǒng)操作對(duì)話框:由兩個(gè)功能按鈕構(gòu)成菜單操作、更改口令、返回。菜單操作對(duì)話框:菜號(hào)編輯框:用于顯示菜號(hào);菜名編輯框:用于顯示編輯菜名;單價(jià)編輯框:用于顯示編輯菜單單價(jià);菜系編輯框:用于顯示屬于哪個(gè)菜系;記錄總數(shù)顯示:用于顯示菜單中菜肴的總數(shù);“前一個(gè)”按鈕:顯示和編輯前一個(gè)記錄;“后一個(gè)”按鈕:顯示和編輯后一個(gè)記錄;“加入”按鈕:增加菜單記錄;“刪除”按鈕:刪除當(dāng)前的菜肴記錄;“退出”按鈕:退出菜單操作對(duì)話框。更改口令對(duì)話框:舊口令輸入框:輸入舊口令;新口令輸入框:輸入新口令;新口令確認(rèn)輸入框:再輸入一次新口令;確認(rèn)按鈕:確認(rèn)輸入的新口令,并提交。2.軟件接口使用Access數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序,通過(guò)ODBC接口訪問(wèn)。四、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)4.1.邏輯結(jié)構(gòu)設(shè)計(jì)服務(wù)員基本表服務(wù)員信息表屬性中文名稱(chēng)類(lèi)型長(zhǎng)度說(shuō)明服務(wù)員號(hào)Int酒店統(tǒng)一編號(hào),具有唯一性服務(wù)員姓名nvarchar50服務(wù)員名稱(chēng)服務(wù)員性別CHAR10服務(wù)員性別服務(wù)員年齡char10電話nvarchar50菜單表表3.3菜單信息表屬性中文名稱(chēng)類(lèi)型長(zhǎng)度說(shuō)明菜號(hào)nchar10酒店統(tǒng)一編號(hào),具有唯一性菜名nchar10菜名菜類(lèi)別nvarchar50菜類(lèi)別菜價(jià)格money狀態(tài)int選中:1;未選:0管理員基本表表3.4管理員信息表屬性中文名稱(chēng)類(lèi)型長(zhǎng)度說(shuō)明管理員號(hào)Int酒店統(tǒng)一編號(hào),具有唯一性管理員名稱(chēng)nvarchar50管理員名稱(chēng)密碼nvarchar50管理員密碼點(diǎn)菜表表3.5點(diǎn)菜信息表屬性中文名稱(chēng)類(lèi)型長(zhǎng)度說(shuō)明菜號(hào)nchar10外碼:依據(jù)菜單表的菜號(hào)桌號(hào)char10外碼:依據(jù)桌臺(tái)表中的桌號(hào)點(diǎn)菜時(shí)間nvarchar50提交菜單時(shí)間點(diǎn)菜份數(shù)int默認(rèn):1份4.2.物理結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)的物理結(jié)構(gòu)由使用的數(shù)據(jù)庫(kù)決定。4.3.數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系主模塊:連接數(shù)據(jù)庫(kù);顧客點(diǎn)餐模塊:根據(jù)菜單點(diǎn)菜,形成一張獨(dú)立的菜單,并把相關(guān)信息記錄到后臺(tái)數(shù)據(jù)庫(kù)中?,F(xiàn)金結(jié)算模塊:根據(jù)該顧客所選擇的桌號(hào)以及相對(duì)應(yīng)的菜單信息進(jìn)行結(jié)算,并把相關(guān)信息記錄到后臺(tái)的數(shù)據(jù)庫(kù)。查詢(xún)模塊:指定查詢(xún)條件,提交給數(shù)據(jù)庫(kù)操作模塊。系統(tǒng)操作模塊:對(duì)菜單操作,調(diào)用數(shù)據(jù)庫(kù)操作模塊對(duì)各個(gè)庫(kù)進(jìn)行相應(yīng)操作。五、客戶(hù)端主程序設(shè)計(jì)圖2給出了客戶(hù)端主程序流程圖,其中登陸、點(diǎn)菜、服務(wù)、結(jié)賬、主菜單都是一個(gè)Activity,各個(gè)Activity的跳轉(zhuǎn)可以通過(guò)Intent來(lái)實(shí)現(xiàn).用戶(hù)打開(kāi)程序時(shí),是登陸界面(LoginAetivity),為了方便管理,用戶(hù)名和密碼均為餐桌號(hào).為了正確登陸,程序需要訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù),Android已經(jīng)集成了Apaehe的HttpClient模塊,只需加入相應(yīng)的驅(qū)動(dòng)包,就能通過(guò)局域網(wǎng)絡(luò)訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù).圖2登陸成功以后,進(jìn)入主菜單(MainAetivity).主菜單包括三大功能模塊,即點(diǎn)菜(OrderAetivity)、服務(wù)(ServieeAetivity)和結(jié)賬(CheekoutAetivity).圖3給出了本設(shè)計(jì)的實(shí)際主菜單界面圖.六、服務(wù)器端的實(shí)現(xiàn)6.1登錄當(dāng)服務(wù)器訪問(wèn)loginservlet的時(shí)候,服務(wù)器得到用戶(hù)的登錄名和密碼,該servlet的任務(wù)就是通過(guò)查詢(xún)數(shù)據(jù)庫(kù),如果沒(méi)有該用戶(hù)或者密碼不對(duì)返回0;如果有,并且密碼正確,則返回一段有規(guī)則的字符串,包括用戶(hù)id和名字。6.2更新更新的Servlet主要有兩個(gè),一個(gè)是更新菜譜,另一個(gè)是更新桌子。主要是考慮到飯店的菜譜和桌子不可能一成不變,將軟件的擴(kuò)展性增強(qiáng)。當(dāng)飯店的菜譜或者桌子更新的時(shí)候,操作員就可以將手機(jī)的數(shù)據(jù)庫(kù)SQLITE和服務(wù)器的數(shù)據(jù)庫(kù)的數(shù)據(jù)同步。這兩個(gè)Servlet的工作原理就是查詢(xún)table表和menu表組成一個(gè)xml文件并且返回給客戶(hù)端。6.3結(jié)賬結(jié)賬的Servlet有兩個(gè),一個(gè)是當(dāng)操作員發(fā)來(lái)order編號(hào)的時(shí)候,改Servlet查詢(xún)訂單表,拼成一個(gè)網(wǎng)頁(yè)發(fā)送到手機(jī),這樣的好處就是手機(jī)不能修改訂單信息。當(dāng)操作員點(diǎn)結(jié)賬的時(shí)候另一個(gè)Servlet啟動(dòng),其作用就是講該訂單的標(biāo)志位修改,并且將該桌子的狀態(tài)設(shè)置成沒(méi)人,其實(shí)就是根據(jù)訂單號(hào)查詢(xún)到桌子號(hào),將該桌子的falg位置設(shè)置為0。PayServlet比較復(fù)雜,核心代碼如下:publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{response.setContentType("text/html;charset=utf-8");PrintWriterout=response.getWriter();//實(shí)例化DAOPayDaodao=newPayDaoImpl();//獲得訂單IDStringid=request.getParameter("id");//查詢(xún)訂單信息QueryOrderqo=dao.getOrderById(Integer.parseInt(id));//查詢(xún)訂單詳細(xì)列表Listlist=dao.getOrderDetailList(Integer.parseInt(id));//拼HTML頁(yè)面展示out.println("<!DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.01Transitional//EN\">");out.println("<HTML>");out.println("<HEAD></HEAD>");out.println("<BODY>");out.print("<table>");out.print("<tr>");out.print("<th>");out.print("訂單編號(hào)");out.print("</th>");out.print("<th>");out.print("下單時(shí)間");out.print("</th>");out.print("<th>");out.print("服務(wù)員"); out.print("</th>");out.print("<th>");out.print("人數(shù)");out.print("</th>");out.print("<th>");out.print("桌號(hào)");out.print("</th>");out.print("</tr>");out.print("<tr>");out.print("<td>");out.print(id);out.print("</td>");out.print("<td>");out.print(qo.getOrderTime());out.print("</td>");out.print("<td>");out.print(qo.getName());out.print("</td>");out.print("<td>");out.print(qo.getPersonNum());out.print("</td>");out.print("<td>");out.print(qo.getTableId());out.print("</td>");out.print("</tr>");out.print("<tr>");out.print("<th>");out.print("菜名");out.print("</th>");out.print("<th>");out.print("價(jià)格");out.print("</th>");out.print("<th>");out.print("數(shù)量");out.print("</th>");out.print("<th>");out.print("總計(jì)");out.print("</th>");out.print("<th>");out.print("備注");out.print("</th>");out.print("</tr>");for(inti=0;i<list.size();i

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論